E-Mobility

Enhancing E-Mobility

I bought an e-bike for my daily commute to work roughly four months ago. This blog entry is an update on the topic and a little rant on product quality and tubeless wheels on bicycles. First impression I love the bike! It works like a charm, and it keeps my armpits dry, which is exactly what I had in mind when I got it. The bike has seen almost 1,600 kilometres during the first 2 months and I enjoyed all of it. The aluminium frame creaks a little on rougher terrain and on bumps, but that was expected. It’s not exactly a top quality bike, but it’s not bad either. The tires are a different story. It feels as if they slammed the cheapest and crappiest rubbers in… Continue Reading…

Software developmentVisual Studio

Resolving cached NuGet packages at runtime

Roughly seven months ago I came across an odd behaviour of Visual Studio that I thought wasn’t possible and that broke my code at runtime. I asked on Stack Overflow hoping that someone could point me in the right direction, but that didn’t happen and Google wasn’t very helpful either. Curiosity finally made me tackle the issue myself once I found the time for it. This article is basically Helmuth von Moltke’s theory of war set in a programming scenario, and it serves as a good example of how important it is to adapt your design during development. No design or architecture extends with certainty beyond the first encounter with a user or a working prototype. Helmuth von Moltke the Elder (if he had been a nerd) Before… Continue Reading…

CryptographySoftware developmentVisual Studio

A kingdom for a strong name

We all have become increasingly paranoid when dealing with computers and software in any way and most of us run some kind of firewall and antivirus software to feel safer on the internet. I won’t go into details on this very wide subject, but I want to elaborate on what we as the developers of software can do about it. I’ll stick to my little .NET world to demonstrate how we can achieve higher security with applications. As already hinted at by the title, today’s topic is strong name signing. Quick refresher on strong-naming A good resource is the Microsoft page on strong-named assemblies, and you should definitely read that. But I’m going to outline the matter any ways so read on if you wish. Strong-naming an assembly… Continue Reading…

Computers

Random Access Memories

I recently noticed that all the laptops I have owned so far were made by Acer. My guess is that you simply get a bit more bang for your buck when buying those, and I had never been disappointed by the hardware in place at any time. I did however hit a little snag when it comes to software made by Acer that shipped with the devices. Actually, ‘a little snag’ isn’t doing the problems any justice, since all the laptops I have owned had major issues due to software. My very first model in 2005 was an Acer Extensa 3000 with an Intel Pentium M Single Core CPU, 512 MB of RAM and a dedicated AMD Radeon GPU. Performance was good enough for my early programming needs… Continue Reading…

E-MobilityEnvironment

Enter e-mobility

I have very recently decided to reduce my carbon footprint by not driving to work in my car any more. Instead, I’ve been riding an e-bike every day for the entire month of May and so far I really like it. It’s like having another 40 minutes of quality me-time before and after work to sort through my thoughts in peace, instead of a 10 to 15 minutes quicker drive in the car where you have to watch out for all the crazy people. During rush hour it’ll be more like a 5 to 10 minutes longer drive with the car, since my bike route doesn’t take me past all the traffic heavy places, so I’m actually not losing any time there. Of course, I could also ride… Continue Reading…

PCP

Guns, threads and chinese tolerances.

One of my hobbies is going to the shooting-range and punching holes into paper. I find there is nothing quite like it to put your mind at ease and I really enjoy focusing on just one thing at a time. But don’t get me wrong, I’m not a gun nut. While I’m sometimes invited to send a few .22 rounds or larger down range, I tend to stick to my plinker toy most of the time. That’s because I enjoy the challenge of hitting a target in not ideal conditions. In my case it’s a cheap PCP air rifle chambered in .177 with just under 7.5 J of muzzle energy. At a distance of 50 meters, the gun is way past it’s designed range for accurate shots and… Continue Reading…

Environment

Soda from another world

We are the proud owners of a SodaStream Crystal 2.0 and have been using the thing for about 2 months now. I have to say, it is truly fantastic to have access to unlimited carbonated water. We had been talking about getting one for a few years, but somehow never got around actually ordering one. At least every ten days or so, I’d go and buy a new crate of bottled water, which meant driving a car and hauling up the water five flights of stairs from the garage to our flat. Thankfully, those days are gone now. But here is the thing that astonished me quite a bit. I read about how the company SodaStream runs some aggressive advertising campaigns against companies like Coca-Cola and Pepsi-Cola. I’ve… Continue Reading…

Software development

Making mistakes: Part 1

Publish your code. This is by far my biggest mistake, and it took me roughly ten years to realize it. As it turns out, it’s responsible for a wide range of mistakes and problems further down the line. I wish our professors had told us to publish everything, but at the time programming was treated more like a craft than a science. Then of course, publishing your own code is terrifying as it is. Everyone can see it and judge you based on its quality. Your name will be all over it and the internet never forgets. That thought alone is a big obstacle and the less experience you have, the harder it is to overcome. However, it’s not so much about how everyone else will perceive your… Continue Reading…

Software development

Making mistakes: Introduction

All developers will eventually make their share of mistakes during their careers, and that’s OK. We all learn from defeat and evolve through experience. Naturally, the bigger portion of that process will happen at the very beginning when everything is new and exiting, and we tend to bite off more than we can chew. Most mistakes are temporary flaws in our skill set and will be ironed out quickly while we learn. But there is the other kind that is a little harder to shake, mostly because they are harder to figure out or are just hiding well enough. That last kind is the one I find the most interesting and the most dangerous, which is why I’d like to talk about it for a bit. I had… Continue Reading…

Uncategorized

First post

Holy cow, it’s a blog. Yes, this is the first post on my first blog. I never thought I’d have a blog, and never thought I’d want one. I sure never thought it would start with me typing ‘Holy cow’, but there you go. It started out as ‘Holy crap’ but that just felt wrong. Cows are okay. There is nothing bad to say about cows, I guess. Any ways … Why do I need a blog? To be fair, I’m not entirely sure that I really need a blog. For now, it’s more like an experiment, which I hope will help me order my thoughts and satisfy my need to explain things to people. I really like explaining stuff because I love watching that smile on a… Continue Reading…