Необезличенный пятницопост или о наведении порядка в технологиях
Вчера вышел знатнейший срач на работе.
Преамбула: предварительное обсуждение интеграции нашего софта с чужим пришло к идее "использовать RESTful веб-сервис для получения-раздачи содержимого". Ну, чтобы не городить огород с чем-то нестандартным. Я сразу начал продвигать идею "используем готовый веб-сервис на Clojure", который у меня уже несколько месяцев работает в опердени со страшной силой.
Ребе
belnetmon, формально согласен с такой постановкой вопроса, но из практических соображений посчитал, что надо все таки городить огород из самодельщины на Delphi, чтобы хотя бы кто-то на работе мог потом это понять.
Так же ребе Б исходит из соображений "чтобы было лучше для работы и конечного результата". Т.е. сознательно пользуется мейнстримными языками (которые ДИЧАЙШЕ ограничивают выразительные возможности при работе, но КАК БЫ позволяют набрать с улицы за еду студентов чтобы они работали).
Я же проталкиваю свою идею ради того, чтобы на работе хоть кто-то мог заменить меня, в случае если я очередной раз в машине головой ебнусь. И я ТОЖЕ исхожу из соображений "конечного результата", потому что в условиях "нет ТЗ, нет договора, требования - из разговоров с бухгалтерией, все разработки - срочно через неделю, чтобы сдать налоги и отчетность" я по другому ничего просто не смогу написать.
Кроме этого, все требования выделить мне программиста в помощь и на замену за последние пять лет были пропущены мимо ушей, поэтому будущее фирмы и благополучие руководства, не заботящегося о себе и фирме, для меня гораздо менее важно, чем развитие собственных мозгов, писание линуксов и кложурей и прочий клуб по интересам на рабочем месте.
Привлекли к спору руководство. Руководство в данном случае находится в дичайше патовой ситуации: ни одному из разработчиков невозможно ничего приказать. Вообще никак. На работе - клуб по интересам. У меня висит две крупных задачи и N мелких - я могу выбирать то, что мне интересно, например Clojure и опердень, или там обработка случайных пространственных сигналов. Все задачи нужны, все задачи важны - можно пинать хер.
Еще один разработчик два месяца принципиально не показывается на новом офисе, т.к. его не устраивает как сделано его рабочее место. У него есть старый офис, куча поездок по работе по всей стране - другое ему похер.
В итоге, свелось к следующему: "ничего не делаем, потому что изучение Clojure младшим программистом под моим руководством, в то время, как ребе
belnetmon пишет на дотнете и срочно готовит огромный пакет документации к сертификации продукта - это нарушение субординации и издевательство". В плане того, что, на самом деле, программист с которым мы интегрируемся, не умеет веб-сервисы - нормальный результат. А перспективы фирмы никого не волнуют.
И да, то, что использование мейнстримных языков якобы позволяет что-то там гарантировать - это иллюзия. Во-первых, программисты на C#/гопнете с улицы в среднем заведомо более тупые, чем программисты на лиспах, хаскелях и немерле. Во вторых, проблема не в языках. Проблема в предметной области и в выбранном стиле управления, позволяющем вышеописанные казусы.
PS: Кстати, мой проект никуда не денется, даже если меня заберут пауки в розетку.
Его две трети сделано на дельфи, коий знают все.
Его базовая платформа известна 5 человекам на фирме. Опять же - это сделано мной, методом "заставить всех взять нормальный продукт вместо горождения самодельного огорода".
Есть еще два человека, знающих предметку (правда, второй - моя жена, водящая машину). Обучены мной.
Есть баг-трекер и система контроля версий. Внедрены мной.
И есть несколько кложурщиков и лисперов в минске, которых можно привлечь.
Преамбула: предварительное обсуждение интеграции нашего софта с чужим пришло к идее "использовать RESTful веб-сервис для получения-раздачи содержимого". Ну, чтобы не городить огород с чем-то нестандартным. Я сразу начал продвигать идею "используем готовый веб-сервис на Clojure", который у меня уже несколько месяцев работает в опердени со страшной силой.
Ребе
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Так же ребе Б исходит из соображений "чтобы было лучше для работы и конечного результата". Т.е. сознательно пользуется мейнстримными языками (которые ДИЧАЙШЕ ограничивают выразительные возможности при работе, но КАК БЫ позволяют набрать с улицы за еду студентов чтобы они работали).
Я же проталкиваю свою идею ради того, чтобы на работе хоть кто-то мог заменить меня
Кроме этого, все требования выделить мне программиста в помощь и на замену за последние пять лет были пропущены мимо ушей, поэтому будущее фирмы и благополучие руководства, не заботящегося о себе и фирме, для меня гораздо менее важно, чем развитие собственных мозгов, писание линуксов и кложурей и прочий клуб по интересам на рабочем месте.
Привлекли к спору руководство. Руководство в данном случае находится в дичайше патовой ситуации: ни одному из разработчиков невозможно ничего приказать. Вообще никак. На работе - клуб по интересам. У меня висит две крупных задачи и N мелких - я могу выбирать то, что мне интересно, например Clojure и опердень, или там обработка случайных пространственных сигналов. Все задачи нужны, все задачи важны - можно пинать хер.
Еще один разработчик два месяца принципиально не показывается на новом офисе, т.к. его не устраивает как сделано его рабочее место. У него есть старый офис, куча поездок по работе по всей стране - другое ему похер.
В итоге, свелось к следующему: "ничего не делаем, потому что изучение Clojure младшим программистом под моим руководством, в то время, как ребе
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
И да, то, что использование мейнстримных языков якобы позволяет что-то там гарантировать - это иллюзия. Во-первых, программисты на C#/гопнете с улицы в среднем заведомо более тупые, чем программисты на лиспах, хаскелях и немерле. Во вторых, проблема не в языках. Проблема в предметной области и в выбранном стиле управления, позволяющем вышеописанные казусы.
PS: Кстати, мой проект никуда не денется, даже если меня заберут пауки в розетку.
Его две трети сделано на дельфи, коий знают все.
Его базовая платформа известна 5 человекам на фирме. Опять же - это сделано мной, методом "заставить всех взять нормальный продукт вместо горождения самодельного огорода".
Есть еще два человека, знающих предметку (правда, второй - моя жена, водящая машину). Обучены мной.
Есть баг-трекер и система контроля версий. Внедрены мной.
И есть несколько кложурщиков и лисперов в минске, которых можно привлечь.
no subject
Знакомое состояние. Число грузовика равно 1. Тут три этапа:
1. Понимаешь, что без тебя проект сдохнет, прешься с собственной незаменимости.
2. Понимаешь, что без тебя проект сдохнет, пашешь, это напрягает.
3. Понимаешь, что так пахать нельзя и если проекту суждено сдохнуть - он это сделает все равно.
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Проблема в идеологии, которая и меня, и метакласса дитчайше бесит. Руководство ориентировано на результат, причем на самый что ни на есть результат в самом его макро смысле. Хоть это на бат файлах будет сделано - это вообще никого не волнует. Это нервирует :)
no subject
Его две трети сделано на дельфи, коий знают все.
Его платформа известна 5 человекам на фирме. Опять же - это сделано мной, методом "заставить всех взять нормальный продукт вместо горождения самодельного огорода".
Есть еще два человека, знающих предметку (правда, второй - моя жена, водящая машину).
Есть баг-трекер и система контроля версий.
И есть несколько кложурщиков в минске, которых придется привлечь.
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
no subject
(no subject)
(no subject)
(no subject)
no subject
no subject
no subject
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Формально прав ребе Б. Не смотря на то, что ортуреги с улицы тупы, шансы на то, что они смогут разобраться в код на нете выше - они хотя бы общее представление о нете имеют. Правда как их знакомить с предметной областью, я хз. Особенно в силу доминирующего среди ортурегов представления о программировании, как об изолированной от жизни области знаний и желания работать в духе "ты мне скажи, что делать, иначе я буду в потолок плевать".
С другой стороны, если вы опять ударитесь головой об болото, наличие у вас юного падавана ваши проекты не спасет. А т.к. писать надо быстро и активно - лучше кложурь.
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Умных дохера, умных просто завались, каждый второй в уме диффуры рещает и может оюьяснить чем монада от аппликативного функтора отличается. Чо толку то если у них вместе с этим умом идут сто ментальных багов. Возьмёт решит что всё должно бять идеально и начнёт всю вашу дельфю на хаскелл перетаскивать. И полировать потом два месяца чтоб совсем идеально, перфекционист блядь. И потом ещё по месяцу на каждую мелкую фичу, потому что рефакторинг! Ум это замечательно, но общая адекватность и как бы это назвать... прагматичность? она не зависит от того какие языки он знает
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Впрочем, самое весёлое в разсуждениях "вот мы возьмём PHP вместо лиспа, и у нас будет куча разработчиков" -- что куча разработчиков, которым важно чтобы было PHP вместо лиспа никогда не напишут большэ, чем тот, кто знает чем лисп круче чем PHP. То есть это действие безсмысленное в ноль для развития продукта.
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
Если меньше - только с такими же условиями как здесь - т.е. наличие некоторой самостоятельности в принятии технических решений, отсутствие ебли мозгов руководством, адекватный коллектив, свободный график (в плане - на работе присутствую 6 часов, чтобы общаться с коллегами, все остальное работаю, когда и как мне удобно).
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
no subject
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Мне хватило один раз понаблюдать, как выбрали пыхопых по таким же причинам.
И на собеседование приходили ТАКИЕ кандидаты..........
Сейчас уже нет никакого риска использовать ни кложуру ни даже хацкель.
Вот Agda/Coq — пожулуй, есть ещё риск.
no subject
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
Очень хочу, желательно как с теорией (почему это хорошо) так и с практикой (как этого хорошо добиться) )))
no subject
(Anonymous) 2012-06-10 09:16 pm (UTC)(link)