Building my faux lego advent calendar feels like current software development
Friday, December 26th, 2025 at 1:17 pmI’ve stated on several occasions that Lego made me a developer. I was the youngest of four kids who inherited a huge box of bricks with no instruction booklets. So I took lots of smaller bits to build bigger things and re-used skills and ways to connect things. I came up with my own models just to dismantle them and re-arrange things.
Much like you write software:
- You write functionality
- You make it re-usable as functions
- You componentise them as objects with methods and properties
- You collate them as classes
- You pack them up as libraries for people to ignore to go back to the first step
Now, this December my partner got me a Blue Brixx advent calendar with Peanuts characters that can be Christmas ornaments. It taught me that Blue Brixx is much more like current software development.
Lego has some unspoken rules and good structure
Lego is great to assemble and sometimes tricky to detach. But it is always possible.
Don’t tell me you are a child of the 80s if you haven’t at least chipped one tooth trying to separate some stubborn 4×2 Lego bricks.
With Lego you get instructions that show you each step of the way which parts are necessary. It’s a bit like following a tutorial on how to develop a software solution.
With Lego, you have all the necessary bricks and none should be left over. Much like with IKEA, any time you have to use force, you’re doing something wrong and it will hurt you further down the track.
Blue Brixx is different
Blue Brixx, because of its size, make and price, is different. The models are adorable and fun to build, but you need to prepare a different approach.
- There are no notches on the underside which means the bricks don’t mesh as nicely as Lego does. You will sometimes have to use force to keep the half done model together or make a brick fit.
- Every model so far had missing bricks. Some had bricks in colours that aren’t in the model and the further I got into the calendar, the more I collected bricks to use later on. Interestingly I often found bricks that were missing in one model as leftovers in the other, so I assume there is a packing issue.
- Some models have glue-on faces for the characters. These stickers are the worst quality I have ever seen and an exercise in frustration. They also mean that you can’t detach the model again.
- The instruction booklets do not list the bricks needed for each step. You need to guess that from the 3D illustration.
- As there is a low contrast at times this means you will use the wrong bricks and then miss them in a future step. This means detaching the model, which is tough with one this size.
Current software development feels similar
Which is a bit like software development these days. We use libraries, frameworks, packages and custom-made, reusable solutions. Often we find ourselves assembling a Frankenstein solution that is hard to maintain, tough to debug, has horrible performance and gobbles up memory.
Just because we re-used bricks we’re not quite sure if we put them together the right way. And we sometimes have to use force to make them work together in the form of converters and optimisers. We add tons of bricks upfront that are loosely connected and lack structural integrity, so we add even more tools to then analyse what’s shipped but isn’t needed and remove it again. We don’t have a manual to follow and we look at the shiny end results built with a certain library and want to take a shortcut there.
I’ve seen far too many products that used several libraries because one component of each was great, resulting in a bloated mess nobody understands.
This is exacerbated by vibe coding. The idea is never to care about the code, but only about the solution, and that will always result in starting from scratch rather than maintaining and changing a product. Think of this as Lego models you glued together.
My workflow: tooling up and structuring
OK, the first thing I realised is that I need new glasses. I already have varifocals, but my eyesight must have declined – spoiler: it did in 3 years. I either can check the instruction booklet with the surprise brick illustrations or find the correct one without my glasses or I need the glasses to find the small brick on the table. This is frustrating, not to even mention the ergonomics of the situation resulting in a hurting back.
Until my new glasses arrive I am using a LED panel lamp I normally use for my podcasts to give the bricks more contrast and see much more detail.
If that is not enough I use my mobile phone as a magnifier to analyse the booklet.
And last but not least I started to pre-sort the bricks of each model before assembling it. This gives me weird looks by my partner of the “what a nerd” variety, but it really helps.
This is also how I build software and try to find my way in this “modern” world of cutting straight to the final product:
- Find a editor environment you are comfortable with – I for one still don’t feel comfortable paying to develop, even if it is tokens
- Structure the solution you want to build and plan it – then find the helper tools to make it easy for you to reach that goal
- Always keep things understandable and documented to make it easy to change parts deep inside the product later without having to dismantle it completely.
- Leave behind documentation that has all the necessary details and steps to make what you did repeatable.
Building these things is work, but it also gives me joy to have assembled them by hand. I also learn a lot how certain parts are always achieved in the same way (hair, arms, legs, parcels…) and It gets easier the more I do it.
I doubt that I would feel the same fulfilment if I asked ChatGPT to build me a 3D model and print the thing.



