LINUX.ORG.RU

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

 , , ,


1

3

Интересует, сколько (примерно) строк _рабочего_ кода в месяц - нормальный результат для разработчика фуллтайм? Считается, что область применения разработчику достаточно хорошо известна.

★★★

Последнее исправление: conalex (всего исправлений: 1)

Ответ на: комментарий от anonymous

ручное

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

anonymous
()
Ответ на: комментарий от anonymous

Мне и всем моим друзьям таким приходится заниматься 5-6 раз в год, а то и меньше, если специальные вышеописанные люди в организации наличествуют. Не показатель.

У нас R&D отдел, мы пилим POC. Такое считай основная наша деятельность.

Dudraug ★★★★★
()
Ответ на: комментарий от anonymous

и заставили сеньора бегать самому 100500 раз по кнопкам щёлкать

Очевидно, что синьор поручит это джуниорам и стажерам.

Dudraug ★★★★★
()
Ответ на: комментарий от anonymous

Ты путаешь кроссфункциональную команду с кроссфункциональными специалистами.

Сеньер-программист будет программировать, тестировать будет тестировщик. И он тоже входит в команду разработки, а не в отдельном отделе сидит.

anonymous
()
Ответ на: комментарий от anonymous

Сеньер-программист будет программировать, тестировать будет тестировщик.

О чём и шла речь

И он тоже входит в команду разработки, а не в отдельном отделе сидит.

Это уже детали. Где-то так, где-то по-другому. В тех местах, что мне известны из практики или из первых уст чаще было по-другому.

anonymous
()
Ответ на: комментарий от anonymous

Программист за месяц не смог добиться 100% точности распознавания обектов с одного набора картинок. Напечатал несколько тысяч строк кода и все твердит о какомто переобучении. Только имитирует деятельность а результата нет. Нанял другого программиста по рекомендации от знакомых. Он за три часа сделал как надо и получил 100% точность. Результат поместился в пятьдесят строк кода.

БОЖЕ! КАКАЯ ТОНКОТА! АНОН, ТЫ СДЕЛАЛ МОЙ ВЕЧЕР!!!

shkolnick-kun ★★★★★
()
Ответ на: комментарий от Dudraug

дайка мне пруфца на мое «НЕТНИТАК!» в ответ на «все субъективно и зависит от частного случая» и разойдемся на этом.

conalex ★★★
() автор топика
Ответ на: комментарий от Dudraug

Отлично, значит вы больше исследователи, чем разработчики. А тред про разработчиков. Значит, не про вас.

anonymous
()
Ответ на: комментарий от anonymous

Отлично, значит вы больше исследователи, чем разработчики. А тред про разработчиков. Значит, не про вас.

Но мы же пишем код=) Который даже работает. Кек.

Dudraug ★★★★★
()
Ответ на: комментарий от conalex

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

Dudraug ★★★★★
()
Ответ на: комментарий от Harald

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

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

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

anonymous
()
Ответ на: комментарий от conalex

Как дополнительные параметры - соответствие кода документации, качество кода и документации, цикломатическая сложность кода (да, за говнокод придется оправдываться).

shkolnick-kun ★★★★★
()
Ответ на: комментарий от anonymous

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

Я задачи уровня посмотри на формулу или псевдокод и сделай код на си вообще не рассматриваю - это уровень джуниоров или студентов маладших курсов.

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

Dudraug ★★★★★
()
Ответ на: комментарий от Harald

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

anonymous
()
Ответ на: комментарий от Dudraug

окей.

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

А вот тебе пример из жизни.

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

Было два варианта написать код вручную под конкретное железо(под другое железо имплементация уже была), или использовать библиотеку. Использование библиотеки подразумевало: 1) изучение ее API; 2) написание статического(на хардкоде) тестового примера; 3) изучение точности вычислений; 4) измерение перформанса; 5) написание доп. кода (либа требует другое размещение в памяти и немного доп. мат. действий). 6) тестирвание этого препроцессинга на точность и перформанс 7) склеивание всего вместе 8) тестирвоание 9) подбор лучшей конфигурации 10) небольшие оптимизации.

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

В итоге мы имеем реализацию под либу на 50 строк. И потенциально 500-1000 строк кода в ручной реализации от которой мы отказались. Время почти одинаковое ушло бы. Задача решена.

Объяснять чем либа лучше своего костыля надо?

И вот теперь вопрос, можно ли считать, что человек сделавший это через либу в 50 строк поработал в 10 раз хуже того кто сделал это вручную?=)

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

conalex ★★★
() автор топика
Ответ на: комментарий от anonymous

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

Если заказчику не интересна скорость написания кода и он все равно платит, то и тееб зачем запариваться «а могу ли я». Все же просто.

Dudraug ★★★★★
()
Ответ на: комментарий от conalex

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

Окей, с этим моментом разобрались. Что тогда цифра строк кода обоих программистов показывает? Какое практическое применение у 500 строк кода у одного программиста, и 50 у другого. Какие выводы без доп. информации и оговорок мы можем сделать?

И более того, теперь главный вопрос, в топике ты пытаешься узнать «нормальный разультат в кол-ве строк кода». Что тебе даст знание, что программист Петя написал больше или меньше этого значения?

А теперь покажу тебе где ты говорил «НЕТНИТАК»:

Первое я сказал, что размер файла я не измеряю, да и никто из того где я работал и кого знаю этого не делает.

И резонно спросил тебя «зачем это делать?»

На что ты ответил Сколько строк кода в месяц пишут на Си (комментарий)

