When you’re a commodity, you’re always in a pricing race to the bottom. It just so happens that commodity programmers have a high bottom. For now.
https://daedtech.com/you-should-change-the-reason-people-pay-you/#more-11396
Never use the word “User” in your code
You’re six months into a project when you realize a tiny, simple assumption you made at the start was completely wrong. And now you need to fix the problem while keeping the existing system running—with far more effort than it would’ve taken if you’d just gotten it right in the first place.
https://codewithoutrules.com/2018/09/21/users-considered-harmful/
Paper Airplane Designs
A database of paper airplanes with easy to follow folding instructions.
https://www.foldnfly.com/
Ways people trying to do good accidentally make things worse, and how to avoid them
We encourage people to work on problems that are neglected by others and large in scale. Unfortunately those are precisely the problems where people can do the most damage if their approach isn’t carefully thought through.
https://80000hours.org/articles/accidental-harm/
The Urge To Strangle (The Strangler Pattern)
Applications are selected or created in isolation to address local needs. They are not designed to interoperate. They may provide overlapping or redundant functionality. They are built with different programming languages on different platforms and use different data stores.
https://www.leadingagile.com/2018/10/the-urge-to-stranglethe-strangler-pattern/
Objections Are Goals
After I published test && commit || revert, I got a variety of responses on Twitter and on Hacker News. The Twitter comments were mostly of the form, “I’ll try it and post how it goes.” Many of the Hacker News comments were objections–“This won’t work because…” I was reminded of a habit: turn objections into goals.
https://medium.com/@kentbeck_7670/objections-are-goals-9c9c2f27069
Why you can have millions of Goroutines but only thousands of Java Threads
Many seasoned engineers working in JVM based languages have seen errors like this: OutOfMemory…err…out of threads. On my laptop running Linux, this happens after a paltry 11500 threads.
If you try the same thing in Go by starting Goroutines that sleep indefinitely, you get a very different result. On my laptop, I got up to 70 million goroutines before I got bored. So why can you have so many more Goroutines than threads? The answer is a fun journey down the operating system and back up again. And this isn’t just an academic issue – it has real world implications for how you design software. I’ve run into JVM thread limits in production literally dozens of times, either because some bad code was leaking threads, or because an engineer simply wasn’t aware of the JVM’s thread limitations.
https://rcoh.me/posts/why-you-can-have-a-million-go-routines-but-only-1000-java-threads/
Delegate or die: the self-employed trap
Most self-employed people get caught in the delegation trap. You’re so busy, doing everything yourself. You know you need help, but to find and train someone would take more time than you have! So you keep working harder, until you break.
https://sivers.org/delegate
Why Are Enterprises So Slow?
n this article I want to explain a few things about enterprises and their software, based on my experiences, and also describe what things need to be in place to make change come about.
https://zwischenzugs.com/2018/10/02/why-are-enterprises-so-slow/
Mr. Rogers vs. the Superheroes
One of the few things that could raise anger — real, intense anger — in Mister Rogers was the willful misleading of children. Superheroes, he thought, were the worst culprits.
https://longreads.com/2018/09/19/mr-rogers-vs-the-superheroes/