Если нельзя, но очень хочется, то нужно обязательно и ничего в мире не стоит того, чтобы делать из этого проблему!


Интересна Java? Кликай по ссылке и изучай!
Если тебе полезно что-то из того, чем я делюсь в своем блоге - можешь поделиться своими деньгами со мной.
с пожеланием
столько времени читатели провели на блоге - 
сейчас онлайн - 

суббота, 2 октября 2010 г.

Мотивация: Заботы программиста о коде

Кто любит программировать, поймет меня.

Когда я программировал для себя, то не было никого, кто бы мешал моей задумке реализоваться в полной мере. Времени было достаточно - никто никогда не поджимал и не урезал функциональность. А то же время никто не заставлял кодить тогда, когда хочется заняться другим. Студентом часто убегал с пар и шел за компьютер реализовывать очередную бредовую идею. Часто засиживался до глубокой ночи. В общем сам себе менеджер, архитектор, тестировщик и программист. Читать дальше...

Позже началась "коммерческая жизнь". Почему выделил в кавычки? Потому, что мой первый менеджер часто говорил об отличиях работы над своим проектом и работы в команде на каком-то там enterprice. Да, работа в команде, как и enterprice технологии вывели меня на другой уровень, но только поначалу. Потом начался какой-то запор. Оказывается технологии и фреймфорки мы используем не совсем правильно, да и надо писать код, ибо заказчик ждет, а не переписывать его. Работает и не трогай. Чем больше становилась моя зарплата, тем больше говнокода принуждали писать. Много так же приходилось воевать и переживать за идею. Все меньше уделять времени самообразованию и обучению окружающих.

Сейчас, спустя пару лет такой колбасни могу сказать уверенно - вспоминается только то, что я делал вопреки, нежели по правилам - это 1, и 2 - это тот багаж знаний, который я унес с собой. Багаж знаний позже позволяет в полной мере выбирать, а действия не по правилам вспоминаются с улыбкой. Все остальное, а это на много больше 50% офисной работы - наполнитель. Всего пару часов в неделю удается сделать то, что потом вспомнится.

Фиг его знает, возможно вся та работа, которую я проделал слепила меня сейчас таким какой я есть, и все 100% моего опыта были необходимы и полезны. Но помню-то я только 1 и 2.

Какие выводы? Развивать этих два направления: получать новые знания и делать что-то свое везде, где только это возможно. А все остальное воспринимать как наполнитель и не сильно беспокоиться об этом.

Техлид сказал, что мой класс сложный для поддержки и заменил его на один громадный процедурный метод, причем без джавадоки и тестов? Хай себе меняет. Если я получил 1 и 2 из написания этого кода - этого уже более чем достаточно. (если код был переписан в лучшую сторону - это 2 - из этого можно вытянуть знания, но если код исправлялся в сторону говнокода...)

Заказчик сказал выкинуть эту функциональность? Сделал так, как он просит, а потом в свободное (от такой работы) время сделал так, как хочу я. Закоммитился после этого или нет не важно - я уже получил 1 и 2. (часто заказчик все же возвращался к моей идее - а тут и написанный код как нельзя кстати)

Напарник пореФАКторил твой код не посоветовавшись с тобой? Забил, написав этот код я уже получил то, что потом буду вспоминать. (хотя этот опыт - его 1, так что тут все честно)

Не морочиться о коде вообще! Уверен, через год я на него буду смотреть с улыбкой, думая "как это я мог такое написать?". Если вообще увижу когда-то еще. Код который я пишу сегодня - завтра будет говнокодом. Так случается всегда, если я расту.

1 и 2, как оказалось, мои ценности. А какие твои? Что из всего своего многолетнего опыта ты заберешь с собой, если тебе вдруг скажут: "ты отправляешься на необитаемый остров - тебе можно взять с собой не более одной недели своих воспоминаний в году". Что ты выберешь?

P.S. Еще я помню все без исключения сеансы парного программирования с напарниками. Такое не забывается.

Комментариев нет:

Отправить комментарий