Как понять программиста: ТОП важных вещей о программировании

2
9744
Добавить в избранное

В этой статье редакция Библиотеки программиста собрала познавательную информацию для не-кодеров на тему того, как понять программиста.

Как понять программиста

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

Программирование – это искусство, а не процесс

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

Программисты требуют автономности при работе над проектом

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

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

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

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

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

Сразу к делу

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

Предположим, нужно отобразить линейный график, но вы думаете, что лучше понимаете весь процесс, поэтому просите сначала создать гистограмму. С точки зрения концепции это имеет смысл: гистограммы, как правило, более простые, нежели линейные графики. Но поскольку линейный график и гистограмма – не одно и то же, программистом будет потрачено много времени впустую, чтобы все переделать.

Лучше избегать этого и просто просить то, что вы хотите, в своей самой сложной и полной интерпретации.

Программирование мало кому “дано от природы”

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

Программирование практически не имеет конкретных барьеров для входа

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

Стать врачом или адвокатом невероятно сложно и включает в себя целый набор регуляторных привратников. В программировании нет ничего подобного.

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

Как понять программиста: это просто логика

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

Не все время, проведенное за компьютером, потрачено впустую

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

Программисту разрешено быть занятым. Поскольку люди предполагают, что разработчики обычно ничего не делают, то можно без проблем отвлечь фразой “Это займет пять минут”

За компьютером можно устать

Еще одна распространенная фраза непрограммиста: “Почему ты устал? Ты же целый день сидишь перед монитором!”. Это очень удручает, когда вы сидите десять часов и не можете найти баг в коде или получить требуемый результат, а затем кто-то, кто ничего не знает о программировании, говорит, что у вас легкая работа.

Программисты не так легко взаимозаменяемы

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

Программирование новых функций отнимает больше времени, чем переписывание

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

Хорошие практики программирования действительно имеют значение

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

Программирование занимает много времени, гораздо больше, чем вы думаете

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

Оригинал

Другие материалы по теме:

Хотите получать больше интересных материалов с доставкой?

Подпишитесь на нашу рассылку:

И не беспокойтесь, мы тоже не любим спам. Отписаться можно в любое время.




2 Комментарии

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