News for hackers. Stuff that matters.

Ask HN: Computer science neophyte needs a book recommendations

Alright, so I'm the non-technical half of a small Chicago startup, and I want to learn to code. I have fought my way through Programming PHP and JavaScript: In A Nutshell, and HTML: The Definitive Guide, (not in that order), and I'm beginning to think that I'm not the type of person to just learn things piecemeal. I'm looking for a book which explains (in words, as opposed to diagrams) the architecture and operations of a computer from the hardware on up. I want to know what causes a parse error, and where this lies in the hierarchy between the CPU and what gets rendered in the GUI.

Seriously, this is the most curious I've been about something since I wanted to be a marine biologist when I was six.

Can anyone recommend a comprehensive, rigorous explanation of computing and computer programming? I'd be much obliged.

( 8 comments | 6 points | on HN )
Re:Ask HN: Computer science neophyte needs a book recommenda... by JoeCortopassi on Wednesday August 03, 2011 @11:11PM (#2844335)
Code Complete 2nd edition -- Every good programming practice and why to use it.

Structure and Interpretation of Computer Programs -- the book explains core computer science concepts, including abstraction, recursion, interpreters and metalinguistic abstraction, and teaches modular programming. Also what MIT used to use as their intro to CompSci textbook

Introduction to algorithms (Cormen, Leiserson, Rivest, Stein) -- Explains various algorithms and their benefits/drawbacks

The Mythical Man-Month -- What project management for software looks like when done right (and wrong)

Head-First Design Patterns -- Head First series is a little goofy, but you will remember how an Observer pattern works after going through their goofy examples. Gang of Four's design pattern book will put you to sleep.

Re:Ask HN: Computer science neophyte needs a book recommenda... by jasondrowley on Friday August 05, 2011 @05:45PM (#2851920)
Thanks, Joe.

I'm making my way through another HN user's recommendation, Code. I've heard good things about The Mythical Man Month (especially from my more technical startup-involved friends), so I think that might be next on my list. As for SICP, I'm a tad intimidated, but it seems approachable enough.

Regarding the other suggestions, they too will be read. Thank you for these.

Re:Ask HN: Computer science neophyte needs a book recommenda... by matmann2001 on Tuesday August 02, 2011 @04:40PM (#2838617)
I've always found understanding the lower-level workings of computers to be very enlightening. After I finished with this text, programming and syntax made perfect sense. You may never need the bits on Assembly language, but the knowledge itself of the transition from hardware instructions to programming languages is extremely beneficial.

http://highered.mcgraw-hill.com/sites/0072467509/

Re:Ask HN: Computer science neophyte needs a book recommenda... by kenjackson on Tuesday August 02, 2011 @05:00PM (#2838682)
If you want to learn it from the bottom up, read Code.

http://www.amazon.com/Code-Language-Computer-Hardware-Softwa...

It's a page turner and you'll know more about computers than many developers. You still won't be a programming guru from this, but its a great holistic approach that you can then supplement.

Re:Ask HN: Computer science neophyte needs a book recommenda... by jasondrowley on Tuesday August 02, 2011 @10:46PM (#2839627)
Thanks. I've seen Code at my local B&N (and of course, on Amazon), and I've come close to buying it.

I'm getting it tomorrow.

Re:Ask HN: Computer science neophyte needs a book recommenda... by belial on Wednesday August 03, 2011 @05:56AM (#2840468)
I would recommend "Structure and Interpretation of Computer Programs" <http://mitpress.mit.edu/sicp/>;

This book is a classic in Computer Science and it explains, discusses various programming concepts ... mainly from the compiler/interpreter point of view.

Re:Ask HN: Computer science neophyte needs a book recommenda... by jasondrowley on Wednesday August 03, 2011 @12:52PM (#2841866)
Thanks.
Re:Ask HN: Computer science neophyte needs a book recommenda... by belial on Wednesday August 03, 2011 @05:57AM (#2840472)