
Some of my favourite programming books - otoolep
http://www.philipotoole.com/some-favourite-programming-books/
======
JTrilogy
I'm a junior dev with ~2 years experience. Currently I'm primarily doing back-
end web work on a massive spaghetti codebase written in Node, Python, and PHP.

My current reading list:

* Code Complete: A Practical Handbook of Software Construction - Steve McConnell

* Agile Software Development - Robert C. Martin

Upcoming reading list:

* Node.js Design Patterns - Mario Casciaro

* The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt

* Clean Code - Robert C. Martin

* Refactoring: Improving the Design of Existing Code - Martin Fowler

And maybe Working Effectively with Legacy Code by Michael Feathers.

If anyone has any comments or other suggested readings I'd love to hear them!

~~~
je42
how did you figure your reading list out ?

~~~
JTrilogy
It's compiled half from other people's lists and half from searching for books
to learn specific skills. It may be a bad list.

------
cvs268
@otoolep Have you read Steve McConnell's "Software Estimation: Demystifying
the Black Art"

[http://amazon.com/Software-Estimation-Demystifying-
Developer...](http://amazon.com/Software-Estimation-Demystifying-Developer-
Practices/dp/0735605351)

(if yes, then why isn't it on your list!?)

~~~
otoolep
Haven't read it. Good?

------
c0achmcguirk
Good books, all classics. Weinberg's book is frequently cited by one of my
favorite tech books, Roy Osherove's Notes to a Software Team Leader.

@otoolep, your spam detection missed the one comment to this post. :)

------
ploggingdev
Interesting to note the famous "hello, world" program that beginners are
taught was popularized by the example used in The C Programming Language by
Brian W. Kernighan and Dennis M. Ritchie.

------
tomwphillips
I tried The Mythical Man Month but gave up. Found it extremely slow. I don't
understand why it gets so many positive reviews.

~~~
kwhitefoot
It's also very short so it should still be easy to get through even if it
isn't especially gripping.

It gets a lot of positive reviews because it is from a highly credible source
who actually did what he was talking about not just wrote about it and because
it describes conditions that still obtain; more than forty years later we
still haven't learnt all the lessons.

------
icbm504
Goodies but very oldies. The forerunners of agile.

~~~
khazhou
> forerunners of agile

What do you mean?

~~~
icbm504
Mythical Man Month and Peopleware both deal with managing work: estimating
work, problem of quality, feature creep. Agile offers methods to address these
same problems, just a little more evolved, imho.

* working in sprints forces estimations over smaller pieces of work (aim small, miss small).

* sprints, in my experience, challenge feature creep. teams are much more aware of time and challenge anyone making changes to scope. nothing is free.

* teams are responsible for dev and testing (e2e); no throwing crap over the wall.

These books deal with more than these topics.

btw, the quiet room for 2-3 people as described in Peopleware is being thrown
out where i work. walls are being torn down to build team collaboration
spaces. times have changed.

