You might wonder how I got here. I was looking into chiptune music, and a colleague recommended Jeremy Blake’s music, which is indeed awesome if you are into this stuff. I recommend listening to his album called “Superstructures”. This album is created using a tracker, similar to the trackers I used on the Amiga 500 back in the days. My favorites were Protracker and later when I had a MIDI keyboard Octamed. It turns out Jeremy is using a Dirtywave M8, which can also be built using open source software and one of these handheld gaming consoles. Houston we have a project!
The danger is the point.
I recently came accross a text on riding motorcycles and the danger that comes with it. I hope that the text below makes you realize that in some hobbies, the danger is actually the point:
People who do not ride think the danger is the problem. They are wrong about that. The danger is part of the point. Not in a reckless way. Not in a death wish way. In an honest way.
A motorcycle does not pretend to be safe. It does not wrap you in steel and airbags and tell you everything is fine. It puts you out in the open and it tells you the truth. This is real. Pay attention. That is the thing nobody talks about.
The thrill and the danger are not two separate things. They are the same thing. The reason it feels so alive is because it actually matters. Mistakes have consequences out here.
The stakes are real and something happens to a person when the stakes are real. You wake up, you focus, you stop thinking about everything else because there is no room for it. There is only the road and the bike in the next corner.
Most of modern life is built to remove risk, to smooth everything over, to make sure nothing can ever go wrong. A motorcycle gives it back to you. The danger, the focus, the feeling of being awake.
It is not safe. That was never the point. The point is that it is real.
For me this resonates very much with riding the S1000RR on several tracks in Europe with the awesome Racing School Europe. Nothing comes close to trying to hit your brake point at the end of the Mugello Straight while going over 300kph and forcing your head and eyes to look at the next markers so you actually make the corner. The importance of getting it right makes the fog in your brain disappear.
Volkswagen e-Up! 80% charge trick
Charging an electric car battery to 100% all the time will wear out your battery faster. Many cars have settings to manage this, and some cars even manage it themselves (like your MacBook, they learn when to charge and how much). Not so much for the Volkswagen e-Up!, but here is a trick to have it always stop charging at 80%.
Volkswagen Up! Garmin Conversion
In their infinite wisdom and search for an affordable quality infotainment and navigation, Volkswagen partnered with Garmin. That would nog have been a big disaster, but in their search for a budget solution they put the standard Garmin/Navigon screens on a little arm that protrudes out of the dashboard not unlike a scene from the movie “Alien”. If you have an (otherwise fine) Volkswagen Up!, e-Up!, Skoda Citigo, or Seat Mii (which are basically the same cars), see how I converted a Garmin holder into a proper Magsafe adapter, holding your phone and charge it without extra wires running over your dashboard.
SSH into your AWS EC2 instances
When you use AWS (Amazon Web Services) and need to access your EC2 machines, you have a few options. I think most people end up using the in-browser terminal console or the aws cli to connect to their machines, or opening the ssh port add keys there to directly connect using ssh. In most professional (production) environments this is blocked (for several good reasons). There is however a nice way to be able to connect to your machine with an ssh client through the aws ssm command line interface. Let me take you through the mechanics and then give you a nice script and config example which allows you to use ssh as if you were living in the good old days 🙂
The podcast problem (fixed)
I love to listen to podcasts in the car. It has a lot of benefits over other media types, has less commercials, and there is some pretty good content out there. Documentaries, stories, news, perfect for listening on your commute. There is one big downside to podcasts though, particularly with the podcasts produced by people who have no experience with audio. So I went on a mission to solve this.
Post-quantum key exchange
If you see this warning when connecting to a server through ssh:
** WARNING: connection is not using a post-quantum key exchange algorithm. ** This session may be vulnerable to "store now, decrypt later" attacks. ** The server may need to be upgraded. See https://openssh.com/pq.html
Then follow michabbb’s guide on how to enable post-quantum key exchange in ssh. Don’t worry, you don’t have to generate new keys. Please please do not disable the warnings, Solution 1 is NOT a solution. Do the right thing.
On your (MacOS) client machine (your local laptop) you need to tell your client to prefer post-quantum algorithms. Edit ~/.ssh/config and make sure your Host entry contains a KexAlgorithms line like this:
Host *
KexAlgorithms sntrup761x25519-sha512@openssh.com,curve25519-sha256,curve25519-sha256@libssh.org
On a (MacOS) server you need to tell the sshd deamon to prefer post-quantum algorithms. To help you quickly do this:
sudo tee /etc/ssh/sshd_config.d/post-quantum.conf >/dev/null <<'EOF' # Enable post-quantum key exchange algorithms KexAlgorithms sntrup761x25519-sha512@openssh.com,curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256 EOF sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
Then validate that it worked on your next ssh session. If not, check that both machines (client and server) contain these fixes and are up-to-date. Read michabbb’s article for more tips and a better explanation.
Stay safe!
Addictive Intelligence
The past months were hectic. Artificial Intelligence has changed my daily work faster than I expected. In just a few weeks, it went from a fun experiment to something that reshaped how I “write” software, how I think, and even how tired my brain feels at the end of the day. It brings cool new possibilities, but also new challenges. I thought I’d write some of it down for future reference.
How to tail a json log file
Many applications nowadays output json formatted log files so that they can be scraped by the newest hippest monitoring cluster (think of Splunk, Elastic Filebeat, etc). That is of course very nice and I applaud that kind of observability, but sometimes you are just on the machine fighting with a service that does not want to start, or you just want to monitor it a bit more realtime, or you just are not the browser type. Luckily there is a realatively easy trick to this.
Are you de-skilling?
This week a colleage of mine shared an interesting video describing AI (mainly Suno) as problematic to the musical industry in the sense that musicians will become less and less skilled in making truly original music. It coins the term “de-skilling”, which perfectly captures something I also see in the software development area, even though it is beautifully hidden by the “impressive results”.