37.1K subscribers
1.46K photos
33 videos
5 files
1.62K links
加入频道
This media is not supported in your browser
VIEW IN TELEGRAM
👣 Предлагаю вспомнить о правилах именования пакетов Go

Разработчикам, использующим пакет, придется вводить его имя каждый раз, когда они вызывают функцию из этого пакета. (Вспомните fmt.Printf, fmt.Println, fmt.Print и т. д.)

Чтобы не возникало проблем, при выборе имен пакетов следует соблюдать несколько правил:
Имя пакета должно быть записано только символами нижнего регистра.

Имя следует сокращать, если его смысл очевиден (например, fmt).

По возможности имя должно состоять из одного слова. Если необходимы два слова, они не должны разделяться символами подчеркивания, а второе слово не должно начинаться с буквы верхнего регистра (пример — пакет strconv).

Импортированные имена пакетов могут конфликтовать с именами локальных переменных, поэтому не используйте имя, которое с большой вероятностью может быть выбрано пользователями пакета

(Например, если бы пакет fmt назывался format, то импорт этого пакета создавал бы риск конфликта с локальной переменной format)

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Whatsmeow

Библиотека Go для создания WhatsApp ботов для нескольких устройств.

Github
Docs

#golang

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Siglens

Библиотека для управление логами, которая работает немного эффективнее, чем Splunk .

Разработчикам приходится перебирать различные инструменты для ведения журналов, метрик, трассировок

Splunk, DataDog, New Relic стоят дорого 💸 💸 💸
ElasticSearch требует много машин, обслуживание кластера несет сложности 👩 💻 👩 💻
Grafana Loki имеет низкую производительность запросов 🐌 🐌

Всего оддин двоичный файл, который вы можете запустить на своем ноутбуке и обрабатывать 8 ТБАЙТ в день.

Поддерживает: Open Telemetry, Elastic, Splunk HEC, Loki
Поддерживает несколько языков запросов: Splunk SPL, SQL и Loki LogQL
Простая архитектура,
Легко начать работу.

🔗 GIthub
🔗 Docs
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Интересный опрос Go-разработчиков

Было опрошено 500 Go-разработчиков

Опрос затрагивает многие интересные вопросы:
для каких задач используют Go
насколько часто применяют дженерики
какие инструменты в арсенале и т.д.

📎 Слайды опроса

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from DevOps Docker
🖥 Как устроены конвейеры CI/CD 💻

Схема взаимодействия контейнерных технологий в рамках работы с привычными инструментами может быть представлена так:

1️⃣Утилита podman с помощью Libpod API обращается к библиотеке libpod, которая вызывает низкоуровневый container runtime (по умолчанию утилиту runc)
containers/podman
Podman Commands

2️⃣Утилита docker с помощью Docker API вызывает сервис dockerd
docker/cli
Docker CLI reference
Docker architecture
Docker API

3️⃣Сервис dockerd вызывает сервис containerd
Dockerd reference

4️⃣Сервис containerd вызывает низкоуровневый container runtime (по умолчанию утилиту runc)
containerd/containerd
Containerd Scope and principles

5️⃣Сервис kubelet с помощью протокола CRI вызывает сервис container runtime (например, containerd или crio)
Container Runtime Interface
Container Runtimes
CRI: the Container Runtime Interface

6️⃣Сервис containerd вызывает низкоуровневый container runtime (по умолчанию runc)
Containerd CRI

7️⃣Сервис cri-o вызывает низкоуровневый container runtime (по умолчанию runc)
cri-o/cri-o

8️⃣Утилита OCI container runtime (по умолчанию runc):

🔘runc с помощью библиотеки libcontainer создает контейнер по runtime-spec, взаимодействуя с подсистемами ядра Linux – пространствами имен (namespaces) и контрольными группами (cgroups)
opencontainers/runc
runc man
opencontainers/runc/libcontainer

🔘crun создает контейнер по runtime-spec, взаимодействуя с подсистемами ядра Linux – пространствами имен (namespaces) и контрольными группами (cgroups)
containers/crun

Docker
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Полезные Go-скрипты для работы с TON

Известная валюта TON, связанная с Telegram, подобралась к $5.

Полезная статья для тех, кто активно работает с блокчейном TON.

В этой статье описывается:
создание заготовки с кошельком, деплой и взаимодействие со смарт-контрактом

детали работы с библиотекой tonutils-go

Статья
Github

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Apache DevLake

Apache Dev Lake - это платформа данных разработчиков с открытым исходным кодом, которая позволяет собирать, анализировать и визуализировать данные из различных инструментов DevOps.

Apache DevLake предназначен для команд разработчиков, которые хотят лучше разобраться в процессе разработки и внедрить в свою практику основанный на данных подход.

Github

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Библиотека Go для эмбеддинга слов (например, Word2Vec)

Эмбеддинг - это способ преобразования чего-то абстрактного, например слов или изображений в набор чисел и векторов.

Vector("King") - Vector("Man") + Vector("Woman") = Vector("Queen")

#golang #machinelearning

Github

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
🦾 Лучшие Golang библиотеки для создания ботов

Библиотеки для создания ботов и работы с ними.

bot - библиотека для создания Telegram-ботов с нулевыми зависимостями.
echotron - Элегантная и мощная библиотека для Telegram-ботов .
ephemeral-roles - создание Discord ботов
go-chat-bot - IRC, Slack и Telegram-бот, написанный на Go.
go-joe - Библиотека ботов общего назначения, вдохновленная Hubot, но написанная на Go.
go-sarah - фреймворк для создания бота для LINE, Slack, Gitter и других платформ
go-tg - форк официальной клиентской библиотеки docs Go для доступа к Telegram Bot API.
go-tgbot - оболочка Golang Telegram Bot API.
go-twitch-irc - библиотека для написания ботов для twitch.tv чата
golang CryptoTrading Bot - Реализация консольного торгового бота на базе golang для криптовалютных бирж.
govkbot - Простая библиотека ботов Go VK.
hanu - фреймворк для написания Slack-ботов.
kelp - официальный торговый и бот для Stellar DEX. Работает "из коробки", написан на Golang, совместим с централизованными биржами и пользовательскими торговыми стратегиями.
larry - Larry 🐦 - простой генератор твиттер-ботов, который публикует твиты из случайных репозиториев с Github.
margelet - фреймворк для создания ботов Telegram.
micha - Библиотека Go для Telegram bot api.
olivia - Чат-бот, созданный с использованием искусственной нейронной сети.
slack-bot - Готовый к использованию Slack-бот для ленивых разработчиков
slacker - простой в использовании фреймворк для создания Slack-ботов.
slackscot - еще один фреймворк для создания Slack-ботов.
tbot - бот-сервер Telegram с API, похожим на net/http.
telebot - бот-фреймворк Telegram написан на Go.
telego - библиотека Telegram Bot API для Golang
telegram-bot-api - простой и понятный клиент Telegram bot.
teleterm - Telegram Bot Exec.
tenyks - сервис-ориентированный IRC-бот, использующий Redis и JSON для обмена сообщениями.
wayback - бот для Telegram, Mastodon, Slack и других платформ обмена сообщениями.

@Golang_google
👣 Великолепное наглядное руководство по слайсам в Go.

С этой статьей вы углубитесь во внутренние компоненты и посмотрите, как работают слайсы под капотом.

 🔗 Подобнее

#golang #junior

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM