Size: a a a

2020 May 05

A

Aikidos in Go-go!
Vladislav Milenin
я поддерживаю log-driven development, у меня почти нет тестов (это херово, но речь о петпроджекте, на который времени не 40ч в неделю за зп)

начали с 1000 строк кода, уже под 20к, логи понатыканы везде где нужно через zap и обертки

как используем? Пишет юзер, что у него что-то пошло не так, мы берем userId и находим его сессии, далее по сессиям все что происходило и где оборвалось
что логгируем? user/session айди, входные данные, результаты обработки — в итоге всегда легко воспроизводится в любых окружениях, порой с планшета видно как и что 🙂 Ну и конечно prometheus/postgres метрики чтобы глобально что-то видеть и анализировать
Как вы тестируете обновления, что ничего не сломали? Просто выкатываете на прод и ждёте, что юзеры напишут?
источник

VM

Vladislav Milenin in Go-go!
Aikidos
Как вы тестируете обновления, что ничего не сломали? Просто выкатываете на прод и ждёте, что юзеры напишут?
Небольшие обновления не могут все сломать, и местами есть запасная логика :)
источник

p

pragus in Go-go!
> но вы не можете перебирать другие коллекции, потому что концепция итераторов отсутствует.

это да, боль
источник

AZ

Aleksandr Zelenin in Go-go!
Ан
Растаманы всё пытаются доказать что Раст нужен и может быть в продакшене, но чет тухло
Статью не читал. Хочу ro выдать на сутки за попытку наброса. Справедливо?
источник

C

Calculon in Go-go!
pragus
> но вы не можете перебирать другие коллекции, потому что концепция итераторов отсутствует.

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

A

Aikidos in Go-go!
Aleksandr Zelenin
Статью не читал. Хочу ro выдать на сутки за попытку наброса. Справедливо?
Предупреждение можно дать, для первого раза же. Зачем так сурово
источник

p

pragus in Go-go!
Aleksandr Zelenin
Статью не читал. Хочу ro выдать на сутки за попытку наброса. Справедливо?
+
источник

p

pragus in Go-go!
Calculon
прокидываем функцию итератор и чилим
пример можно?
источник

A

Aikidos in Go-go!
pragus
пример можно?
Он наверное про способ с замыканием
источник

C

Calculon in Go-go!
pragus
пример можно?
kek(func (item Item) {
   //do smth
})
источник

A

Aikidos in Go-go!
Только такое мало кто делает. Неудобно.
источник

C

Calculon in Go-go!
Aikidos
Только такое мало кто делает. Неудобно.
почему неудобно?
источник

p

pragus in Go-go!
Calculon
kek(func (item Item) {
   //do smth
})
и дальше что?
источник

C

Calculon in Go-go!
pragus
и дальше что?
а что дальше должно быть
источник

p

pragus in Go-go!
Calculon
kek(func (item Item) {
   //do smth
})
вот у нас есть items []Item , чем нам этот костыль поможет?
источник

C

Calculon in Go-go!
блин, не заставляй меня включать комп и писать код ради тебя
источник

C

Calculon in Go-go!
pragus
вот у нас есть items []Item , чем нам этот костыль поможет?
функция кек будет ренжом катиться по айтемам и вызывать функцию итератора
источник

p

pragus in Go-go!
Calculon
функция кек будет ренжом катиться по айтемам и вызывать функцию итератора
а сайд-эффект у неё какой будет?
источник

C

Calculon in Go-go!
на мой взгляд это вообще чикибамбони итерация, не знаю где ты увидел тут костыль
источник

C

Calculon in Go-go!
pragus
а сайд-эффект у неё какой будет?
это просто вызов функции
источник