| Books Co-Authored by David and
Jeff: |
|
|
Want to see more?
View favorite books from other authors.
|
|
| We asked some of our (and your!) favorite authors
to share with us their favorite 10 computer books from the past 10
years. Here's what we got back. |
|
David
Minter has adored computers since he was small enough
to play in the boxes they came in. He built his first PC from
discarded, faulty and obsolete components and considers that
to be the foundation of his career as an integration consultant.
David is based in London, where he helps large and small companies
build systems that "just work." He co-authored Building
Portals with the Java Portlet API1> and Pro
Hibernate 3.
Jeff
Linwood has been involved in software programming since
he had a 286 in high school. He got caught up with the Internet
when he got access to a UNIX shell account, and it has been downhill
ever since. Jeff has published articles on several Jakarta Apache
open source projects in Dr. Dobb's Journal, CNET's Builder.com
and JavaWorld. Jeff has a bachelor's degree in chemical
engineering from Carnegie Mellon University. He currently works
for the Gossamer Group in Austin, Texas, on content management
and web application syndication systems. He gets to play with
all the latest open source projects there. Jeff co-authored Pro
Hibernate 3, Building Portals with the Java Portlet
API and Professional Struts Applications.
He was a technical reviewer for Enterprise Java Development
on a Budget and Extreme Programming with Ant.
|
David and Jeff's favorite books: |
|
We jumped at the chance to put this list together for Bookpool,
because we both love to read well-written technical works. It's
also humbling to see how many really great writers there are
in the field. These are our favourites, but we hated having to
strike out so many other great books to keep it down to ten:
The Mythical
Man-Month by Frederick P. Brooks, Jr. – While
this book is best known for its statement of Brooks' law that "Adding
manpower to a late software project makes it later,” we can also recommend
it for the rest of its solid insights into the software development process.
Some of
it is a little dated, but it's still an entertaining read that
has lost very little of its punch. The 20th Anniversary edition includes
some of Brooks' observations
given with the benefit of hindsight and also the hugely insightful
essay No
Silver Bullet.
Effective
C++: 55 Specific Ways to Improve Your Programs and Designs by Scott Meyers – The pitch
for this book must have seemed pretty tame – fifty specific rules to
improve your code, but the depth of insight is remarkable. Even
experienced C++ programmers
found sudden enlightenment in the delightfully clear expositions
of why
each technique should be used. The subsequent More Effective C++
by the same author presented more of the same and
retained the same qualities as the original.
The Practice
of Programming by
Brian Kernighan and Rob Pike – We like this book because it teaches
many of the skills which are required in order to be a first-rate
developer, but which
are taught almost nowhere else. The book is divided up sensibly,
clearly written and the chapter on debugging is (we think) a
classic in its own right.
.NET Windows
Forms in a Nutshell by
Ian Griffiths and Matthew Adams – This is a more mainstream text. The
title is somewhat laughable, since it's pushing 800 pages, making
it more of a tree
than a nut, but the authors went well beyond their remit so this
is a "how
it works" guide as well as the handy reference text that the title implies.
If all technical books exceeded the reader's expectations by
this much the industry would be the better for it.
Joel on
Software by Joel
Spolsky – We're both big fans of Joel's writing on his website,
so the chance to see them collated on the printed page is delightful.
Joel writes in wonderfully fluid prose about
the business aspects of software development. This is unusual
territory for geeks like us, but his fluency is such that he
can make quite mundane subjects seem
utterly dazzling.
Computer
Networks by Andrew
Tanenbaum – This is really an academic text–but it provides
such a solid foundation in the principles of computer networks
that we both have
a soft
spot for it. Something all the writers on this list have is a
certain informal fluency of style in his writing, and Tanebaum
takes advantage of it to irrigate
a normally dry subject.
Joe Celko's
SQL for Smarties: Advanced SQL Programming by Joe Celko – Joe's
book is everything the title says–you'll need to be smart to follow
his descriptions of the best way to tackle some really tough
problems. We love it precisely because it doesn't
just walk you through the basics of SQL syntax and set theory–instead
it applies them to some really hard problems.
Web Security,
Privacy and Commerce by
Simson Garfinkel and Gene Spafford – This book manages to be both readable
and informative. If you need to learn about security and privacy
for web applications at a high level, this an excellent book
about concepts such as cryptography,
code signing and privacy. Our hope is that they update this tome
to a third edition.
Code: The
Hidden Language of Computer Hardware and Software by Charles Petzold – Delving
into how a computer works, from the number system on up, this
is an excellent introduction to low-level computer operations for those of
us who would like
a readable book
that wasn't designed as an academic textbook. The author includes
many fascinating anecdotes about the history of computing, math
and electronics, so we would consider
it an excellent beach book!
The Visual
Display of Quantitative Information by Edward R. Tufte – Tufte's
work is a true classic in the field of information design and
display. Understanding how to present your results
is just as important as calculating them in the first place,
and this book leads you through many examples of graphic design
for numerical information, showing
both excellent examples and designs that did not work. His other
works are just as informative.
|
|