Sam Whited

Also selling a bunch of weird programming language swag, I'd do it cheaper for fedi people if anyone wants one. Just make an offer and I can figure out what shipping costs. Not looking to get a ton or anything, just to get rid of some random collectables since that's not really something I'm into but I wound up with them over the years in swag bags and stuff. Having a print version of the FreeBSD Journal (which they don't do often) is particularly cool IMO.

#Golang #Go #FreeBSD

Jun 06, 2025, 14:48 · · · 0 · 0
Habr

Почему sync.Map — почти всегда плохая идея

Привет, Хабр! Сегодня разбираемся, почему sync.Map — выглядит аппетитно, но почти всегда оказывается не тем, чем вы ожидали.

habr.com/ru/companies/otus/art

#golang #go #syncmap #потокобезопасность #многозадачность

Почему sync.Map — почти всегда плохая идея

Привет, Хабр! Сегодня разбираемся, почему sync.Map…

Хабр
std::living std::fish

Надо составить список it-дел на лето, чтобы в сентябре понять, что успел, что нет. Порядок рандомный:

- Потрогать что-нибудь embeded уровнем повыше ардуино, сделать реально РАБОТАЮЩУЮ И ПОЛЕЗНУЮ штуку (Bluetooth receiver для колонки)

- Перестроить домашнюю инфру, а именно #nixos система на мейн пк, мониторинги, общие папки, впн доступ, семейная хранилка паролей

- Продолжить разбираться с #go, поделать #spectrumшиза

- Заработать денег, желательно мозгами, желательно чтобы хватило на ноут

- Потрогать #i2p и #yggdrassil, чтобы уже наконец-то скинуть @kirill треки (я помню!)

- Доделать тг бота для чата своего тгк

- Научить маму пользоваться нейронками для работы

- Зарайсить телефон (опционально)

- Сделать ещё 1 WiFi точку в квартире, ибо заебал слабый сигнал

- Потрогать #pfsense и всякое такое, чтобы сечь рекламу и прочую нечисть на роутере (возможно придётся купить роутер)

- Разобрать старые файлы, пережать плохо пожатые видосы (тут надо зашарить за #h264)

Символы кончились

Habr

Как устроены новые мапы в Go 1.24

Привет, Хабр! Меня зовут Владимир Марунин, я ведущий разработчик в команде Clatch. Сегодня расскажу о новых мапах в Go 1.24: разберем изменения, посмотрим, что было и что стало. О мапах часто спрашивают на собеседованиях, а еще без них нельзя просто так взять и написать программу на Go — так что, надеюсь, тема будет полезной и интересной. Этот текст — расширенная версия моего доклада с митапа МТС True Tech Go . Если больше нравится слушать, а не читать, можно сразу переходить по ссылке. Поехали!

habr.com/ru/companies/ru_mts/a

#go #программирование #мапы

Как устроены новые мапы в Go 1.24

Привет, Хабр! Меня зовут Владимир Марунин, я ведущий…

Хабр
Boris Marinov

@tshirtman @pft I occasionally write python packages and small CLI apps and this is what trips me every time:
- it is hard to structure #python code well and get it right from the get go, as everything is allowed and you can pull modules from everywhere on the file system.
- Dependency management, after several iterations of "this tool will really fix it" it seems that #uv is winning. I like it but getting started is hard.
- Duck typing is nice when prototyping, sucks for maintenance and understanding function parameters.
- Type hints, oh well... I am really trying hard not to deactivate type hint warnings. The rule disables snowball fast with some packages I have to use. But they catch a lot of errors during refactoring and help me lay out my thoughts.

The end result is that for quick scripts it's nice, but everything beyond that becomes messy with an incredible pace. It doesn't also help that everyone has his way of doing things and I have to do lots of convincing etc. And bike shedding.
By the time I'm past the footguns I could've already packaged and deployed my #Go app. Yes, app and not script. I don't really like Go for scripting because of the portability issues. But "scripts" which glue things together quickly turn into fully fledged CLI / backend apps, and by that point I either have to rewrite and move away from python, or live with my decisions.

:hacker_p: :hacker_f: :hacker_t:

@tshirtman Gabriel, it's very kind of you. I still very much use Python if I want to write cross platform scripts. I wish I could use Perl, but no one understands Perl, and it is hard to maintain (even for seasoned programmers).

I've opted for #go, mainly because my community (Internet measurement) used it heavily. It's fast, easy to use, and easy to learn.

はーしぇる。 :sabakan: :freebsd:

【FrankenPHP】今後はPHP Foundationが公式でFrankenPHPをサポートするよ #Go - Qiita
qiita.com/rana_kualu/items/b38

php も fpm じゃなくてこっちが主流になるとイマドキの実行環境っぽくなるなー
node.js とか rails とかみたいな

【FrankenPHP】今後はPHP Foundationが公式でFrankenPHPをサポートするよ - Qiita

FrankenPHP moving under the PHP GitHub organizationPHP…

Qiita
GripNews

🌕 Go 錯誤處理的語法支援:有或無?
➤ 探索 Go 錯誤處理演進之路,以及未來可能的方向。
go.dev/blog/error-syntax
Go 程式語言長期以來受到批評,因為其錯誤處理機制冗長繁瑣,經常導致程式碼中充斥著 `if err != nil` 的檢查。Go 團隊多次嘗試改善這一問題,提出了包括 `check/handle`、`try` 以及最近的 `?` 運算子的方案,但都因各種原因未能獲得廣泛支持。文章回顧了這些提案的演進、遇到的阻礙,以及 Go 團隊從中汲取的教訓,並探討了未來改善 Go 錯誤處理的可能性。
+ 讀者A:Go 的錯誤處理確實很冗長,希望未來能有更簡潔的方案,提高開發效率。
+ 讀者B:文章詳細地記錄了 Go 團隊的嘗試和思考,可以看出他們一直在努力改善語言的實用性,即便過程充滿挑戰。
#程式語言 #Go #錯誤處理

[ On | No ] syntactic support for error handling - The Go Programming Language

Go team plans around error handling support

go.dev
Paul Meyer

And finally, buildGoPackage has been removed, it was deprecated since the last release. Details regarding migration can be found in the Go section in the nixpkgs manual.

Let me know if I missed anything important. :)

