Анастасия
просто никого нету или есть, но по скиллам не очень?
есть, есть, но в последний момент все идет по одному месту
Daniel
это и есть нету
Petr
интересно, что считается последним моментом, конец тестового периода погромиста или этапы собеседования?
Daniel
кстати, да
Aleksey
Финансы в виде торговли, шифрованых цепочек и выкапывания, меня лично отталкивают.
Джамиль
Ребят есть у кого пример приложения Spa на go + vue?
Джамиль
Или же лучше их раскидать в разные репы?
Aleksey
Статья ещё была... найти надо
Aleksey
А во https://www.google.com/amp/s/scotch.io/amp/tutorials/create-a-single-page-app-with-go-echo-and-vue
Джамиль
А с beego есть что нибудь
Aleksey
А вообще, если знать vue написать под него бэк... биго не нужен
Джамиль
Ну хочется модели и другие штуки. Vue то знаю
Джамиль
Меня в го смущает выкладка
Джамиль
Приложение на продакшене получается будет собираться?
Джамиль
Собранное приложении же не комитится в репу
Джамиль
Как быть со статик файлами
Aleksey
Можно разделить на два репозитория, если хочется
Aleksey
Статику в папочку... в чем пооблема?
Джамиль
Получается на проде репу сливаем
Lev
у тебя не с го проблема, а с воркфлоу
Джамиль
При сборке копируем статик Файлы в папку с собранным приложением?
Lev
можешь на проде хоть через go run запускать, если нравится)
Джамиль
Я интересуюсь как правильнее)
Lev
Разделять на репы или нет – дело твое, просто нужно будет разделять сборки и деплой
Lev
на билд агенте собираешь артифакт – публикуешь
Lev
на проде то зачем собирать что-то?
Aleksey
Не, зачем копировать, папку с билдом из репозитория фронта субмодулем в папку бэка
Aleksey
https://git-scm.com/book/ru/v1/Инструменты-Git-Подмодули
V
О Господи, сабмодули гита ужасны
Lev
ну тачка/тачки, где аппа билдится, где гоняются тесты
Aleksey
Гитхаб поддерживает https://blog.github.com/2016-02-01-working-with-submodules/
Мерль
собираешь контейнер, пушишь в реджистри, на сервере пулишь из реджистри
Aleksey
Да для начала в отдельной папке фронт делать
Aleksey
А потом по ходу смотреть
Джамиль
Вот что написано по выкладке у beego
Джамиль
Aleksey
Биго такой переход из других языков, потом может принести сложности
Aleksey
В осмысливании го, по крайней мере
Джамиль
Ну парсеры и консольки уже понаписал. Хочу апи на нем сделать)
Aleksey
Вообще на штатном всё
Aleksey
Ну если сложно будет то gin или echo
Aleksey
Sql builder какой
Aleksey
Но это в крайнем случае
Artem
Кто может поделиться ссылочкой на телеграм сообщество по qt?
🏁Александр
гугл?
Artem
гугл?
гугл не поделился
Petr
Тут в телеге прям ищется
Artem
спасибо!
Konstantin
всем привет
Konstantin
с чего начать изучение go ?
Konstantin
спс
Nurzhan
с чего начать изучение go ?
ещё есть хороший курс на Coursera https://www.coursera.org/learn/golang-webservices-1
Konstantin
спасибо
Konstantin
mother of god
Konstantin
а я думал, что golang - это просто
Daniel
а что, сложно что ли?
Konstantin
ну там такое, весёленькое всё )
Konstantin
особенно типизация )
Konstantin
она похожа больше на пиздец, нежели на типизацию )
Daniel
это да. и там есть еще такого. но это не называется "сложный". это называется "у меня лапки"
Anonymous
Зачем нужен build id?
саша
это да. и там есть еще такого. но это не называется "сложный". это называется "у меня лапки"
Нет, это называется сложный. Просто - это алгебраические типы, ибо о них можно рассуждать формально.
🐳
Кто какие туториалы знает по разработке телеграм ботов на го? Скиньте reply-ем, или в личку пожалуйста. Спасибо.
🐳
Спасибо) что нибудь посложнее
Vladimir
Спасибо) что нибудь посложнее
Да куда сложнее? Фантазию взял и тыкаешь в либу
Grigoriy
Всем привет! Подскажите, пожалуйста. Уровень - только учусь (возможно, при просмотре кода потребуется храбрость). На Playground работу продемонстрировать не удалось, так что на правах псевдокода: https://play.golang.org/p/0FMCYvjId59 Пункт В - ожидаем, пока данные передадутся в канал для обработки, все просто Пункт С - ожидаем, пока горутины обработают все данные в каналах (len будет нулевой) Пункт А - вот в нем как раз проблема. Во время работы горутины наступает ситуация, когда данные взяты из канала inputs (и его длина становится 0), но еще не обработаны, а горутина showData взяла данные из канала results и тоже обнулила его длину. То есть, горутина всё еще работает, а процесс считает себя завершенным и уходит. Решить это таймаутами - смахивает на костыль и не дает гарантий. Еще один канал или WaitGroup для синхронизации - не уверен. Подскажите, пожалуйста, как будет правильее?
Vasily
Всем привет! Подскажите, пожалуйста. Уровень - только учусь (возможно, при просмотре кода потребуется храбрость). На Playground работу продемонстрировать не удалось, так что на правах псевдокода: https://play.golang.org/p/0FMCYvjId59 Пункт В - ожидаем, пока данные передадутся в канал для обработки, все просто Пункт С - ожидаем, пока горутины обработают все данные в каналах (len будет нулевой) Пункт А - вот в нем как раз проблема. Во время работы горутины наступает ситуация, когда данные взяты из канала inputs (и его длина становится 0), но еще не обработаны, а горутина showData взяла данные из канала results и тоже обнулила его длину. То есть, горутина всё еще работает, а процесс считает себя завершенным и уходит. Решить это таймаутами - смахивает на костыль и не дает гарантий. Еще один канал или WaitGroup для синхронизации - не уверен. Подскажите, пожалуйста, как будет правильее?
вы не хотите закрывать канал когда асе даннве туда звписали?
Vasily
ну и проверять что он не закрыт это или через range итерироваться, или 2й переменной приполучении значения
Grigoriy
ну и проверять что он не закрыт это или через range итерироваться, или 2й переменной приполучении значения
Если после записи всех данных закрыть первый канал и проверять, что он закрыт и длина второго канала 0 - ситуация будет такой же, между закрытием первого и отправкой данных во второй будет работа, когда длина второг будет 0. А второй закрыть не можем, так как количество данных заранее неизвестно. Если я правильно понял ответ. Если нет - прошу расписать.
Vasily
про каскад подумайте
Maksim (Ellrion)
Всем привет! Подскажите, пожалуйста. Уровень - только учусь (возможно, при просмотре кода потребуется храбрость). На Playground работу продемонстрировать не удалось, так что на правах псевдокода: https://play.golang.org/p/0FMCYvjId59 Пункт В - ожидаем, пока данные передадутся в канал для обработки, все просто Пункт С - ожидаем, пока горутины обработают все данные в каналах (len будет нулевой) Пункт А - вот в нем как раз проблема. Во время работы горутины наступает ситуация, когда данные взяты из канала inputs (и его длина становится 0), но еще не обработаны, а горутина showData взяла данные из канала results и тоже обнулила его длину. То есть, горутина всё еще работает, а процесс считает себя завершенным и уходит. Решить это таймаутами - смахивает на костыль и не дает гарантий. Еще один канал или WaitGroup для синхронизации - не уверен. Подскажите, пожалуйста, как будет правильее?
раз у вас уже используется WaitGroup почему не использовать ее на каждую горутину (и filler и worker и showData)?
Grigoriy
про каскад подумайте
Не понимаю. Можете чуть описать, пожалуйста?
Grigoriy
раз у вас уже используется WaitGroup почему не использовать ее на каждую горутину (и filler и worker и showData)?
То есть внутри бесконечного цикла wg.Add() после получения данных и wg.Done() после отправки обработанных в следующий канал?
Maksim (Ellrion)
Не понимаю. Можете чуть описать, пожалуйста?
делайте wg.Add(1) для каждой горутины а не 1 (ну или сразу add 3) ну и defer wg.Done() в worker и showData добавить а не только в filler ну и в main уже не нужно проверять каналы на пустоту. только wg.Wait()