LINUX.ORG.RU

Darklang - проприетарный бездеплойный язык + среда

 darklang, , , ,


0

2

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

Интеграция реальных данных прямо в редактор кода тоже выглядит офигенно, и впринципе довольно очевидная и простая штука, просто в 99% случаев продакшен и редактор кода никак не общаются.

Из минусов конечно вендор-лок, но честно экономия затрат на разработку / прототипирование / быстрый запуск может быть сильно выгоднее. Попробую когда (и если) будет бесплатный план.

Ну и да, даже если не взлетит - само демо и идеи уже достаточно хороши чтобы утащить их в разном виде в открытые проекты :)

Что думаете?

PS большое обсуждение на HN: https://news.ycombinator.com/item?id=20985429

pbiggar - один из основателей ответил на много вопросов и прояснил некоторые вещи.

★★★★★

Последнее исправление: loz (всего исправлений: 7)
Ответ на: комментарий от foror

Не заметил, что там крутого?

То что прилагается минимум усилий для запуска и разработки проекта.

Хипстеры всё ближе к открытию Java и InteliJ IDEA.

В джава с каких пор типобезопасность? Или null и касты отменили? И type erasure? А что там с версионированием? IDEA может держать несколько версий функции на продакшене и переключать между ними? Джаву не то что открыли, ее давно оставили в прошлом.

бекенд фреймворк для котрого создали целый ЯП и kv БД с созданием контроллеров через UI.

Что в этом плохого еще раз? Джава это тоже целый яп с виртуальной машиной, в гуй не смогли только.

фронт они продолжают писать на React

Они как бы говорят что фронтенд независимый.

loz ★★★★★
() автор топика
Последнее исправление: loz (всего исправлений: 4)
Ответ на: комментарий от loz

То что прилагается минимум усилий для запуска и разработки проекта.

По моему это было продемонстрировано еще в 2004 году на RoR и Django. А здесь я не увидел чего-то нового, более того тут регресс, чем прогресс.

В джава с каких пор типобезопасность?

С тех пор как появились нормальные IDE, типа Eclipse и IDEA. Понятно, что если ты будешь забивать на ворнинги, то сможешь скомпилить. И тут конечно большая недоработка, но это всё таки легаси. Поэтому в 21 веке ожидаешь как раз решение данных проблем, а не очередную хипстерскую поделку.

Что в этом плохого еще раз?

Это как ставить телегу впереди лошади.

Они как бы говорят что фронтенд независимый.

Т.е. на этом ЯП я не смогу запилить фроненд? Мдя...

foror ★★★★★
()
Ответ на: комментарий от loz

держать несколько версий функции на продакшене и переключать между ними?

Зачем это? Но хипстеров сложно понять, у вас же serverless и вот это всё с микросервисами во все поля. Ладно, видимо это поделие и правда облегчит ваш труд.

foror ★★★★★
()
Ответ на: комментарий от foror

Зачем это?

Потому что это делает возможным gradual deploy и значительно уменьшает шанс ошибок на продакшене. Если ты код не меняешь, тогда, наверное, не нужно.

сложно понять

Так все что выходит за рамки узенького мышления сложно понять. Кому-то сложно понять что можно в космос летать и разговаривать по воздуху.

у вас же serverless и вот это всё с микросервисами во все поля

У кого это у нас? Что вот это вот все? Ты придумал себе какие-то понятия но извини они никому кроме тебя не нужны.

loz ★★★★★
() автор топика
Последнее исправление: loz (всего исправлений: 2)
Ответ на: комментарий от foror

По моему это было продемонстрировано еще в 2004 году на RoR и Django

И из этого следует что больше не может быть улучшений или что?

А здесь я не увидел чего-то нового

Ты не увидел, а кто-то увидит, что поделать.

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

Поэтому в 21 веке ожидаешь как раз решение данных проблем

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

Это как ставить телегу впереди лошади

Для человека который в жизни видел только телегу и лошадь, возможно.

Т.е. на этом ЯП я не смогу запилить фроненд?

Нет, и в этом нет проблем.

loz ★★★★★
() автор топика
Ответ на: комментарий от loz

Ты не увидел, а кто-то увидит, что поделать.

Ну я, например, с точки зрения жабобомжей, наверное, тоже к хипстерам отношусь, но тоже не вижу в этом ничего нового. По пунктам:

  1. Декларативная конфигурация REST-эндпоинтов. Народ, родина дала вам OpenAPI, которому по меркам веба уже сто лет в обед. Чётко описываются как сами эндпоинты, так и схемы принимаемых и возвращаемых ими данных. Поддерживающие эту спецификацию библиотеки вроде oas-tools (для ноды) или connexion (для питона) позволяют вообще одной ямлиной всем API ворочать. По факту необходимость педалить код ограничивается только непосредственной логикой обработки данных, а всю служебную нагрузку, вплоть до маршалинга, они берут на себя. Кстати, вполне официальный онлайн-редактор этих схем со всеми удобствами имеется на том же сайте.
  2. Лайв-обновление эндпоинтов. Опять же, реконфигурация аппа реализуется далеко не так сложно. Один служебный эндпоинт (лучше всего на другом, контрольном порту), который супервайзит основной API-сервер, и вуаля. Можно через него как саму ямлину с эндпоинтами туда заливать, так и модули с обрабатывающим их кодом. Хоть, блин, эти модули в ClojureScript пиши и через lumo динамически их перегоняй и вгружай. Но проблемас. И всё это тегировать ровно так же, как и в сабже, да. Без каких-либо дополнительных традиционных деплоев, прикинь.
  3. Удобный мониторинг значений в запросах. Натравливаешь любой понравившийся REST-клиент по вкусу (от SoapUI до curl в цикле) и вот тебе пожалуйста. Одним облачным IDE дело не ограничивается. И не должно, собственно.
  4. Хранилища. Тут могу сказать только одно — грамотно составленный ORM-адаптер решает. А завязка на проприетарное хранилище, наоборот, усугубляет.
  5. Хостинг с автоскейлингом. Задача тоже уже over9000 единиц времени назад решена всеми, кому не лень, но у амазона с его Beanstalk получилось, как по мне, лучше всего. Впрочем, не всем это и нужно. В любом случае, это делается единоразово (я сейчас не о поднятии приложения, а о поднятии такой платформы, как сама сабжевая Темень), а дальше всё конфигурируется уже динамически.

Короче, все их мегафичи делаются в полном объёме без проприетарного зашквара. А то ишь ты как, ведь сейчас главное — хайпануть немножечко ©, а разбираться уже станут не только лишь все ©.

rebforce
()
Ответ на: комментарий от rebforce

Декларативная конфигурация REST-эндпоинтов. Народ, родина дала вам OpenAPI

Его надо подключать как либу, интегрировать с логикой и веб сервером, не так ли?

одной ямлиной всем API ворочать

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

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

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

Натравливаешь любой понравившийся REST-клиент по вкусу (от SoapUI до curl в цикле) и вот тебе пожалуйста

Расскажи секрет как натравить так чтобы данные появились в редакторе с привязкой к переменным и читабельно отформатированные согласно типам данных?

В любом случае, это делается единоразово (я сейчас не о поднятии приложения, а о поднятии такой платформы, как сама сабжевая Темень)

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

loz ★★★★★
() автор топика
Ответ на: комментарий от loz

У кого это у нас?

Хипстеры, веб-макаки и просто говнокодеры.

Что вот это вот все?

Я все ваши хайповые базворды и не припомню.

Ты придумал себе какие-то понятия но извини они никому кроме тебя не нужны.

Я их придумал? ) Ну, ок...

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Ответ на: комментарий от loz

И из этого следует что больше не может быть улучшений или что?

Читай внимательнее, что я пишу.

Нет, и в этом нет проблем.

Окей, суть ясна, вопросов больше не имею.

foror ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.