The hottest Substack posts of David Reis on Software

And their main takeaways
76 implied HN points β€’ 24 Nov 24
  1. Legacy code often gets that label just because newer programmers don’t understand it. The core issue is usually about people, not the actual code quality.
  2. To avoid creating legacy code, focus on writing clear and simple code that others can easily understand, and engage in practices like mentoring and pair programming.
  3. When dealing with legacy code, try to understand it fully before deciding to rewrite it. Often, working with what's there and improving it gradually is the better choice.
44 HN points β€’ 22 Jan 24
  1. Reflect on why you want to progress in your career
  2. Understand the promotion game or the job-hopping game to grow faster
  3. Tell your manager what you want to advance in your career
5 implied HN points β€’ 09 Mar 24
  1. Many new programmers think that not commenting code is a sign of good practice because of the idea that 'clean code has no comments.' This leads to less readable code.
  2. Good code should be easily understood, but comments can help clarify complex parts when necessary. It's okay to use comments to explain why something is done a certain way.
  3. Writers should be careful with popular ideas that seem easy and convenient, as they can sometimes oversimplify important concepts and lead people to misunderstand or misuse them.
4 HN points β€’ 09 Jan 24
  1. Don't improve your shit, focus on making ideal systems instead
  2. Let the perceived shitness of a system build up for real change
  3. Become the owner of the problem, and beware of misguided improvements
Get a weekly roundup of the best Substack posts, by hacker news affinity:
2 HN points β€’ 18 Feb 24
  1. Nitpicking in code reviews can lead to better code quality and a stronger engineering culture. It's important to discuss style and best practices instead of ignoring them.
  2. Good taste in code exists and is based on collective standards among practitioners. Competent programmers can generally agree on what makes code better, like readability and consistency.
  3. Having a style guide helps streamline code reviews and makes discussions less personal. It sets clear expectations and allows for respectful and constructive feedback.
1 HN point β€’ 27 Jan 24
  1. Writing unit tests for old code can help prevent breaking things while making changes
  2. Writing tests for old code may not be efficient if no real changes are being made
  3. Instead of writing tests for old code in isolation, integrate test writing with organic code changes
0 implied HN points β€’ 19 Oct 24
  1. People often follow the crowd instead of thinking for themselves. It's easier to just do what everyone else does, even if there's a better option available.
  2. Life is complicated, and we tend to rely on others to guide our choices. Like how we trust that if everyone is eating berries, they must be safe.
  3. We should take the time to think carefully about our choices instead of rushing to conclusions. Slow, thoughtful decisions can lead to better outcomes.