На что я ответил Сколько строк кода в месяц пишут на Си (комментарий) Что обычно это делается на глаз, что никто не считает кол-во строк в одном файле. А делается это так 1) человек исходя из своего опыта понимает, что «хватит утолщать файл»; 2) у нас в проекте есть гигантский файл который пора бы зарефакторить; 3) опытный программист произодит ревью кода неопытных и указывает им на перегруженность кода и необходимость передать. В итоге чистый субъективизм, а код стайлы описывают обычно другое. Кол-во строк кода в функции мб и то не всегда=) Но осовная идея тут, что все делается «на глаз». Даже если это есть в код-стайле, то это рандомное число выбранное для код-стайла, то есть «на глаз» в любом случае.

А дальше ты пишешь, что «нииит, для этого пишут код-стайлы» по сути признавая что число субъектвно.

Dudraug ★★★★★
()
Последнее исправление: Dudraug (всего исправлений: 1)
Ответ на: комментарий от Dudraug

окей. с кодестайлами я малость перегнул, согласен.

conalex ★★★
() автор топика
Ответ на: комментарий от conalex

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

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

oxo
()
Ответ на: комментарий от Deleted

Ты хотел сказать, вместо

(reduce + arr)
На лицo стремление увеличить LOC вдвое.

rupert ★★★★★
()
Ответ на: комментарий от conalex

количество файлов намного проще оценить чем количество строк

Впервые слышу про такой метод. Если проект уже написан, то файлы можно посчитать. Но каким образом можно оценить количество файлов в начале проекта?

rupert ★★★★★
()
Ответ на: комментарий от anonymous

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

rupert ★★★★★
()

Мой рекорд 2 строки за месяц + просмотр всех серий сверхъестественного, потом подняли зп, накидали задачек и работать стало веселей.

AntonyRF ★★★★
()

Тоже считаю, что вопрос не имеет смысла, но посчитал свою статистику ради интереса.

За последний год в среднем за месяц добавляю 1000 строк в репозиторий, меняю 200, удаляю 400.

В месяце, когда в основном занимался бюрократией, написал 254 строчки. В месяце, когда занимался реализацией, написал 2881 строчки (и поменял 632 строчки). В месяце, когда боролся с легаси, удалил 4969 строчек, поменял 236 и написал 1885.

Что скажете, я хороший программист?

vzzo ★★★
()
Ответ на: комментарий от vzzo

Что скажете, я хороший программист?

А х*й его знает...

Собственно это мы и пытаемся объяснить ОПу=)

Dudraug ★★★★★
()
Ответ на: комментарий от vzzo

я не делаю никаких выводов о «хорошести» программиста на основании этих цифр. вопрос ради интереса. с тем же успехом можно было спросить сколько вы тратите денег в месяц или сколько у вас было баб.

но что характерно.

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

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

умора.

но это совсем другая история.

conalex ★★★
() автор топика
Ответ на: комментарий от conalex

Так, поясню, что не так с твоим вопросом.

1) тэг «работа на заказ» 2) словосочетание «нормальный результат»

Эти два пункта вводят в неудоумение.

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

не знаю что тебе еще сказать.

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

conalex ★★★
() автор топика
Последнее исправление: conalex (всего исправлений: 1)
Ответ на: комментарий от anonymous

Кажется у нас тут появился Царь прожэкт менежмента 8).

Deleted
()
Ответ на: комментарий от rupert

В Открытии, например. Но там пишут не на сишечке, да. Хотя, скрипты нагрузочного тестирования как раз на ней родимой.

anonymous
()
Ответ на: комментарий от conalex

Только восприятие как видишь твоего вопроса неочень=) Если б ты по другому поставил вопрос, то не было бы и агра. Нормальный результат - это подразумевает, что есть «ненормальный». А «работа на заказ» подразумевает, что ты собираешься это использовать как метрику или оплаты работы или, чтоб тебе по ней платили.

Dudraug ★★★★★
()
Ответ на: комментарий от rupert

Да много где.

У нас в компании отделов очень много, но это касается продуктовых департаментов. В R&D разработчик как правило и архитектор, и кодер, и тестер, и аналитик, а возможно еще и технический писатель. И эти две крайности в одной фирме. Так что по разному бывает.

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

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

Неочевидно. Заказчик понятия не имеет, кто сделает задачу быстрее.

Если считаешь, что платят мало, значит считай, что и работать ты можешь лучше, а не работаешь.

Спасибо, я достаточно в своей жизни насмотрелся на тех, кто работает по 9 часов в день и при том реально хорошо работает, а зарабатывает меньше тех, кто на работе реально спит все 8 часов, или ещё хуже проявляет отрицательную производительность, чтобы в такую лабуду верить. Иногда оба таких индивидуума работают даже в одной организации на одинаковых должностях.

Если заказчику не интересна скорость написания кода и он все равно платит, то и тееб зачем запариваться «а могу ли я».

Всё равно платит достаточно, да. Но есть зачем. Мне лично для себя это интересно.

anonymous
()
Ответ на: комментарий от Dudraug

восприятие, которое «не очень», конкретно тебе пытались подправить неоднократно. и не только я. ну, и кто же тебе доктор?

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

conalex ★★★
() автор топика
Ответ на: комментарий от Dudraug

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

anonymous
()
Ответ на: комментарий от anonymous

Спасибо, я достаточно в своей жизни насмотрелся на тех, кто работает по 9 часов в день и при том реально хорошо работает, а зарабатывает меньше тех, кто на работе реально спит все 8 часов, или ещё хуже проявляет отрицательную производительность, чтобы в такую лабуду верить. Иногда оба таких индивидуума работают даже в одной организации на одинаковых должностях.

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.