вторник, 17 ноября 2009 г.

[comp.prog.flame] Так ведь Microsoft и не благотворительный фонд

Замечательный перл выдал некто vshabanov в обсуждении новости об открытии исходников .NET Micro Framework на RSDN:

Речь шла о том, что вот мол платформа (сиречь библиотеки), а вот виртуальная машина, теперь можно быстро наклепать поверх реализацию любого языка, не сильно заморачиваясь с компиляцией, да еще и получить простой интерфейс к куче библиотек от МС (типично МС-овский подход, кстати: любой язык, но на нашей платформе). Оказалось только, что под эту платформу/VM можно переводить далеко не любые языки. Более того, языки дающие наибольшую производительность труда программиста переводить сложнее всего -- слишком низок уровень донетовской платформы.

Т.е. рекламируемый смысл дотнета "фигачьте компилер вашего любимого языка под нашу платформу и получайте язык+библиотеки=профит", стоит переделать как "привяжитесь к МС навсегда", а языки -- это так замануха.

(выделение жирным мое)

Бл* (простите мне мой французский), когда программисты начинают обвинять MS в стремлении получить прибыль, я перестаю понимать смысл происходящего.

Программы пишут для получения прибыли. Либо за счет их продажи, либо за счет их эксплуатации. Все, точка. Программы == прибыль. Здесь нечего обсуждать.

Всякие Just for Fun – это несерьезно. Нет ни одной более-менее работающей и использующейся OS, ни одного браузера, ни одного компилятора, который бы разрабатывался сейчас Just for Fun.

OpenSource – это вообще уже давно серьезное коммерческое предприятие. Большие и не очень большие компании вкладывают деньги в OpenSource только для того, чтобы потом сэкономить.

Итак, если кто-то вкладывает деньги в продукт, он, понятное дело, хочет продать свой продукт. Пусть не .NET Framework, так Windows, под которую .NET Framework заточен. Но продать. Т.е. получить пользователей. А после того, как получить – еще и удержать их. Например, за счет уникальной возможности объединения в рамках .NET кода на разных языках. Не всех, возможных языков, понятное дело. А тех, которые интересны Microsoft. И у каждого есть выбор – либо работать на основе продуктов Microsoft и получать от этого профит (как сделали тысячи компаний, выпускающих Windows only приложения), либо работать на чем-то другом. Никто никого не заставляет, а Microsoft хочет получить прибыль.

Это нормально.

Поэтому когда кто-то начинает обвинять MS в том, что она хочет продавать людям свой продукт (Windows в данном случае)… Любо это говорит обиженный Microsoft-ом конкурент, либо непонимающий происходящего ребенок, либо какой-то идеалист.

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


Этот же персонаж выдал далее по ветке еще один пассаж (о недостатках F# по сравнению с OCaml):

Объекты там дотнетовские, а не окемловские (лучшее ОО из того, что я видел, только почти не используется за ненадобностью).

Ну такое классное OO в OCaml, ну такое… Что прям не пользуется никто, т.к. нафиг не нужно.

Не случайно, что все это говорит ярый сторонник ФП :) Они, эти ярые сторонники ФП, временами отличаются удивительной оторванностью от реальности :)

11 комментариев:

Rustam комментирует...

Ну как я понял, он имел ввиду только то, что ms обещала как всегда очень много, но не сделало, на самом деле вначале было заявлено очень много языков, например питон они обещали чуть ли не сразу с 1.0 а появился он только после выхода 2.0, притом как я понял это был новый проект а не первоначально обещанный вариант.

На самом деле есть немалые проблемы с реализацией языков под NET, все что не похоже на шарп просто не ложится, VB переделали до неузнаваемости, C++ страшно изуродовали, питон прикрутили с очень большим трудом, и в результате добавляют расширение для динамических языков к платформе.

По OCaml'у, на самом деле у него очень интересный и оригинальный ООП, во многом более мощный чем у шарпа (множественное наследование, утиная типизация, иммутабельность, анонимные объекты.
Как язык OCaml да в целом мощнее, так как там в отличии от F# присутствуют ML'ные модули, из-за которых объкты не очень-то и нужны, ну и плюс очень мощный препроцессор.
Хотя ради справедливости нужно сказать что у F# сейчас появляются новые возможности (например F# Computation Expressions) которых нет у OCaml'а ну и плюс лучшая оптимизация для числодробилок и более удобный (ближе к ML) синтаксис операторов.

eao197 комментирует...

>ms обещала как всегда очень много, но не сделало, на самом деле вначале было заявлено очень много языков, например питон они обещали чуть ли не сразу с 1.0 а появился он только после выхода 2.0, притом как я понял это был новый проект а не первоначально обещанный вариант.

