3 min read

Books Not To Read (And What To Read Instead)

Books Not To Read (And What To Read Instead)
Photo by Laura Kapfer / Unsplash

Hey 👋 - Ilya here.

What's up and welcome to the Weekly One on One!

Here's one short tip on how to Level Up as a developer.

Today's issue takes about 3 minutes to read.

Enjoy


Books are an essential way of learning and improving.

I wanted to become a better developer and I read them all:

  • Clean Code
  • The Pragmatic Programmer
  • Code Complete
  • The Clean Coder
  • Beyond Legacy Code
  • etc.

They all thought me valuable concepts.

But there is a problem with all of them:

They are all aspirational and help you only long term.

Reading them I mostly thought:

Wow, it would be great if my team/company would do this or that. But what now?

Almost none would really transform my day-to-day.

Alternative Reading List

Over the years, those 5 books helped me connect the dots of my journey, gain a broader understanding of how computers work and how to progress in my career.

  1. Apprenticeship Patterns
  2. Exercises for Programmers
  3. Algorithms to Live By
  4. Understanding Computation
  5. Self Leadership and the One Minute Manager

1. Apprenticeship Patterns

This is the most practical book on the topic of Software Craftsmanship I've ever come across.

  • Want to go beyond the first language you mastered but are not sure how?
  • Beginner's motivation dropped after a while?
  • Overwhelmed by all the tools and concepts you still need to learn?

Apprenticeship patterns gives you step-by-step instructions on what to do in each situation.

2. Exercises for Programmers

You may want to learn a new programming language. But where to start? Taking a course or reading a book might help. But nothing teaches you like getting your hands dirty.

Exercises for Programmers gives you 57 challenges of growing complexity. It covers topics like

  • Processing Input and Output
  • Data Structures
  • Working with Files, and more.

By solving them, you learn specific concepts and syntax of any language quickly.

3. Algorithms to Live By

Being a professional software developer includes understanding how to apply your knowledge and experience in real-world situations.

  • When to stop looking for a parking spot or a romantic partner?
  • Need the best algorithm to organize your closet?
  • When does more thinking hurt you?

Algorithms to Live By showcases algorithms from Computer Science and how they can apply to real life.

4. Understanding Computation

You won't apply what you learn in this book the next day at work. But understanding the computational theory and programming language design will make you a better software developer.

Understanding Computation uses an easy-to-learn and beautiful Ruby language and no mathematical notation. It will help you understand computing concepts like Turing completeness in languages more practically.

5. Self Leadership and the One Minute Manager

Your professional and career development is your own responsibility.

  • Not your manager's!
  • Not your HR's!

But where do you start?

Self Leadership and the One Minute Manager is a quick read. It will kick start your thinking about the subject. You will get clarity on your strengths, areas you need help with, and how to start.

Pick One

Without too much thinking: what's the one book from this list that resonates with you? Go on and buy it. Read it. Study it. Let me know how it affects your day-to-day as a software developer.

Go


That's all for this One on One. 1 tip at a time to Level Up as a developer.

See you again next week.

Whenever you're ready, I'd like to help you Level Up personally:

  1. Reply via email with your question or situation here
  2. Schedule a free one-on-one with me here

Cheers,

Ilya

Join other developers in the Weekly One on One. Every Wednesday you'll get 1 actionable tip on leveling up as a developer.