​​Процесс vs результат



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



Вам знакома ситуация, когда близко дедлайн, в коде в общем-то нужно поставить один if, и вы принимаете тяжелое решение — переписать несколько методов с выходом в надсистему, вместо того, чтобы увеличивать цикломатическую сложность. Это и есть разница — if это результат, переделать методы — процесс.



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



Самый хороший способ — прямо сейчас найти у себя на работе проект с жестким дедлайном и взять на себя ответственность за его завершение. После второго проеба вы научитесь вести правильный внутренний диалог с собой: «Действительно ли то, что я делаю необходимо для результата?»; «Что из того, что я запланировал можно НЕ делать?».



Если проектов нет на работе — сделайте свой. Только поставьте жесткий дедлайн с осязаемым результатом. Хорошая личная задача — «завести блог». Напишете себе бекенд на гошечке? Возьмете модный генератор статичных сайтов? Или все-таки медиум?