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

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

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

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

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

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

Date: 2014-03-30 06:26 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Вот получается, что наиболее простой вариант так сделать - это лиспятина разная.
Делаем DSL, отдаем его предметникам, причем получается отсутствие границы между внешним и внутренним языком.

Date: 2014-03-30 06:29 pm (UTC)
From: [identity profile] serguei tarassov [arbinada.com] (from livejournal.com)
Почему бы скриптовому языку не быть лиспоподобным.
Основное преимущество VB-подобия в наличии огромного количества примеров "ка сделать в ситуации Х".
Мне нравится паскаль-скрипт, его легче объяснять, но это субъективно.

Date: 2014-04-05 06:07 pm (UTC)
From: [identity profile] fraks-nsk.livejournal.com
Пытался юзать паскаль-скрипт, но в той версии что я юзал (от FastReportа) как-то все было уныло в плане диагностики ошибок. В итоге, потратив на это дело год, я пришел к выводу что вместо того что бы рожать паскаль-скриптовые решения имитируя Delphi можно просто делать exe-шники на Delphi и не морщить мозг скриптом.

В итоге скрипт этот только унутре FastReport-а и остался.

Date: 2014-03-30 07:09 pm (UTC)
From: [identity profile] head_thrash (from livejournal.com)
Хыхы, у нас так, но:

* Ядро написано на адовых плюсах, в них разбирается только 1 человек в компании
* Аппликухи пишутся на сишарпе (моно, ага :-D)

Сейчас идут какие-то вялые попытки заюзать джавку вместо получившегося ада. Ну, типа, много standalone сервисов, которые общаются друг с другом и легаси.

Шарпистов искать легко. Плюсовиков и джавистов - очень сложно. Первых умных очень мало, по вторым - куча шлака и энторпрайза головного мозга.

Date: 2014-03-30 07:35 pm (UTC)
From: [identity profile] insanegigolo.livejournal.com
java & enterprise - братья навсегда, я так понимаю среднего джависта который не знает Буча и ко и не умеет клепать трехзвенки никуда не берут.

Date: 2014-03-30 07:54 pm (UTC)
From: [identity profile] jdevelop.livejournal.com
это мифология.

Date: 2014-03-30 08:12 pm (UTC)
From: [identity profile] insanegigolo.livejournal.com
а скажите в какой конторе джависта собеседуют и не спросять про шаблоны?

Date: 2014-03-30 08:50 pm (UTC)
From: [identity profile] insanegigolo.livejournal.com
ну за этим интересным эфермизмом "глубокое понимание OOP" могут скрываться и шаблоны, и способы хранения в памяти, и сборщики мусора, и как видят ООП создатели Java. Больше информации об их интервью не нашел.

Date: 2014-03-30 09:15 pm (UTC)
From: [identity profile] jdevelop.livejournal.com
шаблоны же не хотят как бе. А ООП бывает и без шаблонов, внезапно.

Date: 2014-03-31 06:19 am (UTC)
From: [identity profile] byyj.livejournal.com
:) был уже один герой, внезапно открывший для себя, что он всю жизнь разговаривал прозой

Date: 2014-03-30 08:47 pm (UTC)
From: [identity profile] dimaby1.livejournal.com
Зачем адекватному прикладнику заниматься программированием под самопальную ерунду, которая вне этой конторы никому не нужна.

Date: 2014-03-30 09:00 pm (UTC)
From: [identity profile] serguei tarassov [arbinada.com] (from livejournal.com)
Использование термина "адекватный", как и "аджайл" - это диагноз :)
Разработчики на RPG, ABAP, MorphX или 1С - "неадекватные прикладники" :) В мире - тысячи небрендовых ERP со своими экосистемами...

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

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

Date: 2014-03-30 07:43 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Да пытались мы их использовать, этих жабокодеров. Не работает. Качество "на отъебись".

Date: 2014-03-30 07:53 pm (UTC)
From: [identity profile] jdevelop.livejournal.com
да не надо называть жабокодерами студентов бгуир, которых вы наняли работать за еду и подзатыльник.

Date: 2014-03-30 08:17 pm (UTC)
From: [identity profile] metaclass.livejournal.com
А артурег считает что именно они жабакодеры.

Date: 2014-03-30 08:19 pm (UTC)
From: [identity profile] jdevelop.livejournal.com
не, не считает

Date: 2014-03-30 08:20 pm (UTC)
From: [identity profile] b00ter.livejournal.com
Ну да, мы знаем, что тру жабокодеры уже давно в бостонах сидят. Что, в целом, не отменяет "95% программистов на (Java|PHP|Ruby|Python|etc) - балбесы". Дартаньянство такое дартаньянство.p

Date: 2014-03-30 09:09 pm (UTC)
From: [identity profile] jakobz.livejournal.com
Средний жабокодер всё равно пишет не на джаве, а на DSL поверх XML-я в какой-нибудь энтерпрайз-хреновине. От того что вместо треугольных скобочки станут круглыми, ничего для джависта не изменится.

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

Date: 2014-03-31 07:10 am (UTC)
From: [identity profile] potan.livejournal.com
Эх, совместить бы все это...

Date: 2014-04-05 06:38 am (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
Cовместить это можно, если разобраться с понятием того, что такое мирный атом.

И даже нужно.

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

Date: 2014-03-30 09:23 pm (UTC)
From: [identity profile] zelanton.livejournal.com
Ребе зачем-то понадобилось байтики массово херачить и паттерн-матчить, а это в ерланге внезапно действительно ок. Ну а метапрограммирование где надо поди на чём-то другом будет. Зоопарк в общем предвидится.

Date: 2014-03-31 05:00 am (UTC)
From: [identity profile] messirvoland.livejournal.com
Просто оставлю эту старую запись от [livejournal.com profile] zamotivator Опердени на Эрланг (http://erlang-mnesia-video.ru/)

Date: 2014-03-31 08:32 am (UTC)
From: [identity profile] grey-kristy.livejournal.com
Ну, теоритически, parse_transform позволяет издеваться над Erlang'ом как угодно

Date: 2014-03-31 11:52 am (UTC)
From: [identity profile] levgem.livejournal.com
плохо.

Метапрограммирование идет над AST, который представляется в очень тяжелой для отладки форме.

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

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

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

Date: 2014-04-05 06:40 am (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
Cверхскоростной транспорт исключает экологическую еду.

А научиться правильно и экономно работать с информацией уменьшает потребность как в еде вообще, так и в транспорте.

Date: 2014-04-05 06:55 am (UTC)
From: [identity profile] berezovsky.livejournal.com
Это не в один момент происходит, нужны переходные апокалиптические процессы. Точно так же как нельзя в один момент научиться питаться праной или солнцем без традиционной еды.

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

Date: 2014-04-05 11:48 am (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
Обмен энергией - это процесс разрушения сложной структуры и создания более простой из её остатков.

Чем он медленнее идёт, тем прочнее создаваемая структура.

А апокалипсис - это слом без создания нового. Точнее, это производство горы мусора из того, что худо-бедно, а точнее жирно-дурно работало, пока не упёрлось в ограничения по питанию.

Date: 2014-04-05 11:49 am (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
При том при всём простая структура усложняется, и ей надо будет самой разрушаться.

Лучше это сделать управляемым процессом поиска и устранения ошибок.

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

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

Date: 2014-03-31 07:18 am (UTC)
From: [identity profile] head_thrash (from livejournal.com)
В общем да, но не всегда и не везде. Ну вот например, наш showstopper:
http://stackoverflow.com/questions/18450/is-mono-ready-for-prime-time/19021501#19021501

Регулярно стресс-тестим новые версии, но бага Xamarin-ом не фиксится, да и похоже что и не будет фикситься. С подобным подходм неясно, зачем вообще использовать моно -- что в нём такого, ради чего стоит жрать этот кактус.

Ну, разве что куча легаси, которое надо поддерживать.

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

Date: 2014-03-31 07:01 am (UTC)
From: [identity profile] archydragon.livejournal.com
Как бы это общее назначение кложе боком не вышло, в плане распространения в ширнармассах.

Date: 2014-03-31 07:05 am (UTC)
From: [identity profile] blackyblack.livejournal.com
Думаю это правильное решение. Энтерпрайз не очень любит всякие DSL потому что их становится много и на всех сотрудников не напасёшься. А вот решение "данные вместо синтаксиса" на мой взгляд ошибочное.

Date: 2014-03-31 07:56 am (UTC)
From: [identity profile] metaclass.livejournal.com
Да, кложурь в плане общности заведомо лучше.

Date: 2014-03-31 09:37 am (UTC)
From: [identity profile] thedeemon.livejournal.com
А что будет, если вместо
(let [x 1] x) написать (let [x 1) x) или (let [x: 1] x) ? ฺИли просто (+ 5 5;).
Хотя интерпретатор и не признается, плюясь исключениями вроде Unmatched Delimiter, по сути это синтаксические ошибки, ибо синтаксис там еще как есть, просто плохой примитивный.

Date: 2014-03-31 09:46 am (UTC)
From: [identity profile] blackyblack.livejournal.com
Ну ладно. :)

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

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

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

Date: 2014-03-31 09:12 am (UTC)
From: [identity profile] az-from-belarus.livejournal.com
ПС. Как-то проводил неформальный опрос у народа. Пытался уяснить - какую часть используемых библиотек (независимо от языка) они реально используют в работе, какую часть использует вообще их команда в любом проекте. Большинство скромно приближалось к 20 процентам. К сожалению знакомых занятых в серьезных разработках, типа всяческих кадов или реалтаймовских систем у меня не так много, потому выборка не очень большая. Но есть о чем задуматься. Предварительные выводы такие. Большинство кодеров следует той или иной МОДЕ и используют привычне языковые обороты или библиотечные средства. С новыми людьми достаточно часто встречается риск заполучить в команду любителей иной моды, и тогда всякий проект начинает обрастать лишними библиотеками, а что хуже весь массив кода приобретает разнородную стилистику и вообще начинается накопление всяческого бардака.

Date: 2014-04-05 06:42 am (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
Для этого надо вообще-то приучить писать тесты.

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

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 11th, 2025 10:00 pm
Powered by Dreamwidth Studios