AlexMist
Госслужб
Ilya
ну да. скоро школота врубит орбитальные пушки
Ilya
готовим попкорн
Ilya
(:
Dmitrii
а я на го
а на го что то появилось типо рельсов или джанги? вроде те же экспрессы и коа толлько с другим названием
Ilya
нет. а зачем
Ilya
ну цмс там есть и походу неплохие. но я не копал.
Ilya
я еще не уволился потому не успеваю основательно порыться
Andrey 😼
нет. а зачем
Не все же микросервисы клеить
Andrey 😼
А что-то большое без фреймворков писать самоубийственно
AlexMist
Вот на ноде кто знает, как удобно использовать одну или кусок валидации данных на сервере и фронте, что бы не писать по два раза?
AlexMist
Joi вроде
Dmitrii
так давайте запилим аналог рельсов на ноде
Dmitrii
я б запилил но рельсы не знаю😂
Ilya
я не пишу фронт. слишком тупой для этого
Andrey 😼
так давайте запилим аналог рельсов на ноде
А зачем, если есть рельсы на руби?
Dmitrii
А зачем, если есть рельсы на руби?
чтобы не писать на руби
Ilya
зачем на ней писать?
Andrey 😼
чтобы не писать на руби
Я пытаюсь уговорить заказчиков не писать на ноде, а наоборот писать на руби
Andrey 😼
зачем?
Нода неплоха для своих задач
Andrey 😼
Сложные монолиты в этот список не входят :)
Dmitrii
чем отдавать JSON по HTTP не задача для ноды?
Andrey 😼
чем отдавать JSON по HTTP не задача для ноды?
Тем, что не все задачи сводятся к crud
Dmitrii
мне сложно представить кейс, где не справится node, но справиться ruby, python, php
Igor
Machine Learning?
Dmitrii
а причем тут нода то? вопрос наличия библиотек же?
Dmitrii
На ноде это не будет так удобно
дело вкуса и опыта в одной из перечисленных технологий
Andrey 😼
Проблема ещё и в самом языке, вся эта асинхронность добавляет кучу жопоболи
Igor
ну да, тут претензия не к ноде, а к тому, что полноценных аналогов немножк нет а так да, разницы нет. Нагрузка/память и синтаксис - вот и вся разница
Andrey 😼
Спасибо хоть эвейтам за более линейный код
Andrey 😼
Хотя бы стало возможно писать без крови из глаз
Dmitrii
многих прет именно в таком стиле писать
Andrey 😼
Ну мы же щас о нормальных людях говорим, а не о любителях then за then в паровозик выстраивать
Dmitrii
ну камон)
Dmitrii
вкусовщина
Andrey 😼
Async/await в помощь
Выше уже сказал, что спасибо богам за них
Dmitrii
с либой async коллбэк хэла как не бывало, даже когда промисов не было, дело все в руках
Антон
Я каждый раз как сиквелайз беру, меня тошнить от его апи начинает
я впилил тайпскрипт и вот эту шняжку https://github.com/RobinBuschmann/sequelize-typescript, в итоге довольно миленько
Andrey 😼
Без них что-то сложнее "получи запись из базы и отдай назад" - уже жопоболь
Andrey 😼
с либой async коллбэк хэла как не бывало, даже когда промисов не было, дело все в руках
Никто о коллбек хелле и не говорит, 2017 на дворе, какие коллбек хеллы
Andrey 😼
Просто есть такие параметры как поддерживаемость и банальная читаемость
Dmitrii
Никто о коллбек хелле и не говорит, 2017 на дворе, какие коллбек хеллы
ну щас есть async/await, раньше была либа async, вобщем то проблемы асинхронщиной были у тех, кто их сам себе создавал
Dmitrii
ну за читаемость да это + для тех кто только вошел в язык или пришел с другого стэка
Andrey 😼
А ещё есть методы с условиями и более чем одним асинхронным вызовом
Dmitrii
если ты тут давно, то вполне ок
Andrey 😼
если ты тут давно, то вполне ок
Этому даже есть название
Andrey 😼
Стокгольмский синдром
Dmitrii
ладно про это можно забыть, уже 2 года как минимум нормальные люди используют коа с генераторами, а теперь уже и с асинками
Andrey 😼
Осталось хоть один нормальный не-микро фреймворк найти
Dmitrii
если я возьму к пример микро фреймворк типо коа, штук 10 мидлваров под все свои задачи, роутер, ОРМ с миграциями и прочими плюшками из каробки. Сильно ли большие отличия будут от рельсов?
Andrey 😼
А чертовски хорошо интегрированный друг с другом набор пакетов
Andrey 😼
А ещё соглашения
Andrey 😼
Без которых жить очень больно, когда приходится поддерживать чужой код
Таймураз
с либой async коллбэк хэла как не бывало, даже когда промисов не было, дело все в руках
Эта либа в 2017 году заставляет меня плакать кровавыми слезами
Dmitrii
Без которых жить очень больно, когда приходится поддерживать чужой код
больно поддерживать говнокод в любом языке и фреймворке, если код написан норм то его везде не больно
Andrey 😼
Это не про качество кода
Andrey 😼
Это про структуру проекта
Таймураз
Google: convention over configuration
А, ты о структуре
Таймураз
Тут нода хромает, но не сказать, что прям сильно
Andrey 😼
В рельсах входя в новый проект я знаю, что все лежит там, где я ожидаю это увидеть и если я сделаю что-нибудь, у других потом не возникнет вопроса "что этот идиот тут наделал"
Таймураз
Рельсы тоже изменяются семимильными шагами?
Andrey 😼
Вхождение в любой новый нодовский проект начинается с "таааааааак, а в какие дебри ведёт этот роут?"
Andrey 😼
Рельсы тоже изменяются семимильными шагами?
Ну так и нода не фреймворк, а всего лишь платформа
Таймураз
Руби, ок
Andrey 😼
Andrey 😼
Руби, ок
Нет, не так, что не имеет никакого отношения к стандартизации структуры
Dmitrii
ну велосипедить в любом языке умеют
Andrey 😼
ну велосипедить в любом языке умеют
Вот только в одних фреймворках это всеми силами порицается
Andrey 😼
А где нет таких фреймворках (привет нода) всеми силами поддерживается
Dmitrii
плюсы тоже естьу такого подхода
Dmitrii
гибкость