Logo
Join the CTO Newsletter for free!
 
Amazing CTO Logo

Amazing CTO | More happiness and success
šŸš€ 98.3

by Stephan Schmidt

Happy šŸŒž Sunday,

Welcome to my opinionated newsletter. Last week I told you to force developers to use an AI IDE like Cursor. Did you? Why not? Every day with Cursor is more amazing. I change something in one file, and switching to another file, it suggests all the changes needed that result from changes in the first file. It often feels like magic. TAB TAB TAB. I haven’t seen such a drastic change to software development since I first used Turbo Pascal as an IDE (instant compilation). So force them on Monday to use one. Thank me later.

This week’s insights:

  • šŸ‘‘ Make or break: Effectively Delegate as Your Responsibility Grows
  • 🪲 Why Bad Code Exists
  • šŸ“¹ You don’t need Application Performance Monitoring

Good reading, have a nice Sunday ā¤ļø and a great week,

Stephan
CTO-Coach and white-bearded CTO-veteran


Need support as an engineering manager? Thought about coaching? Let's talk—I helped many CTOs and engineering leaders with growth and making the right decisions under pressure, I can help you too.
šŸŽ

If you only read one thing

How to Delegate Effectively as Your Responsibility Grows (10 minute read)

I do, again, disagree with an article. It distinguishes between two types of delegation: IC-Style and Supervisor. IC-Style delegates tasks (ā€œhowā€), Supervisor delegates ā€œwhat.ā€ And managers should use supervisor style. Here is where I disagree. You need to delegate not based on you but depending on the person you delegate to. Someone with not much experience in their job (this job, not in general) needs to be delegated tasks. Do this, then that, then that. Someone more experienced needs to be delegated features and projects. People even more experienced need to be delegated problems. And to the most experienced people, you delegate goals. And while you need to strive to get all of your direct reports to be able to take on goals, even experienced people new to the company or department might need a task list in the beginning. Delegate to the ability of the person, not on your role in the company.

https://www.hitsubscribe.com/how-to-delegate-effectively-as-your-responsibility-grows/

šŸš€

Stories I’ve enjoyed this week

Why Bad Code Exists (35 minute read)

Long article. I do think it’s much easier. Pressure and skills. Too much business pressure to cut corners without understanding the consequences. Yes, there can be a trade-off between time to market and quality. If you need to deliver because a law comes into effect, sure there is pressure. If you need to deliver to a customer for them to pay a bill, or you’re bust, yes there is pressure. But too often there is no trade-off and no reflection on the consequences. The second one: skills. Why does the developer not have the necessary skills? Did you hire too junior (many of my clients do) because you don’t get the money you need? Or because you can’t find out about the skills in interviews? (and it often isn’t coding, missing ownership skills often create bad code). Or do you not develop people? Skills and pressure. Nevertheless, reading the article, I do think it’s a good one.

https://www.industriallogic.com/blog/why-bad-code-exists/


German firms tested 4-day workweek — here’s the outcome (21 minute read)

After Work-From-Home, I’m no longer sure if there is enough power and appetite for a 4-day workweek. Employees seem not to have enough bargaining power to push back on many Back-To-Office policies. So we’ll see what four-day work weeks will look like. The study seems mostly positive, though. I’m a fan of a four-day work week—Friday to Sunday off makes people happier, less stressed, and more creative. With the drive to more AI, the demand to type code is going to be lower, and the need for creative work is going to be higher. But again, currently I can’t see that employees are strong enough.

https://www.dw.com/en/german-firms-tested-4-day-workweek-heres-the-outcome/a-70685885


Monorepo - Our experience (22 minute read)

You should start with a monorepo if you can. It’s easier to manage dependencies, easier to change, and easier to understand. It works, and if it doesn’t work, split the repo up. Too many of my clients do not have the basics in place, and when growing engineering, they struggle because the basics are not there to support growth. Monorepos today are one of those basics. Use it (I do - but then again, I also have no JS code to speak of for inkmi.com as I use Radical Simplicity).

https://ente.io/blog/monorepo-retrospective/


Tracker Beeper (3 minute read)

Genius! Beeps whenever something is sent to Google. Or Facebook, and it beeps a lot. People do shrug about sending data to Google. But only because they do not have a clue about how much data they are sending. Tracker Beeper changes that. BONUS: Use it on your own website—especially if you think you send too much and the CEO disagrees.

