Jeremy D. Miller -- The Shade Tree Developer

Sponsors

The Lounge

News

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
The books that influenced me

In an email today I was asked "What books did you find most influential in your professional career?"  Honestly, I've been much, much more influenced by the people I've worked and interacted with.  For that matter, blogs and podcasts pack a lot of intellectual punch these days.  That being said, here's my list, but you'll notice that every book is at least a couple years old and none of them are .Net specific.  That might be because publishing isn't as important or it might be because I just haven't thought to buy a development book lately.

  • Refactoring by Martin Fowler -- The best book I know for low level code quality
  • Patterns of Enterprise Application Architecture by Martin Fowler -- Basically defines much of the vocabulary for designing enterprise systems
  • XP Explained by Kent Beck, version 1 -- Otherwise known as the "White Book" or occasionally I'll call it "Chairman Beck's Little White Book" when I'm irritated at some example of XP zealotry.  I'm saying version 1 here in specific because (I've didn't bother reading XPE2) Beck does such a great job in laying down the principles and the "why" behind Extreme Programming.
  • The Pragmatic Programmer -- I really don't need to explain this one
  • Mary Poppendieck's talks and podcasts on Lean Programming.
  • Object Design by Rebecca Wirfs-Brock -- She doesn't get anywhere near the recognition she deserves.  I find that Responsibility Driven Design is far more useful and effective for crafting a design than UML modeling, but the dadgumn picture doodling became a phenomenon
  • Working Effectively with Legacy Code by Michael Feathers -- A survival guide for dealing with legacy code
  • Applying UML and Patterns by Craig Larman -- Awesome introduction to OO design
  • Debugging the Development Process: Practical Strategies for Staying Focused, Hitting Ship Dates, and Building Solid Teams by Steve Maquire

Books that are worth reading:

  • Code Complete V2 by Steve McConnell
  • Domain Driven Design by Eric Evans
  • Give the original Gang of Four book a read sometime
  • Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin -- pssst, the principles are all online somewhere.  I've touched on many of them in my posts as well

Posted 07-04-2007 7:45 PM by Jeremy D. Miller

[Advertisement]

Comments

vega wrote re: The books that influenced me
on 07-05-2007 12:08 AM

Some others:

-- Head First: Design Patterns- I think you have mentioned not reading this before but you probably should  

-- Jimmy Nilsson's Applying Domain-Driven Design and Patterns- definitely influential in the "ALT.NET" realm (at least for me)

-- Refactoring to Patterns by Joshua Kerievsky- builds really well off of Fowler's refactoring book

Evan wrote re: The books that influenced me
on 07-05-2007 3:42 AM

Pattern-Oriented Software Architecture (vol 1)..

It's one of THE most often cited architecture books..

Seriously, you can check nearly any architecture whitepaper and find it mentioned at the bottom..lol

I'm reading it now, it's an eye-opener.

DotNetKicks.com wrote Influential Books
on 07-05-2007 4:29 AM

You've been kicked (a good thing) - Trackback from DotNetKicks.com

Simon wrote re: The books that influenced me
on 07-05-2007 5:31 AM

Can you really omit The Mythical Man Month by Fred Brooks?

Jeremy D. Miller wrote re: The books that influenced me
on 07-05-2007 5:35 AM

@All,

I actually had a coworker buy the Nilsson book on an expense account but the office evaporated before I got a chance to read it.  I like Refactoring to Patterns but just didn't think it quite made the cut.  

@Evan,

POSA, like GoF, is just too danged dull.

I forgot the Mythical Man Month.  It's so short that I've read it cover to cover at a bookstore waiting for my wife to shop.

Simon wrote re: The books that influenced me
on 07-05-2007 8:22 AM

Yes, TMMM is short but all the better for it. Short books are (almost) always better since they have to get the essence across quicker and hence avoid (much of) the risk of becoming dry and boring.

BTW not a must have, but a good read is Slack by Tom Demarco (ideal present for those that think we should always be *busy*).

James Maul wrote re: The books that influenced me
on 07-05-2007 9:13 AM

I agree with vega. Head First: Design Patterns and

Refactoring to Patterns are great books.

Dan Martin wrote re: The books that influenced me
on 07-05-2007 2:31 PM

Can you recommend any other podcasts?

The Disco Blog » Blog Archive » The weekly bag– July 6 wrote The Disco Blog » Blog Archive » The weekly bag– July 6
on 07-07-2007 8:28 AM

Pingback from  The Disco Blog  » Blog Archive   » The weekly bag– July 6

Gil Zilberfeld wrote re: The books that influenced me
on 07-07-2007 8:58 AM

Michael Feather's book is on top of my list. However it made a lot of sense after I was in deep in TDD country. Which brings me to Kent Beck'sTest Driven Development By Example.

@Dan: Software Engineering Radio is a great podcast for software craftsmen.(http://www.se-radio.net/)

Vikas Kerni wrote re: The books that influenced me
on 07-11-2007 2:52 PM

Look like that I am the only person who loved

Object Oriented Design and Analysis by Grady Booch.

It along with GOF design patterns, really helped me to change my procedural mindset to oop.

vikasnetdev.blogspot.com/.../books-that-influenced-me.html

Greg Young [MVP] wrote Books that influenced me
on 07-27-2007 5:38 PM

After seeing Jeremy’s list I figured I would put up the books that have influenced me. This is by far

dave^2=-1 wrote Jeremy's technical reading list
on 02-01-2008 5:52 AM

Jeremy Miller has posted the technical books that have most influenced him . I have read a heap of technical

Matt Blodgett wrote List of Book Lists
on 03-06-2008 8:59 PM

List of Book Lists

Add a Comment

(required)  
(optional)
(required)  
Remember Me?