web mess – Telegram
web mess
130 subscribers
85 photos
1 video
2 files
163 links
go, vim and some other random stuff
appreciate your feedback :)
Download Telegram
Toodles

Проект для разработчиков - парсит TODO комментарии в вашем коде и составляет их карту с возможностью удобного менеджмента.

🌐 Lang: #Haskell
📎 Repo: https://github.com/aviaviavi/toodles
Спасибо вскоду за такие шикарные подсказки
Нашел неплохую статью про memory allocation в го.
Содержит много практических примеров, что приятно.

https://segment.com/blog/allocation-efficiency-in-high-performance-go-services/
Мне очень нравится clickhouse, но работаю я с ним не так давно.
И вот, у Avito Tech вышла целая статья с ответами на “продвинутые” вопросы о Clickhouse.
Отвечает на вопросы один из главных разработчиков кликхаус.

https://habr.com/ru/company/avito/blog/500678/
Не знаю, приходилось ли кому-то пользоваться graphql в связке с го.
Есть один пакет, скорее всего хороший пакет, буду делать на него миграцию.
Так вот, дока там абсолютно так себе, но, в самом конце есть введения написанные другими людьми.
И это настолько круто, что какой-то из пользователей пакета написал своё введение и автор добавил его в ридми.
Хотя, конечно, минус автору - хорошей доки нет.

https://github.com/graph-gophers/graphql-go - сам пакет.
https://github.com/codex-zaydek/graphql-go-walkthrough - гайд от пользователя.
Forwarded from Not Boring Tech
This media is not supported in your browser
VIEW IN TELEGRAM
Нейросети пошли и в настольный теннис — одна японская нейросеть научилась предсказывать точку падения мяча в реалтайме ещё до того, как ракетка коснулась мяча. Ей всего нужно видеть положение тела игрока и она выдаст своё верное предсказание с вероятностью 75% процентов.
Здесь можно почитать об этой нейросети по подробнее. Видео выше кстати прямиком отсюда.
Forwarded from Not Boring Tech
Обожаю разные забавные проекты с дообученными GPT-2 из серии чё-то.там_does_not_exist — вот один из них, который совсем недавно дико развирусился в соседних каналах. Эта идея уже старая, её наконец-то превратили в реальность: дообученная GPT-2 на UrbanDictionary.com придумывает слова, их часть речи, падежи, слоги и определения к ним. Если обновить страницу, сгенерируется другое слово. Также можно получить определение слова, которое вы сами придумали. В код лезть я не стал, ибо не сильно разбираюсь, можете сами посмотреть исходники, они тут. А вот сам сайт: http://www.thisworddoesnotexist.com/
Сейчас пишу очень много тестов, в основном - это интеграционные тесты.
То есть, нужно проверить взаимодействие разных частей приложения между собой.
Столкнулся с такой проблемой:
Есть структура, в которой есть дата, мне нужно запушить её в MongoDB и позже проверить правильность данных из Mongo.
Так вот, формат даты в монго не такой же, как в го, монго обрезает миллисекунды, из-за чего, в итоге структуры не одинаковы по DeepEqual.
Я пока что присваиваю ожидаемой структуре дату из полученной и сравниваю.
Конечно же, в контексте тестов этот подход не совсем правильный, т.к вдруг что-то будет не так с датой - тесты этого не проверят.
Кто-то сталкивался с таким, как с этим бороться?
В общем, с датой ничего не решилось, но понял, что с помощью прекрасного go-cmp(адвансед альтернатива DeepEqual), можно исключать поля, которые не желательно проверять. Это мой инсайт номер один.
А второй инсайт - это потрясающий тул go-spew, с помощью которого можно очень красиво логировать структуры для дебага(со значениями, типами и т.д). Так я вспомнил, что нулевое значение слайса - nil, а Mongo, когда она сканирует результат запроса в структру, создаёт пустой слайс, а не nil. Так и получается, что в итоге эти две структуры, которые хранят в себе слайсы - не равны по DeepEqul и cmp.Equal.
Столько боли в этих тестах, столько боли …

