/Career Advice

On Wielding Influence

- Charity Majors tl;dr: Charity answers two questions: (1) How to drive change when you have no power or influence? (2) How to drive change when you are a tech lead on a new team?

featured in #420


Promoted From Dev To Team Lead: 8 Things They Didn’t Tell Me

tl;dr: (1) Many of your skills don’t translate. (2) Keep your instincts. Change your behavior. (3) Communicate “why” more than “what” and “how.” (4) Culture is a real thing. And you’re responsible for it. And more.

featured in #420


An Educational Side Project

- Gergely Orosz tl;dr: “What does a great side project look like, which helps learn new technologies, but also helps stand out when looking for a new job?” Gergely analyses an Uber simulation app built from scratch in this context.

featured in #419


The Fear Of Shipping

- Keith Smiley tl;dr: “Something I've become very aware of lately is how difficult it is for me to ship. I have at least a dozen unfinished projects that I could probably ship, yet I find any excuse to hold them back.” Keith discusses why he thinks he feels this way.

featured in #419


The Next Larger Context

- Camille Fournier tl;dr: For senior engineers who are looking to step up: “When we are looking to do a larger project than the ones we’ve done before, we need to step out of the context that we normally operate in. When you look one context bigger, you will see immediate new opportunities that you can tackle in adjacent areas… That is where you will find your growth.” Camille highlights this advice with real world examples.

featured in #418


Email Addresses Are Not Primary User Identities

tl;dr: “A lot of applications treat your email address as something immutable that is linked to you and which will never change. It can't be linked to someone else, and it can't change… This is, of course, not true. Email addresses do change. This is the story of how badly applications handled this, how a surprising application handled it perfectly, and how you should handle this in your own code.”

featured in #418


How To Evaluate Dependencies

- Phil Booth tl;dr: “One of my stock interview questions goes: "When picking between dependencies to use in production, what factors contribute to your decision?" I'm surprised by how often I receive an answer along the lines of "Github stars" and not much else. I happen to think Github stars is a terrible metric for selecting production code, so this post sets out my idea of a healthier framework to evaluate dependencies.”

featured in #417


Lehman’s Laws Of Software Evolution

- Bart Wullems tl;dr: Lehman's Laws of Software Evolution provide a valuable framework for understanding how software systems evolve over time. By recognizing the continuous nature of software development and the role of people, architecture, and feedback in shaping software evolution, developers can create more robust and adaptable software systems.

featured in #416


Abstract Vs Concrete Parameters

- Kent Beck tl;dr: “Easy-to-test software is "controllable". Testers can cheaply and accurately simulate the contexts in which the software needs to run. Two contradictory patterns help achieve controllability: making parameters more concrete and more abstract. This apparent contradiction resolves when looked at from a broader perspective.”

featured in #415


Escaping Creative Downturns

- David Heinemeier Hansson tl;dr: "But as I've grown older, I've come to terms with the fact that it can't be eternal sunshine in the productive mind. You need to let weather pass. The grey, wet days of today soak the soil for the sun of tomorrow.”

featured in #414