Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.25;
Скачать: CL | DM;

Вниз

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

 
тихий вовочка ©   (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;
Скачать: CL | DM;

Наверх




Память: 0.58 MB
Время: 0.046 c
6-1116495332
BanderLog
2005-05-19 13:35
2005.09.25
IdTCPServer - Terminate Thread Timeout


1-1125495898
Draught
2005-08-31 17:44
2005.09.25
Вычислить разницу во времени


2-1124096978
СержК
2005-08-15 13:09
2005.09.25
Нужно что-то типа: "TimeToStr" ...


4-1123098743
ZLOFENIX
2005-08-03 23:52
2005.09.25
помогите с ПРИМЕРАМИ


3-1123076033
redlord
2005-08-03 17:33
2005.09.25
как записать кавычку в строчное поле таблици через SQL запрос