До вмісту
EN

На головну

Про мене

Історія однієї людини, яка захопилася програмуванням.

Стає програмістом

Як я взагалі став програмістом

Я почав програмувати ще в шкільні роки. В той час це були ЕОМ типу «Корвет» — я вже точно не пам'ятаю, як вони називались... Ми разом з іншими хлопцями з класу часто приходили в комп'ютерний клас, щоб пограти в комп'ютерні ігри. Якщо чесно, то ігри мені не дуже зайшли, хоча цікаво було деколи поганяти в ігри типу «Клад», «Клад-2» і т.п.. Мене більше захоплювала робота з ЕОМ, зокрема, створення програм. Тоді крім урізаного Бейсика на цих комп'ютерах більше нічого не було. Але мені подобалось щось створювати і спостерігати як воно працює (або не працює 😅).

Пізніше, в 1999 році, я почав вивчати програмування в університеті. Навчався на базі мови програмування C++. І саме тут я зрозумів, яким цікавим заняттям може бути програмування. З того часу я не перестаю програмувати і навчаюся новому кожного дня.

Спочатку професійного програміста з мене не вийшло, були на то свої причини — може колись я зможу розповісти про це детальніше. Але я ніколи не покидав цього заняття і періодично розробляв програми для власного користування. Навіть зараз є кілька, якими користуюсь тільки я... І ось прийшов 2021 рік. Я вирішив вивчити веб-розробку. І наприкінці того року я потрапив у свій перший професійний колектив.

Розробляв я цікаві продукти, зокрема, інтернет-магазини на Shopify та інші платформах. Але ностальгія за C++ все ще дає про себе знати. Тому я продовжую кодити і на цій мові, хоча і не так часто, як раніше. Також я продовжую вивчати нові мови програмування і технології. У цьому є щось цікаве і завжди можна навчитися щось новому. Хоча деколи це може бути досить нудно і нецікаво.

Ось саме так я і "докотився" до цього 🙂!

Перша спроба — не дуже вдала

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

Лекція в аудиторії ЛНУ

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

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

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

Зрештою, я спочатку взяв академічну відпустку, а пізніше і зовсім покинув навчання...

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

Після довгої перерви — повернення в ІТ

Пройшов досить довгий період часу. У моєму житті відбулось надзвичайно багато різних змін, про які я, можливо і розповім пізніше — але не факт.🫠

Хтось за роботою

Я знову вирішив спробувати себе в ІТ. Зрозумів, що це саме те, чим я хочу займатись. Почав активно вивчати нові технології та мови програмування. Врешті решт, так я став фронтенд розробником.

Не скажу що все було легко - ні. Крім того зміна мого напрямку співпала в часі з повномаштабним вторгненням Росії в Україну. Це також наклало свій відбиток. Ти вирішуєш різні задачі по проекту, а над тобою літають ракети, трохи згодом різні дрони. Потім держава вирішила, що я теж можу бути непоганим гарматним м'ясом...(хто не розбирається в темі - раджу прочитати Швейка 😉​). І вирішила мене мобілізувати.

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

І хоча мої погляди сильно відрізняються від поглядів більшості моїх знайомих, друзів, родичів - я не змінюю свою позицію. Це також впливало і на вибір проектів для роботи. Наприклад, я не берусь за роботу, пов'язану з військовими напрямками, криптою чи різними сумнівними проектами - хоча це могло б принести мені значно більше грошей.

Штучний інтелект у розробці

ШІ для мене — робочий інструмент, а не заміна людини. Він прискорює чорнову роботу: начерки, рефакторинг, тести, пошук у великому коді. Рішення про архітектуру, межі змін і якість завжди залишатися за людиною.

У щоденній роботі використовую Cursor та інші асистенти. Корисні вони тоді, коли вже зрозуміло, що треба зробити, і можна перевірити результат. Без цього легко отримати багато коду і мало впевненості в його роботі.

Мені важливо, щоб згенерований код був читабельним, проходив тести (це теж цікаво — ШІ може нагенерити тестів, які проходять без проблем, але проблеми залишаються в основному коді) і вписувався в наявну структуру.

Є і особисті межі. Не віддаю моделі чутливі дані клієнта без потреби. Не прошу «зробити все» там, де потрібна точна логіка домену. І не вважаю швидкість важливішою за зрозумілість і відповідальність за результат.

Якщо коротко: ШІ допомагає рухатися швидше, коли я вже знаю напрям. Він не замінює досвід, смак і відповідальність за те, що потрапляє в продакшен.

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

Але я дуже люблю кодити самостійно, тому використовую штучний інтелект тільки для легких тривіальних завдань на 100%, і складних задач, де він може мені допомогти, підказати. Якщо постійно користуватись лише ШІ, то можна поступово деградувати і втратити свої навички.

Тому, якщо вам потрібен просто "промптер", який буде лише забивати завдання агентам, то, на жаль, вам не до мене 🥺.

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