Size: a a a

Clojure — русскоговорящее сообщество

2021 March 31

SK

Serge Kosykh in Clojure — русскоговорящее сообщество
20 используют, 30 хотели бы; 20 - не нужно, 30 - не знаю (значит потребности не было и, скорее всего, не задумывались). Примерно 50/50 выходит, если по категориям суммировать.
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Sergey Trofimov
я услышал много пространных рассуждений, но мне было бы интересней и достаточно услышать отзывы людей, у которых имеется репл в продакшене и они этим регулярно пользуются
У меня в команде использовали раньше, был открыт, со временем, когда продукт ушёл из стадии мвп – потребность отпала
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Serge Kosykh
20 используют, 30 хотели бы; 20 - не нужно, 30 - не знаю (значит потребности не было и, скорее всего, не задумывались). Примерно 50/50 выходит, если по категориям суммировать.
меня интересует нужен/не нужен
и все пункты, кроме первого, есть вариация на тему «не нужен» 😊
источник

SK

Serge Kosykh in Clojure — русскоговорящее сообщество
Sergey Trofimov
полагаю, что мне репл в продакшене не нужен потому, что я могу всегда запустить приложение локально в идентичной продакшену конфигурации, и спокойно изучить проблему на месте
Это да, сильно от структуры приложения зависит.
Цена воспроизведения стэйта локально, тоже от нее же зависит: если воспроизвести не сложно - то можно и без repl, а вот если трудно - то без него "упариться" можно, вплоть до невозможности повторить/отловить кейс.
источник

SK

Serge Kosykh in Clojure — русскоговорящее сообщество
Sergey Trofimov
меня интересует нужен/не нужен
и все пункты, кроме первого, есть вариация на тему «не нужен» 😊
Ну, это как судить.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Serge Kosykh
Это да, сильно от структуры приложения зависит.
Цена воспроизведения стэйта локально, тоже от нее же зависит: если воспроизвести не сложно - то можно и без repl, а вот если трудно - то без него "упариться" можно, вплоть до невозможности повторить/отловить кейс.
боюсь, что сложность воспроизведения стейта есть архитектурный недочёт 😊
источник

SK

Serge Kosykh in Clojure — русскоговорящее сообщество
Не всегда. Иногда это вынужденное следствие сложных интеграций с внешними провайдерами данных.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Serge Kosykh
Ну, это как судить.
ну вот я как автор опроса пояснил свою позицию
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Serge Kosykh
Тут, для максимального покрытия кейсов, наверное, нужно реализовывать что-то типа механизма WAL в СУБД, когда для того, чтобы получить state конкретного элемента данных, нужно прогнать все изменившие этот элемент edn/json, которые поступили в систему. То есть, там одной записью в лог может оказаться не обойтись (хотя, по-правде, никто не говорил об "одной записи").
Способов есть много, вплоть до записи транзакций и последующего редьюса стейта, так называемая append only модель работы с данными
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
как я понимаю, приложение проектируется так, чтобы 1) оно могло упасть и это не смертельно 2) его можно запустить в несколько экземпляров в разных местах при необходимости масштабирования.

если проектируется по другому, то я не готов это принять 😊
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Sergey Trofimov
меня интересует нужен/не нужен
и все пункты, кроме первого, есть вариация на тему «не нужен» 😊
Нужен на первом этапе подхода make it work, make it right, make it fast, когда код налячкан на коленке с целью собрать фидбек о целесообразности идеи, когда сделать приложение без багов третьестепенная задача и важнее скорость проверки идеи
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Mike Bohdan
Нужен на первом этапе подхода make it work, make it right, make it fast, когда код налячкан на коленке с целью собрать фидбек о целесообразности идеи, когда сделать приложение без багов третьестепенная задача и важнее скорость проверки идеи
неважно
если ты его так и используешь, то так и говоришь — «использую»
зачем туман напускать 😊
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Sergey Trofimov
неважно
если ты его так и используешь, то так и говоришь — «использую»
зачем туман напускать 😊
Я ж и говорю, использовал
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Но сейчас уже нет, надобности нету
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Mike Bohdan
Но сейчас уже нет, надобности нету
ну use case то есть, думаю, что мы без привлечения темпоральных эффектов обойдёмся

в моём случае и «на первом этапе подхода make it work, make it right, make it fast» никогда потребности не было
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
И опять же, есть компоненты, которые могут по разным причинам работать только на проде и никак их не протестировать на стейдже
источник
2021 April 01

SS

Sergey Sobko in Clojure — русскоговорящее сообщество
Ivan Grishaev
Кто работал с мульти-проектами? lein-sub, lein-parent, managed-deps, вот это всё.
Привет, я использовал lein-sub вот здесь: https://github.com/PositiveTechnologies/flower
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
привет
как передать в <T> T unwrap​(Class<T> iface)  интерфейс без reflection warning?

`(.unwrap obj ClickHouseStatement)` с варнингом
источник

TL

Timur Latypoff in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
привет
как передать в <T> T unwrap​(Class<T> iface)  интерфейс без reflection warning?

`(.unwrap obj ClickHouseStatement)` с варнингом
(.unwrap obj ^Class ClickHouseStatement)

а так?
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
о, а я думал flower заброшен!
источник