HackerTrans
TopNewTrendsCommentsPastAskShowJobs

bojanz

no profile record

Submissions

Golang 1.24 is looking seriously awesome

devcenter.upsun.com
6 points·by bojanz·2 jaar geleden·0 comments

Russ Cox is stepping down as the Go tech lead

groups.google.com
738 points·by bojanz·2 jaar geleden·371 comments

comments

bojanz
·5 maanden geleden·discuss
In my part of Europe it’s all in private WhatsApp groups (one for inner family, one for friends, etc)
bojanz
·2 jaar geleden·discuss
People are sometimes unkind to the Division Bell, but it contains one of my personal favorites: "Wearing the inside out". Wright's lyrics and vocals (first time since The Dark Side of the Moon), Gilmore's guitar, it all comes together.
bojanz
·2 jaar geleden·discuss
Valkey, the Redis fork, is currently sponsored by Ampere, AlmaLinux OS Foundation, Broadcom, DigitalOcean, Memurai, NetApp, Aiven, Alibaba Cloud, AWS, Canonical, Chainguard, Ericsson, Heroku, Huawei, Google Cloud, Oracle, Percona, Snap Inc and Verizon[0].

There is enough interest in sponsoring the development of infrastructure software. But if you want to build a "commercial arm", get VC funding[1][2] and earn millions, then it will never be enough. And I can't say it's unreasonable to want to do that, it just ultimately ends up being against the long-term interests of the project as a whole.

[0] https://www.linuxfoundation.org/press/valkey-welcomes-new-pa...

[1] https://redis.io/press/redis-labs-raises-100-million-series-...

[2] https://redis.io/press/redis-labs-110-million-series-g-led-b...
bojanz
·2 jaar geleden·discuss
What I dislike about the license change is that by trying to extract an extra dollar from Amazon&Google, the entire community gets hurt in the process.

Can I "dnf/apt install redis" on my Fedora or Debian install? I cannot, it's no longer packaged because it's no longer open source.

Can I go buy a shared hosting plan and get Redis? Or a small PaaS that sits on top of AWS? I cannot, because we have decided that every hoster is now as exploitative as Amazon, regardless of their margin.

For decades we lived in a world where someone could sell you an Apache server and a MySQL instance without having to pay money to Apache or MySQL. We can change that social contract, but like all tariffs, this one will be paid by the end users, not by the companies providing the service.

Disclaimer: I work for a PaaS.
bojanz
·2 jaar geleden·discuss
They did a reprint of the original magazine from January 1984, to mark its 40 year anniversary. It can still be purchased online at https://prodavnica.pcpress.rs/issue/339/1, and they ship internationally. I got my copy a few months ago, wanting to own a small piece of history.

You can buy the actual computer kit as well at https://pcpress.rs/galaksija/, but that one ships only within Serbia.
bojanz
·2 jaar geleden·discuss
Right, indeed!
bojanz
·2 jaar geleden·discuss
I like the support for custom currencies, as that is an edge case that often pops up.

On the other hand, be careful about tying the symbol to the currency, as symbols are locale specific. For example, the symbol for USD is $ in eu-US but US$ in en-CA and en-AU (Canada and Australia), and then $US in French locales.

https://cldr.unicode.org/ is the magical dataset behind most good implementations that deal with currency display. Updated twice a year, available in JSON, providing currency symbols and formatting rules for all locales, as well as country => currency mappings and other useful information.

Disclaimer: I maintain a Go solution in this problem space: https://github.com/bojanz/currency
bojanz
·2 jaar geleden·discuss
There is a middle ground and some common patterns that can help.

The address field names are fairly standardized[0] and Google has an open dataset (used by Chrome and Android) describing which countries need which fields[1].

I have an older PHP library[2] and a newer Go library[3] that build upon this, while crowdsourcing fixes (since Google hasn't updated their dataset in a while). The Go library allows me to serve all address formats and state lists in a single HTTP request, which can then power a very fast JS widget.

[0] Initially by the OASIS eXtensible Address Language (xAL) which trickled down into everything from maps to HTML5 autocomplete.

[1] https://chromium-i18n.appspot.com/ssl-address

[2] https://github.com/commerceguys/addressing

[3] https://github.com/bojanz/address
bojanz
·2 jaar geleden·discuss
You'll find many case studies about using Clickhouse for this purpose.
bojanz
·2 jaar geleden·discuss
In retrospective, I think it's obvious that Go's decision to have package and variable names be in the same namespace was a mistake. It is the main reason why people overuse single letter variable names, and have debates such as the one in the linked post.

I am guessing that using a different operator (e.g. rate::NewLimiter()) was deemed inelegant, but it would have avoided a whole set of problems.
bojanz
·2 jaar geleden·discuss
Couldn't agree more. There's a great decade-old blog post by Mathias Verraes which illustrates this well, I keep coming back to it: https://verraes.net/2014/08/dry-is-about-knowledge/