Сколько строк кода пишет программист в день
Перейти к содержимому

Сколько строк кода пишет программист в день

  • автор:

Кто из вас сколько строк кода пишет в день?

Вот давайте обсудим эту тему. Вот мне интересно сколько именно кода в день программисты пишут. Интересуют все и любители и профи и те кто этим деньги зарабатывает.
Интересует сам объем дневной работы.
Свое количество я напишу позже.

#1
14:05, 3 июня 2011

Только я надеюсь вы не считаете строчки вручную;)

#2
14:07, 3 июня 2011

Производительность программиста НЕ измеряется количеством написанного кода в день.
Ну разве что у Индусов только.

#3
14:37, 3 июня 2011

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

#4
14:41, 3 июня 2011

Вот я в день в среднем набиваю от 50 строк чистого кода, иногда при особом вдохновении (у правильном проектировании, если лень не победит) до 100 строк. Я никуда не спешу. И я не работаю программистом. Думаю у профи всеже больше результат. Но на мои проекты этого достаточно. А вот всего пять месяцев назад мне хватало от силы на 30-40 строк, да и то с копипастой (благодаря конкурсу стратегий я научился набивать много полезного кода)

#5
14:51, 3 июня 2011

Это вопрос из разряда:
Товарищи водители, кто из вас сколько раз нажимает на газ в день?

#6
14:53, 3 июня 2011

@!!ex
> Это вопрос из разряда:
> Товарищи водители, кто из вас сколько раз нажимает на газ в день?
Тем не менее на него можно ответить — взять например за месяц сколько написал строк подсчитать и поделить на дни. Это мера эффективности программиста но ответ на вопрос дает.

#7
14:58, 3 июня 2011

Чем больше кода пишет программист, тем более он говняный.

#8
15:00, 3 июня 2011

warchief
количество строк не очень характеристика имхо
все ведь зависит от
1) качество кода, говнокодить можно и по 100500 строк в день
2) возможностей среды, с использованием таких средств как Resharper и тп можно и 100500 строк качественного кода бить
3) синтаксиса языка, без комментариев )
4) можно ведь и считать по разному,
программист в очень редких случаях выдает прям без ошибочно большие блоки кода (имхо),
можно ведь вбить блок и весь день его править/дебажить/рефакторить набирая и стирая при этом очень много кода )

#9
15:03, 3 июня 2011

за вторую неделю не написал ни одной строки, так как сейчас идет стадия сетапа

к стати в идеальном случае использования шаблонов со всякими стратегиями в конце проекта пишут чаще не код а typedef’ы

#10
15:09, 3 июня 2011

cNoNim
Согласен когда число строк доходит до тысяч — это говнокод.

Тогда такой вопрос — сколько в среднем на день вы можете написать кода с любовью к нему? То есть такого кода который вызывает у вас самих восхищение

#11
15:09, 3 июня 2011

warchief
Не подходящий вопрос для пятницы 🙂
Придется ждать понедельника, чтобы добраться до проекта, и поделить строки на дни.

#12
15:14, 3 июня 2011

а вообще если честно слышать от программиста — а количество кода не указывает на мою эффективность и профессиональность, тогда что указывает? Я лично считаю (и меня так учили — был предмет проектирования информационных систем) что проектирование должно проходить один раз, перед началом работы над проектом, далее ничего проектироваться не должно, только правиться, тестирование по завершению проекта, тогда чем занимаются проф программисты если для них не важно число кода?:)

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

#13
15:15, 3 июня 2011

А вот сколько здесь строк кода?:

/// /// A user-definable name. /// public string Name < get < return properties.name; >set < if (properties.name != value) < OnPropertyChanging(LayerProperties.NameName); properties.name = value; OnPropertyChanged(LayerProperties.NameName); >> >
private bool disposed = false; protected override void Dispose(bool disposing) < if (!disposed) < disposed = true; try < if (disposing) < if (surface != null) < surface.Dispose(); surface = null; >> > finally < base.Dispose(disposing); >> >

