Posted on 15th of February 2023
| 614 wordsUpdate: Go decided to go with opt-in telemetry, which at leastpersonally
speaking I’m very happy with.
[https://research.swtch.com/telemetry-opt-in](Read more about it from here.)
Last week, Russ Cox from Go team started a discussion about the
possibility of starting to collect telemetry from Go
usage
.
How do software developers understand which parts of their software
are being used and whether they are performing as expected? The
modern answer is telemetry, which means software sending data to
answer those questions back to a collection server.
I believe that open-source software projects need to explore new
telemetry designs that help developers get the information they need
to work efficiently and effectively, without collecting invasive
traces of detailed user activity.
I have written a short series of blog posts about one such design,
which I call transparent telemetry, because it collects as little as
possible (kilobytes per year from each installation) and then
publishes every bit that it collects, for public inspection and
analysis.
I’d like to explore using transparent telemetry, or a system like
it, in the Go toolchain, which I hope will help Go project
developers and users alike. To be clear, I am only suggesting that
the instrumentation be added to the Go command-line tools written
and distributed by the Go team, such as the go command, the Go
compiler, gopls, and govulncheck. I am not suggesting that
instrumentation be added by the Go compiler to all Go programs in
the world: that’s clearly inappropriate.
Cox also published three part introductory blog post about
“transparent telemetry” that is worth a read:
So this whole discussion got me thinking about my feelings towards Go
and, possibly, its future. First, I enjoy working with Go. As a
language, it’s delightful to work with. It’s safe and fast, and I feel
productive in it. But if the Go developers would introduce something
like telemetry collecting your Go usage, I would have to re-evaluate
the need/desire to use Go in current/new projects. There aren’t many
developers that enjoy something like this in their toolchains. Or that
would willingly allow something like that.
Sure, collecting telemetry in Visual Studio Code hasn’t affected too
much in its popularity. But then again VSCodium is also quite popular,
so clearly, some people hate this kind of telemetry, even in their
favourite tool. Of course, I’m not yet even talking about the legality
of collecting something like that. Because if something like this
would be on by default, even if opt-out is offered, looking at GDPR,
this can be considered illegal.
Of course, Go has had some “trust issues” for many due to it being
language primarily developed, or at least funded, by Google. So
naturally, people tend to have certain ideas and feelings about it
even without touching it. Understandably so. Many people have already
raised criticism in Go, for example, in their usage of Google run
closed source Go module proxy mirror (proxy.golang.org), which is set
on by default. This is also odd since Go’s import system was made to
be decentralized from the get-go. Still, they decided to introduce
something like this to increase reliability when importing libraries.
Considering all this, personally, I feel that if they were to
introduce something like this to the Go toolchain, especially if it’s
set on by default, it’d be a horrible thing for Go making the language
to start fighting a big uphill battle, which may never end. I would
still like to continue working in it, but if something like this were
to happen, I feel that I couldn’t continue working in it if I had a
choice.
Posted on 6th of February 2023
| 61 wordsSo climbing world seems pretty stoked that Shawn has recently been
projecting the infamous Burden of Dreams, 9A/V17, in Finland. Boulder
is famous for being the first 9A boulder first ascent made by Nalle
Hukkataival in 2016 after three years of projecting.
Lately, Shawn has also uploaded his projecting videos of the boulder to
his YouTube channel, so check those out!
Posted on 4th of February 2023
| 159 words

MIT study finds huge carbon cost to self-driving
cars
The study found that with a mass global takeup of autonomous
vehicles, the powerful onboard computers needed to run them could
generate as many greenhouse gas emissions as all the data centres in
operation today.
These data centres currently produce around 0.14 gigatonnes of
greenhouse gas emissions per year, equivalent to the entire output
of Argentina or around 0.3 per cent of global emissions, according
to the researchers. […]
The high emissions are the result of the huge computing workload
placed on each self-driving vehicle. The researchers’ modelling
assumes that the vehicles use a similar algorithm to what is popular
today – a multi-task learning deep neural network, so called because
it can perform many tasks at once.
These neural networks have to process an onslaught of data,
simultaneously analysing the inputs provided by several onboard
cameras with high frame rates to allow the car to drive on its own.
Posted on 3rd of February 2023
| 429 words

Despite not using Twitter, I stumble upon some Twitter threads every
once in a while, and I have to read them through. This time, it was
one of the tweets that John Carmack, for whom I have tremendous
respect, wrote:
Programmers are also users, and “funnel drop offs” apply. “Show
source” was pivotal for the web, and I wish native code behaved
similarly — ctrl-break any application and be in a debugger with
full source and the ability to make changes.
Precisely this kind of control-break behaviour where you can
immediately after failure get into full-fledged debugging,
inspectability with complete source available but also where you can
evaluate any expression in any stack frame is available in Common
Lisp. Today! Similar behaviour is basically impossible to implement in
any modern language that requires compiling and running to do
anything, meaning C, C++, Rust, Haskell, Go and so on.
Actually, just recently, Jack Rusher
had a
great talk in Strange Loop, called “Stop Writing Dead Programs”, which
revolved around this exact topic, why we keep using technologies that
were meant for batch-processing days and punch cards, and one of the
topics in this was the previously mentioned ability to debug from
Lisp. Check it out:
So naturally, in the Twitter thread, someone raised Lisp, and Carmack
responded to that with:
Unfortunately, heavily customizable languages like lisp are their
own barrier to entry, even for those that already know the language.
There is a lot to be said for boring languages making it easier to
contribute.
Which is fair. But, at the same time, every language can be abused;
the same applies to Lisp. Of course, you can go full-on wild west with
various macros, which only you can understand, but when it comes to
good code (whatever that means), even in Lisp, it should be pretty
straightforward and easily understandable. Functions, classes, nothing
too fancy. If you need to use something fancy, the problem should
REALLY require it. Great example would be reader macros from Common
Lisp. Great feature, rarely needed.
It truly saddens me that we live in a world where something that
Carmack talks about would be easily achievable, and you could argue
when looking at the industries where Lisp used to be heavily used, we
had this world, but we just decided to give it away.
Common Lisp would definitely be a fine choice for many problems that
we face today, but we just decided to go elsewhere, and now we have to
live with it. But maybe it’s not too late. Start using Common Lisp
more!
Posted on 3rd of February 2023
| 656 wordsSome time ago, I decided to start keeping a book list and wanted to start
writing some notes about them
. But, unfortunately, life
happened, and I forgot that I was supposed to make these notes. Of course, I
don’t have anything or anyone enforcing me to do these, but I still want to
keep my own promises. So, now when I found some time, I decided to do this
small overview of the months that I missed. Hopefully, in the future, I could
continue this habit monthly. So here are the books I read between November
2022 and January 2023.
Jason Molina: Riding with the Ghost by Osmon, Erin, ISBN:
9781538112182
Jason Molina has been one of my favourite songwriters for a very
long time. Still, I never knew too much about him, so I wanted to
pick this book up as a desperate fanboy.
Rautatie by Aho, Juhani
I mainly use Kindle for my reading, which naturally depends on
Amazon itself, sadly. Since moving to Berlin, I’ve missed Finnish
literature since, naturally, those books are pretty hard to come by
here. At the same time, Amazon doesn’t really have too many of
these. Then I found out that Project
Gutenberg
provides lots of books not only in
English, but in other languages, too, such as Finnish. For which I
wrote a little appreciation post a while
ago
.
Juhani Aho is one of the first novelists coming from Finland during
the time of late 1800s and early 1900s, Rautatie (engl. Railway)
being one of his most notable novels. A culturally important book
about a man and woman living in the countryside in the late 1800s,
where they start hearing rumours about trains without seeing them.
To Live’s to Fly: The Ballad of Late, Great Townes Van Zandt by
Kruth, John, ISBN: 9780306816048
In the same category as Jason Molina’s biography, Townes Van Zandt
is also one of my favourite songwriters, and I was interested in
learning more about him.
The Prophet by Gibran, Kahlil, public domain
Another classic. An excellent and short book with lots of profound
teaching and philosophies about life. Inspirational.
Be Here Now by Dass, Ram
When moving to Berlin, I sold everything I owned and moved only with
the clothes I had. The sad part is that I had to sell all the vinyls
I owned and all the books I owned. The only physical book that I
brought with me was this one. Very hippy-dippy book to some, but I
love it. I’ve read it multiple times before this and will most
likely reread it.
One Hundred Years of Solitude by Márquez, Gabriel García, ISBN:
9780060883287
For some reason, when I started to keep this reading list, I filled
it up with classics that I, for some reason, hadn’t read earlier.
This is one of them. A fascinating book filled with symbolism, some
could say a little bit too much of it even, telling the story of one
family living in a small town and their problems with the world and
how history keeps repeating itself. Classic for a reason, definitely
a great read.
Juoksuhaudantie by Hotakainen, Kari
Despite not being too old book (coming from 2002), many would call
it already a classic in Finnish literature. It was awarded the prize
for literacy excellence (Finlandia award). When I started reading
this book, it really didn’t hit me too much, but despite this, I
decided to continue reading, and in the end, I feel that I was
rewarded. The story of a delusional man who tries to get his family
back, whom he lost due to his own mistakes.
Hävitys by Rauma, Iida
Last year’s Finlandia award winner. Tells the grim and dark story
about the effects of bullying in school.
Juha by Aho, Juhani
Another classic by Juhani Aho which many would consider his most
important work. Tells the story of a “love” triangle in Sweden
occupied Finland.