Books Not To Read (And What To Read Instead)
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.
- Apprenticeship Patterns
- Exercises for Programmers
- Algorithms to Live By
- Understanding Computation
- 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:
Cheers,
Ilya