#NixOS #Nix #nixpkgs #Go

Paul Meyer

A new builder buildGoLatestModule has been added to provide faster support to packages that require the latest Go version on minor release, such as gopls and co. While the minor bump of buildGoModule needs to go through staging, buildGoLatestModule is updated on master and will therefore reach users faster. The use within nixpkgs is restricted, please read the Go upgrade policy. Notice that this is only for faster minor version bumps at the moment, so direct use of buildGoLatestModule outside of nixpkgs doesn't give much benefit (especially, no faster access to security patches).

#NixOS #Nix #nixpkgs #Go

nixpkgs/pkgs/build-support/go/README.md at master · NixOS/nixpkgs

Nix Packages collection & NixOS. Contribute to NixOS/nixpkgs…

GitHub
Paul Meyer

A policy documenting the details of Go toolchain and builder upgrades in nixpkgs, as well as rules related to using non-default builders like buildGo1xxModule and buildGoLatestModule within nixpkgs has been added in-tree. This is manly to coordinate maintenance and to set expectations for consumers outside of nixpkgs.

#NixOS #Nix #nixpkgs #Go

Paul Meyer

buildGoModule now passes environment variables via the env attribute. CGO_ENABLED should now be specified with env.CGO_ENABLED when passing to buildGoModule. Direct specification of CGO_ENABLED is now redirected by a compatibility layer with a warning, but will become an error in future releases.
Go-related environment variables previously shadowed by buildGoModule now results in errors when specified directly. Such variables include GOOS and GOARCH.
Third-party projects supporting both stable and unstable channels could detect this change through the absence of the CGO_ENABLED function argument in buildGoModule (!((lib.functionArgs buildGoModule) ? CGO_ENABLED)).

#NixOS #Nix #nixpkgs #Go

Paul Meyer

Next, buildGoModule now supports a goSum attribute (null by default) to optionally provide a path to go.sum and correctly enabling rebuilds when the file changes. It ensures you aren't using an outdated fixed output derivation (FOD) hash for your Go module dependencies. Previously, on changes to src, updating vendorHash could be forgotten and nix wouldn't notice and continue using outdated module dependencies from the FOD.

#NixOS #Nix #nixpkgs #Go

Paul Meyer

Overriding of the goModules attribute (the FOD with the Go module dependencies) is unsupported on buildGoModule. To still enable overriding, passthru.overrideModAttrs was added, allowing to pass a function used for overriding the modules derivation internally. It's documented in its own section in the nixpkgs manual.

#NixOS #Nix #nixpkgs #Go