
Dmitry
04.03.2018
12:05:37
Vladimir Вы Erlang до Elixir-а изучали?

Evgeny
04.03.2018
12:09:36
ох уж эти оракулы

Vladimir
04.03.2018
12:50:59

Dmitry
04.03.2018
12:52:00
Просто у меня есть такая гипотеза, что есть определённый % Erlang разработчиков, которые пытаются перейти на Elixir и в связи с метапрограммированием и возросшими уровнями абстракции возвращаются к Erlang-у назад и отсюда берутся такие депрессивные прогнозы.

Google

Vladimir
04.03.2018
12:54:13
ну хорошая гипотеза, рабочая

Taras ?
04.03.2018
13:02:03
не всем макросы макросов заходят-выходят хорошо))

Dmitry
04.03.2018
13:05:29
@TTaraskin Причины могут быть разные и метапрограммирование и его злоупотребление, но так же и определённый склад мышления.

Артем
04.03.2018
13:05:55

Dmitry
04.03.2018
13:06:29
@artem_pankov Я перешёл с Erlang-а на Elixir и это на мой взгляд имеет большой смысл.

Артем
04.03.2018
13:06:32
я вот например уже начинаю понемногу жалеть что сразу на эрланг не уехал
мне очень важна скорость и я местами был в шоке, когда например тут написано
https://github.com/michalmuskala/jason
The performance is comparable to jiffy - usually only twice as slow.
офигеть достижение - всего лишь в 2 раза медленнее эрланга о_О

Dmitry
04.03.2018
13:08:29
jiffy - это С
@artem_pankov jason - быстрее Erlang аналогов.

Google

Артем
04.03.2018
13:09:27
да и бог с ним, хоть асм
на ерланге есть клёвая штука gun которая мне оч нужна https://github.com/ninenines/gun

Dmitry
04.03.2018
13:11:30
Ничто не мешает использовать её из Elixir-а

Артем
04.03.2018
13:11:40
на эликсире с фениксом её никак не заюзать. привет велосипед))

Dmitry
04.03.2018
13:12:17
Никто не мешает использовать nif jiffy из Elixir-а. Если так важна скорость, которая достигается c помощью C-кода. Можно писать всё на C в обход Erlang-а / Elixir-а и так далее.
У вызова С-кода есть свои trade off, в том числе и то, что при паралелльном использовании он может быть медленее. Это значит, что при массивном паралелльном использовании jason и jiffy, может оказаться что jason сможет больший объём данных быстрее обрабатывать.
И одна ошибка в nif-е положить всю VM.

Артем
04.03.2018
13:16:32
так я ж не говорю что это всё прям невозможно и тп. но конкретно под мою задачу у меня сложилось такое впечатление что пользовать эрланг было бы тупо проще
под другую - вполне может быть иначе

Dmitry
04.03.2018
13:18:16
@artem_pankov Erlang или обоитись без phoenix-а, который не сразу мгновенно обновился на cowboy 2.0?
Ничего не мешает в таком случае и без phoenix - использовать Elixir напрямую со вторым cowboy-ем.... Столкнувшись соответственно с велосипедированием того, что phoenix даёт.
Если это было бы легче, то почему бы и нет.

Артем
04.03.2018
13:19:23
не знаю. в фениксе прям нравятся как вёбсокеты работают

Dmitry
04.03.2018
13:19:25
Elixir не завязан на phoenix.

Артем
04.03.2018
13:19:47
с другой стороны в эрланге есть n2o

Taras ?
04.03.2018
13:20:08

Артем
04.03.2018
13:21:11

Taras ?
04.03.2018
13:23:10

Артем
04.03.2018
13:24:08

Google

Dmitry
04.03.2018
13:27:43
@artem_pankov n2o завязан на 1-ый cowboy без каких-то тело движений по обновлению.
Так что было бы ещё больше проблем.
Phoenix уже можно сейчас из мастера брать и использовать со вторым ковбоем, по крайней мере если бы мне нужно было, я бы так и сделал.
А второе, не нравится Phoenix, можно и n2o использовать из Elixir-а. Учитывая, что этого никто не делает, нету никакой необходимости, когда существует Phoenix.

Evgeny
04.03.2018
13:31:32
К счастью Phoenix не назвали Elixir on Wings, а то бы опять интернет был бы полон дебильных сравнений Elixir on WIngs vs Java vs PHP vs...

Артем
04.03.2018
13:32:05

Taras ?
04.03.2018
13:32:26

Артем
04.03.2018
13:32:44

Taras ?
04.03.2018
13:33:18

Dmitry
04.03.2018
13:34:02
@TTaraskin Я сколько использовал, пока не сталкивался.
Это правда.

Taras ?
04.03.2018
13:34:25

Dmitry
04.03.2018
13:34:26
С теми, с которыми сталкивался в Erlang-е до Elixir-а.

Taras ?
04.03.2018
13:34:53
тыкаю-тыкаю, а проблем как в фениксе - нет

Dmitry
04.03.2018
13:36:12
https://github.com/synrc/n2o/blob/master/rebar.config => пока стоит cowboy 1.0.1, бранчей других нет.
Не видно, чтобы они что-то там делали в направлении cowboy 2.0
@TTaraskin Я в этом чате в истории 2-месячной давности не знаю как искать.

Taras ?
04.03.2018
13:37:05

Dmitry
04.03.2018
13:39:30
@TTaraskin А это вообще без http и фронтенда ? Где нужно быть внимательнее?

Google

Dmitry
04.03.2018
13:40:18
А, просто вебсокеты отдельно.
Только код использует cowboy.
Без указания версии ковбоя ?
И основан на версии 1-ого ковбоя.
Только в данном репозитории выкинули cowboy из зависимостей.
В отличие от другого репозитория.

Taras ?
04.03.2018
13:45:19
@erlang_n2o вам в рубрику "спросите Максима"))
я в разработке не учавствую, я ленивый пользователь
думаю апнули или апнут до второго
с другой стороны я только учусь, краб-крабом
правда даже я уже понял, когда тыкал примеры ковбоя первого и второго, что перепилить кусок кода с первого под второй — проблема не знания а желания
и n2o в пользовании — многим удобней чем феникс,
пускай я и не юзаю многие с возможностей


Dmitry
04.03.2018
13:48:56
Я просто вначале подумал, читая, что они решили без ковбоя реализовать минимум(а они могли) для websocket-ов сами, открыл код, а там ковбой.
А в зависимостях ковбоя нет.
Много нужно обновлять или нет, в phoenix-е уже есть поддержка https://github.com/phoenixframework/phoenix/blob/master/mix.exs#L57 и можно уже пару недель использовать phoenix из мастера со вторым ковбоем.
"и n2o в пользовании — многим удобней чем феникс" => А это конечно, очень субъективное заявление.

Taras ?
04.03.2018
13:51:40
и феникс таки можно уже готовить,
или опять будет пищевое отравление? ?
формы уже нормально компилируются, без рандомных непонятных ошибок?
eex при компиляции перестал клинить?
ecto все так же боль с запросами, чуть более сложными чем SELECT name FROM table ?

Dmitry
04.03.2018
13:54:04
А в n2o всё это есть или там велосипедь всё сам?

Taras ?
04.03.2018
13:54:29
да, там все есть,
и да, там иногда надо думать головой

Dmitry
04.03.2018
13:54:42
У меня не было проблем, но у меня SPA и на phoenix-е везде чистый API/websocket backend.

Taras ?
04.03.2018
13:54:43
главное там голова не болит, как с фениксом

Google

Dmitry
04.03.2018
13:55:19
С которым никогда за 3 года не было каких-то проблем пока.

Taras ?
04.03.2018
13:55:44
повезло))
давайте будем честны — исходники n2o хоть читать можно)
и чтобы въехать в исходники феникса... надо быть гением а не новичком

Alex
04.03.2018
14:06:04
Исходники н2о читать нельзя в той же степени, что феникса

Dmitry
04.03.2018
14:09:30
@TTaraskin Мне сложно судить, мне читать исходники phoenix-а легко, понятные и хорошо задокументированные. Имхо.
Учитывая что я на Elixir-е программирую уже очень давно.

Alex
04.03.2018
14:10:02
Опять же, документация н2о не идёт по пути понятности
Какие протоколы, причём там mqtt, кому нахер сдался ftp

Dmitry
04.03.2018
14:11:49
Я вот тоже читаю и не могу понять... Ради любопытства решил сделать копию REST/WebSocket интефрейса для своего приложения. Из документации не понятно, где начать и что делать.
Передавать Erlang структуры данных из javascript.... ужас...


Dmitry
04.03.2018
14:16:22
Лично для меня невозможно читать исходники приложений на n2o.
Я собственно не вижу в нем смысла от слова совсем. Зато минусов полна коробушка.
Начиная от нулевой документации, отсутствия книг, статей, продолжая отсутствием разработчиков, продолжая отсутствием большого количества эликсир плюшек, которые со скрипом вызываются из эрланга и заканчивая девопс анфрендли
Как не крути, современный бэк это конструктор Лего
Поэтому рельсы так популярны
И если ты не можешь накидать в зависимости ОРМ, биндюжник к двум десяткам сторонних АПИ типа платёжка, мэйлеров, смс рассылок, социальных сетей
Тв идёшь и делаешь все это сам
Вместо того чтобы делать сайт
Вопрос только в достаточной гибкости твоего лего
И ее скорости
И судя по всему и эликсир и феникс удовлетворяют пока что этим критериям
Да, я форкал Presence из феникса, потому что он был недостаточно функционален для меня
Но я же не с нуля его пишу в каждом проекте