Book Recommendation for Interns

9 points by sureshjayaraman ↗ HN
What are books that are appropriate to be recommended to a Software Engineering Intern who aspires to become a great software engineer someday? Why?

12 comments

[ 2.7 ms ] story [ 41.9 ms ] thread
Start with "Apprenticeship Patterns" (learn how to learn, get a mentor, approach your career in the right way) and "Pragmatic Programmer" (a bunch of practical techniques that are language/tool agnostic and exposure to a bunch of shared vocabulary/jargon you will likely hear).
I'm using "How to Design Programs", 2nd edition, and it's helpful. It's on Amazon, and free online by Felleisen and colleagues here: https://htdp.org/2018-01-06/Book/part_preface.html
way better than any "Uncle Bob" book for sure.
Honestly, I have found reading "How do Design Programs" challenging. May be it doesn't flow perhaps because of the use of an unfamiliar language? Do you have a specific approach that helps you?
I'm a beginner, so it's helping me see the big picture. One advice: Browse books in the bookstore and library, and figure out the seasoned authors whose prose connects with you. It's going to be different for everyone; this has helped me when I start learning something new. Then I advance and get systematic.
Getting Things Done (2001) by David Allen - great method to organize all your tasks and stay on top of things

Clean Coder by Bob Martin - good ideas on being a professional programmer

A Philosophy of Software Design by John Ousterhout - big picture ideas on design

Test Driven Development by Kent Beck - good basis for thinking about design and testing

Legacy Code by Michael Feathers - understanding the issues of legacy code helps us to design better software

Does "A Philosophy of Software Design" need some experience to appreciate what the author is talking about?
It is very approachable even for a junior developer
In a CS program, you learn a lot about algorithmic efficiency and theory, but you don't learn a lot about software construction. Here's my list of must read software books related to this:

Clean Coder by Uncle Bob Martin

Clean Code by Uncle Bob Martin

Refactoring by Martin Fowler

Design Patterns by the gang of four

* The Millionaire Next Door.

* The Four Pillars of Investing

* A Random Walk Down Wall Street

I've seen fellow interns blow their salaries on 200 jeans, clubbing, and eating every meal out.

Meanwhile, the IRA I started in grad school is growing at ~7% a year providing a nice nest egg.

Financial security gives you the freedom to take risks. Some discipline in your 20s will make your 30s more awesome than you can imagine :)