metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2014-03-30 08:51 pm

Эрланг vs "мейнстрим"

Очередной раз сцепились с зелантоном на тему того, что лучше - использовать эрланг или смирится и использовать C#/Java/С++/C.
Ну два последних языка мы не рассматриваем, это специфические языки, которые за пределы тяжелых вычислений и ядер операционных систем лучше не вытаскивать. В случае моих задач С и С++ очень быстро деградируют до состояния "переписали половину эрланга и лиспа руками", чего делать, само собой, смысла нет.

Но в целом, вопрос растения против зомби "эрланг против жабы" остается открытым. При этом, жаба у нас в продакшене есть сугубо в виде библиотек для использования в кложури, а C# меня бесит тем, что использование его - это можно сразу ставить крест на идее "использовать линукс в качестве основной серверной системы". Моно, само собой, не работает и работать никогда не будет, более того, сунуть непонятный гибрид ужа и носорога на продакшен сервер я опасаюсь.
Я бы вообще оставил для всего кложурь, но для темы данного спора разница между кложурью и эрлангом только в том, что первый язык более аккуратный, а по второму субъективно больше специалистов в дельта-окрестности. Ну и люди с мозгом, достаточно вывернутым для формулировки предметки на лиспе не так часто встречаются, более того - я понятия не имею, как этому обучить.

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

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

Вообще, у меня есть подозрение, что для использования мейнстримных языков и дешевых разработчиков придется выкинуть работу последних примерно 3-5 лет, потому что "не осилят". Даже с учетом того, что основная разработка ведется на мейнстримном дальеш некуда C#, еще присутствует чуть чуть С++/С, жабаскрипт, clojure, F# и очень много SQL. Я как-то не верю в дешевых разработчиков на C#, которые бы это согласились осиливать.

[identity profile] serguei tarassov [arbinada.com] (from livejournal.com) 2014-03-30 06:19 pm (UTC)(link)
Классический подход ERP: разделить разработку на ядро (фреймворк) и модули. Ядро писать на С/С++/Delpi/FreePascal/список продолжается, вынести наружу объектную модель и скриптовый язык, модули отдать прикладникам писать на этих самых скриптах.

[identity profile] zelanton.livejournal.com 2014-03-30 06:28 pm (UTC)(link)
пиши на эрланге, мы уже договорились)

[identity profile] jdevelop.livejournal.com 2014-03-30 07:11 pm (UTC)(link)
Критерий "не осилят" - это сугубо вами надуманный критерий, на самом деле. Ничего в вашем коде из того, что не мог бы сделать средний жабокодер, нет.

[identity profile] justy-tylor.livejournal.com 2014-03-30 08:22 pm (UTC)(link)
Потенциального сотрудника может увлекать предметная область (геймдев, лекарства от рака, ...), технологии (хаскель, хипстакложурь, ...) и/или многобабла. Различная "опердень на жабе" в этом плане выглядит максимально не привлекательно, ибо за такие же заборы с коровниками в банковской сфере платят лучше.

[identity profile] jakobz.livejournal.com 2014-03-30 09:04 pm (UTC)(link)
А эрланг вообще для оперденей всяких покатит? Там по-идее надо метапрограммирования всякого, как у него с этим?

