Николай
Вы уже готовы писать высоконагруженный бэкенд на Go? Проверьте свои силы в чат-боте Яндекс Практикума.
Тест в чат-боте состоит из двух частей: о программировании в целом и о Go в частности. Узнайте свой уровень.
Камон! Бывают проекты без легаси? Как только проект вышел в прод, он автоматом стал легаси.
1. Учебная часть построена как реальный проект. Двухнедельным спринтами со среды по среду. То есть задание выдаётся на него не сразу одним куском, а частями. Да, получается как в жизни - легаси. Если есть время, можешь поправить. Если нет - будешь тянуть свой легаси до конца обучения. Но это не фатально - так как проект функционально простенький. Да и как можно вообще без легаси, если для тебя это новый язык, да ещё и не привычный ООП? 🤷♂️
2. Дипломные работы - отдельные задания. У меня впереди второй дипломный проект, первый сдал. В нем уже всё сделано красиво - сказываются набитые шишки на учебном проекте.
3. Из минусов. Сам курс сыроват в том смысле, что много мелких недочётов. Мелкие ошибки в описаниях задач, не работающий примеры кода. Но не фатально. За время обучения курс обновлялся несколько раз или это сама платформа обновлялась - не знаю, это мой первый опыт на ЯП.
4. Важно чтобы ментор попался нормальный. Не так важен его опыт, сколько внимание к студенту. Имел возможность сравнить - брал Академ на отпуск.
5. Кураторы - выше всяких похвал. Очень приятные в общение девушки и очень хелпфул. 5+.
6. Проводятся доп конфы для студентов, где есть докладчики и им можно задать вопросы. Их много, но я был на одном - мой график не позволяет на них попадать.
7. По выходным дежурных кураторов и саппорта нет, а я могу учиться только по выходным.
8. Как это ни странно, но первые спринты выжирают больше времени, вторая половина курса менее загружена.
В целом я доволен. У меня уже были простенькие сервисы в проде на go. Тут подсмотрел много фишечек, которым в сухой теории никто не научит, только с опытом и подсмотром у коллег.
Bogdan
Добрый день, господа. Кто-то пользовался etherscan? Не подскажите, как вытянуть последние 100 блоков? Потому что в доке есть эндпоинт только на последний блок, спасибо
Null
👣 Cute Print
Симпатичный пакет печати Go (альтернатива fmt), минималистичный, без зависимостей!
go get -u github.com/zakaria-chahboun/cute@latest
🔩 Github
@Golang_google
anhckie
кто-то ставил себе https://gitlab.com/opennota/check ?
anhckie
для чекинга полей структур на предмет выравнивания памяти
anhckie
кто-то ставил себе https://gitlab.com/opennota/check ?
короче я шо-то не врубаюсь, не могу использовать пакет.
zsh: command not found: aligncheck
и хоть что делай.
при этом:
cat ~/.zshrc
export GOPATH="$HOME/go"
export PATH=$PATH:$GOPATH/bin
echo $PATH
/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/u/go/bin
anhckie
где я туплю?)
Andrey
Ну ты хотя пример запуска как вызываешь скинул
anhckie
как в репе указано - aligncheck
anhckie
$ aligncheck net/http
Grigorij
aligncheck в home/go лежит?
anhckie
find / -name "aligncheck" -print 2>/dev/null
/System/Volumes/Data/Users/u/go/pkg/mod/gitlab.com/opennota/check@v0.0.0-20181224073239-ccaba434e62a/cmd/aligncheck
/Users/u/go/pkg/mod/gitlab.com/opennota/check@v0.0.0-20181224073239-ccaba434e62a/cmd/aligncheck
anhckie
вот здесь файндом обнаруживаю файлы
Grigorij
в бин же должен быть, не?
anhckie
так вот и мне так кажется)
anhckie
есть подозрения шо у меня тут шляпа какая-то настроена
Grigorij
в репе написано как в проект включать, а ексекутабл надо билдить ещё и потом запускать
> в бин же должен быть, не?
во всяком случае если планируешь глобально вызывать, тк ты добавил это в path
minone
minone
minone
Bogdan
Господа, есть знатоки mongoDB? Нужно делать поиск не по одному ключу, а по нескольким. Не могли бы подсказать как? В доке не нашёл, пока ищу только по одному таким способом:
filter := bson.D{{"hash", body}}
cursor, err := r.collection.Find(context.TODO(), filter)
Илья
Bogdan
Я так пробовал, но в этом случае оно будет выводить только при наличии same-значения в двух ключах, а мне, в свою очередь, нужно доставать значения с того или иного ключа по входящему параметру. Например: ищу 12, и оно выводить поле age, где значение равно 12. Ввожу Tom и оно выводить всех с именем Том соответственно
p.s: невнятно написал вопрос, прошу прощения
Артем
$or mongodb golang example
Bogdan
А, всё так просто
Артем
ага)
Bogdan
Хэх, а я часик жизни потратил. Знатный опыт получаю с монго конеш
Bogdan
Спасибо)
Илья
Илья
первая ссылка по запросу "mongodb golang or query filter")
Bogdan
Та я multiple keys вообще искал, мдэ
Bogdan
2 дня работаю с etherscan и уже голова кипит
Артем
Как думаете, нормально будет затащить gorm в большой проект(монолит с нуля) чисто для крадов? А то кучу сущностей разруливать руками по 15 полей не очень хочется. Кто юзал, как оно?
Антон
я юзал горм, все прекрасно
Andrey
Артем
приложения ещё нет, буду с нуля писать, но запросы есть. Есть куча крада, а есть ручные селекты всякие итд. Видел там есть поддержка raw. Вот думаю, что мге будет впадлу крады писать руками
Артем
т.к сущности объемные, особенно апдейты некрасиво будут выглядеть если писать ручками
Илья
@nenuetoflex
Null
🖥 Fman
Fman быстрый файловый менеджер для терминала, написанный на GO
Имеет чистый интерфейс с подсветкой синтаксиса и поддержкой различных тем
$ go install github.com/nore-dev/fman@latest
🔩 Github
#Interesting #Go #Terminal
@Golang_google
ᅟ
Илья
Anonymous
I received my $8000 profit
https://t.me/joinchat/UEm95K00oXk5ZmZk
Андрей QA
Максим
Подскажите плз. Я с go не особо, но надо одну задачку сделать для лабораторки. Обрыл гуугл, и что-то даже нормальный запрос поставить не могу. Суть в чем. Мне надо получить из html template, поле, пойти в бд, найти и вернуть в response. С бд вроде разобрался, а как вернуть пользователю? Я думал что в go может другую темплейт вернуть и там отобразить данные, через ExecuteTemplete, но либо я коряво делаю, либо это не так делается(((
Emin Zalaev
Подскажите плз. Я с go не особо, но надо одну задачку сделать для лабораторки. Обрыл гуугл, и что-то даже нормальный запрос поставить не могу. Суть в чем. Мне надо получить из html template, поле, пойти в бд, найти и вернуть в response. С бд вроде разобрался, а как вернуть пользователю? Я думал что в go может другую темплейт вернуть и там отобразить данные, через ExecuteTemplete, но либо я коряво делаю, либо это не так делается(((
Ошибки обрабатывай, хотя бы понимать будешь где косяки
Максим
Emin Zalaev
По идее да, может он файл не находит
Emin Zalaev
Поэтому ошибка
Denis Pershin
Максим
По идее да, может он файл не находит
да там даже не файл, там строка. Типа вводишь марку машины, оно идёт в бд, находит список машин по марке, и возвращает пользователю. Дальше это должно отобразиться у юзера. Спасибо, буду смотреть.
kostyaBro
kostyaBro
Максим
kostyaBro
Ну и да ты ошибки скипаешь, вся инфа в них. Тебе ide не просто так выделяет Execute и Execute Template
kostyaBro
Ты отправляешь запрос с браузера, в каком-то формате, к template это отношения не имеет
kostyaBro
r form get brand не работало?
kostyaBro
Дело не в том что ты "с go не особо"))
Максим
Kära
Максим
Максим
а вот обратно нет
kostyaBro
При нажатии на кнопку у тебя на /brand улетает x-form-encoded POST запрос где в поле brand лежит то что ты вписал в поле.
Ты поле вытаскиваешь, запрашиваешь из бд по нему и собираешь страничку через шаблон.
Kära
тут оно нормально доходит
https://ru.stackoverflow.com/questions/436487/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0-%D1%81-%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%BE%D0%B9-%D0%B2-go
kostyaBro
Ты не парсишь шаблон той страницы что отправил пользователю, это так не работает
Максим
Понял, огромное спасибо. Пойду гуглить
kostyaBro
Ты через go run запускаешь?
kostyaBro
Или делаешь go build а потом запуск
kostyaBro
Ты через go run запускаешь?
Если так то запуск происходит во временной дирректории и файлов твоих не видно.
Попробуй собрать и запустить бинарь
kostyaBro
Но сначала не скипай ошибки!
Максим
kostyaBro
через print?
Да хоть как, ты ее там вообще пропустил в Execute Template
kostyaBro
Можно файлы за-embed-ить и тогда будет ок всё с путями
Максим
kostyaBro
https://pkg.go.dev/embed
Максим
но что-то не очень ошибки
kostyaBro
Давай без глупостей, ты даже не посмотрел что у тебя функция возвращает.
Максим