Ну маркетинговый булшит у всех присутствует (и Sun в свое время по поводу Java много чего обещала). Инженеру нужно не на маркетинг обращать внимание.

Питонов под .NET, если не ошибаюсь, было несколько изначально (как и Ruby). А теперь IronPython и IronRuby, afaik, вообще под крылом MS живут.

Что в реализации разных языков под .NET проблемы -- так это и ежу понятно. Только вот задача это изначально была архисложная. И, имхо, MS первая, кто на нее замахнулась. Ведь в .NET сейчас можно безболезненно объединять C#, F#, VB, Eiffel -- пусть vshabanov попробует такую гремучую смесь где-нибудь вне дотнета замутить.

Я хоть и сам не поклонник MS, но вот эти наезды соврешенно не по теме.

Rustam комментирует...

Ну я тоже нормально к MS отношусь, а vshabanov похоже линуксоид + злобный функциональщик :)
Помню у него в блоге ( http://vshabanov-ru.blogspot.com/2008/07/blog-post.html ) была мало адекватная статья (меня повеселили расчеты "сэкономленного" времени) про то что Хаскель супер язык.

eao197 комментирует...

Ага, было такое. Там еще можно высчитать, что ему сейчас (самое большее) в районе 26-27 лет. Я в эти годы так же был упертым C++ником (за плечами небольшой, но успешный опыт, все на C++ очень хорошо и быстро делалось, альтернатив особых видно не было, команды не менялись сильно и т.д.)

Skynin комментирует...

у идеалистов есть вариант: раздавайте свои программные продукты бесплатно, со всеми исходниками
Да, им в голову не приходит, что они и не идеалисты - а эгоцентристы - мне вес должны - и зарплату, и бесплатные тулзы.

Они, эти ярые сторонники ФП, временами отличаются удивительной оторванностью от реальности :)
А может это потому что математики, или склонные к увлечению ею - такими и были всегда? Заметьте - куда чаще мы знаем афоризматично точные замечания о реальности от физиков (хотя теор. физики фактически математики) а не от математиков.
Математика - штука слишком высокой абстракции, требующая недюжиной фантазии(один известный математик о бывшем ученике - Он стал поэтом? Не удивлен, у него не доставало фантазии для занятий математикой) но потому математик, как психический субъект, там, в абстракциях и фантазиях поселяется.

eao197 комментирует...

>А может это потому что математики, или склонные к увлечению ею - такими и были всегда?

Фиг знает. По моему опыту получается, что математики могут писать программы либо хорошо (по стилю и дизайну), либо очень плохо. Среднего не дано. Наверняка, все это связано с особенностью мысшления математиков.

Skynin комментирует...

По моему опыту получается, что математики могут писать программы либо хорошо (по стилю и дизайну), либо очень плохо.
Такого личного опыта нет, но даже если бы не знал источника этой фразы - согласился б исходя из своих рассуждений:
Математика много дает мышлению(или наоборот, имея соответствующий тип мышления только и сможешь ею заниматься). Но одного качественного мышления для программирования мало, нужны инженерная и "литературная" наклонности и навыки.

Rustam комментирует...

Ну программисты в народном фольклоре как раз рядом с математиками :)

А по сути согласен либо безобразный либо хороший код.

Кстати если почитать того же академика Арнольда у математиков тоже свои священные войны есть :) по моему они как и у нас во многом обусловлены лево или право полушарным мышлением :)

eao197 комментирует...

>Кстати если почитать того же академика Арнольда у математиков тоже свои священные войны есть

Ссылочкой не поделишься? Или это в печатной книге написано?

Rustam комментирует...

Склероз :)

Из того что недавно у него на эту же тему читал:


Между математиками есть двоякого рода люди: 1) математики-философы, т. е. математики высшей математической мысли, для которых цифры и исчисления есть ремесло; для этого рода математиков цифры и исчисления не имеют никакого значения, их увлекают не цифры и исчисления, а сами математические идеи. Одним словом, это математики, так сказать, чистой философской математики; 2) напротив, есть такие математики. которых философия математики, математические идеи не трогают, которые всю суть математики видят в исчислениях, цифрах и формулах...
Математики-философы, к которым принадлежу и я, относятся всегда с презрением к математикам-исчислителям, а математики-исчислители, среди которых есть много ученых весьма знаменитых, смотрят на математиков-философов как на людей в известном смысле "тронутых".


http://nature.web.ru/db/msg.html?mid=1156628&uri=arnold27.html

eao197 комментирует...

Спасибо!