I've been a software developer for over a decade now, and I feel like I've lost my way. I often find myself using high-level abstraction languages and tools, which, while they pay the bills, don't ignite the passion I used to have for programming. I've always admired legends like Linus Torvalds, DHH, and John Carmack, who represent a rich tradition in programming that seems to be fading away. I miss the days when computers felt cool and exciting. I want to dive back into that tradition—things like using Vim or Emacs, learning Assembly, understanding operating systems, memory management, touch typing, and customizing everything. It might seem like I'm scattered in my thoughts, but I want to know: what are the best books or courses that can help me learn this craft in-depth again? I'm tired of AI, cloud computing, and the never-ending npm packages—I want to reconnect with the essence of programming.
6 Answers
You might want to check out embedded programming to really get your hands dirty with the basics. It’s a great way to engage directly with hardware and software without all the high-level abstractions.
Definitely, there are tons of great books from the pre-internet era that you could explore. Making sure to read them might give you a different perspective on things. You might discover you've been looking at programming through rose-tinted glasses too!
I've been digging into textbooks from the 70s on algorithms and data structures. Implementing those in low-level C has been enlightening and fun! It's like rediscovering programming. Plus, visualizing algorithms as they run is just a blast!
Consider firmware development too. It’s a hands-on way to reconnect with the lower layers of programming, and you'll really appreciate how fast small processors can be when dealing with machine control. It's a real challenge, but that's part of the fun!
If hardware coding sounds fun to you, I suggest giving Tinkercad a shot. It's a virtual platform where you can play around with Arduino boards and write basic code in C++. It's a fun way to start connecting with physical hardware without diving too deep initially.
If you're looking for something more structured, try picking up books on operating systems, assembly language, and C programming. Also, dive into design patterns and architecture—it'll give you a solid foundation. Just remember, the more you read these over time, the more you'll grasp with fresh insights as your experience grows.
That sounds super helpful! Any specific recommendations for those books?

That sounds like an awesome approach! It could really reignite your passion for the craft.