#14
15:16, 3 июня 2011

Те кто говорят, что количество строк не показатель — просто лодыри и бездельники.
300 строк в день обязан писать любой программист.
Для С++ это число больше, так как там больше бесполезного кода.

Некоторые малоизвестные факты о программировании

Будучи программистом я многое узнал о том, как создаётся программное обеспечение. Вот несколько фактов, которые могут вас удивить.

Программист тратит 10-20% своего времени на написание собственно кода, и большинство программистов пишут всего 10-12 строк кода в день, которые попадают в конечный продукт, независимо от их уровня. Хорошие программисты тратят большую часть оставшихся 90% времени на размышления, исследования и эксперименты в поисках наилучшего решения. Плохие программисты тратят это время на отладку, случайные изменения в коде и последующую проверку его на работоспособность.

«Хороший токарь работает в несколько раз лучше среднего, но хороший программист стоит в 10000 раз больше, чем обычный»
Билл Гейтс.

Хороший программист в 10 раз более продуктивен, чем средний. Отличный программист в 20-100 раз более продуктивен, чем средний. И это не преувеличение — исследования, проводящиеся с 1960-х годов, чётко это показывают. Плохой программист не просто непродуктивен: он не только не выполняет свою работу, но ещё и создаёт проблемы, которые приходится решать другим.

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

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

В исследовании 2004-го года было обнаружено, что большая часть программных проектов (51%) сталкиваются с критическими проблемами (срыв сроков, превышение бюджета, невыполнение обязательств, нарушения функционала и т.п. — прим. пер.), а 15% полностью проваливаются. Это лучше, чем в 1994-м, когда последних было 31%.

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

Программирование — тяжёлый труд. Это очень напряжённая умственная деятельность. Хорошие программисты думают о работе 24 часа 7 дней в неделю. Они пишут лучший код в душе и в своих снах. Поскольку самая важная работа делается вдали от клавиатуры, разработку программных проектов нельзя ускорить, заставляя людей больше работать в офисе, или добавив новых людей в проект.

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

  • программирование
  • производительность труда
  • архитектура приложений
  • факты
  • работа

Программист мало пишет, но много читает

Здравствуйте, меня зовут Александр, я backend-разработчик. Цель данной публикации – проанализировать затраты времени при разработке приложений. Расчеты приведены на основе web приложений на языке Python. Так же не рассматривается ситуация разработки MVP для получения различных тендеров. В качестве упрощения, в данной публикации слова «разработчик» и «программист» являются синонимами.

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

Оценим сколько символов кода мы в среднем пишем. Для начала рассмотрим среднее количество символов в строке кода (с учетом все отступов). Для этого рассматривалось 20 реальных проектов, реализованных на языке Python на следующих фреймворках: FastApi, Django, Pyramid. Результаты приведены в таблице

Без учета пустых строк

С учетом пустых строк

Для упрощения возьмем 40 символов в строке, т.е. примерно 10 слов (4 символа на слово).

А сколько строк кода мы пишем в день? В работе [1] указывается, что мы пишем в среднем 10 – 12 строк. А в работе [2] указывается, что в день программист пишет 100 – 150 строк кода. Т.е. даже если возьмем 100 строк кода в день, то получим в среднем 4000 символов, или примерно 1000 слов это, кажется, немного. Но действительно, если посмотреть на Merge requests зачастую они будут небольшие (десятки строк кода). Конечно, бывают исключения. При разработке нового функционала добавляются большие объемы кода, Merge requests на сотни строк. Но перед этим идет этап изучения проблемы, выбор способа реализации, а после исправление багов и доработка новых фич. При которых кодовая база увеличивается совсем незначительно. Для сравнения в статье [3] приводится средняя скорость набора текста 50 слов в минуту, это 24 000 слов в день. Что значительно больше.

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

