RSSAmplifier

Blog

jeremymikkola.com

jeremymikkola.comRSS feed ↗10 posts

Latest posts

AI Thoughts

Posted on March 4, 2026 Bear cases Every other podcast these days is talking up the wonders of AI and how it is just a matter of time before everything radically changes. Meanwhile, as soon as I peel my eyes and ears away from my phone and look outside the window, I see that really nothing has changed. The singularity, where and whenever it is, isn’t here yet. As a fun intellectual exercise, I…

A UI might not make it easier

Posted on February 22, 2025 Building self-serve access to internal systems is generally a good idea. It would be silly to do engineering work to make a change when pressing buttons would do. The fact that it’s generally (and not universally) a good idea means that there are cases where it isn’t a good idea. The idea of making a task easier by making it self-serve, no code, in a UI shouldn’t be…

What You Are Paying For

Posted on December 31, 2024 When you go into your local burger shop and buy a burger, what are you paying for? One way to look at it is that you are paying for the food, for the convenience, for the experience - you are paying for what you get out of it. You can also think about the things that are necessary to create the product you bought. There’s the beef and the buns. There’s also the labor…

What makes developers productive?

Posted on July 15, 2023 Many ingredients go into developer productivity. Some are obvious and easy to measure (build times are an easy example to point to). But I think we tend to miss other important factors, perhaps because they are hard to directly measure. For example, no system collects a number that shows how well each developer understands the system they work on. It’s impossible to…

Tech debt gets worse before it gets better

Posted on January 29, 2022 Projects to pay down tech debt tend to start by making more tech debt. The level of tech debt gets worse before it gets better. The new, cleaner code is just adding to the mess until it allows you to finally delete the old code. This has two implications. First, don’t wait too long to start paying off tech debt. You don’t want to be in a situation where temporarily…

A Few Notes on Problem Solving

Posted on January 1, 2022 Someone asked a question about how to get better at problem solving. It got me thinking: how does problem solving work? It seemed like an interesting question to try to answer. I’m going to gear this post toward solving technical problems, but some of this may apply more broadly. What is the problem? The first step is to clarify what the problem actually is 1 . How will…

Please don't argue with the weather

Posted on October 11, 2021 Say you have a vacation planned next week. You are going south to a fun coastal town renown for its beaches. You’re hoping to get outside, get some sun, and stick your toes in the water while drinking something with too much sugar and alcohol 1 . Hoping for good weather, you turn on the news. The meteorologist says it will be 50 F and cloudy. This isn’t what you were…

Scary Logic

Posted on May 12, 2021 Nightmares run on Scary Logic. In a nightmare, that moving shadow turns out to be a fast predatory monster. That noise behind you? It’s something that is about to attack. You turn to run but your legs won’t work. The fire is spreading but you can’t reach the water. In any situation, the scariest possibility you consider is what ends up happening next. This is Scary Logic.…

The problem with slow tools

Posted on April 1, 2021 Slow developer tools have costs beyond just the time they take. We should invest in ensuring they are fast. I’ve been bothered by some slow tools lately. Waiting for them to run has given me time to think. How much time are they actually wasting? Let’s say I run a build 15 times a day and have to wait an average of 1 minute for each build. That doesn’t seem too bad, right?…

Writing Useful Comments in Code

Posted on March 21, 2021 What makes for useful comments in code? Good comments should be written with their audience in mind, and should convey new and useful information. They should make the life easier for the person reading them. Audience Sometimes commenting code can be about as pleasant and useful as waiting in line at the DMV. I’m thinking of the Javadoc-style comments, where you have to…