Как стать автором
Обновить

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

Тут в чём загвоздка :)

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

Поэтому программист, в зависимости от этапа карьеры, может как много писать, так и много читать :) Я вот за последнюю неделю, так совпало, сам написал примерно 4 строчки кода (за исключением предложений в кодревью и совместного кодинга на собеседовании с кандидатом).

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

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

Эта методика ещё в книге Вирта описана и упомянута Бруксом в его "Человеко-месяце".

Это весьма естественный подход. То же самое делает скульптор. Сначала появляется контур фигуры, затем, итерация за итерацией, фигура детализируется.

С программой то же самое: сначала - "оно работает", потом начинаем покрывать код проверками, бить на функции, модули и т.д.

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

Сильно зависит от предварительно затраченного времени на проработку ТЗ. Видел случай, когда ТЗ уточнялось около пары лет(!), результат был написан примерно за полгода и за эту работу ведущий инженер проекта защитил кандидатскую диссертацию, как мне рассказывали (пришел позже)..

Эхх, где мои 24 года, когда писалось около 500 до 1000 строк кода (да, новый функционал) на Турбо С, и при этом выдавалось в прод со второй компиляции.. Ностальжи ...

Теперь хорошо если сотня другая строк в день. Но да, согласен: если распределить написанное на все дни, когда сначала продумывается архитектура, наборы данных и алгоритмы .. то наверное и 50 строк не наберётся. А читать приходится очень много..

Быстрее всего эволюционируют электромонтажники. Каждый следующий на порядок умнее предыдущего и всегда спрашивает: "Какой идиот вам это делал?"

Программисты тоже быстро эволюционируют.

В книге Чистая архитектура в самом начале резко растущий график Cost per line of code over time

Вот сейчас начинаю сомневаться: это падение производительности по какой причине?

а) приходится переделывать зависимый код при добавлении новых фич

б) заказчики отменяют старые требования и выдвигают новые

в) программисты заняты на 3й линии поддержки и тратят время на поиск багов в коде

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

Когда я был девелопером, я писал 100-500 строчек в день. Сейчас, когда дорос до техлида пишу в 3 раза больше, таски, доку, переписываюсь с сотней менеджеров в слаке. Где эти сферические погромисты, что целый день только и читают)))))

это же не код

У меня так же было. А потом я выгорел.

Как именно также?

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

У меня совсем не такая же ситуация. Я может строчек 10 кода в неделю успеваю писать. Мой коммент больше был про чтение / писание. Вот на чтение книжек у меня точно времени нет

Похоже, я неверно понял ваш коммент. Фразу "Когда я был девелопером, я писал 100-500 строчек в день. Сейчас, когда дорос до техлида пишу в 3 раза больше, ..." я прочитал так, будто в роли техлида вы стали писать больше кода в 3 раза.

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

Тем, что пишут программисты мало - согласен. По этому всегда смеюсь над аргументами в пользу всяких AI co-pilot, что они позволяют писать код быстрее. (типа вместо 5 минут в час будет 4 минуты))))

Но методика подсчётов ужастна.

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

А ещё работа по написанию строк сводится не только к коду. Ещё надо писать описание коммита, множество компнд в консоли и прочее.

Цитата: "Хорошие программисты пишут код, который будет понятен людям"
Это не всегда верный подход, и лучше его избегать. Пусть люди лучше учатся программировать и читать код, чем они смогут прочитать читабельный код, но сами сделать ни чего не смогут. Программировать они от этого не научаться.

Это не взаимоисключающие понятия. Нужно и тем кто изначально пишет адекватно понятно писать и тем кто поддерживает уметь программировать.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории