Size: a a a

Scala User Group

2020 July 21

SA

Sergey Alaev in Scala User Group
Kain Crow
А мне неиронично интересно чем плоха тупед акка, что посмотреть/почитать?
Если её уже зарелизили, это огромный шаг вперед. Помимо этого:
- акторы соединяются очередями, которые stateful. Стейт в приложении = усложнение логики + усложнение отладки
- акторы намного медленней альтернатив
- если нужна какая-то отказоустойчивость и lifecycle, лучше сделать микросервис. если нужна какая-то вменяемая обработка ошибок и асинхронщина, есть фьючи и IO
источник

SA

Sergey Alaev in Scala User Group
☭ ⤳ λ Shinkevich
Во-первых, надуманный пример, что нужно о т системы, которой отправляется невалидный input, кроме  как выдать ошибку или просто игнорировать (да, и такое бывает нужно) ? Более того, если это  платформа, то внутри, как правило, левых данных нет, а про данные снаружи всегда надо думать.
Ну да, либо "low-code", либо "думать"
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Kain Crow
А мне неиронично интересно чем плоха тупед акка, что посмотреть/почитать?
Мне кажется, много раз обсуждалось
источник

☭S

☭ ⤳ λ Shinkevich... in Scala User Group
Sergey Alaev
Ну да, либо "low-code", либо "думать"
угу, пусть буде так... так что на мой первый вопрос, нет ответа  ?
источник

АБ

Алексей Баринов... in Scala User Group
Sergey Alaev
Если её уже зарелизили, это огромный шаг вперед. Помимо этого:
- акторы соединяются очередями, которые stateful. Стейт в приложении = усложнение логики + усложнение отладки
- акторы намного медленней альтернатив
- если нужна какая-то отказоустойчивость и lifecycle, лучше сделать микросервис. если нужна какая-то вменяемая обработка ошибок и асинхронщина, есть фьючи и IO
По поводу стэйта - это и плюс и минус. Сложнее отлаживать - возможно, но и производительность от этого растет
Там где нужна производительность можно просто использовать akka-streams
По поводу отказоустойчивости тут зависит сильно от того что хочется получить: если просто на дохлые ноды не ходить - мб и не нужна акка, если CRDT нужен тут думаю без вариантов (по крайней мере не видел чего-то адекватного для нескольких систем)
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Kain Crow
А мне неиронично интересно чем плоха тупед акка, что посмотреть/почитать?
источник

GL

Gennady Lebedev in Scala User Group
☭ ⤳ λ Shinkevich
Вот все тут спорят о http4s/akka, в доводы идет high performance, а вот что, если performance на столь важно? Когда система имеет потолок в 1000  пользователей, но, даже 100 будет уже полётом фантазии. И при этом нужно ускорить производительность разработчика.  Вот почему в scala экосистеме нет low-code platform, чтобы не писать банальные круды, не заморачиваться на минимальный UI, rest из коробки и прочее?
успокоит ли тебя информация, что в этом направлении сейчас пишу пет-проект? )
источник

SA

Sergey Alaev in Scala User Group
☭ ⤳ λ Shinkevich
угу, пусть буде так... так что на мой первый вопрос, нет ответа  ?
Так я ответил. no-code для скалы нет, т.к. он не нужен. no-code - это ниша толпы миддлов, которые пишут условно работающие приложения, с нулевым уровнем валидации, обратной совместимости, устойчивости и т.п. С такой технической культурой просто не получится использовать преимущества скалы как языка.
источник

GL

Gennady Lebedev in Scala User Group
> no-code - это ниша толпы миддлов, которые пишут условно работающие приложения

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

GL

Gennady Lebedev in Scala User Group
впрочем, ни одной реально удачной low-code не видел ни на одном языке, все всегда заканчивалось "вот наша платформа, вот с чем нужно соединить, вот шов в системе размером больше обеих платформ вместе взятых"
источник

☭S

☭ ⤳ λ Shinkevich... in Scala User Group
Sergey Alaev
Так я ответил. no-code для скалы нет, т.к. он не нужен. no-code - это ниша толпы миддлов, которые пишут условно работающие приложения, с нулевым уровнем валидации, обратной совместимости, устойчивости и т.п. С такой технической культурой просто не получится использовать преимущества скалы как языка.
хм.... позиция понятна. скажу только что и валидация и обратная совместимость и устойчивость - это ведь не синонимы low-code.  как и скала - не синоним надёжности.
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
Gennady Lebedev
> no-code - это ниша толпы миддлов, которые пишут условно работающие приложения

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

GL

Gennady Lebedev in Scala User Group
Λнтон Войцишевский
чем для второй позиции не подойдет тот же питон с джангой, где решения всех таких проблем лежат на стековерфлоу?
нелюбовь к языку? шибанутый непоследовательный синтаксис? вкусовщина и стоимость питонь-разработчиков, в общем
источник

☭S

☭ ⤳ λ Shinkevich... in Scala User Group
Gennady Lebedev
впрочем, ни одной реально удачной low-code не видел ни на одном языке, все всегда заканчивалось "вот наша платформа, вот с чем нужно соединить, вот шов в системе размером больше обеих платформ вместе взятых"
был один такой... счас целая отрасль... 1C называется
источник

GL

Gennady Lebedev in Scala User Group
точно!
источник

GL

Gennady Lebedev in Scala User Group
вот уж у кого лоукодь
бери или проваливай
источник

GL

Gennady Lebedev in Scala User Group
а интеграции с 1С кто давно писал?)
источник

SA

Sergey Alaev in Scala User Group
Gennady Lebedev
> no-code - это ниша толпы миддлов, которые пишут условно работающие приложения

это одна позиция, другая - lowcode это ответ на тривиальные и достаточно изученные потребности бизнеса, которые лень велосипедить каждый раз со всеми поворотами
Так одно другому не мешает. Основная потребность бизнеса - получить максимальный результат с минимальными затратами (причем минимизация затрат важнее). Т.е. берем толпу миддлов, они пишут идеально поддерживаемый проект на spring+hibernate (т.к. любой другой миддл знает эти технологии), проблемы заливаем железом и временем админов.

Это вполне себе рабочая стратегия, позволяющая быстро получить результат. Но не очень комфортная для работников.
источник

GL

Gennady Lebedev in Scala User Group
>  Т.е. берем толпу миддлов, они пишут идеально поддерживаемый проект на spring+hibernate (т.к. любой другой миддл знает эти технологии), проблемы заливаем железом и временем админов.

влажные мечты каждого первого ит-менеджера
опыт говорит, что это работает чтобы сдать проект за жопочасы, но не чтобы бизнес получил устойчивое решение)
источник

GL

Gennady Lebedev in Scala User Group
нужна не толпа мидлов, а 2 сеньера которые сделаю всю систему целиком
источник