Golang Books
17K subscribers
331 photos
6 videos
335 files
312 links
Библиотека Golang разработчика

По всем вопросам- @haarrp

@Golang_google - Golang

@golangl - golang chat

@GolangJobsit - golang channel jobs

@golangtests golang tests

@itchannels_telegram - 🔥лучшие ит-каналы

№ 5032829002
Download Telegram
⚡️ Новое исследование, опубликованное в Nature, показывает: языковые модели по-прежнему путают «знание» и «убеждение», смешивая факты и выдумку.

Авторы представили новый бенчмарк KaBLE - 13 тыс. вопросов, 13 задач, 24 протестированные модели — и обнаружили серьёзные провалы в сценариях «ложное убеждение от первого лица».

KaBLE проверяет, понимает ли модель:
- кто что знает,
- кто только верит,
- и соответствует ли утверждение реальности.

На задачах ложного убеждения от первого лица:
- GPT-4o падает с 98.2% до 64.4%,
- DeepSeek R1 — с ~90% до 14.4%.

Это значит, что модели выглядят умными в одной формулировке задач, но ломаются в той, которая ближе к реальному общению пользователей («я думаю…», «я верю…»).

Для ложного убеждения от третьего лица новые модели дают ~95%, старые ~79%,
но у задач от первого лица результаты проседают до 62.6% и 52.5% соответственно.

Разрыв указывает на *атрибутивное смещение*: модель приписывает говорящему фактическое знание, а не различает его убеждения и реальность.

Исследователи также проверили рекурсивные знания — «кто знает, что кто-то знает…».
Новые модели решают многие случаи, но их логические шаги нестабильны и выглядят как сложное сопоставление паттернов, а не как уверенное правило рассуждения.

Итог: LLM всё ещё слабо различают знание, убеждение и факты — особенно когда человек говорит о себе.

nature.com/articles/s42256-025-01113-8
👍74
Как реализовать Outbox-паттерн в Go

Outbox - один из самых надёжных способов синхронизировать запись в базу и отправку события, чтобы не потерять сообщения при сбоях. Он объединяет бизнес-операцию и создание события в одну транзакцию, а затем отдельный воркер безопасно публикует это событие в брокер.

Как это работает:
- в той же транзакции, где создаёте данные (например, заказ), записываете событие в таблицу outbox
- фоновый процесс периодически выбирает pending-записи через FOR UPDATE SKIP LOCKED
- отправляет событие в брокер
- помечает запись как обработанную

Так достигается атомарность: либо и данные, и событие записаны, либо ничего.
Для Go обычно используют связку Postgres + транзакции + отдельный dispatcher-воркер.

Идеально подходит для микросервисов, e-commerce и всего, что живёт на событиях.

https://packagemain.tech/p/how-to-implement-the-outbox-pattern-in-golang

Видео: https://www.youtube.com/watch?v=iMQ-hb535AE
👍76
Примеры использования client-go — официальной Go-библиотеки для взаимодействия с Kubernetes API. Репозиторий содержит набор минималистичных, но рабочих программ, которые демонстрируют, как использовать client-go для различных задач:

- Получение списка Pod'ов
- Прослушивание событий (watch)
- Использование контроллеров
- Работа с workqueue
- Создание кастомных клиентов
- Реализация информеров
- Примеры c RBAC и настройкой доступа

Каждый пример максимально изолирован и понятен, что делает репозиторий отличной стартовой точкой для тех, кто хочет разобраться, как изнутри работает Kubernetes-клиент на Go. Особенно полезно для разработчиков операторов и контроллеров.

https://github.com/iximiuz/client-go-examples
👍43🔥2
🖥  Работа со строками и рунами в Go — откройте внутреннюю механику языка

Как Go хранит текст? Почему одна буква может занимать четыре байта, а строки иногда «ломаются» при итерации? Эти мелочи отличают новичка от разработчика, который действительно понимает язык.

📆17 ноября в 20:00 МСК на открытом уроке разберём, как устроены строки и руны в Go, что происходит «под капотом» при работе с кодировками и как писать корректный, быстрый код для обработки текста. Вместе с преподавателем напишем живые примеры, разберём частые ошибки и объясним, как их избежать. 

