dressing up when working from home, timeless vs sexy, minimalistic coffee makers, Hanlon's razor, side projects
a patchwork of loose thoughts I
Dressing up nicely even when working from home makes me do a better job. I usually work in the tracksuit, but even after just one day of dressing up nicely I immediately feel the difference. Makes me have more respect for the job.
My wife found out about Anthony Bourdain’s favorite mortadella sandwich (Croatian link) this month and so we had to try it. It’s amazing. Our usual sandwich meal is just plain ham and cheese with pickles toast and I think this is going to become our next go to. This reminded me of the pattern. How easy it is to upgrade something that you consume every day and make it so much better with just a little bit of effort and exploration. Examples of our past upgrades like this:
Switching from instant coffee to Aeropress. Of course, it’s easier to just put a spoon of instant coffee and pour water on top, but Aeropress coffee tastes 10x better even with regular store bought coffee.
Instead of settling for scrambled eggs for breakfast, which require zero effort, trying to make Jacques Pépin omelette. First attempts will be comically bad, but each attempt will bring you closer to it. It’s a fun game. Do 100 things.
You can miss the point of good design by only focusing on the aesthetics. Something can be aesthetically beautiful, but badly designed and something can be aesthetically ugly, but well designed. One example of this is the portable electric grinder I use every day: Timemore Whirly 01S. It’s very nicely built, feels very robust in hand and looks nice. But some design decisions are just plain stupid even though they are marketed as “clever”. The bean compartment opens and closes in a fancy way, but the hole for placing the beans is small, so I end up spilling the beans around almost every time I use it. “Lose the lid”, their marketing page says, “Whirly’s clever hopper swivels up and snaps into place with a click”. It would’ve been much better if it was just a normal lid that’s as wide as the grinder, but no, it wouldn’t be a “clever hopper” then, whatever that meant (what makes it clever?). They sacrificed the convenience of the design of the lid which is ancient, but it’s not sexy, and then invented a “clever hopper” which is very sexy, but the only problem is that it doesn’t solve the actual problem as well as lid would’ve. So enjoy the sexy solution that annoys you a little every time you use, I guess?
Also, I hate it when its battery dies in the middle of grinding. When that happens I have to plug it in and wait for battery to charge in order to continue. The thing is, the LED that indicates battery is low is aesthetically pleasing, but tiny and only visible when the grinder is working, so it’s easy to miss that it’s low on battery. It would’ve been so much better if (a) grinding was possible while it was charging, so I don’t have to wait for so long and (b) if the battery indicator was more prominent. I think people at Timemore chased the fancy solutions more than they chased actual functionality and I think that’s common. I find that that’s true in software development as well. We are biased towards modern and sexy, when we would get much more value if we just stuck with the boring thing that works and has worked for ages. I don’t think that’s good and I think we need to be aware of that bias and counteract it by looking for the timeless.
As with coffee grinders, so with product design. My philosophy is that it’s better if it’s well designed but ugly than the other way round. If we can get the aesthetics as well, great, but not the crucial factor. Also, I think it’s much easier to make something aesthetically pleasing than it is to make something well designed. I think that’s the reason why every landing page today looks like Linear’s. That’s easy to copy. What’s harder is coming with good design. And I think the right way to do it is using something and then iterating on it. Just noticing what’s annoying and fixing it over and over. Feeding the problems you encounter while using it back to the designer and then fixing those problems again and again. I think having a feedback loop like that produces the best design possible. It’s like rewriting the same sentence over and over again after reading what you wrote. Inevitably you come to the better sentence.
Speaking of writing (oops we’re barely six bullet points in and I’ve already gone meta, sorry), I’ve recently read Knausgaard’s My Struggle I and it’s okay I guess, but he can devolve from trying to express the beautiful in the mundane to only expressing the mundane. Like pages and pages of him cleaning his grandma’s house. What he saw there, what he moved, how he cleaned. Oh my. I would’ve definitely quit the book if that part was earlier in the book. That said, after reading the book I searched from some interviews with him and read that he went through the period of struggle before writing this book. He got stuck in the writing rut because up to that point he tried to express himself in a very literary way and then just decided to let up the pressure and just expressed himself in the way that comes the most naturally to him. I feel like I’m going through the same phase right now.
This reminds me: Reality Has a Surprising Amount of Detail. I think I can probably spend infinite amount of time on every problem I have. The recent example of that is the stupid little app I’m working on, for displaying the trash schedule in a nicer way. It’s a stupid little problem I have and I really enjoy using this app every time I need to take out trash. Saves me from parsing that ugly PDF each time I use it. The biggest problem is converting the trash schedule from the ugly PDF format to something structured, like a JSON object. I have to do that once a year. And it needs to be 100% accurate. One would think I can just give it to Claude to parse, but no. Because of this 100% accuracy requirement, I can’t rely on it. So I can either write the schedule myself, but that’s menial and tedious work, I would rather not do it. But if I want to automate it, the solution is very complex and includes implementing some sort of OCR which I don’t know nothing about and it’s questionable if even that would be 100% accurate. So if I want to implement it right, I’ll spend a lot of time implementing a solution. It’s also not like I’m going to have any monetary benefit from that, but I think doing something like that is worth it just for the learning opportunity.
It’s useful to think of the world as more fluid than what it seems. There’s a “skill issue” meme going around in programming communities that labels problems that happen as the lack of skill for participants. It’s common to blame others and/or external factors for the problems that you have, but I think it’s useful to think how someone more skilled in the problem’s domain would handle such an issue.
I think the dangerous extreme view of Stoicism and how you can not change other people but only your own actions and opinions can lead to complete abdication of responsibility we have for others.
I assume you’re familiar with Hanlon’s Razor, but I’m going to repeat it, sorry. When it seems that others are malicious can more easily be explained by their incompetence. But more importantly, for others not to think I am malicious, even when I am not, I need to become more skilled in whatever I’m doing for others.
I often remember the main lesson from the short book called The Basic Laws of Human Stupidity and how it says that stupid people engage in lose-lose scenarios while intelligent people pursue win-win scenarios as much as possible. Well, I think becoming as competent as you can increases the rate of win-win scenarios for you.
Also, pursuing win-win scenarios is the reason you’re reading the listicle again this month. I’m a little listicle boy now. No, but seriously. This practice of publishing something every month (that I’ve been doing for a while because of the bet I made with a friend) is something I would like to do indefinitely, even though the format might change as I learn more things which will inevitably happen. See, listicle is the win-win scenario for me because I really enjoy writing one, much more than writing a regular blog post, and I hope it makes it more enjoyable for you to read because of that, dear reader.
I hate the fact that I worked on a time tracker app on the side for years and haven’t published anything in the end. All that work only to console myself with “hey, at least I’ve learned something”. I am reminded of this every time I need to track time with some stupid app that barely works or when I manage my todos for a project. Currently I’ve been using Raycast notes for that and I really don’t like it. The only thing I like about it is the simplicity of it. But there is so many things that could be improved. And knowing this and not doing anything about it annoys me a lot.
I hate another fact even more: I’m still using Roam Research for note taking. I hate it because I’ve also started building my own note taking app but didn’t finish it. I’ve realized that the best note taking app for me is the one that is the most fun to use and the most fun one to use is the one where it’s the easiest to talk with my previous notes. I have so many ideas how this can be improved and I had so much fun using my prototype but in the end stopped using it because developing it became unmanageable because I used AI so much to speed things up which generated so much technical debt that making changes became impossible. This happened over a period of weeks, not months.
So basically I want to build todo apps and note taking apps. Probably the two worst categories you can possibly come up with if you follow the common YCombinator startup wisdom. But when I think about it I don’t use any other apps on my computer. Other than note taking and todo apps, I use terminal, email app and a browser and I am not interested in solving these other problems. Solving the todo app problem or a note taking app problem actually excites me.
Now thinking about it more and connecting to the previous bullet point about product design I think I want my apps to feel like Aeropresses and V60s. I absolutely love the philosophy behind these manual brewers. See, when it comes to making coffee, there is really no upper limit on the amount of money you can spend on tools for making it. You can buy really expensive machines with a lot of moving parts that produce great cups of coffee. But the problem is, these machines have a lot of moving parts. And a lot of these moving parts need constant cleaning maintenance or replacement. There are more variables to think about. In contrast V60 and Aeropress are super cheap, have very few parts, and take no space. What actually matters when it comes to these coffee makers? Getting a great cup of coffee. How do we get there with the least amount of hassle, without thinking about things that don’t matter? Well, with V60 or Aeropress. I want to build the apps that feel like that. No complexity, no bullshit, no variables to get to what actually matters.
How would your life change if you viewed most of your current problems as solvable, even the most difficult ones, and if you started by assuming you have them because of your own lack of skill?
Munger: “Take a simple idea and take it seriously”. Are you sabotaging yourself by being more interested in working or noticing problems that are more complex and intellectual and ignoring the most simple ones, the low hanging fruit, which would bring you the most bang for your buck?
What are your ideas asking of you? Are you doing what they ask or are you just sweeping it under the carpet and calling it a life?
I don’t know if you can tell, but I’ve stopped using any tools for checking grammar or phrasing. All the grammar issues that remain is my ignorance in its full glory. Behold! I still do the google search for the phrase to confirm it exists when I’m not sure if it’s a Croatian-only phrase or not and that was done with “sweep it under the carpet” above. I googled “put under the carpet” because that’s how we say it here. Maybe I should’ve left it as “put” because that would make it look like an interesting girl with one eye blue and the other green (Vonnegut), but on the second thought, from my perspective if anything the English language has become more stiff since his time and the chances for achieving the “interesting girl” effect instead of a “look at that ignorant idiot” effect are not great, especially since English is my second tongue.
Meta: I think the reason I like listicles so much is because I naturally think in bullet points instead of documents. And I find that a bullet point puts me immediately “in medias res”1 which I quite like. There’s no unnecessary fluff to get to the point. I trick myself into not noticing I’m writing which usually brings so much weight to it, that I don’t think is useful. I’m sure that you have noticed that some bullet points are connected, while others are completely disconnected. I hope that is more exciting to read because you never know what awaits you next.
More meta: I’ve read somewhere that Dostoevsky apologized in the intro of Brothers Karamazov saying things like “you might not like this book, it is what it is” and I absolutely love that. So I’ll take this moment to apologize for whenever I was unable to deliver something good into your inbox. Believe me, I’m trying my best every time. At my current energy levels, I could probably push out a listicle like this every week or so and that would probably increase my readership, but I don’t want to do that because I think the quality would suffer. I find that making this patchwork in the random free moments for the whole month and then on the last day of the month reviewing and removing the chaff from the wheat gives me just enough distance between writing the bullet point and reviewing it. Gives it just enough time to marinate. See, I don’t want to spam your inbox every week but I also don’t want to shut myself up completely and send you nothing for months. I find the month to be just the right balance. That’s a lot of words to say this: dear reader, I respect your time and inbox and will continue doing so. As always, thank you for reading.



Switching from instant coffee to ground coffee is easily one of the best decisions I ever made.
So, too, with switching to posting monthly — which is something that was largely inspired by your example, Hrvoje. It feels like the right amount of time for me to really play with a piece and then leave it and then come back and edit it. And I like that it’s still a consistent time frame.
Also, I haven’t tried the listicle myself yet, but I certainly enjoy it when you do it. It’s kinda like Nietzsche’s aphorisms. :)