home.social

#golang — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #golang, aggregated by home.social.

  1. New guest post: my friend @mdelapenya wrote about Ryuk.

    → your tests hold a TCP connection open to it
    → it drops, 10s grace, then Ryuk deletes everything tagged with your session ID

    Check the blog post here: internals-for-interns.com/post

    #golang #testing #docker

  2. As someone who's new to programming, I cannot recommend "A Tour of Go" that's oftentimes mentioned as a thing you should start off with.

    It has way too many situations where a thing isn't explained and you'll just end up looking for answers instead of moving on.

    For example when studying what "ranges" are, the example had a "<<" and it wasn't explained that it's some kind of "bitwise left shift", so that just sent me down a rabbit hole and I keep losing time with this stuff...

    #golang

  3. context.Context в Go. Суть и частые ошибки

    Привет, Хабр! Сегодня поговорим о контексте: о его тонкостях и ошибках, которые возникают при его использовании.

    habr.com/ru/articles/1078940/

    #backend #golang #context #программирование #developer #development #std #go #timeout #разработка

  4. context.Context в Go. Суть и частые ошибки

    Привет, Хабр! Сегодня поговорим о контексте: о его тонкостях и ошибках, которые возникают при его использовании.

    habr.com/ru/articles/1078940/

    #backend #golang #context #программирование #developer #development #std #go #timeout #разработка

  5. f4, сайд-проекты и помощь экосистеме Go

    В процессе работы над f4 , современной репродукцией Far Manager на Go, мне пришлось столкнуться с кучей ограничений экосистемы и написать массу вспомогательных библиотек, добавив недостающие кусочки паззла. Встроенный mp3 плеер f4 (да, он уже есть, пусть и на стадии PoC, вызывается по Ctrl+Shft+M) на скрине не просто так — это чуть ли не единственный плеер для *nix, нормально работающий с русскими кодировками id3v1 тэгов, для чего в том числе как раз потребовалась отдельная библиотека. Обзор всех наработок f4, которыми вы можете воспроизоваться в своих Go проектах — в этой статье.

    habr.com/ru/articles/1078850/

    #f4 #Far_Manager #файловый_менеджер #двухпанельник #библиотеки #go #golang

  6. f4, сайд-проекты и помощь экосистеме Go

    В процессе работы над f4 , современной репродукцией Far Manager на Go, мне пришлось столкнуться с кучей ограничений экосистемы и написать массу вспомогательных библиотек, добавив недостающие кусочки паззла. Встроенный mp3 плеер f4 (да, он уже есть, пусть и на стадии PoC, вызывается по Ctrl+Shft+M) на скрине не просто так — это чуть ли не единственный плеер для *nix, нормально работающий с русскими кодировками id3v1 тэгов, для чего в том числе как раз потребовалась отдельная библиотека. Обзор всех наработок f4, которыми вы можете воспроизоваться в своих Go проектах — в этой статье.

    habr.com/ru/articles/1078850/

    #f4 #Far_Manager #файловый_менеджер #двухпанельник #библиотеки #go #golang

  7. yzma v1.26 is here and it is the big one: local inference in the browser!

    Write @golang compile with @TinyGo run GGUF models 100% locally on WebAssembly. Uses WebGPU/CPU

    Plus llama.cpp v0.4.0 support. Go get it!

    github.com/hybridgroup/yzma

    #golang #tinygo #wasm #webgpu #yzma

  8. The October 2026 issue is available now. This month, we introduce you to the Vosk speech recognition toolkit and show you how to build speech input into a Python script. This month's DVD: Garuda Linux Mokka and GParted Live. Get your copy today!

    shop.linuxnewmedia.com/shop/ca

  9. So after the (a?) #neovim maintainer rather loudly announced they're cool with fascism, I've started putting a toe in the #HelixEditor waters. Digging it so far, and got my #golang setup all working nicely, but vimotion is completely burned into my brain after ~20 years. Learning to navigate quickly is going to take a little while.

    I do love how you can jump to a two-letter marker on screen, which reminds me of how some speech-based VSCode plugins work that I was experimenting with a couple of years ago.

  10. Just figured out how to set the default tab width in KDevelop for Go to 4 since 8 was bothering me and I kept having to change it.

    You will need to go to:
    - "Settings"
    - "Configure KDevelop"
    - "Editor"
    - "Open/Save"
    - "Modes & Filetypes"
    - "Filetype: Sources/Go"
    - in the "Variables" textbox, paste this; modify for your needs:
    - `kate: tab-width 4; indent-width 4; replace-tabs off; replace-tabs-save off;`

    #Golang #KDevelop #programming

  11. Алгоритм был правильным. Ошибка была в контракте графа

    Мне нужен был сервис, в котором должны были работать несколько разных алгоритмов. Часть математики я помнил, часть понимал поверхностно, часть собирался восстановить по ходу работы. Чтобы быстрее получить прототип, я подключил LLM к генерации бойлерплейта, интерфейсов и первых реализаций. Через несколько дней ( говно )кода стало много — вменяемого сервиса не получилось. Один BFS принимал map[string][]string . DFS жил на другом типе графа. В одной реализации направленность задавалась на уровне графа, в другой вытекала из того, как было записано ребро. Опции существовали, но их комбинации не образовывали понятной политики. Result types возвращали срезы и числа, однако я не мог внятно ответить, что именно они гарантируют. Проблема была не в том, что LLM «не умеет BFS». Я попросил реализации раньше, чем сформулировал общий контракт данных. Генератор заполнил пустые места правдоподобными допущениями — которые, очевидно, не совпали в разных кусках кода. Исходный сервис я остановил. Дальше пришлось вернуться к математике, разобрать алгоритмы по отдельности и сначала спроектировать фундамент, на котором они вообще могут сосуществовать. ...решение смелое и честно говоря не самое лёгкое.. и совершенно не дооценённое Спуститься на уровень архитектуры

    habr.com/ru/articles/1070054/

    #golang #проектирование_api #архитектура_кода #графовые_алгоритмы #open_source #бенчмаркинг #структуры_данных #рефакторинг

  12. Выпекаем тесты на Go с Testo: делимся нашим open-source-фреймворком

    Привет, Хабр! Я Вадим, разработчик QA-платформы в Ozon. Стандартного testing в Go хватает юнит-тестам, но большим end-to-end-сценариям нужно больше: Allure-отчёты, плагины, Suite’ы, параметризация, параллельные запуски. Мы не нашли в Go-экосистеме инструмент, который закрывал бы всё это, не ломая привычный go test , — и написали свой: Testo. Сегодня на нём работает больше 60 тысяч тестов для 500+ сервисов Ozon, а теперь мы опубликовали его в open source . В статье покажу Testo и плагины в деле: как небольшой Go-тест шаг за шагом превращается в полноценный e2e-сценарий с отчётами, фикстурами, хуками и шагами, сохраняя привычный вид.

    habr.com/ru/companies/ozontech

    #go #open_source #qa #allure #golang #qa_automation #тестирование #автотесты #фреймворк #ozon_tech

  13. So I needed a WebP encoder for a Go project where I had disabled. I found there is an option using compiled to running on , but that's pretty slow and uses lots of memory.

    So I made a pure encoder, ported from a Rust encoder then optimized: github.com/SeriousBug/webp-go-

    I managed to get better performance than the WASM version! Both encoding speed and memory use, although compression rate and quality is a bit worse.

  14. we just cut #wazero 1.12.0! your favorite #wasm runtime for #golang now supports more specs than ever! getting closer to WasmGC!

    github.com/wazero/wazero/relea

  15. От LLM к агенту: Как заставить Go приложение думать и действовать

    Всё началось с доклада про AI-агентов. Заинтересовало настолько, что решил написать своего на Go. Было сложно, но получилось! Делюсь опытом: LangChainGo, инструменты, цепочки, MCP и интеграция с GigaChat.

    habr.com/ru/articles/1033718/

    #go #golang #ai #исскуственный_интеллект #gigachat #langchain #голанг

  16. ```
    go run hallo_wereld.go
    hallo hoe gaat het
    go build hallo_wereld.go
    ls -lh
    ./hallo_wereld
    ```

  17. 🚀 Oh, look! Another groundbreaking tutorial on how to reinvent #the #wheel in #Golang, because existing durable execution #solutions just weren't #convoluted enough. 🤦‍♂️ Dive into the #DBOS universe where #buzzwords reign supreme and practical usability takes a backseat to verbose documentation. 📚✨
    dbos.dev/blog/how-we-built-gol #Tutorials #Reinventing #HackerNews #ngated

  18. Ah yes, the age-old quest to "scale" #testing with Go 🐹, because obviously, real developers have nothing better to do than play contract bingo and scenario charades. 🎭 Just sprinkle some buzzword confetti, and watch as #productivity triples in the imaginary land of customer success solutions! 🌈
    funnelstory.ai/blog/engineerin #GoLang #Buzzwords #CustomerSuccess #DeveloperHumor #HackerNews #ngated

  19. Wasm-плагины на Go

    Привет, Хабр! Когда обсуждают расширяемость бэкендов, первым делом вспоминают нативные плагины на C или C++. Дальше обычно всплывают вопросы ABI, совместимости компиляторов, загрузчиков и фразы «а у нас Alpine с musl». В Go исторически был пакет plugin , но его применимость ограничена окружениями и сборкой. В 2025 году картина проще: берем WebAssembly как изолированный байткод, исполняем его прямо из Go и получаем плагинную архитектуру без плясок с динамическими библиотеками. Далее в статье рассмотрим, как создать практичную систему Wasm-плагинов на Go: с изоляцией, таймаутами, контрактом данных и обновлениями на лету. Для рантайма возьмем wazero , потому что он написан на Go и не требует cgo.

    habr.com/ru/companies/otus/art

    #golang #Golang_плагины #WebAssembly_Go #Wasm_плагины #wazero #TinyGo_wasm #Rust_wasm #WASI_preview1 #WASI_preview2 #Go_plugin_package

  20. New in IconFontCppHeaders, a set of icon fonts codepoints for C, C++, C#, Python, Rust and Go:
    patreon.com/posts/iconfontcpph
    - Added Font Awesome 7 free
    - Updated Google Material Symbols and Lucide
    - To make locating relevant files easier, added a table cross-referencing fonts with languages
    github.com/juliettef/IconFontC

    #OpenSource #Font #Icon #Cpp #Python #RustLang #Golang #Programming #DearImGUI #GameDev #IndieDev #FontAwesome

  21. 500 questions to bore you into oblivion? 🤔 The #Golang community must be thrilled that their language can now be associated with the thrilling excitement of automated job applications! 🚀 Who knew coding could be so... thrilling? 🤷‍♂️
    applyre.com/resources/500-inte #jobapplications #automation #techhumor #programming #codingthrills #HackerNews #ngated

  22. Anyone else using #Golang for #ActivityPubDev stuff?

    I just found this package, which claims to implement #RFC9421 (the new standard for HTTP signatures): #^https://github.com/dadrus/httpsig

    It's only a few months old. I haven't tried to use it yet, but maybe it'll be useful to someone.
  23. Any cgo experts out there who how to work through this error `/usr/bin/ld: cannot find -lgcc_s: No such file or directory`? Trying to statically compile a yara-x golang app I'm developing.

    This is the build environment/additional details:

    github.com/VirusTotal/yara-x/i

    #golang #yarax #cgo

  24. Как мы ищем деградации на нодах в кластерах Kubernetes

    Привет, Хабр! Меня зовут Станислав Егоркин, я инженер юнита IaaS департамента разработки Infrastructure в Авито . В этой статье я расскажу про инструмент, который мы используем для обнаружения деградаций на нодах в кластерах Kubernetes, а также покажу дашборд, где мы наблюдаем за состоянием всех наших нод.

    habr.com/ru/companies/avito/ar

    #kubernetes #npd #observability #grafana #go #golang #ноды #поиск_деградаций #деградации_на_нодах

  25. We've been discussing internally and leaning toward transport-level mocking - fakes - like we do in our for : github.com/Azure/azure-sdk-for

    Basically, a struct which implements our `Policy` to be used as our transport in an already-pluggable pipeline and declares distinct `Arc<dyn Fn(..) -> impl Future<..>` fields that are mapped to endpoint calls.

    Seems the most flexible and requires no change to the client API since we already support replacing the transport.

  26. Wochenrückblick, Ausgabe 31 (2024-10).

    Diesmal mit

    - OnlySwitch, einer nützlichen Menu Bar-App für macOS (danke @esamecar für den Tipp)
    - einem Viewer für 3D-Files im Webbrowser
    - einem Tool, welches RSS-Feeds in den eigenen Mastodon-Followings erkundet und übersichtlich anzeigt
    - dem ersten Mal Lost Place-Geocachen seit 14 Monaten und der Erkenntnis, dass sich diese Tätigkeit in den letzten 15 Jahren erheblich verändert hat
    - lossless-cut, dem GUI mit dem sich Videos sehr bequem und schnell manipulieren lassen
    - dem Grund, warum ich zuletzt immer öfter Tools in Go statt Shell-Skript oder Python schreibe
    - und wie immer Techno.

    #OnlySwitch #Bartender #macOS #3D #3DPrint #Browser #RSS #Geocaching #LostPlace #losslessCut #ffmpeg #Video #Go #Golang #Shell #Python #Techno

    marcusjaschen.de/blog/2024/202