October 26, 2006

Внутрипроектная коммуникация

По мотивам поста Константина Старовойтова.

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

Так вот. Разговор шёл изначально о том, какие мысли возникают в головах подчинённых (программистов) в случае, когда начальник (менеджер), ничегошеньки не смысля в используемых техноолгиях, навязывает своё видение решения. Причём всё это рассматривается в рамках не-ИТ-компаний. Хотя, на мой взгляд, любой ИТ отдел - это маленькая компания.

Хочу здесь описать ещё два варианта развития процесса взаимодействия программиста и менеджера.

Вариант 1: программист сделает так, как хочет начальник, но только из вредности, а не потому что верит в его (начальника) непогрешимость. Отмечу сразу, что до такого состояния "да гори оно всё синим пламенем" программиста ещё надо довести. Как это сделать? Игнорировать все его попытки высказать свою точку зрения будет достаточно.

Вариант 2: делать так, как говорит начальник (чтобы он отстал), но параллельно реализовать свою версию решения. А потом всё это выдать на гора и сравнить. Выход самый оптимальный, но малоприменимый на практике, потому как требует вдвое больше работы. Зато есть плюс: когда варианты будут исследованы и предложенный программистом будет признан лучшим, можно сказать "ну я же вам говорил!". Self esteem повышается в разы.

Имхо: к программисту лучше подходить не с ответом, а с вопросом, в смысле, что лучше дать ему помучаться над задачей, чем дать полуготовое решение на реализацию. Мне, например, гораздо интереснее было бы найти решение самому, а потом обсудить его и, возможно, улучшить. Кроме того, психологически трудно придумать что-то новое и, возможно, лучшее, когда на руках есть готовое решение. В спорной ситуации самым главным оказывается даже не профессионализм каждого участника, а способность их всех достичь желаемого результата вместе через диалог диалогу.

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


Comments:
Как-то пришлось мне реализовывать "Систему Электронного Документооборота" с веб интерфейсом для одного завода Х. Хотя у Х уже была, но разработчики растерялись, и фичи прикручивать стало некому.
Выбора мне не дали в одном моменте:). Писать надо было на Джаве с использованием стороннего "сделанного на коленке" сервера приложений З. И руководство неучло тот факт, что я Джаву в глаза не видел. В итоге, система скоро пойдет в опытную эксплуатацию, - думаю что удачно. Но от Джавы xslt xml и З меня тошнит:) - может из-за навязывания, может..:)

 


А был ли начальством как-то аргументирован выбор сервера приложений, тем более "сделанного на коленке"? Довольно странный, надо сказать, выбор, особенно если учесть, что разработчик не знает Жаву :-) Ведь наверняка существуют сервера приложений, которые позволяют писать на знакомом языке. Joel (http://www.joelonsoftware.com) в одном из своих эссе отметил: "неважно, что является мейнстримом в данной области, важно использовать те инструменты, в которых ты профи" (мой вольный перевод из памяти).

 


Я читал книгу Джойла, - он иногда глупости говорит:).
На начальном этапе я не мог реально оценить все за и против, - поэтому мало что помню. Мой непосредственный бос свозил меня к разрабочикам "сервера приложений", с которыми диалог был примерно такой:
- Почему именно Джава, а не пхп или perl?
-- пхп годиться только для домашних страничек
- а сайт Novell написан на пхп, это не домашняя страница
-- у нас был один программист, написал один проект на perl за неделю, после месяца работы проект начал глючать. Мы переписали его на Джаве за месяц и теперь глюков нет.
- ну это у программиста perl руки кривые были
-- нет, он очень опытный!
..
- т.е. выбора у меня нет?
-- нет.
.. короче бред религиозный:).

 


Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?