Anonymous
Точно. Но вопрос был про есть чо в Го
Илья
а функции агрегаты в КХ не осилят задачу? :O
Andrew
может и осилят, но там из одной выборки надо несколько разных результатов сделать, а данных немало поэтому в целях перфоманса в ту сторону не смотрю
Anonymous
Кстати, да. КХ очень быстрый же. На нем Я Метрика не просто так крутится. С другой стороны, отличный опенсорс на Го можно запилить)
Andrew
ну, быстрый то это да, но данных многовато гонять получается, хочу один раз выбрать, а потом с ними играть
Władimir (Zae)
Добрый вечер, делаю небольшой сервер, который читает .csv файлы, парсит их и отдает в жсоне. Проблема в том, что массив при json.Marshal() содержит пустые объекты вместо данных, при этом, если делаю json.Unmarshal() обратно, данные присутствуют
Władimir (Zae)
В чем может быть проблема?
Илья
сделайте простой пример на https://play.golang.org/
Władimir (Zae)
Ой, прошу прощения, проблема была том что я в struct не вписал значения для json https://stackoverflow.com/questions/26327391/json-marshalstruct-returns
Roman
Подскажите какое-нибудь чтиво по архитектуре приложений (не обязательно веб) в реалиях го
Roman
Реалии го - лапша из микросервисов
Спорить не буду, но и микросервис хочется "красиво структурировать".
Aleksandr
тогда спрашивай о структуре проектов, а не об архитектуре
Roman
в общем я о mvc, mvvm и прочем
Aleksandr
ну так юзай mvc, mvvm - это в общем-то независящие от языка паттерны
Anonymous
@xmpln Design Data-Intensive Data Applications + Clean Architecture
Anonymous
Не в контексте Go, но лично я лучше не встречал из современного.
doc
Спорить не буду, но и микросервис хочется "красиво структурировать".
Красиво структурировать - это микросервисы из монолита вырастают естественным образом, либо у тебя за руками 10+ лет опыта и ты знаешь что делаешь
🏁Александр
Influxdb по udp НЕ переваривает int, запись уходит в мусорку сразу. По http api работает. нужно использовать только float64 значения
🏁Александр
запишите
🏁Александр
я день потерял пока дебажил все 🙂
🏁Александр
причем они для апи подхачили там
🏁Александр
а вот для udp "молчаливый боб"
Petr
И issue нет?
🏁Александр
https://github.com/influxdata/influxdb/issues/3460
🏁Александр
ну почти оно
🏁Александр
мы баги душили-душили
🏁Александр
душили-душили
Заур
Стесняюсь спросить, а чей мозг вам пересадили 😀
Заур
Шутка конечно
Nazar
🤙
Co.In
Кто в курсе. Google Duplex случайно не на Go запилили?
Антон
Ой, прошу прощения, проблема была том что я в struct не вписал значения для json https://stackoverflow.com/questions/26327391/json-marshalstruct-returns
Ах, если бы только можно было преобразовывать данные в JSON, не проставляя вручную теги и не делая поля публичными. Но это только мечты...
Антон
Хотя погодите-ка... https://github.com/serde-rs/json
Антон
awesome golang посмотри, там есть много чего
А там есть решение, удолетворяющее вышеперечисленным условиям и не использующее рефлексию?
Aleksandr
именно поэтому и сказал
Aleksandr
хотя врать не буду, что-то уже не уверен что там видел. может в дайджесте каком-то.. так или иначе сторонних json-либ достаточно много с разными подходами
Aleksandr
https://github.com/francoispqt/gojay
Антон
https://github.com/francoispqt/gojay
Гм, этого в awesome-go не видел. Сейчас посмотрю
Антон
https://github.com/francoispqt/gojay
Unmarshal принимает вторым аргументом interface{}
Антон
Anonymous
Ребят. А как правильно выводить ошибку из анонимной го рутины? Канал с ошибками и ретурн?
Aleksandr
Unmarshal принимает вторым аргументом interface{}
для консистентности с апи стдлиб.
Aleksandr
там же есть другое апи
Антон
Есть на основе кодогенерации
😕 То есть приходится при изменении структур заново генерировать код.
Мерль
😕 То есть приходится при изменении структур заново генерировать код.
На самом деле дефолтного сериализатора (или jsoniter) хватает в 80% случаев По большому счёту кастомные сериализаторы мало чего дают, всё равно ты упираешься в сеть и СУБД раньше
Мерль
Ребят. А как правильно выводить ошибку из анонимной го рутины? Канал с ошибками и ретурн?
Зависит от обстоятельств Да, канал с ошибкой — это валидный подход
Мерль
а еще какие варианты?
например взрываться на ошибке или логировать ошибку, не передавая её раньше
Artem
😕 То есть приходится при изменении структур заново генерировать код.
есть вариант добавить go:generate, а перед билдом его вызывать, если они конечно у тебя в ci делаются
Artem
тоже самое, что и с файлами протобуфа получается
Daniel
есть вариант добавить go:generate, а перед билдом его вызывать, если они конечно у тебя в ci делаются
это плохой вариант. go generate должен использовать программер тогда, когда это кажется ему правильным. например - после изменения структур.
Oleh
подскажите пожалуйста возможно ли как-то чекнуть в какой момент времени отработает тикер?
Vasily
не надо даже отдельно получать
Vasily
for tickTime := range ticker.C
Имя
Ребят, кто пишет ботов для телеги, у меня к вам вопрос
Oleh
он в канал время тика возвращает
вау, это решает все проблемы, спасибо!)
Имя
Я использую либу "telegram-bot-api". Я могу получать сообщение и в зависимости от его содержимого вызывать конкретную функцию. У меня такая задача, к примеру: При первом подключении бота нужно ввести своё Имя, далее бот будет реагировать на сообщения "Скажи привет" (будет говорить "Привет %Имя%") и "Изменить имя". Как сделать так, что бы при нажатии "Изменить имя" бот писал "Введите своё имя:" и не воспринимал комманду "Скажи привет", а запоминал введённый текст как имя
Vasily
где-то флаг иметь, что юзер не ввёл имя
Vasily
пока имя не введено - не обрабатывать остальные команды
Vasily
при нажатии на кнопку смены имени - сбрасывать флаг
Vasily
но тогда отменить нельзя
Dmitry
пытаюсь научиться работать с xml по https://tutorialedge.net/golang/parsing-xml-with-golang/ и я непонимаю какую функцию выполняет тип xml.Name .
Dmitry
описание xml.Name ничего не проясняет
Dmitry
корневой тег
не прояснило.
Aleksandr
не прояснило.
задавай вопросы
Dmitry
зачем нужен xml.Name ?