«Думаю, JavaScript не підходить для веба». 10 питань програмісту, випуск 4 (з Берліна)

Цей і найближчі кілька випусків будуть про хлопців, які живуть і працюють в Німеччині. Герой цього інтерв’ю — Сергій Єрмолаєв (Sergiy), фронтэндер з Берліна. Навчався на Німецькому факультеті економіки і права в Грузії. Почав админить мережу в універі, захопився Flash, з його допомогою адаптував освітні програми для дитячого садка. Потім занесло у велике казино, де він переписував на Flash криво написану рулетку. На Мальту переїхав на запрошення Betsson Group, але за півтора року занудьгував і поїхав у Німеччину за орднунгом в компанію AiComp.

Його шлях: Flash AS2/AS3 → AngularJS → Angular/React/Vue → Kotlin (Spring Boot, Android, Angular), Flutter, C#

1. Розкажи про фічу, яку ти реалізував і якою пишаєшся.

Так, була така, для рулетки в казино. Там відразу кілька функцій було. Цілий canvas render для ігрового столу: кілька «канвасов» один на одного були накладені, з різною прозорістю. Досить складно було, бо треба було емулювати флэшовый стек і ще з HTML якось поєднувати. Плюс поверх необхідно було додати звук. І щоб все працювало нормально в різних браузерах, в тому числі мобільних. Коротше, круте рішення вийшло: з генерацією звуків з папки, з подхватыванием всіх ассетов… Це в мене зайняло десь місяць: працював по 16 годин. Обіцяли премію, але за підсумком грошей не виявилося. Це був момент, коли я зрозумів, що треба звалювати.

2. А тепер — про найлютіший факап.

Да-а-а-а. Теж в казино. У свій час на Flash я встиг наговнокодить. Так вийшло, що гравець робив подвійну ставку: він бачив одну фішку, а за фактом ставив дві. І якщо програвав, то програвав подвійну суму. Виграти теж можна було, але це не часто. Нафакапив я на тисячі доларів. Але зарплати не відняли, як-то все нормально пройшло.

Читайте також  Як перевірити айфон на оригінальність

3. Опиши свій робочий простір: від крісла і монітора до середовищ програмування і улюблених утиліт.

Дуже німецька фішка — рухомий стіл, у якого можна регулювати висоту. І особисто мені обов’язково потрібен 4k-монітор, хоча по Берліну — це досить крута вимога. Я взагалі мало знаю місцевих хлопців, хто зміг попросити обладнання більше, ніж на 300 євро. Так що цей монітор собі купував я сам, лише б не мучитися.

Ноутбук належить компанії. Це Thinkpad 470p з батареєю збільшеної, подвоєною оперативкою. Така робоча конячка, яку зламати не вийде. Там всередині i7, тому потужності мені вистачає.

4. За яким принципом ти вибираєш роботу? Стек, продукт, побутові умови, гроші?

Гроші — не найголовніше. Я, можливо, погодився б і на меншу суму, якщо б була дуже цікава робота. У мене взагалі є проблема: якщо проект нудний, не цікавий, то починається страшна депресія. Я впадаю в ступор і нічого не можу робити. Так що цікавий проект — це найголовніше.

І обов’язково сама технологія повинна бути цікавою мені. Я б не став зв’язуватися з Java, Spring Boot. Але Kotlin, так — це круто. Це має бути щось звідки ти почерпнеш нові знання і досвід.

5. Що в технологіях і мовами, які ти використовуєш, ти б хотів виправити?

Господи! JavaScript! Убийте його. Я думаю, що він не підходить для вебу. Його треба пиляти, пиляти, пиляти і пиляти. Припустимо, система прототипування. Там немає звичайних класів. Їх як би додали в новій ревізії ES6, але це просто syntax sugar. І там дуже дивні баги: якщо взяти одиницю як цифру і додати до одиниці як рядку і потім відняти одиницю, ти отримаєш зовсім несподіваний результат. Ти можеш знати всі ці нюанси і вони тобі ніколи не знадобляться, але може виникнути ситуація, коли хер його знає, що взагалі відбувається. Є навіть такий сайт js-shit — там зібрані перли з JavaScript, що можна отримати, випадково вистріливши собі в ногу.

