Live data from Hacker News

Ask HN: What books should I read to improve as a software engineer?

news.ycombinator.com

11–20 of 127 posts

Re: Ask HN: What books should I read to improve as a software engineer?

#12
Controversial take: reading books to get better at software is like reading books to get better at swimming. Like people don't get better at math by reading books about math... So you should go read code. But reading code is boring if you're not also writing code (same goes for math) so my real recommendation is to go find a big OSS project in an area you're interested in and start contributing. If you don't know how to start doing that, pick one with a GitHub and go look through the issues. Any serious project will have a label like `easy` or `first PR`, respond to one of those and tag one of the contributors asking something like "can you give me a code pointer so I can get started". And off you go - guaranteed to make you better at software if you do it for long enough.

Re: Ask HN: What books should I read to improve as a software engineer?

#15
It's probably useful to un-read Clean Code, though I don't really have a recommendation for a good replacement. The replacement is something like "Make a lot of mistakes and develop good taste based on your experience."

If you're interested in performance, you can read https://algorithmica.org/ and https://people.freebsd.org/~lstewart/articles/cpumemory.pdf

Re: Ask HN: What books should I read to improve as a software engineer?

#16

Controversial take: reading books to get better at software is like reading books to get better at swimming. Like people don't get better at math by reading books about math... So you should go read code. But reading code is boring if you're not also writing code (same goes for math) so my real recommendation is to go find a big OSS project in an area you're interested in and start contributing. If you don't know how…

I agree with the gist of your comment but I think people can benefit from books about maths. A classic example that comes to mind is Polya's "How to Solve It". It's about the meta of doing maths (or the tacit knowledge of a great mathematician), not about specific fields or theorems.

Re: Ask HN: What books should I read to improve as a software engineer?

#17

It's probably useful to un-read Clean Code, though I don't really have a recommendation for a good replacement. The replacement is something like "Make a lot of mistakes and develop good taste based on your experience." If you're interested in performance, you can read https://algorithmica.org/ and https://people.freebsd.org/~lstewart/articles/cpumemory.pdf

I keep seeing this online. Why? Clean Code was instrumental in my improvement as an engineer.

Is there a reason why this is the opinion nowadays?

Re: Ask HN: What books should I read to improve as a software engineer?

#20
I would split the books into two categories: those that improve the way you structure your code and deliver a software solution, and those that improve your technical understanding of the software platform and the computer you're using.

The first are books like Pragmatic Programmer, Mythical Man Month, Code Complete, Design Patterns, talks by Alan Kay on software systems and OOP, even Game Engine Architecture etc. A lot of the content there is distilled experience which is much faster to learn from a book than gain the hard way on the job.

The other books are practical deep dives. Here I would recommend a variety of books like Inside the Machine by Stokes, Computer Architecture by Hennessy, 21st Century C by Klemens, Crafting Interpreters by Nystrom, Compilers by Aho, Effective Java, Nature of Code by Shiffman, Ray Tracing Challenge by Buck, Hands on Hacking by Hickey, and others, depending on your interest and area of focus.

Post reply on HN