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

Mar 20, 2009 11:20

Программирование - сложная штука, но многие из принципов, которые делают программиста лучше, не слишком отличаются от того, чему нас учили тети-воспитательницы.

Вдохновением для списка ниже послужило эссе “Все что мне действительно нужно знать, я узнал в детском саду”, автор Robert Fulghum (http://www.robertfulghum.com/).


1. Делись со всеми

Используйте Open Source насколько это возможно, и по мере сил старайтесь вносить свою лепту. Совместная мудрость большого сообщества лучше ограниченной позиции нескольких больших корпораций.

2. Играй честно

Дайте другим технологиям, фреймворкам, методологиям и мнениям шанс. Не считайте свое мнение единственно верным. Другие подходы к проблеме вполне могут оказаться лучше Ваших; взглянуть на них непредвзято делу не повредит.

3. Не дерись

Не стоит атаковать людей только потому, что они используют .Net, Java или PHP. Иногда технологии могут оказаться гораздо более полезными и удобными чем представляется. У человека можно научиться гораздо большему, если при этом не стараться растереть его в порошок.

4. Убирай за собой

Старайтесь выдавать на-гора код, который работает. Не стоит ожидать, что QA найдет все ошибки за Вас. Тестируйте свой код интенсивно, и вглубь (юнит-тесты) и вширь (функциональные тесты).

5. Не бери чужое

Придерживайтесь лицензий на код, библиотеки или инструменты, которые Вы используете, не надо воровать, а затем говорить что невиновен.

6. Извинись, если кого-то обидел

Просмотр кода (Code Review) - хорошая, но редко применяемая идея. Обучение менее опытных программистов идет на пользу команде. Но не нужно открыто критиковать, если что-то не так - обучать людей не значит принижать их. Иногда Вас будут слушать, иногда нет. Иногда можно многому научиться у людей, которых Вы считали ниже себя по уровню.

7. Мой руки перед едой

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

8. Смывай

Не нужно бояться заменить, переписать, реструктурировать или вообще выбросить кусок плохого кода или неудачный проект. Иногда “если не знаешь что делать - выбрось и забудь” - лучший подход. Никогда не надо слишком любить свой код.

9. Теплое печенько и холодное молоко полезны для тебя

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

10. Живи полной жизнью - учись и думай, рисуй и крась, пой и танцуй, играй и работай

Мне нравится организация труда в Google, где 20% своего времени ты можешь посвятить работе над тем, что, как тебе кажется, этого заслуживает. Неплохо было бы также предоставлять комнаты для отдыха или игр - программирование это тяжелый умственный труд, иногда просто необходимо дать голове отдохнуть. Избегайте постоянных переработок - упавшее качество работы сведет на нет прирост в производительности, достигнутый ценой ночных бдений.

11. Отдыхай после обеда

Работа 24 часа в сутки не делает более продуктивным. Делайте перерывы, уйдите домой, поспите немного. Часто мне удавалось решать запутанные задачи просто уходя домой, и решение приходило в голову по дороге с работы или на следующее утро.

12. Выходя на улицу, смотри по сторонам, держись за руки и не убегай далеко

Общество полезно для души - читайте блоги, изучайте новые языки и фреймворки, участвуйте в дискуссиях и смотрите что делают другие. Только делая свою работу, не стать лучшим программистом. Зарывшись в работу с головой, вы рискуете в один прекрасный день обнаружить что все переменилось и ваши знания устарели.

13. Помни о чудесном. Это как маленькое зернышко в горшке с землей - корни растут вниз, а росток поднимается вверх, и никто на самом деле не знает, как и почему, но это так.

Каждый день что-то новое и удивительное происходит в мире программирования и технологий. Узнайте об этом. Удивитесь. Узнавайте что-то новое каждый день. Это помогает поддерживать свежесть мышления и актуальность навыков и расширяет кругозор.

14. Рыбки и хомячки и мыши и даже маленькое зернышко в горшке - все они умирают. И мы тоже.

Код становится старым и умирает. Временами лучше просто смириться с этим и сделать все заново. Незачем держаться за ужасный код только для того, чтобы сохранить вложенные деньги.

15. А теперь вспомни книжки про Дика и Джейн [1] и первое слово которое ты выучил - самое главное слово - СМОТРИ.

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

Видите, программирование - это просто, если посмотреть глазами пятилетнего ребенка.
Previous post Next post
Up