← back

Goal for 2020: Deliver

3 min read ·

Epistemic Status: Personal blogging, craft-related conclusions.

The guy sitting next to me at the office has a wallpaper saying “ALWAYS FUCKING DELIVER.” This dude thinks I’m a good developer. He sometimes asks me for tips or opinions on code-related stuff. Little does he know, I am a developer-disappointment. When it comes to delivering, I ain’t close to Jesus. I’m actually closer to the Polish Post.

I’ve started numerous side projects, which I didn’t ship. A startup idea I was working on with my close friend didn’t get sherlocked, which is hardly a good thing, because we hadn’t even started to ship when it was already too late.

MVP of a car is not a rolling chassis. It's a skateboard.

Illustration by Henrik Kniberg. I’ve managed to build a bike or maybe even a motorbike once. The rest is a garage full of rolling chassis.

I wanted to build a perfect product, with fantastic user experience, the newest tech stack, and the cleanest code, while maintaining some degree of personal life, passing exams, and completing a thesis. The thesis included an app, which isn’t production-ready (of course), but took more than five hundred hours of work of my partner and me combined.

Obviously, I was an idiot. I bit off more than I could chew. I started drinking way too much coffee. My, once thick and bushy hair started falling off, and I’m probably skinnier than I ever was. I don’t remember how to prove a thing about Van Emde Boas trees or Fibonacci heaps.
I can probably do a simple amortized analysis, nothing fancy, though.

On the flip side, I learned. I don’t mean computer science. I got really good at starting projects. I learned GraphQL, got a good grasp of the JavaScript ecosystem with bundlers, React metaframeworks, and the like, but this isn’t the most valuable piece of knowledge I acquired.

I learned that communication is key. Unfortunately, in a hard way.

I learned that a good chunk of Medium software gurus and best practices prophets spend more time marketing themselves than actually building software. Any blogpost claiming that you should follow a few simple rules to be a good developer is a hoax. Instead (unfortunately?), we have to strive to understand the problem at hand, analyze the choices we have, and put in honest work.

Performance optimized code can be confusing and complicated. Code written to unrealistic deadlines is usually bad, but you only get to have code if your business is still running.

You can’t hide from trade-offs behind a bible of best practices.

How does my life look at the end of 2019?

I’ve got a side projects I could to write about, software and non-software, including a huge one with the girl I like, but this is the time to stop writing this blog post and get to work.