Page 1 of 1
Have an programming theory text book recommendations?
Posted: Sat Jan 01, 2005 8:30 am
by carlmcdade
I just noticed that almost all books in my library are database oriented. I have long since given up the struggle to find a job as a db administrator here in Sweden. So now I want to concerntrate on the programming aspects of my profession. I have no intention of going back to college to study but I would like to be on the same level when doing self-study.
I am looking for recommendations from those classically trained CS majors. What textbooks are they using nowadays in the Computer Science areas of U.C. Berkeley others?
Since I am looking more for theory than code publication age does not count. The publication should be kind of ageless.
Links to anything that can be found at Amazon or good used book sources would be appreciated.
Right now I am looking for two books. An alternate to the gang of four book on design patterns and a introductory book on Algorithms.
Posted: Sat Jan 01, 2005 4:08 pm
by nigma
MIT's OpenCourseWare might have some of the stuff you're looking for. A lot of the courses provided have at least lecture notes, some provide lecture videos and some online textbooks or they name some of the books they use.
Posted: Sat Jan 01, 2005 8:46 pm
by carlmcdade
Thanks, for reminding me. I had forgotten about that site. I take a look at what they have.
Posted: Sun Jan 02, 2005 8:32 am
by McGruff
There are three books which IMO aren't merely recommended they are absolutely essential. You've already got GoF Design Patterns I take it; the other two are from Martin Fowler: Patterns of Enterprise Application Architecture and Refactoring.
Posted: Sun Jan 02, 2005 11:54 am
by carlmcdade
That refactoring book looks good!
I don't have the GOF book but I have read it twice. Once for a C++ course and again for an introductory Java course. I don't like it.
The GOF book left me dumbfounded in that it gives all kinds of screwdriver types but you have to figure out what the screws look like by looking at the screw driver tip. Sometimes that is obvious but not in most cases. Going around with a screwdrivers in my pocket and testing them on each occasion that I see a screw is not my idea of a good time

Posted: Sun Jan 02, 2005 12:52 pm
by feyd
knowing which pattern goes where just comes from experience. It takes time to get to know these things.
The Pragmatic Programmer
Posted: Wed Jan 05, 2005 3:44 am
by crouse
I have really enjoyed reading over The Pragmatic Programmer (ISBN: 0-201-61622-X). Most of the code is written in Java, however it has great theory and I have found it extremely useful as a programmer. One of the more basic and useful ideas from the book I use is the DRY, Don't Repeat Yourself, Principle. The DRY principle basically asserts that a programmer should centeralize any code, like in a function, that is called more then once. There is a better explination of that and many other principles in the book. hightly recommended.
Chris
Posted: Wed Jan 05, 2005 5:17 am
by McGruff
Pragmatic Programmers
website.
Posted: Thu Jan 06, 2005 9:32 am
by ianlandsman
The MUST own book for any programming looking to step up their game is Code Complete. So many good ideas in there you'll wonder how you ever got by without it.
http://www.amazon.com/exec/obidos/tg/de ... 735619670/
Posted: Thu Jan 06, 2005 9:35 am
by feyd
I'd also recommend:
there are others, but they get more specific to certain fields....
Posted: Tue Jan 18, 2005 1:49 pm
by PHPadvisor
ianlandsman wrote:The MUST own book for any programming looking to step up their game is Code Complete. So many good ideas in there you'll wonder how you ever got by without it.
Ditto. I agree. Found it very informative. Was a nice complement to what you'll learn in university- where the focus is how to do something... not how WELL to do something.
Posted: Wed Jan 26, 2005 1:54 pm
by lastcraft
Hi...
One essential theory book is "Structure and Interpretation of Computer Programs" by Abelson and Sussman. That's a bit of a mouthful, so for short it's known as the "wizard book" becuaes of the front cover. Very much low level CS material.
On a more practical not I would definitely vote for the Pragmatic Programmer, Refactoring, Design Patterns (keep as reference) and also "Facts and Fallacies of Software Engineering" by Robert Glass.
I know what you mean about the design patterns book as I had to read it about three times before I started to get the hang of it. It makes more sense after doing the Refactoring book. Another book to ease you in is "Agile Software Development" by Andrew Martin.
yours, Marcus