А вот и сами тулы:
https://github.com/davecgh/go-spew
https://github.com/google/go-cmp
Forwarded from INTERNET 9000
NOTION ✏️ ТЕПЕРЬ 📎 ПОЛНОСТЬЮ 📌 БЕСПЛАТНЫЙ 📓 ДЛЯ 💪 ЛИЧНОГО 🔗 ИСПОЛЬЗОВАНИЯ

notion.so/personal
Я уже знаю, о том, что есть hub. Но вот что.
Github запустил свою command line утилиту для управления репозитириями.
Приятно, что они решили эту утилиту написать на Go.
Пока что это бета и функционал немного урезан по сравнению с тем, что есть в hub.
В будущем обещают поддержку Github Enterprise Server и больше функционала.
Но, по моему скромному мнению, функционала более чем достаточно, чтобы пользоваться в работе.

https://github.com/cli/cli
Если вкратце, я работаю в компании, сервисы которой тесно связаны с криптовалютой.
И по долгу службы, как бы формально это не звучало, мне нужно знать, как устроен блокчейн и апи разных блокчейн платформ.
В процессе ознакомления я прочитал очень известный документ(Satoshi Nakamoto Paper) - https://bitcoin.org/bitcoin.pdf
Впринципе понял, как это устроено в теории. Но на этом решил не останавливаться, ведь намного лучше всё понимается на практике.
Так вот, в итоге я нашел интересную серию статей на медиуме, в которых показывают как сделать свой простой блокчейн и внедрить имплементации разных алгоритмов(майнинг, proof-of-work и т.д).
Пока что еще не написал его, но совсем скоро - поделюсь репо на гитхабе.

Вот ссылка на первую статью, там внизу ссылки на все остальные из серии.
https://medium.com/@mycoralhealth/code-your-own-blockchain-in-less-than-200-lines-of-go-e296282bcffc
Forwarded from oleg_log (Oleg Kovalov)
Стало интересно собрать статистику по Cloud & SaaS. Кто и что использует на работе или просто для себя. На текущем месте работы, а так же и на прошлом.

Даже если вы с этими вещами не работаете (в силу специализации), но знаете, что есть в вашей фирме используется - попрошу вас ответить :)

Результаты выложу на след неделе, думаю за 3-4 дня будет собрано достаточно ответов. Репост приветствуется, или хотя бы ссылку на опрос киньте покидайте другим.

https://forms.gle/v4wppXeC1thfHJ4J9

Спасибо.
Не решился даже пробовать, но теперь и не буду 🙂
Forwarded from oleg_log (Oleg Kovalov)
Последние 2 или 3 недели решил пожить в Goland (который IDE от JetBrains) и...я так-то не много потерял, когда жил без него.

Конечно рефакторинг по F6 это прикольно, и вот все эти менюшки, но как показывает практика, бОльшая часть времени тратится в простом наборе кода и перепрыгиванию между файлами/определениями.

Что сильно выбешивает, так это время отклика, когда по привычке ставишь {} и быстренько хочешь поставить курсор внутри и нажать Enter, а в итоге проваливаешься на строку ниже, а скобки висят на месте. Да и другие телодвижения чувствуются в натяжку (сейчас в лс набегут со словами, что РАМУ РАМУ НАДО БЫЛО ПОДДАТЬ, но факт такой, mbp15 не дотягивает)(и да, кроме как телеги и хрома с 4 вкладками ничего нет, цпу нулевой).

В итоге с июня возвращаюсь в VSCode 🎉
Интересная статья про монорепо Uber. Здесь приводится много примеров использования Bazel и много интересной статистики.

https://eng.uber.com/go-monorepo-bazel/
И вот, после прочтения статьи сверху мне стало интересно чуть глубже копнуть в тему монорепо, и тут есть статья о том, почему это плохо.

https://link.medium.com/UaYr3uIeV6
Релизнули Go 1.14.4
Там несколько фиксов для пакета os, райнтайма и go doc.
Не знаю, стоит ли писать анонсы для майнор версии, но всё же.

https://twitter.com/golang/status/1267589808529997825?s=20