Adrian Stobbe

SAP STAR trainee, Computational Science & Engineering @ TU Munich. Aspiring software craftsman, writer, personal development nerd, linguaphile and salsero 🕺. See here what I'm doing now or my longer intro here.

Want to connect?

I invite you to my life-long learning journey. Get notified about new posts and updates.

Testable code has few mocks

Testing can sometimes seem hard and tedious. We might be faced with complex setup logic and many mocks. But this is a smell of poor code design. When properly done, mocks are rarely needed. TDD helps to avoid tight coupling and it naturally tends towards functional code. In this post, I cover how the functional style leads to less error prone code and fewer code to be tested. Moreover, we will explore when it is proper to use mocks.

Tools and shortcuts for MacOS

After many years of Windows, I switched to MacOS this year - with no regrets. Besides the big plus of being UNIX-based, I got to appreciate the user-friendliness and smooth integrations with the iPad. My favourites are using the iPad as an external sreen, Airdrop, signing documents and continuity. But the system switch, also made me find new ways to interact with it. In the following I want to show a few tools and shortcuts that optimize my workflow on the Mac:

Building a Journaling habit with Obsidian

Journaling is one of the habits that many find desirable, yet few achieve to establish. I felt the same struggle, until I found a nice workflow in my notetaking app Obsidian that I want to share with you. The value of Journaling I believe that people fail to journal regularly because it’s never urgent. So it recedes from the urgent but not necessarily important tasks. Yet it’s those that would probably most benefit from it.

Unix cheatsheet - Beyond the basics

We developers use the terminal a lot and there are a lot of tricks that can ease our work. So it’s worth looking beyond the essentials of getting stuff done in the shell! The quickest way to find what you need is probably to use tldr. But the frequently used hacks are best learned once to know about all the good stuff and work effectively. I recently found the great The Linux Command Handbook from Freecodecamp and went over it to extract the useful bites that I didn’t know.

Fixing CSV parsing - First attribute not regonized (BOM)

Today, I wanted to read a CSV file from Notion and stumbled on the issue that my first attribute was not properly read. I validated my code on a another file before, but on this file it just didn’t work. Turns out that I had the same issue with another npm library. What bothered me was that when printing the object, I could see the attribute, but it had single quotes around it and was printed in green.

Mental Models - How they contribute to a happy life

Mental models are how we see and interpret the world. In reality, nothing has meaning, the world is just full of events obeying the laws of the universe. These laws constrain how we live: time is finite and irreversible, gravity puts us on the ground, physical needs ensure survial, etc. But beyond that everything is really up to our minds. We are all born within this frame, but over time we all have different experiences.