Thanks to visit codestin.com
Credit goes to urmaul.com

Linkdump #2

A second collection of links I found interesting recently. Many of these are stories on how AI can fail, how humans can fail, and how organizations can fail.

AI Augmented Scala, my Takeaways

I have recently attended the “AI Augmented Scala” workshop from VirtusLab.

Short review: great. I was skeptical at first, expecting it to be another evangelism from the church of AI overlords. But, no, they started the talks with pointing out what AI cannot do. This way, they gained my trust and made an impression it's gonna be a no-bullshit workshop. It was indeed.

And they shared ways to make AI more useful.

My takeaways:

Linkdump #1

My first attempt to dump many links on you with short comments about why I consider them interesting. This one is mostly about free software and independence from Big Tech.

How Not to Resize EFI Partition

I have a Framework laptop with Fedora Linux and at some point I couldn’t install firmware updates. The error was not enough free space in my 100MB /boot/efi partition so I had to resize it somehow. None of the guides I could find helped me completely so here’s another one. I also wrote down what didn’t work because those parts of existing forum discussions turned out to be most useful for me.

Android Apps I Use

Over time, I’ve replaced most my Android utilities with FOSS alternatives. Usually this involved installing several apps that do the same thing and using them in parallel until it’s obvious which one is the best. Here’s the list of such apps so you and future me can benefit from this effort.

Deno is Fine

I have migrated one TypeScript application to Deno and I think it is fine. Probably, it doesn’t make much sense to migrate existing applications, but give it a shot when making one from scratch.

More detailed impressions inside.

Computational Optimization at Work 2024

I have attended CO@Work 2024 at Zuse Institute Berlin. It is a summer school about computational optimization algorithms.

Nearly everyone I met at CO@Work were Masters and PhD students proficient in optimization. However, they were curious about the experience of working in a company. This is weird. There should be more software engineers there because usually it’s them who have to solve optimization problems in practice. Yet, most are unaware of operations research’s existence.

But there are good news! Almost every talk from CO@Work is now on YouTube. They can serve as a good crash course into operations research. In this post, you'll find links to every recording with my personal impressions of the talks.

Software Engineering At Google Book, my Takeaways

"Software Engineering At Google" is a long and uneven book. Every chapter is written by a different person and covers a different topic. Some sections are too basic and boring. Some things are too Google-specific, like bragging on how they solve problems they invented for themselves. But also there are things that should be basics but for some reason I haven't seen them anywhere else. In this blog post I list these things.

You Should Own a Domain Name

Imagine not owning the key to your home. Every time you want to get inside, you ask some other person to unlock the door for you. They do it for free but at any point, they can change their mind and lock you out. Sounds weird, right? Well, with IoT "smart" locks it’s not unrealistic but still weird. And yet we have the same situation on the Internet.

Don't Start With a Skateboard

I'm arguing with metaphors again. Do you remember the famous metaphor that when you need a car, instead of building one, you should build a skateboard, then a scooter, a bike, a motorcycle, and only then a car?

This metaphor shows a good idea of getting feedback earlier. It says, don't make all the work with a big-bang release in the end. Instead, start with something simple, a minimum viable product like a skateboard, and release it immediately. Collect feedback and adjust your work accordingly.

There is one flaw, though. Building skateboards is not easy.

ZIO Log Annotations Are Confusing

I was working on a logger that writes metrics every time a warning or an error is logged. I tried to provide additional metric tags depending on the log annotations. And it didn't work. I was adding an annotation and I could see its value somewhere deep in the stack trace but the annotations value was empty.

Turned out that ZIO has two log annotation mechanisms that work in parallel.

Tech Stack of the urmaul.com Blog

At the time of writing this, urmaul.com is a static blog with privacy-friendly dynamic elements. Everything runs self-hosted on a single virtual server with an automatically updated Linux.

This is a description of every layer with some reasoning and configuration details.