7 золотих правил програміста

1. Комп'ютер завжди правий


Саме дратує ситуація в програмуванні - коли код вірний, але не працює. "Так тут три рядки, блін, просто ніде помилитися! Напевно баг! Піду витрачу три дні на вивчення баг-репортів компілятора / інтерпретатора / фреймворка ... ". Виникає відчуття, ніби комп'ютер над вами знущається!

Тут головне пам'ятати, що в цих трьох рядках є помилка. Якщо код працює неправильно - значить код написаний не вірно. Крапка. Винні тільки ви. Універсальна порада - йдіть спати! Ну або хоча б відверніться на чашку чаю. Коли, через деякий час, ви повернетеся до коду, напевно стане ясно, що тут зайвий оператор заперечення, або переплутані дві змінні зі схожими іменами, або ще якась дрібниця, в якій ми ніколи нікому не зізнаємося.


2. Заспокойся і все вийде


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

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


3. Найскладніше - розпочати


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

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


4. Читай книги


Читайте книги. Я ще раз напишу: Читайте книги!

Чомусь багато програмістів абсолютно ігнорують книги. "Я і на роботі відмінно просвіщаюся", "У мене немає часу", "Я читаю статті в інтернеті". Це все здорово, але особисто я вважаю, що найкраще джерело знань - це все ще книги. Я стабільно купую по одній-дві книги в місяць, плюс час від часу перечитую щось старе. Не буду брехати, у мене на полиці зібралася значна стопка того, що я купив, але поки не читав (як з іграми в стиме), але я дійду, обов'язково дійду.


5. Знай свої інструменти


Не полінуйтеся виділити час на детальне вивчення інструментів і технологій з якими ви працюєте. Це багаторазово окупиться. Досконально вивчіть всі можливості мови на якому ви програмуйте. Просто візьміть, і прочитайте офіційну документацію від кірки до кірки. Не використовуйте IDE тільки в якості редактора коду, в будь-якій сучасній середовищі є купа інструментів для підвищення якості коду і вашої продуктивності. Не використовуйте фреймворк тільки як скелет архітектури. Вивчіть його і він заощадить вам багато часу. Розберіться в тонкощах системи контролю версій. Чим краще ви знаєте свої інструменти, тим більше роботи вони роблять за вас.


6. Не будь перфекціоністом


Вище я писав, що найважче - це почати. Так ось, закінчити - теж не завжди легко. Налагоджувати і рефактору код можна нескінченно. "Що через довгий метод?", "Чи може це в окремий клас?", "Було б зручніше якби ...", "А раптом потім знадобиться ...", "А раптом ...". У програмуванні можна бути перфекціоністом. Проблема в тому, що досить почитати Роберта Мартіна або Банду чотирьох, як тут же виникає бажання переписати нафіг весь свій код. Потрібно розуміти, що ідеального коду немає. Я дотримуюся правила: "Код повинен працювати без багів, бути тестованим і читаним". Усе. Поки код методу відповідає цій вимозі, я його не чіпаю. Навіть якщо в ньому два циклу, три умовних оператора і чотири параметри.


7. Умій відпочивати


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

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



Немає коментарів:

Дописати коментар