Читайте також  Як встановити мінімальну довжину пароля Windows 10

Ну тобто TypeScript або Flow зараз вирішують проблеми. І на гуглівський Dart я позитивно дивлюся — там є дуже цікаві штуки. Але за підсумком ти знову-таки отримуєш JavaScript.

6. Де краще переймати чужий досвід — у вузі, на конфах, на хабрі? Ще десь?

Частково — на Хабрв. Варто дивитися, що люди пишуть, і обов’язково читати коментарі. І обов’язково лізти в source code проектів на GitHub, які більш або менш «із зірочками».

З книгами ось все погано — дуже рідко можна знайти таку, де все вже давно не застаріло. Вони можуть підійти для початківців, тому що там багато місця відведено тому, як влаштована технологія в принципі. А якщо ти вже щось вмієш, то я би радив читати блоги євангелістів технології, якою ти користуєшся.

Але в будь-якому випадку ти будеш факапить спочатку, де тільки можна.

7. Будь у тебе необмежені ресурси (час, гроші, потужності, люди), яким проектом ти б зайнявся?

В космос б не полетів, навіщо Марс засмічувати? Але обов’язково купив би в селі будиночок і розводив квіти. Звичайний будиночок без викрутасів, з маленьким басейном, може бути. Гнав би грузинську чачу будинку. І йогою б зайнявся.

На пенсію в Німеччині виходять приблизно в 65. І у мене немає особливо планів після 40-45 продовжувати програмувати. Тому в цей момент я б відкрив стартап, запустив бізнес і особливо не ліз у нього — молоді краще знають свою справу. А я б займався квіточками.

8. Як ти відпочиваєш? Що робиш крім роботи?

Зараз я взагалі ніяк не відпочиваю. Не виходить. Відчуваю, що починаю вигоряти, і тому як раз через тиждень йду у відпустку на місяць. У Німеччині можна без проблем взяти відпустку і на більший термін. Головне попередити хоча б за місяць.

Читайте також  Як зарядити телефон без зарядки - 8 способів

Зараз збираюся зганяти до батьків у Тбілісі: поїсти, поспати, може змотатися в Батумі. Але це не активний відпочинок, а такий… обов’язковий. А так у мене в планах Норвегія — хочу подивитися на фіорди. Дорого, згоден, але я один, тому можу собі дозволити. І це більше до зими вже.

9. Розкажи про 3 улюблені книги — навчальну, науково-популярну і художню.

 

  • Думаю, треба почитати класичні книги по хорошому кодом. Gang of four (автори книги Design Patterns — прим. ред.) треба обов’язково. Але в цілому я особливо сенсу в навчальних книгах не бачу, тому що те, що ти читаєш сьогодні, завтра вже застаріває. Простіше почитати офіційну документацію — буде той же результат.
  • Научпоп не особливо читаю, але намагаюся дивитися на YouTube «Антропогенез», де хлопці проти альтернативних теорій і намагаються розповісти, як все в науці йде насправді.
  • Художня — «Чапаєв і порожнеча», Пєлєвіна. Мені взагалі Пєлєвін подобається.

 

10. Якщо прямо в тебе на очах у ШІ прокинеться свідомість, що ти йому скажеш?

Постараюся з’ясувати, наскільки буде можливо інтеграція такого інтелекту з живою людською особистістю. Чи можливий симбіоз двох інтелектів.

Питання від попереднього гостя: якби твою професію, справу всього життя і те, чим ти годуєш близьких (сім’ю) в один прекрасний день оголосили незаконним, що б ти зробив?

Швидше за все я спробував би змінити професію. Не бачу сенсу порушувати закон. Програмування — це цікаво, але це не справа всього життя. Є купа сфер набагато цікавіше: хімія, фізика, математика.

Степан Лютий

Обожнюю технології в сучасному світі. Хоча частенько і замислююся над тим, як далеко вони нас заведуть. Не те, щоб я прям і знаюся на ядрах, пікселях, коллайдерах і інших парсеках. Просто приходжу в захват від того, що може в творчому пориві вигадати людський розум.

You may also like...

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *