Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];

Вниз

Вопросы производительности труда   Найти похожие ветки 

 
тихий вовочка ©   (2005-08-25 07:12) [0]

Какова должна быть средняя производительность труда программиста?
Столкнулся с такой ситуацией: пришел на собеседование на C# junior-developer"а, мне дали тестовое задание. Срок исполнения - 1,5 рабочих дня (чистого времени)
Вот задание:
Разработать редактор для баз MS SQL, позволяющий подключаться к произвольной БД, считывать названия таблиц и для каждого типа данных свой редактор делать (т.е. наследника колонки)
Это и правда, что такое пишется за 1,5 дня? Я потратил 3. Стоит ли мне тогда работать программистом?


 
Skyle ©   (2005-08-25 07:17) [1]

> Разработать редактор для баз MS SQL, позволяющий подключаться
> к произвольной БД, считывать названия таблиц


Это просто.

>  для каждого типа данных свой редактор делать (т.е. наследника
> колонки)

А вот этого не понял. Это как?


 
КаПиБаРа ©   (2005-08-25 08:28) [2]

А на что столько времени потратил (в часах)?


 
Gero ©   (2005-08-25 08:38) [3]

Смотря что такое колонка.
Наверное, написание редакторов заняло не менее 95% времени.
А какие именно редакторы требовалось написать?


 
Ozzya   (2005-08-25 08:45) [4]

кажется
400-500 строк отлаженного кода в день?


 
Skyle ©   (2005-08-25 09:32) [5]

> [4] Ozzya   (25.08.05 08:45)
Да, 500 строк/день...


 
КаПиБаРа ©   (2005-08-25 09:36) [6]

Ozzya   (25.08.05 8:45) [4]
Skyle ©   (25.08.05 9:32) [5]

Неужели коэффициент сложности кода/алгоритма не учитывается?


 
Sergey13 ©   (2005-08-25 09:37) [7]

Иногда, даже не написав ни строчки кода, кажется, что гору своротил.
Иногда наоборот.


 
Игорь Шевченко ©   (2005-08-25 09:40) [8]

Ozzya   (25.08.05 08:45) [4]


> кажется
> 400-500 строк отлаженного кода в день?


Это невозможно. В месяц - это я еще понимаю.


 
stud ©   (2005-08-25 09:41) [9]


> 400-500 строк отлаженного кода в день?

а строки какие? 256 символов включая пробелы?
пустая строка тоже строка, причем отлаженная))


 
Seg   (2005-08-25 10:16) [10]

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


 
Rule ©   (2005-08-25 10:17) [11]

главное отладить строку номер 18 , а остальное ерунда


 
Skyle ©   (2005-08-25 10:17) [12]

Я не знаю, откуда Ozzya берёт эту цифру, я знаю, откуда её беру я ;-)

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

В принципе, если идёт прямая разработка (не изменение текущего кода), то 500 строк в день (и даже больше) получить реально.

Другая сторона вопроса состоит в том, что "готов ли я признать это мерилом производительности?". Ответ - нет. Я считаю, что эта фраза из той же серии, что и "винт любого размера забивается за 2 недели" - т.е. "постулатов новейшей истории". Физики шутят.

Только и всего.

> [8] Игорь Шевченко ©   (25.08.05 09:40)

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

> [6] КаПиБаРа ©   (25.08.05 09:36)
Да, не каждый день, потому что иногда ещё думать надо. А время на раздумье в строках не измеришь.

В общем, думаю, что моё отношение к этой линейке понятно.

По сабжу: Если "для каждого типа данных свой редактор делать" - это то, что я думаю (Перекрыть EditButtonClick и в зависимости от типа данных в отображаемом поле показывать свой редактор), то это делается в пределах одного дня (максимум).


 
alpet ©   (2005-08-25 10:17) [13]

Имхо лучше практически проверить, если будешь не успевать, соответсветственно санкции пойдут, вплоть до увольнения.


 
Иксик ©   (2005-08-25 10:25) [14]


> Ozzya   (25.08.05 08:45) [4]


> Skyle ©   (25.08.05 09:32) [5]

Я слышал про 10-20 :). Если вообще можно таким образом что-либо измерить...


 
Mystic ©   (2005-08-25 10:29) [15]

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

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

К тому же, не всегда ясно, что писать :) Если целый ряд задач, где надо на 80% думать с листом бумаги, формулами, ... и 20% кодировать. Скажем, н апрошлой работе я полтора месяца вообще не колировал, сидел в MATLAB-е и думал :)


 
Ozzya   (2005-08-25 10:46) [16]


> Я не знаю, откуда Ozzya берёт эту цифру, я знаю, откуда
> её беру я ;-)
>
> Когда-то достаточно давно я читал книжицу по ассемблеру,
> и там было написано, что-то типа "профессиональные программисты
> пишут по 500 строк отлаженного кода в день".

Да ;)
то ли Скэнлон, то ли П. Нортон


 
Skyle ©   (2005-08-25 10:51) [17]

> [15] Mystic ©   (25.08.05 10:29)
Это в меня камень? ;-)
Прошу отметить, что я нигде
1. не призывал долбить по 500 строк кода
2. не говорил, что думать не надо, а долбить, долбить и долбить.

В общем, я не собираюсь защищать шутку, при расписывании которой я (возможно!) употребил некоторые слова, за которые можно зацепиться и превратно истолковать...;-)

Возможно некоторого пояснения требует моя фраза

> В принципе, если идёт прямая разработка (не изменение текущего
> кода), то 500 строк в день (и даже больше) получить реально.


Поясню. Есть форма, в ней несколько гридов, на каждый по запросу, и не всегда тривиальному. Даже если не брать во внимание автогенерируемый средой код, то код формы + тексты запросов вполне реально набрать 500 строк.
Никто же не сказал, что это всё должно быть на Delphi... ;-)


 
Игорь Шевченко ©   (2005-08-25 10:52) [18]

Skyle ©   (25.08.05 10:17) [12]


> Когда-то достаточно давно я читал книжицу по ассемблеру,
> и там было написано, что-то типа "профессиональные программисты
> пишут по 500 строк отлаженного кода в день".


Выбрось книжку в корзину


 
Polevi ©   (2005-08-25 10:53) [19]

500 строк в день, фи..
хорошая машинистка 300 символов в минуту вроде


 
Ozzya   (2005-08-25 10:57) [20]


> Игорь Шевченко ©   (25.08.05 10:52) [18]
> Skyle ©   (25.08.05 10:17) [12]
>
>
> > Когда-то достаточно давно я читал книжицу по ассемблеру,
>
> > и там было написано, что-то типа "профессиональные программисты
>
> > пишут по 500 строк отлаженного кода в день".
>
>
> Выбрось книжку в корзину

Зачем?
Для начала 90-х великолепные книги по ссемблеру. Да и сейчас можно почитать.


 
Skyle ©   (2005-08-25 10:59) [21]

> [18] Игорь Шевченко ©   (25.08.05 10:52)
> Выбрось книжку в корзину
Да давно уже...

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


 
stone ©   (2005-08-25 11:04) [22]


> Polevi ©   (25.08.05 10:53) [19]
> 500 строк в день, фи..
> хорошая машинистка 300 символов в минуту вроде

300 символов = 5 строк :))
по нормам журналистики
1 строка = 60 символов
1 страница = 50 строк


 
TUser ©   (2005-08-25 11:10) [23]

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


 
Marser ©   (2005-08-25 11:13) [24]

Мерять продуктивность строками это круто :-)

Я в начале этого месяца присел за один свой 76 кб-й модуль и через полтора часа он весил уже около 70-ти. При этом функциональность нисколько не пострадала, зато поднялась удобочитаемость. А ведь до того одна сравнительно не сложная процедура занимала 160 строчек.


 
TUser ©   (2005-08-25 11:13) [25]

Загадка в тему

Вася Хакерицкий пишет 2 строчки кода в секунду. А Катя Ламерицкая - одну строчку кода в 10 секунд. Вася делает одну ршибку на 20 строчек, а Катя - 20 ошибок в каждой строчке. Задачу они решают одну и ту же. Кто из них быстрее закончит отлаживать программу?


 
Marser ©   (2005-08-25 11:15) [26]

Marser ©   (25.08.05 11:13) [24]
... После чегодобавил ещй немного функциональности и качественно откомментировал. Вышло 82 кб :-)


 
alpet ©   (2005-08-25 11:17) [27]

TUser ©   (25.08.05 11:10) [23]
Не меряется производительность труда программиста в строчках исходного кода. Задач помимо кодирования всегда находится много - разработка алгоритма, проектирование, отладка, тестирование, ремастеринг, документация кода и т.д. И все они могут занимать произвольное время, в зависимости от соответствия уровня проф. готовности программиста к задаче.


 
Skyle ©   (2005-08-25 11:21) [28]

> [27] alpet ©   (25.08.05 11:17)
> Не меряется производительность труда программиста в строчках
> исходного кода


Зато я слышал, что у кого-то меряется зарплата. По крайней мере раньше так было...


 
Игорь Шевченко ©   (2005-08-25 11:24) [29]

Marser ©   (25.08.05 11:13) [24]


> Мерять продуктивность строками это круто :-)


Тем не менее, серьезные люди за рубежом меряют.

Читать http://webdev.lenagas.ru/tutorial/brooks/VIII.htm до просветления.


 
alpet ©   (2005-08-25 11:26) [30]

Skyle ©   (25.08.05 11:21) [28]

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


 
Skyle ©   (2005-08-25 11:28) [31]

>  [30] alpet ©   (25.08.05 11:26)
Путаешь подходы.
Они несовместимы.


 
Marser ©   (2005-08-25 11:30) [32]

Игорь Шевченко ©   (25.08.05 11:24) [29]
Знаю. Но в общем случае для этого нужны строгие правила. А так...
if
(
(smth
 =
 smth2
)
and
(
 smth3
 >
 smth4
)
)
or
(
 smth5
 <
 smth6
)
     then


 
boriskb ©   (2005-08-25 11:33) [33]

Игорь Шевченко ©   (25.08.05 11:24) [29]
Тем не менее, серьезные люди за рубежом меряют.


Шибко напрягся, что б понять - как это?
Наверное так:
1) Большой срок (месяцами, а то и годами должен измеряться)
2) Не маленький колектив.
3) Берется среднее

Тогда имеет смысл.
Перечитываем. "Мифический человеко-месяц"
Одного человека в день мерять - глупость получиться.
Бывают и дни и недели, когда программист ни строчки не пишет - зарплату не платить? :)


 
Игорь Шевченко ©   (2005-08-25 12:23) [34]

boriskb ©   (25.08.05 11:33) [33]

Разумеется, берутся усредненные оценки. Поденно никто не оценивает :)


 
Alex Konshin ©   (2005-08-25 12:58) [35]

Любые сроки нужно умножать на e или pi.


 
Alex* ©   (2005-08-25 14:07) [36]

http://cityref.ru/prosmotr/11506-6660.htm

Вот немного устаревшее описание ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ РАЗРАБОТКИ И ПРИМЕНЕНИЯ ПРОГРАММНЫХ СРЕДСТВ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

Расчет там идет во многих местах от количесва машинных команд.

P.S.По моему у большинства программистов повременная оплата труда по окладу. А если у кого-то сдельно повременная то никак не измеряется в строках скорее решении поставленных задач. ИМХО


 
TUser ©   (2005-08-25 15:43) [37]

Тут вспомнил. В одной программе видел такое

case Command[1] of
 "c":
   case (Command[1]) of
     "o":
       case (Command[2]) of
         "s": // ...
         "m": // ...
         end;
     "a":
       if Command = "..." then
         Proceed<...>Command;
     end;
 "d": // ...
 "s": // ...
 end;

Это был синтаксический анализатор, в этом конкретно месте программы решала - какую команду ввел пользователь. Команд она поддерживает много, все эти вложенные switch"и занимали страниц наверное, 10 (не распечатывал, конечно, но много). Все тоже самое можно записать короче в сто раз.


 
КаПиБаРа ©   (2005-08-25 15:50) [38]

http://russian.joelonsoftware.com/Articles/HighNotes.html


 
Юрий Зотов ©   (2005-08-25 16:06) [39]

Традиционно, наш программист - это не просто кодер (за что, видимо, они и ценятся). Мерять в строчках производительность труда чистого кодера - ну, наверное, это еще можно - но в чем измерить производительность мозгов?


 
Alex* ©   (2005-08-25 16:10) [40]


> но в чем измерить производительность мозгов?

В килограммах на объем проделанной работы. :о)



Страницы: 1 2 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.031 c
5-1100761074
Stanislav
2004-11-18 09:57
2005.09.25
Не создаеься потомок Tcollectionitem


3-1124113529
Bless
2005-08-15 17:45
2005.09.25
Профайлер для Firebird


3-1124180945
Дырчик
2005-08-16 12:29
2005.09.25
соединение таблиц


14-1125557962
Rentgen
2005-09-01 10:59
2005.09.25
PDF to DOC


4-1122890368
Fin
2005-08-01 13:59
2005.09.25
Электронный справочник по Api





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский