Рубріки: ДосвідДумка

Найнебезпечніші професійні деформації програміста

Андрій Губін

Блогер та розробник Джозеф Круз задумався над тим, які варіанти професійної деформації програмістів є найбільш небезпечними для комфортного життя.

Пропонуємо вам переклад його його авторського блогу від нашої редакції. Далі — слово автору.

Уникнення соціальних зв’язків

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

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

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

Багато молодих айтішників часто самотні і не вступають у стосунки з протилежною статтю, багато в чому через цю особливість професії. Уявіть, ви докладаєте неймовірних зусиль по 8-15 годин на день, тільки для того, щоб зменшити ймовірність повторення рішення, за дублювання коду вас навіть карають на code review. Ви завжди повинні бути в тонусі і всіма силами уникати того, з чого складається нормальна психіка сім’янина.

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

Надмірний перфекціонізм

Перфекціонізм народжується з нездорової віри в те, що якщо йти по життю дуже обережно, весь час думаючи про те, куди поставити ногу, то не помреш. Насправді, звичайно, ви все одно помрете. Багато з тих, хто навіть не замислюється над тим, куди йде, досягнуть у житті більшого, ніж ви, і житимуть веселіше. Енн Ламотт, «Птах за птахом».

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

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

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

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

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

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

Проста балаканина для програміста створює величезне когнітивне навантаження.

Підозрілість

Це прямий наслідок двох попередніх деформацій. Тільки більшість початківців у програмуванні думають, що над помилками можна не працювати, поставити «милицю», обійти і забути. Лише з роками починаєш розуміти, що баги рано чи пізно переможуть. Вони вирвуться з глибин спагеті-коду, виведуть з ладу сервер або створять небезпечний витік даних.

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

Є таке поняття, як технічний борг. Це як кредит: ви хочете купити собі річ, але не маєте грошей, тому берете в борг у банку або у друзів і купуєте. Потім вам потрібно повернути гроші з відсотками.

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

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

Але втеча від проблем лише погіршує ваше становище як розробника. У вас не розвивається почуття відповідальності за свої рішення. І ви продовжуєте клепати халтуру.

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

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

У будь-якій професії є особливості, від яких у пересічної людини волосся на голові стає дибки. Досить згадати почерк лікарів. Головне — навчитися розрізняти в собі відхилення і працювати над собою. Приділяти час не тільки професійному зростанню, а й думати про гармонійний розвиток своєї особистості.

Якщо ви знайшли помилку, будь ласка, виділіть фрагмент тексту та натисніть Ctrl+Enter.

Останні статті

ChatGPT, моторошна долина та трохи Фройда

Днями я завзято нила про щось ChatGPT (експериментую між сеансами з живим терапевтом). І от…

17.04.2025

Я прийшла за покупками, а не крутити колесо

«Крутіть колесо, щоб отримати знижку до 50%!» «Натисніть тут, щоб відкрити таємничу пропозицію!» «Зареєструйтесь зараз,…

16.04.2025

Майже навайбкодив десктопний монітор CI пайплайнів

Дуже хочеться робити якісь десктопні апки. Сумую за часами коли всі програми були offline-first, і…

15.04.2025

Як працюють транзакційні комісії в мережах Bitcoin і Ethereum

Надсилаючи криптовалюту, багато новачків ставлять запитання: як працюють комісії та чому вони відрізняються в різних…

14.04.2025

Обережно, тепер вас можуть обдурити на співбесіді з роботодавцем

Нова афера набирає обертів — ось детальний розбір того, як фальшиві потенційні роботодавці намагаються вкрасти…

11.04.2025

Цілі застосунки в соцмережі? На останньому ETHKyiv Impulse довели, що це можливо

Соцмережа з можливістю вбудовувати повноцінні додатки прямо в пости — звучить як фантастика, але Farcaster…

10.04.2025