➡️ Урок проходит в преддверие старта курса «Golang Developer. Basic». Все участники вебинара получат скидку на обучение: https://otus.pw/qiar/?erid=2W5zFHaQa8Y

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🤯21
Forwarded from Golang
👣 В Go 1.26 добавят в net.Dialer новые сетевые методы с поддержкой контекста.

Они объединяют эффективность существующих высокоуровневых функций набора соединений с возможностью отмены через Dialer.DialContext — то есть будут быстрее и надёжнее при работе с сетевыми вызовами.

Для тех случаев, когда вы точно знаете сеть (TCP, UDP, IP или Unix-сокет) и хотите:

- минимальные расходы (без лишнего разрешения адресов)
- контроль таймаута/отмены через context
- современный тип адресов из netip


В целом это шаг к более гибкому, эффективному и контролируемому сетевому подключению в Go.

Пример использования:

var d net.Dialer
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()

raddr := netip.MustParseAddrPort("127.0.0.1:12345")
conn, err := d.DialTCP(ctx, "tcp", netip.AddrPort{}, raddr)
if err != nil { log.Fatalf("Failed to dial: %v", err) }
defer conn.Close()


https://antonz.org/accepted/net-dialer-context/

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81🔥1
🔥 Подборка полезных ресурсов для программистов.

Здесь ты найдёшь всё это - коротко, по делу и без воды.
Пока другие ищут, где “подглядеть решение”, ты уже используешь самые свежие инструменты!

AI: t.iss.one/ai_machinelearning_big_data
Python: t.iss.one/pythonl
Linux: t.iss.one/linuxacademiya
Devops: t.iss.one/DevOPSitsec
Собеседования DS: t.iss.one/machinelearning_interview
C++ t.iss.one/cpluspluc
Docker: t.iss.one/DevopsDocker
Хакинг: t.iss.one/linuxkalii
Data Science: t.iss.one/data_analysis_ml
Javascript: t.iss.one/javascriptv
C#: t.iss.one/csharp_1001_notes
Java: t.iss.one/java_library
Базы данных: t.iss.one/sqlhub
Python собеседования: t.iss.one/python_job_interview
Мобильная разработка: t.iss.one/mobdevelop
Golang: t.iss.one/Golang_google
React: t.iss.one/react_tg
Rust: t.iss.one/rust_code
ИИ: t.iss.one/vistehno
PHP: t.iss.one/phpshka
Android: t.iss.one/android_its
Frontend: t.iss.one/front
Big Data: t.iss.one/bigdatai
МАТЕМАТИКА: t.iss.one/data_math
Kubernets: t.iss.one/kubernetc
Разработка игр: https://t.iss.one/gamedev
Haskell: t.iss.one/haskell_tg
Физика: t.iss.one/fizmat

💼 Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.iss.one/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://t.iss.one/addlist/mzMMG3RPZhY2M2Iy
Папка Linux:https://t.iss.one/addlist/w4Doot-XBG4xNzYy

😆ИТ-Мемы: t.iss.one/memes_prog
🇬🇧Английский: t.iss.one/english_forprogrammers
🧠ИИ: t.iss.one/vistehno

🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://t.iss.one/addlist/BkskQciUW_FhNjEy

Сохрани себе, чтобы не потерять!
1
Sloggo - лёгкий и быстрый сборщик логов на Go по стандарту RFC 5424

Если вам нужен простой, минималистичный и быстрый инструмент для централизованного сбора логов — без тяжёлых ELK, Loki или огромных кластеров — Sloggo выглядит очень достойным вариантом.

Что делает Sloggo:

- принимает логи по TCP и UDP в формате RFC 5424
- хранит их в DuckDB — быстрой встроенной базе данных без лишней настройки
- даёт чистый и удобный веб-интерфейс для поиска и фильтрации
- весит всего ~10 МБ и работает как один процесс
- запускается за секунды, подходит для малых и средних систем

Где полезно:

- домашние серверы и дев-окружения
- небольшие продовые сервисы, которым не нужна тяжёлая лог-инфраструктура
- быстрый сбор логов во время отладки
- системы с минимумом ресурсов (VPS, контейнеры)

https://github.com/phare/sloggo/
👍7😁3🔥21