По мотивам срачей с ребе айседом на тему "LISP/Clojure vs Java vs C++ vs Ruby vs Haskell" запишу свои тезисы, чтобы не забыть:
0) Выбор языка программирования - по сараю. Код никто не пишет. 90% работы - это общение с клиентами, писание требований, документирование, объяснение клиентам, почему их требования не имеют смысла, где взять готовый продукт, делающий нужное, и прочая и прочая.
Ход мысли не программиста-фанатика, мыслящего категориями "как и на чем писать", а категориямии руководителя-менеджера "зачем писать, какие ресурсы использовать для этого, какая будет прибыль и какие дальнейшие прибыли или убытки это за собой потянет".
1) Язык программирования не должен мешать программированию и не отправлять стричь яка. Т.е. если мне для реализации проекта внезапно оказывается необходимым общаться лично с автором виндового рунтайма хаскеля - извините, в продакшен непригодно.
2) Основная проблема - это не собственно выполнение работы (по моему, если не лезть в реализацию совсем уж новых концепций программирования, типа "а теперь мы сделаем хаскель, на котором можно писать низкоуровневые драйвера", то все мыслимое и немыслимое уже придумано и сделано, достаточно разобраться, склеить и скомпилировать), а заставить себя взяться за эту работу. Если язык при этом лезет под ноги всяким тупизмом, т.е. в 2012 году ВНЕЗАПНО не работает "искаропки" - отправляется в утиль.
Есть только одно неприятное следствие вышеуказанного: если так думать, заниматься "личными" проектами становится крайне затруднительно. Прибыли от них нет, приобретенное умение программировать уже НЕ НУЖНО, сделать что-то действительно новое и полезное - 90% будет не код, а анализ рынка, реклама, общение с коллегами, клиентами, заказчиками, опен-сорсным комьюнити и прочая.
А писать в стол всякое уныние, коего готового 100500 вариантов - нет вообще никаких стимулов.
Последнее время эта тема напрягает, т.к. я привык постоянно заниматься какими-то "интересными проектами", но постепенно требования к ним в силу моего перфекционизма переросли порог "можно сделать в свободное время не напрягаясь".
January 22 2012, 18:36:49 UTC 4 months ago
January 22 2012, 18:38:24 UTC 4 months ago
January 22 2012, 18:42:17 UTC 4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
January 22 2012, 18:40:25 UTC 4 months ago
Нужен какой-нибудь кофенапоминальник - пишем три строчки на авке/баше и добавляем в хоткеи шоб через 5 минут после нажатия выскакивало 'кофе готов'. Ну итд итп по аналогии.
January 22 2012, 18:43:48 UTC 4 months ago
А у меня к 3 строчкам на баше будет еще 100 строк инсталлятора, 200 документации, отдельный раздел в багтрекере и обучение пользованию этим жены и детей)
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
January 22 2012, 18:43:49 UTC 4 months ago
Вычеркни ! :)
Выложив хуй во всю длину на стол, надо ответить"О ! Да ! Мы сделаем это на лиспе, такого больше никто не сделает, вы будете первым
долбоебом кто на это повелся"И это прокатит, и будет новая история успеха :)
January 22 2012, 18:44:42 UTC 4 months ago
Отлито в граните.
January 22 2012, 21:53:00 UTC 4 months ago
4 months ago
January 22 2012, 19:07:40 UTC 4 months ago
January 22 2012, 19:09:11 UTC 4 months ago
January 22 2012, 19:10:54 UTC 4 months ago
January 22 2012, 19:37:53 UTC 4 months ago
4 months ago
4 months ago
4 months ago
Anonymous
4 months ago
4 months ago
Anonymous
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
January 22 2012, 19:29:04 UTC 4 months ago
нужно уметь его использовать ;)
January 22 2012, 19:57:09 UTC 4 months ago
January 22 2012, 20:40:47 UTC 4 months ago
"объяснение клиентам, почему их требования не имеют смысла"
кстати с этим осторожнее, сколько раз убеждался что такая формулировка в основном значит что "объясняющий" не понял что клиент хочет. Смешит самоуверенность ай-тишного оналитега в том, что он за два дня лучше изучил тонкости бизнеса клиента, чем сам клиент за 20 лет работы в этом бизнесе.
С другой стороны работая в более-менее однородной отрасли достаточное время с улыбкой воспринимаешь уверенность клиента в том, что он такой весь уникальный, и ему нужен суперособенный кусок функционала, каковой никому никогда не нужен был. Но надо реально помучаться с десятком поциентов до этого, чтобы ответственно скзаать - вот этот выпендрёж вам не нужен вообще, а запрашивая вот это вы да, избавляетесь от некрасивого прыщика, но получаете хронический гемморой.
January 23 2012, 05:12:23 UTC 4 months ago
И как, спрашивается, 20 лет опыта продаж гаек влияют на абсурдность требований к ИТ продукту?
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
Spammed comment
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
January 22 2012, 21:00:37 UTC 4 months ago
January 23 2012, 01:00:38 UTC 4 months ago
January 23 2012, 02:35:46 UTC 4 months ago
-1) Выбор языка программирования очень важен и определяется задачей, ибо то, что у них на выходе имеет очень разные характеристики. Давайте напишите мне годный драйвер на джаваскрипте и эрланге, а webUI на дельфи.
-2) Если "все мыслимое и немыслимое уже придумано и сделано", значит ваша предметная область - говно и торф, или вы не способны придумать ничего лучше того, что уже придумано и сделано.
-3) Заниматься личными проектами имеет смысл теми, что развивают мозг, иначе он скоро превратится в тот же торф. Сделайте "хаскель, на котором можно писать низкоуровневые драйвера", и не станете целевой аудиторией телепрограмм "Аншлаг" и "Комеди Клаб".
January 23 2012, 03:22:41 UTC 4 months ago
Уровень же "хаскеля" для домашних проектов недостижим.
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
January 23 2012, 02:36:31 UTC 4 months ago
в местном камлочятике в топике есть максима "release crap, enjoy NIH". как-то помогает жить.
January 23 2012, 02:59:56 UTC 4 months ago
Дао программирования
UserJanuary 23 2012, 07:26:28 UTC 4 months ago
January 23 2012, 09:20:11 UTC 4 months ago
Для разминки мозгов, почесывания ЧСВ и реализации бредовых озарений использую Delphi. Для кого-то это мертвая стюардесса, а мне нравится.
Для специализированных задач использую стандартный инструмент. Для веба - PHP, JS. Для геймдева - C/C++/ObjC (зависит от платформы). Для админства - bat и bash. Итд..
Для проектирования обычно использую голову, конструктор форм и объектно-классовую модель данных. То есть, сначала строю визуальный макет приложения (формочки, менюшки, кнопочки), а потом "оживляю" его логикой. Проектированием БД не парюсь, использую ORM - структура таблиц БД создается автоматом на основании полей хранимых объектов.
January 23 2012, 15:01:36 UTC 4 months ago
4 months ago
January 23 2012, 09:44:56 UTC 4 months ago
1. Не у всех программирование занимает только 10%. На всех моих работах этот процент был существенно больше.
2. Выбор языка и фреймворка мало влияет на скорость решения задач типа "написать алгоритм сортировки", но напрямую влияет на задачи типа: сделай и переделай стопитьсот форм для ввода и редактирования какой-нибудь фигни. Вплоть до шестикратной разницы в скорости.
3. Если у тебя стоит задача типа "сделать стопитьсот формочек" и есть несколько джуньоров/подчиненных для ее решения, то можно позволить себе на месяц зарыться в документацию, лично пообщаться с автором тула, написать свой компонент грида и т.п., если потом на основании написанных тобой костылей и инструкций джуньоры смогут клепать формочки быстро, безболезненно и безошибочно, а ты сможешь отдохнуть.
January 23 2012, 16:42:52 UTC 4 months ago
February 3 2012, 07:46:21 UTC 3 months ago
Я тут уловил неявное предположение о том, что бывают языки, которые не мешают программированию. Лично я не знаю ни одного языка, который не мешал бы программировать. По крайней мере мне.
February 3 2012, 08:00:43 UTC 3 months ago
3 months ago
3 months ago