[identity profile] berezovsky.livejournal.com 2014-03-30 09:20 pm (UTC)(link)
Попытка победить энтропию в условиях военной диктатуры.
Борьбу за идеи подменили поисками способа подчинить себе хаос.
Наконец-то я нашёл для себя ответ на вопрос, которым мучался больше семи лет.
В общем, ситуация примерно следующая.
Вместо фундаментальных исследований и производства реально полезных вещей, вроде экологическей еды, сверхскоросного транспорта и т.д. общество направили в русло компьютеризации.
Это, с одной стороны, позволяет вобрать в себя максимум человеческих душ, подключить их к центральному разуму, чтоб в конечном итоге управлять их желаниями, потребностями и эмоциями.
С другой стороны, нужно породить многообразие, чтобы этим многообразием увлекались, исследовали, и вовлекались в процесс без лишних усилий, как бы по собственному желанию.
Заодно это выгодно экономически. Потому что чем больше технологий и прочих штучек "прогресса", тем больше рабочих мест, покупок, продаж и оборота. Для текущей пирамиды это жизненно важно.
Соответствено, именно в этой сфере будет, где развернуться. А определённой категории увлёкшихся будет казаться, что повышенный доход в этой области связан именно с какими-то их личными интеллектуальными заслугами или стараниями.
Но на самом деле это самоубийство. Увлекаясь и рвя задницу, чтобы вобрать в себя всё и вся, чтобы успеть, охватить, продвинуться-возвыситься, не сдохнуть и выдержать конкуренцию, можно тупо перегореть и отправиться на помойку раньше, чем встанут на ноги собственные дети.
Уже мало кто думает, что делает, зачем и для кого. Технология и оптимизация стала самоцелью. Ценность дохода выше рассуждений о целесообразности. Понятия "продавать", "эксплуатировать" по отношению к человеку уже как бы в порядке вещей.
Если бы те кланы, которые создавали это видимое разнообразие, реально заботились о благосостоянии общем, а не своём, технологии развивались бы совершенно в другом ключе. Вместо сотен недоделанных, нерабочих, просто бесполезных библиотек, были бы единицы отточенных, отлаженных, универсальных и взаимозаменяемых.
Но это никому не нужно, нужно увеличивать этот разрыв, сеять хаос, разделять, властвовать, дробить до атомов, чтобы разум затерялся во всём этом бесконечном мусоре.
Участие в этом подобно работе на войну. Вроде, Стругацкие первые вопрос поставили. Если сейчас думать, чем прокормить ближнего, завтра этого ближнего может просто не стать, некого будет кормить.
То есть любое такое действие приводит только к укреплению Системы. Изнутри выхода на видно, нужно как-то абстрагиваться и посмотреть на неё со стороны, как бы сверху.
Вот там уже видно, куда двигаться и какой стратегии придерживаться. Завтра всё это наебнётся вместе с тысячами корпораций, где одни множили объекты хаоса, а другие хаос, который эти объекты обслуживал. И выяснится, что реально полезных объектов останутся считанные единицы, которые обслуживать можно будет ради самого факта причастности к идее.

[identity profile] gleb-kudr.livejournal.com 2014-03-30 09:48 pm (UTC)(link)
>Моно, само собой, не работает и работать никогда не будет

Он вообще-то работает.

[identity profile] blackyblack.livejournal.com 2014-03-31 05:55 am (UTC)(link)
Про спор между кложурью и эрлангом между прочим Рич Хикки уже высказался. Мол эрланг - крутотень, но домейн специфик. А кложурь круче, потому что общего назначения. Сам язык не то что аккуратнее. У кложури вообще нет синтаксиса, поэтому и производится впечатление, что он аккуратнее.

[identity profile] vit-r.livejournal.com 2014-03-31 07:17 am (UTC)(link)
Есть люди, которые могут писать софт, и те, кому для этого не хватает мозгов. Опасные языки вроде С и С++ или языки, для которых сложно найти решения типичных задач, вроде эрланга и кложуры просто дают показать это деление явно. Ява и всякие Пыхыпы позволяют прятать неумение решать задачи за массой кода. На короткой дистанции это даёт выигрыш. Потом все закапываются в исправление ошибок.

В идеале, в фирме должны быть монстры, специалисты и люди, способные учиться. Язык банально подбирается под задачу.
Edited 2014-03-31 07:19 (UTC)

[identity profile] az-from-belarus.livejournal.com 2014-03-31 08:51 am (UTC)(link)
В такой ситуевине на мой взгляд следовало бы очень вдумчиво поработать над библиотечками. Довести их до некоего продуманно-минималистичного уровня, шоб набор кубиков был хорошо заточен под имеющиеся задачи, а не для любого сферического коня. А потом плавненько библиотечки поддерживать руководствуясь двумя принципами - отбиваться от желания приспособить библиотеки для создания чего угодно; хорошая внутренняя документированность и читабельность исходников. Ну а имея приличный конструктор можно собирать новое или пересобирать существующее ребятам более близким к прикладной области.
ПС. Приучать народ писать комменты и кратенько концептуальную доку. Для упрощения жизни позволить писать с грамматическими ошибками и даже с использованием арго или командно-матерного (многим так легче выражать обыденные мысли)

[identity profile] d34u82.livejournal.com 2014-04-01 04:26 pm (UTC)(link)
метакласс, когда ты наконец научишь бестолковых людишек правильно программировать? а то ж невозможно смириться с тупостью бестолковых людишек.