6 идей и книг, которые упростят жизнь разработчика в начале карьеры и не только
06.05.2018 11:38
—
Разное
|
Для начинающих программистов блогер и разработчик Twitter Чжи Хва Чун 1. Меньше обещать — больше делать.Недооценка временных и материальных затрат на проект — достаточно распространённая ошибка не только начинающих, но и опытных разработчиков. По статистике, половина всех проектов не укладывается в запланированный бюджет или в установленный срок. Именно поэтому лучше меньше обещать и больше делать: это значит не спешить с обещаниями и при оценке длительности и стоимости проекта закладывать запас времени и средств на непредвиденные обстоятельства, но всё же стремиться выполнить проект раньше или с меньшими затратами. Преимущества такого подхода:
Разработчика, оценивающего в 10 недель код, который можно написать за 2 недели, можно посчитать слишком ленивым. Однако если на протяжении проекта постоянно поддерживать коммуникацию с заказчиком, то вопросов с его стороны не возникнет. Разработчик несёт ответственность за оценку проекта, потому что другие люди полагаются на его опыт: именно он лучше всего знаком с кодовой базой, а значит, корректнее всего определит необходимые затраты. Что бы ни случилось во время работы над проектом, открытое общение с заказчиком поможет завоевать доверие и избежать проблем. 2. Лучшее — враг хорошего.Зачастую по мере погружения в проект разработчики обнаруживают какие-то детали, которые можно усовершенствовать, или же моменты, которые не были предусмотрены заранее и которые нужно исправить. Они закатывают рукава и тратят ещё несколько часов на то, чтобы добраться до корня проблемы. В результате работа, которая должна быть сделана, не сдвигается с мёртвой точки, а сверху накапливаются лишние задачи. Это знакомо и профессионалам, которые стремятся довести проект «до совершенства». Но в мире нет ничего совершенного: везде есть какие-то рамки и ограничения, а любое важное решение имеет свои плюсы и минусы. Главное здесь — признать, что невозможно знать абсолютно всё. На самом деле большинство решений имеет множество альтернатив. Но в конечном итоге каждый человек принимает решение, наиболее правильное с его точки зрения, даже если объективно это не самый разумный выбор. Лучшее, что можно сделать в этом случае — собрать как можно больше информации, признать риски, когда информация неполная, взвесить все варианты и исходя из этого принимать решение. Хорошая книга на эту тему — «Принципы» Рэя Далио. При этом наихудший вариант развития событий тоже нужно учитывать, а если вероятность того, что многое пойдёт не так, как задумано, слишком велика, можно:
Как только решение принято, остаётся лишь выполнить его и двигаться дальше. 3. Не отклоняться от курса.Иногда разработчикам начинает казаться, что продукту не хватает какого-то функционала, что он «сыроват» и никого не заинтересует. Но чаще всё это им действительно только кажется, ведь невозможно угадать, понравится ли продукт пользователям, пока они сами не его испробуют. Зато вполне реально — поставить чёткую цель в самом начале проекта и придерживаться её, несмотря ни на что. Такой подход имеет два преимущества:
4. Своевременно собирать обратную связь.Многих разработчиков привлекает принцип развития продуктов «осуществляй ранний запуск и частые обновления». Хотя он больше подходит для разработки ПО, это позволяет постоянно и своевременно получать обратную связь от пользователей. А знать их мнение крайне важно для того, чтобы убедиться, что продукт обладает правильным функционалом и решает проблему целевой аудитории. «Ранний запуск» не означает, что продукт может быть некачественным. Неисправный продукт будет абсолютно бесполезен и лишь покажет неуважение к пользователям. Нужно создать «минимально жизнеспособный продукт» (minimum viable product), который будет обладать минимальными, но достаточными для удовлетворения первых потребителей функциями. Сбор обратной связи не означает, что собирать отзывы придётся от всех пользователей до единого. Их можно сегментировать, собрать некоторую группу пользователей, желательно из разных сегментов, и дать им протестировать продукт. Тогда, даже если в нём обнаружатся неисправности, об этом узнает не слишком широкий круг людей, а у команды будет время на устранение ошибок. 5. Искать ответы самостоятельно, прежде чем просить помощи.Вместо того, чтобы попытаться сначала самим найти ответы, многие начинающие разработчики сразу спешат с вопросами к более старшим коллегам, которые имеют нужный опыт. Но намного полезнее было бы попытаться самостоятельно разобраться в проблеме.
Способность находить решение сложных задач — весьма востребованный навык, незаменимый в работе. Сегодня интернет содержит массу информации по любой теме, и получить доступ к ней можно в любое время, в любом месте и с помощью любого устройства. Однако научиться задавать правильные вопросы намного труднее, чем находить ответы на них. 6. Чем проще, тем лучше.Самое сложное в жизни — не усложнять себе жизнь. Часто начинающие разработчики стремятся использовать заумные приёмы и сложные фреймворки, из-за чего код становится слишком неудобным для восприятия. Чаще всего за сопровождение кода отвечают не его авторы, и чем больше он запутан, тем больше проблем возникнет следующих поколений разработчиков. Опытные разработчики понимают, что код пишется не только для того, чтобы увеличить эффективность программы, но и для людей. Не менее важно, чтобы код был понятным и прозрачным. Поэтому, пока это не вредит производительности, по возможности нужно создавать чистый читабельный код. Полезные книги« « « « « « Чтобы разместить новость на сайте или в блоге скопируйте код:
На вашем ресурсе это будет выглядеть так
Для начинающих программистов блогер и разработчик Twitter Чжи Хва Чун собрал несколько отличных советов, которые почерпнул из умных книжек и от более опытных коллег.... |
|