Ответ прост — он думает и читает, читает и анализирует. А что именно он читает:

  • документацию всего проекта, для понимания того, что он разрабатывает;
  • легаси-код – ведь далеко не всегда мы включаемся в абсолютно новый проект;
  • свой собственный код – при доработке новых фич, при исправлении багов, при рефакторинге мы должны вначале прочитать и понять, то, что писали ранее. В связи с этим вспоминается цитата М. Фаулера «Любой дурак может писать код, который будет понятен компьютерам. Хорошие программисты пишут код, который будет понятен людям»;
  • автоматические тесты – которые в некоторых случаях могут дополнять или заменять документацию.
  • документацию, новые возможности библиотек и фреймворков. Т.к. происходит их постоянное развитие и архитектурные и технические решения актуальные ранее могут быть не самыми оптимальными сегодня;
  • и конечно же книги и статьи для расширения кругозора и понимания тенденций развития IT. Поиска новых, более оптимальных технических решений для проекта.

Как раз анализ всего прочитанного позволяет писать качественный программный код. Который в дальнейшем удобно поддерживать и развивать. Не стоит пренебрегать качеством в угоду количеству. Это чревато появлением различных ошибок связанных с выбором неправильных подходов и технологий. И если вспомнить «Чистый код» Р. Мартина на исправление таких ошибок, может тратится огромное количество времени. Так же необдуманные технические решения могут изначально позволить быстро реализовать начальный функционал, но при этом полностью заблокировать дальнейшую разработку продукта.

Программирование — специфический труд. Это очень напряжённая умственная деятельность, которая не ограничивается рабочим днем. Программистам свойственно стремление к постоянному саморазвитию и изучению нового. Именно поэтому самая важная работа делается как раз вдали от клавиатуры.

  • python
  • программирование
  • производительность труда

Сколько строк кода вы пишете в день?

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

P.S. наверное такой опрос уже проводился, да?

�� Подобається Сподобалось 0

До обраного В обраному 0

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

48 коментарів

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

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

Наверное много не считал )

Сильно зависит от клавиатуры. Когда пересел на мембранную — сразу рейт подняли! Так и сказали «вот тебе 1.5 доллара в час, ты теперь сеньйор»

а разве за строчки платят?

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

О, хтось викопав некротопік.
Тут про оплату за кожну стрічку коду: skeptics.stackexchange.com/. ​een-paid-per-line-of-code
Ще чув про Індію, що там це практикується, в результаті плодять код заради кількості (пруфів не знайшов).

В моїй роботі це може бути 10 стрічок чи одна на день, однак важливіше що саме за нею стоЇть — а це може бути 8 годин вивчення якості даних і в результаті створення декількох баг репортів для інших команд, щоб загалом продукт працював відповідно до вимог.

Юрій Якимчук software engineer в Inkosoft 14.11.2019 09:32

Зазвичай отак 😀

8 files changed, 143 insertions(+), 1353 deletions(-)

Иногда по 1000 строк, но у нас активный девелопмент, а не суппорт.
То что там в книжках про 1000 строк в год пишут — купите другие книжки.

Но за строки мне не платят.

Чем меньше — тем лучше. Следует всегда помнить, что «Идеальный код — это ненаписаный код.» — его не нужно документировать и сопровождать, он не содержит ошибок, он ничего не стоит, и так как его нет в проекте, то он собственно там и не нужен.

Весь смысл пограммирования он ведь в чем? А в том, чтобы выполнялось Главное Техническое Задание, которое как известно всегда одно и тоже, и выражается фразой всего из 4 слов — «Что бы все было заи$%сь! ». В этом глобальном задании такой параметр как число строк кода напрочь отсутствует — так что не парьтесь по этому поводу.

Alex Alex Senior software developer в Itera 19.12.2009 14:20

Количество строчек зависит от опыта. Напремер из практики знаю, что code behind класс для asp.net странички неопытный кодер накодил длиною > 1000 стр. Потом его переписали и он стал длиною где-то 100 — 200 стр. Так, что ребята, как по мне, если человек пишет очень много кода в день, то или он мега продуктивный гений или быдлокодер:)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *