The bad, the good and the Haskell
Sep. 20th, 2007 01:06 pmВынесу-ка я это из глубокого треда, может получиться флейм, а флейм это хорошо.
ifp5 пишет:
Реально проблема есть только одна единственная (и она та же самая что препятствует использованию OCaml, Haskell, LISP и пр) - что решение выбора языка принимают люди (такие бывают толстые и важные начальники), которые уже решили, что проект будет на жабе. Никаких других проблем в использовании шарпа (или хаскеля) нет.
Ну это на самом деле далеко не так. Это черезвычайно распространенное мнение, которое на самом деле базируется на такой красивой гиковской картине мира, в которой есть good programmers and evil managers. И все плохое проистекает из менеджеров, а все хорошее пишется умными программистами, которые вникают в проблему с полувзгляда и выбирают идеальный инструмент.
Попробуйте написать полезную программу на лиспе и продать ее пользователям (продать в широком, хорошем, смысле - пусть даже и забесплатно). Чтобы она была как программа на С++/Win32 или там на сишарпе/дотнете. Чтобы у нее был гуй, какой модно в этом сезоне (совершенно необязательно, кстати, чтобы он был один в один стянут с последнего оффиса), чтобы у нее был нетворкинг, чтобы она работала с трехмерной графикой под DX9/10 и использовала многоядерные процессоры. По-моему я описал гамез, сам того не желая, ну да ладно. Пусть это будет не гамез, а САПР.
Ровно та же самая проблема у всех на свете "скриптовых языков, лучших чем Перл". Они все безусловно лучше чем Перл (трудно быть хуже с точки зрения среднего программиста), но у перла есть CPAN. End of story here.
P.S. Всех, кто напишет что у Автокада в пузе как раз лисп - сразу забаню. Настолько short minded тут не нужны :-)
Реально проблема есть только одна единственная (и она та же самая что препятствует использованию OCaml, Haskell, LISP и пр) - что решение выбора языка принимают люди (такие бывают толстые и важные начальники), которые уже решили, что проект будет на жабе. Никаких других проблем в использовании шарпа (или хаскеля) нет.
Ну это на самом деле далеко не так. Это черезвычайно распространенное мнение, которое на самом деле базируется на такой красивой гиковской картине мира, в которой есть good programmers and evil managers. И все плохое проистекает из менеджеров, а все хорошее пишется умными программистами, которые вникают в проблему с полувзгляда и выбирают идеальный инструмент.
Попробуйте написать полезную программу на лиспе и продать ее пользователям (продать в широком, хорошем, смысле - пусть даже и забесплатно). Чтобы она была как программа на С++/Win32 или там на сишарпе/дотнете. Чтобы у нее был гуй, какой модно в этом сезоне (совершенно необязательно, кстати, чтобы он был один в один стянут с последнего оффиса), чтобы у нее был нетворкинг, чтобы она работала с трехмерной графикой под DX9/10 и использовала многоядерные процессоры. По-моему я описал гамез, сам того не желая, ну да ладно. Пусть это будет не гамез, а САПР.
Ровно та же самая проблема у всех на свете "скриптовых языков, лучших чем Перл". Они все безусловно лучше чем Перл (трудно быть хуже с точки зрения среднего программиста), но у перла есть CPAN. End of story here.
P.S. Всех, кто напишет что у Автокада в пузе как раз лисп - сразу забаню. Настолько short minded тут не нужны :-)
в порядке флэйма :-)
Date: 2007-09-20 10:05 am (UTC)Пользователи бывают разные - конечным пользователям наплевать на то, чем программа написана, корпоративным, обычно тоже не особо интересно.
почтовый Дозор-Джет, написанный на scheme, приносит достаточно хорошую прибыль соответствующей компании, сумма продаж - несколько миллионов зеленых рублей в год.
а с первым абзацем твоего утверждения с полностью согласен, это хорошая теория заговора против программистов :-)
no subject
Date: 2007-09-20 10:13 am (UTC)no subject
Date: 2007-09-20 10:20 am (UTC)s/Perl/Python/g
И?
no subject
Date: 2007-09-20 10:20 am (UTC)Re: Reply to your comment...
Date: 2007-09-20 10:23 am (UTC)Re: в порядке флэйма :-)
Date: 2007-09-20 10:24 am (UTC)Простейший пример: разработчик принимает решение писать на сишарпе/дотнете и естественно выбирает дотнет 3.0 ибо рулез и он его скачал через 1.5 часа после анонса, а до этого сидел на ворованных из мелкософта бетах.
Для конечного юзера же (которому, indeed, совершенно насрать какой это дотнет, 3.0, 33.0, 2.0 или вообще не дотнет) это выливается в сколько там, 30 мегабайт даунлоада или 20? Я думаю что консервативная оценка потери клиентов в этот момент это порядка 50%. А реалистичная - 70%.
Re: в порядке флэйма :-)
Date: 2007-09-20 10:27 am (UTC)Re: Reply to your comment...
Date: 2007-09-20 10:30 am (UTC)И, в отличие от питона, перл никто никому так усердно не вдувал.
Чисто же с эстетической точки зрения питон ничуть не менее уродлив чем перл. Просто уродство это другое, лично меня оно анноит сильнее. Перл более похож (с точки зрения эстетики) на естественный язык - его потенциальная красота ничуть не избавляет от необходимости слушать 80% косноязычных нативных носителей этого языка. Питон как раз это попытка создать язык на котором косноязычно выражаться просто физически невозможно. С моей точки зрения, попытка крайне неудачная, именно в этом смысле.
Re: Reply to your comment...
Date: 2007-09-20 10:41 am (UTC)Это как задаться вопросом, почему в 60-х не было альтернатив фортрану и лиспу :)
kik> И, в отличие от питона, перл никто никому так усердно не вдувал.
Потому что среди перловиков нашлись люди, которые знали, что такое маркетинг, а среди питоновцев - нет.
kik> Перл более похож (с точки зрения эстетики) на естественный язык - его
kik> потенциальная красота ничуть не избавляет от необходимости слушать 80%
kik> косноязычных нативных носителей этого языка.
И как следствие, выпадает он из разряда инженерных разработок - скорее его можно
причислить к гуманитарным.
no subject
Date: 2007-09-20 11:28 am (UTC)no subject
Date: 2007-09-20 11:50 am (UTC)При этом у меня есть проекты и на питоне, и на C#, и на java, и на C++, и на PHP (о Боже!), и на perl, и на bash даже один :)
На каком языке решена проблема - пользователю глубоко насрать.
Инструмент должен быть удобен для решения задач и side-effects от его использования должны удовлетворять общим требованиям к продукту, это несомненно.
То, что я делаю на scheme, на другом языке я бы делал раз в пять дольше и работало бы это хуже. В моём случае время получения решения и надёжность его работы были признаны менее критичными вещами, чем тот факт, что юзерам придётся тянуть какое-то количество мегабайт дополнительно.
PS: http://www.franz.com/success/ - вот тут примеров есть.
PPS: не совсем САПР, но близко - http://www.izware.com/mirai/index.htm, также пример игрушки: http://en.wikipedia.org/wiki/Jak_and_Daxter. Что-то ищё искать лень, взял первое попавшееся.
no subject
Date: 2007-09-20 12:02 pm (UTC)Когда задача позволяет брать не сильных программеров, то не имеет смысла брать сильных программеров.
А большинство задач позволяет-таки брать не сильных программеров.
PS: немного поясню, если непонятно моё мнение - для сильного программера язык важен чисто эстетически, но не практически. Питон изучается за месяц, а работают люди годами. Сам код (набор классов/функций/etc) является языком, изучить который в случае C++ может быть сложнее, чем весь питон как язык. Когда же сложность ещё и на уровне концепций/алгоритмов, то собственно язык вообще отходит на пятый план.
PPS: при прочих равных я выберу контору, в которой пишут на лиспе, просто мне так приятнее. Также я выберу контору, офис которой ближе к моему дому - мне тоже так приятнее. Почему меня страшно брать на работу?
no subject
Date: 2007-09-20 12:09 pm (UTC)А с теми, кто решает по абстрактной "хорошести" языка, у нас скорее всего будут серьезные расхождения и в других областях. Не хочу нанимать себе проблемы.
no subject
Date: 2007-09-20 01:16 pm (UTC)PS: я бы не сказал, что у лиспа абстрактная хорошесть. Мне реально там очень комфортно, в отличие от других языков.
no subject
Date: 2007-09-20 01:20 pm (UTC)Это возможно только если я университет или, скажем, IBM. Или вокруг 5 лет глухой рецессии
Re: Reply to your comment...
Date: 2007-09-20 01:27 pm (UTC)Советская армия. Перед строем выходит полковник
- Награждается победитель соревнований по стрельбе - рядовой Рабинович
- награждается победитель соревнований по рукопашному бою - рядовой Рабинович
- награждается победитель соревнований по бегу - рядовой Рабинович
- Смотрите бойцы, вот Рабинович - плохой солдат, а старается!
Re: Reply to your comment...
Date: 2007-09-20 01:29 pm (UTC)Re: Reply to your comment...
Date: 2007-09-20 01:29 pm (UTC)Именно этим он и хорош. Люди не покупают сверла, люди покупают дырки в стенах. А дырки в стенах - заслуга в первую очередь гуманитариев (в том числе и в прямом смысле - в случае с дыркой в стене это дизайнер). Инженеры же приходят на черную работу - спроектировать это так чтобы оно таки работало (ну и просверлить дырку). Соответственно у программиста два пути в карьере - либо оставаться кодером++ и приписывать себе плюсы, либо становиться гуманитарием и решать проблемы людей.
no subject
Date: 2007-09-20 01:31 pm (UTC)no subject
Date: 2007-09-20 01:32 pm (UTC)Re: Reply to your comment...
Date: 2007-09-20 01:33 pm (UTC)Re: Reply to your comment...
Date: 2007-09-20 01:38 pm (UTC)no subject
Date: 2007-09-20 01:40 pm (UTC)Но как вы будете на лиспе писать гуй, который я пишу на Qt? И что мы будем делать, если вы таки напишете, а потом уйдете?
Гуманитарные вопросы...
Re: Reply to your comment...
Date: 2007-09-20 01:43 pm (UTC)Почитайте последнего Спольски, кстати. Он писал на другую тему, но написал на самом деле именно на эту :-) У него это часто бывает.
Re: Reply to your comment...
Date: 2007-09-20 01:46 pm (UTC)