Good reads
This is an unsorted list of articles that I find to be good in one way or another.
- Maker’s Schedule, Manager’s Schedule
- a must-read for anyone working in a software development team. Helps express what most of us have felt at some point in our careers.
- The case of the 500-mile email
- a fun troubleshooting story that I always forget about.
- Things they didn’t teach you about Software Engineering
- some hard truths about software development that someone starting out in this world should know.
- 20 Things I’ve Learned in my 20 Years as a Software Engineer
- more anecdata about life as a software engineer, and quite accurate in my experience.
- OpenZFS - the final word in file systems
- a detailed summary about ZFS, the golden standard of file systems.
- I’m Going To Scale My Foot Up Your Ass
- short rant that restored some of my faith in this industry.
- More than five whys and “layer eight” problems
- not all root causes for technical problems are technical.
- People can read their manager’s mind
- “Corollary 1” is very relatable.
- The Performance Inequality Gap, 2023
- demonstrates why you should care about performance, and also highlights how slow a good chunk of devices using the web really are
- Questions for a new technology.
- if you’re feeling hopeless about resume-driven development or uninformed tech choices being made in your organization, then this might help build your case against that sort of mindset.
- n-gate.com
- amusing and cynical take on Hacker News top posts, plus a selection of FOSDEM talks. As of 2023-03-13, the last post is dated 2021-08-14, it’s possible that the author is inactive. Do give it a read, though!
- Efficiency is the Enemy
- Incredibly valuable piece of advice. Explains well why you might want to just be idle so that you can react to new opportunities. “If you ever find yourself stressed, overwhelmed, sinking into stasis despite wanting to change, or frustrated when you can’t respond to new opportunities, you need more slack in your life.”
- Ikigai: The Perfect Career Diagnostic
- interesting way to look at your career, and potentially something that might help you explain why you don’t feel satisfied with your current career path.
- The Joel Test: 12 Steps to Better Code
- good litmus test for your own software development team. Perhaps redundant or irrelevant for well-functioning software development teams, but crucial for identifying the dysfunctional ones.
- Things You Should Never Do, Part I
- just don’t do that rewrite from scratch, it’s not worth it.
- Microservices: Why Are We Doing This? [original link]
- a different look at the microservices phenomena that highlights some of the downsides of that approach, which are often omitted whenever someone is pushing for microservices.
- The Law of Leaky Abstractions
- something you should probably take into account when using any kind of technology that builds on top of existing tech. “All non-trivial abstractions, to some degree, are leaky.”
- NDAs and Contracts That You Should Never Sign
- examples of contracts that you probably should never, ever sign as a developer. Not legal advice.
- How To Ask Questions The Smart Way
- something that I tend to link to every junior developer as they usually ask a lot of questions (as they should, they’re juniors, after all!). After reading this, you’ll know exactly how to structure your questions so that you don’t infuriate others and get answers that relate to your actual objective.
- Human Task Switches Considered Harmful
- explains well why you don’t want to pile on tasks on your developers. Let them focus on one thing at once.
- Is Critical Thinking the Most Important Skill for Software Engineers?
- un-jargon the jargon, and ask the “why” and “how”. Those confidently throwing around all sorts of advice sprinkled with technical jargon might just be hiding their own lack of understanding on the subject, don’t let those people make you feel dumb.