dzz

Нейроложество :)

Apr 04, 2023 23:03

Продолжаю развлекаться с "программирующими" нейросетками ( Read more... )

programming, technology, neural networks, it

Leave a comment

parakhod April 4 2023, 20:26:20 UTC
Интересно на erlang глянуть (вся ли обвязка на месте) и на пыху (что там писать-то вообще кроме самой строки?)

Reply

dzz April 4 2023, 20:31:42 UTC

Эрланг:
-module(hello).
-export([world/0]).

world()->
io:fwrite("Hello, world!\n").

Пыха: echo "Hello, world!";?>

посеяла начальный

Reply

parakhod April 4 2023, 20:37:56 UTC
Ну уже недурно.
На эрланге норм, но явно просто стырило из тьюториала. Ну и да, кто сейчас на чистом эрле пишет когда эликсир есть.

Пыха да, но зачем echo? ))

Reply

dzz April 4 2023, 20:42:04 UTC

Ну, версию пыхи я не задавал, а echo работает даже в древнейшей PHP/FI 2 :)

Reply

parakhod April 4 2023, 20:44:58 UTC
Я этот прекрасный язык уже лет 9 не видел, по счастью. Но просто стринг без тэгов даст тот же результат, потамушта мы html )
Но формально да, так код.

Reply

dzz April 4 2023, 20:56:49 UTC

На пыхе мало кто умеет правильно писать, потому что правильно - это генерить HTML и JS в выводе функций, а не вставлять код врезками в HTML :)

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

Reply

parakhod April 4 2023, 21:03:07 UTC
Пыха - бейсик наших дней.
«Правильно писать» на ёй звучит как оксюморон.

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

Я щаз для бэка плотно на Elixir/Phoenix/Absinthe подсел. И прикольно что там горизонтальный scaling уже в самом OTP есть готовый, не надо с контейнерами и балансерами огород городить.

Reply

dzz April 4 2023, 21:19:58 UTC

Ну, это предубеждение.

У меня есть большой бизнес-проект на PHP с бэком примерно в 50-60 тысяч строк, который живёт уже 4 года и умирать не собирается. Внутри - ни разу не бейсик, а довольно стройная объектная модель :)

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

Reply

parakhod April 5 2023, 08:01:06 UTC

Имидж уже, имидж. И да, всё так, школота картину портит.
А так разумеется можно на любом стеке нормально сделать, а можно и лапши накрутить.

Reply

dzz April 4 2023, 21:26:45 UTC

В другом проекте мы в последние два года убили много времени на то, чтобы сделать быстрый горизонтально масштабируемый бэк на питоне, в итоге, пришлось всё это выкинуть и реализовать скалируемую архитектуру на REDIS-е и С++. Ибо "не приспособлены кролики для лазания по деревьям", при всей моей любви к питону как языку.

Reply

parakhod April 5 2023, 08:08:10 UTC

Скриптовые языки в принципе не предназначены для написания бэкендов. Они не масштабируются ни вширь ни вверх более чем никак. И питон ещё ничего - node вот что самая жирная порнография. Один тред, синхронные блокирующие нативные методы - ужос. Зато порог вхождения даже ниже чем в питоне, тамушта жабаскрипт.

Для скалинга опять же сейчас в восторге от Elixir/Erlang на OTP, там это всё делается вполне себе нативно, да и общий стейт реализуется несколькими способами дающими разные удобства, так что никаких ни редисов ни кубернетесов не надо.

Reply

dzz April 5 2023, 08:26:54 UTC

Порог вхождения - штука обманчивая.

Спросишь, бывало, на интервью: "а хорошо ли вы знаете питон?"

"Зашибись, как хорошо знаю", отвечают.

"А про asyncio и корутины расскажите, плиз!"

"А что это?"

:)

Вообще, масштабируемость - не свойство языка, а свойство архитектуры. На python-е очень удобно прототипировать, у меня вся песочница по большей части на нём. А в продакшен идёт код, язык для которого выбирается вдумчиво.

Reply

parakhod April 5 2023, 08:28:22 UTC

Я на питоне утилитки всякие пилю, очень удобно. И прототипировать, разумеется.

Reply

dzz April 5 2023, 08:35:24 UTC

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

Ну и утильки, да :)

Reply

dzz April 5 2023, 08:32:02 UTC

> никаких ни редисов ни кубернетесов не надо.

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

Reply

parakhod April 5 2023, 08:37:43 UTC

Ну да, редис - отличный кэш, пользую иногда.

Но (опять продолжу нахваливать, извини) в эликсире есть отличный механизм GenServer, который тебе позволяет очень гибкие стейты делать, быстрые, асинхронные, с разнообразными подписками и прочими плюшками.
А ещё сейчас копаю Elixir Nerves для embedded, тоже прикольная крайне вещица. Хватит уже сей что с плюсами что без ))

Reply


Leave a comment

Up