Скрытый смысл того, что говорят программисты

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

Слишком много? 😜

Жесткая правда о том, что нужно быть программистом

Я программист, тимлид и технический руководитель уже много лет. Люди часто думают, что быть программистом - это просто написать кусок кода. На работе все может стать некрасивым и сложным, если:

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

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

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

1 - Как продвигается разработка? Готово на 90%.

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

«То, что один программист может сделать за один месяц, два программиста могут сделать за два месяца. »- Фред Брукс

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

Реальность: Возможно, даже не началось.

2 - Это не блокиратор, позже исправлю.

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

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

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

3 - Эй, я исправил ошибки. Он должен работать сейчас (на самом деле это не так).

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

Реальность: он не работает или исправил одно, а что-то сломал.

4 - Странно, это работает на моей машине.

Это очень распространенная фраза, которую я слышал время от времени. Обычно это произносится, когда что-то ломается после развертывания или программисты вообще не понимают, почему это не работает. Это также могут быть некоторые команды или синтаксис, несовместимые с различными операционными системами, такими как Windows и Linux.

Реальность: что-то еще не работает, развернута неправильная версия или проблема не устранена должным образом.

5 - Я не знаю это [требование / объем / тикет].

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

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

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

6 - Вчера работал. Кто трогает мой код?

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

Реальность. Кто-то ввел коды и взломал ваш, или вы забыли, что внесли изменения вчера.

7 - Это не мной разработано.

"Не я! Не я! », - это обычная фраза, которую я всегда слышал, когда программисты пытались отрицать то, что они делали. Такова природа многих людей. Когда что-то идет не так или выходит из строя, программисты склонны винить во всем что угодно, кроме написанной ими программы.

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

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

Реальность: я не помню, когда я написал это дерьмо, или как я могу сделать эту ошибку ?!

8 - Это временное решение, оно не будет использоваться в производстве.

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

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

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

9 - Документация скоро появится.

Мы, программисты, ожидаем, что другие будут писать хорошую документацию, но мы ненавидим писать то, что нам нравится. Дик Брэндон сказал это лучше всего:

«Документирование похоже на секс; когда хорошо, то очень, очень хорошо, а когда плохо, лучше, чем ничего ". - Дик Брэндон

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

Судя по местам, где я работал, большая часть технической документации устарела или не соответствует системе. Хорошая документация требует времени и усилий. Лучше всего нанять технического писателя и позволить ему делать свою работу.

Реальность: требуется время для доставки документации.

Последние мысли

Вот и все. Надеюсь, вам понравилась эта статья. Я не пытаюсь указать, кто прав, а кто нет. Мы также должны помнить, что у истории всегда есть две стороны.

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

Спасибо за прочтение!