Топ-5 помилок, яких програмістам слід позбутися в 2018

Технолог Раві Шанкар Раджан якось зловив себе на думці, що стає надто самовпевненим. Про це – його колонка на Medium, де він виклав типові помилки хороших програмістів, які заважають розвиватися.


“Мій код – НАЙКРАЩИЙ”

Фрідріх Ніцше вважав, що як би високо він не дерся, його завжди переслідує пес на ім’я Его.

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

Не потрібно критикувати чужий код, бо одного разу хтось розкритикує твій. Важливо вчитися у співробітників.

“Я можу все пофіксити за одну мить”

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

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

“Я все пам’ятаю. Мені не треба нічого документувати”

“Документація – як секс. Коли він хороший, все дуже добре, а коли поганий – краще, ніж нічого”. (Дік Брендон)

Документація – це як касторка для програмістів. Менеджери вважають, що вона корисна, але розробники її ненавидять. Проте істинно великі розробники роблять її невід’ємною частиною повсякденного життя.

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

“Це не я!”

“Помилки завжди можна пробачити, якщо у людини вистачає хоробрості їх визнати”. (Брюс Лі)

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

“Твоє готово – це насправді не готово”

Якщо програмування – це секс, то знайдеться дуже багато незадоволених комп’ютерів. Один з концептів, з яким ти повинен боротися – це “тяп-ляп і готово”. Не забувай, готове – це коли програма протестована і схвалена користувачем відповідно з його запитами.

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

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

Мені 22 і я роблю стартап у Львові