https://berthub.eu/articles/posts/tracker-beeper/


Hetzner Server Comparison (16 minute read)

I have been using Hetzner for nearly thirty years now. They are my default choice for hosting because I don’t have lots of money to spend (I wish they had managed databases though). Nice comparison, especially with performance/$. What I did miss was the Ampere ARM servers—they seem to be even better value for money. Will try them out, need to figure out though how to compile Go for ARM for deployment. ONE benefit for you, if you use Python I guess (But my Go needs fewer servers I guess). Cheap ARM servers for the masses.

https://achromatic.dev/blog/hetzner-server-comparison


You don’t need Application Performance Monitoring (7 minute read)

You - don’t - need - application - performance - monitoring. Article has many good points. ā€œI’ll argue that APM tools are a trap. They encourage a reactive approach to performance, mask deeper design issues, and come with real costs that often outweigh the benefits.ā€ Oh, the costs! I have been using all the big tools, in the range of $100k/year. Did those pay off? No. Would I have rather had an additional senior engineer? Yes. People are overwhelmed with the alerts and the data, and then ignore them. And the code does not get better.

https://www.bugsink.com/blog/you-dont-need-application-performance-monitoring/


Unfortunate things about performance reviews (4 minute read)

Seen this myself in large companies. The core problem is this: Companies and their HR departments do not trust managers. So instead of letting the manager rate performance and spend a pay raise budget for their team, they introduce a process for performance reviews in the name of fairness. The end result is that many things are rated; performance is not one of them. With the results described in the article. Don’t do this. Have a process around pay raises but put the people manager in charge. Give them, say, a 10% budget for pay raises, and let them give it to people.

https://rachelbythebay.com/w/2021/02/19/perf/


Cannot Measure Productivity (7 minute read)

You cannot measure productivity. This is from 2003. And we’re still talking about it. People have no clue what productivity for developers even is. Let alone agree on it. But everyone wants to measure it. I’m saying, ask your developers if they are motivated. If not, help them. Do not measure productivity.

https://martinfowler.com/bliki/CannotMeasureProductivity.html


Programming avant-garde (6 minute read)

Could not disagree more. There is this notion that Haskell and other language designers are the avant-garde. They are not ā€œavant-garde.ā€ They are not the ā€œfirst waveā€. They mostly do things that have no impact on software development. But I’d guess you’d disagree.

https://mmapped.blog/posts/32-programming-avant-garde


US airman Jack Teixeira sentenced to 15 years in prison (23 minute read)

An admin leaked sensitive data to a chat. It’s nearly 2025, and we still have the problem that admins have access to sensitive data. If your admins have access to data, you’re doing it wrong. Access to data needs to be limited, even for admins. If they need access, write a ticket, get approval, remove access when done. I know rootless is difficult, but when you have been tricked by an admin changing payment data for their own use, you will think of this post. Perhaps while sitting in court.

https://www.bbc.com/news/articles/c62l00g0k65o


The Deviation Spiral (10 minute read)

I love mental models. This one is a good one. People deviate from the norm, and nothing bad happens. People deviate more, and nothing happens. People deviate more, and nothing bad happens. Then something bad happens. This is called the deviation spiral. I’m not a fan of Scrum Masters (having been certified myself); teams can and should manage themselves after they’ve learned the ropes. But what I did experience is that when I join a meeting after some months, people have deviated from the norm. They no longer do Scrum, and not because they do something better, but because they do something more convenient. And I bring them back on track.
Two learnings: People will deviate from the norm. The deviation gets worse over time. Scrum works without a Scrum Master, but you need to check in.

https://www.graceharborministries.org/the-deviation-spiral


Hire the Most Expensive Engineers You Can Find (27 minute read)

You know that. Your CEO does not. Perhaps send them this article.

https://www.m16g.com/p/hire-the-most-expensive-engineers


Your Standing Desk Might Actually Be as Bad as Sitting All Day (20 minute read)

Another craze that came and went. Seems like standing isn’t good either. I’d guess getting up and sitting down is good. What I really miss from my office days is walking around. Management by wandering around (look it up!) was my thing. It made many things easier (alignment, feeling the mood, open door policy) and kept me healthier. The biggest downside of working from home: 8h in the same chair. Perhaps I need to try that craze, even if it doesn’t work!

https://www.sciencealert.com/your-standing-desk-might-actually-be-as-bad-as-sitting-all-day

Join the CTO newsletter!
Impressum