Minimize
Blogger List

Johannes Ahrends
Toad and Oracle

Ben Boise
Toad SC Discussions

Kevin Dalton
Benchmark Factory

Steven Feuerstein
PL/SQL Obsession

Devin Gallagher
Toad SC discussions

Stuart Hodgins
JProbe Discussions

  Henrik "Mauritz" Johnson
Toad Tips & Tricks on the "other" Toads
  Mark Kurtz
Toad SC discussions
  Michael Lumbard
Toad SC discussions
Daniel Norwood
Toad for Data Analysts,
Toad Extension for Visual Studio
Debbie Peabody
Toad for Data Analysts
Gary Piper
Toad Reports Manager
John Pocknell
Toad for Oracle, JProbe
Kuljit Sangha
Toad SC discussions
Bert Scalzo Indicates Oracle ACE status
Toad for Oracle, Data Modeling, Benchmarking
Jeff Smith
Toad product family
Richard To
SQL Optimization
Jim Wankowski
DB2 - LUW and z/OS
John Weathington
  Toad Data Modeler Opens in a new window
Data Modeling
 
  Real Automated Code Testing for Oracle
Quest Code Tester blog
 
Minimize
Blog Tags
toad for oracle (122)
oracle (62)
plsql (46)
sql optimization (37)
toad for data analysts (28)
code tester (19)
toad for ibm db2 (13)
automation (11)
batch optimizer (10)
virtualization (10)
schema browser (9)
toad for sql server (9)
data grid (8)
sql (8)
sql editor (8)
toad data modeler (8)
benchmark factory (7)
excel (7)
query builder (7)
report manager (7)
toad extension (7)
visual studio (7)
11g (6)
configuration (6)
freeware (6)
health check (6)
vmware (6)
connect (5)
dba module (5)
er diagrammer (5)
F4 (5)
linux (5)
refactoring (5)
spotlight (5)
unicode (5)
compare (4)
debugger (4)
export (4)
formatter (4)
make code (4)
rman (4)
strip code (4)
benchmark (3)
bfscript (3)
bulk collect (3)
code templates (3)
code xpert (3)
database browser (3)
db2 (3)
notebook (3)
oem (3)
RAC (3)
session browser (3)
speed (3)
sql optimizer (3)
toad for mysql (3)
tpc-c (3)
9.7 (2)
alert log (2)
app designer (2)
awr (2)
code insight (2)
code snippets (2)
collection (2)
compare and sync (2)
compliance (2)
data generator (2)
data warehouse (2)
database explorer (2)
database monitor (2)
explain (2)
forall (2)
ftp (2)
group execute (2)
handbook (2)
installation (2)
job scheduler (2)
multi-task (2)
nested table (2)
os command (2)
profiler (2)
recovery (2)
release history (2)
save as (2)
schema compare (2)
sql recall (2)
stats pack (2)
subversion (2)
team coding (2)
trace file browser (2)
while loop (2)
10g (1)
64 bit (1)
7zip (1)
action (1)
addm (1)
alter (1)
ansi join (1)
array (1)
ccleaner (1)
code coverage (1)
code road map (1)
CRON (1)
cursor for loop (1)
data browser (1)
data subset (1)
database probe (1)
dbms_flashback (1)
dbms_profiler (1)
ddl (1)
feuerstein (1)
filezilla (1)
flash drive (1)
flow control (1)
for loop (1)
group policy manager (1)
hints (1)
import (1)
index (1)
inheritance (1)
invoker rights (1)
ipad (1)
java (1)
latency (1)
log switch (1)
logical model (1)
ltrim (1)
master-detail browser (1)
monitor (1)
multi-select (1)
naming standards (1)
network (1)
object explorer (1)
OEBS (1)
package (1)
parser (1)
partitioning (1)
performance (1)
pragma (1)
project manager (1)
RAT (1)
revo (1)
REXEC (1)
schema report (1)
script manager (1)
search (1)
set operator (1)
sga (1)
slow (1)
sonarsource (1)
source control (1)
space projection (1)
sql monitor (1)
sql navigator (1)
sql script (1)
sql tracker (1)
sql*plus (1)
standards (1)
statistics (1)
stored procedure (1)
string parser (1)
sub-model (1)
sub-type (1)
synch (1)
synchback (1)
TELNET (1)
toad (1)
trace (1)
unit test (1)
unix (1)
usb (1)
utility (1)
v10 (1)
v9.5 (1)
version control (1)
waits (1)
workload replay (1)
workspace (1)
xml (1)
 
WELCOME, GUEST
 
 

Blogs
Toad and Database Commentaries

Toad World blogs are a mix of insightful how-tos from Quest experts as well as their commentary on experiences with new database technologies.  Have some views of your own to share?  Post your comments!  Note:  Comments are restricted to registered Toad World users.

Do you have a topic that you'd like discussed?  We'd love to hear from you.  Send us your idea for a blog topic.


Mar 29

Written by: StevenFeuersteinTW
Monday, March 29, 2010 6:01 AM  RssIcon

I am a largely self-taught programmer. I took three courses in university, all 101 level. Then I just happened to fall into a programming job at the University of Rochester. From there I made path of least resistant career decisions for seven years, and then through some incredible stroke of luck found myself working for Oracle Corporation.

So....I am not a computer scientist. I don't know how to think like a computer scientist. I don't know how to talk like a computer scientist. I don't know how to write like a computer scientist. I think that's why my books are so popular. J

But I have certainly learned a lot over the years from other authors, and I thought I would share with you my fairly eclectic collection of favorite books (those that have informed my programming, in any case).

So with very abbreviated explanations, here goes...

 

The Timeless Way of Building
by Christopher Alexander

This book is among the most beautiful and moving I have ever read. It will change the way you see the world around you, and the way you think about your software. Alexander is the father of the Design Patterns movement in software. What's amazing about that is...he doesn't write software. He is an architect (designs buildings). And he absolutely, positively believes that most modern architecture is horrible, drastically reducing our quality of life.
 

 

On Intelligence
by Jeff Hawkins

We use our brains to write software (well, mostly). So it behooves us to understand as well as we can how our brain works. This book was a real eye-opener for me. Hawkins invented the first PDA, the Palm Pilot. He's very smart and has always been interested in how the brain does what it does. So he has funded brain/intelligence/consciousness research for the last 20 years or so. In the process, he has come up with a new paradigm for explaining how our brains are able to do the amazing things they do. Plus, he has built a software toolkit that allows us to build applications that follow his temporal-hierarchical database paradigm. This book is short and very accessible. Check it out! 
 

  Code Complete
by Steve McConnell

This book is a classic. It is packed full of practical, effective advice for improving the quality of our code. It includes examples in many languages, including Ada (the language on which PL/SQL was modeled). Every development team should have a copy of Code Complete in its library.
 

  Extreme Programming Explained
by Kent Beck

Extreme Programming is grand-daddy of lightweight methodologies. The name does not mean that you jump out of a plane at 15,000 feet and write code on your way down. It means: "Identify common sense advice about software that everyone agrees on, and take it to the extreme." One of the key motivations for the XP approach is that change is always going to happen (to requirements, to technologies, to users). Many "classic" methodologies are built around the idea of things like requirements not changing. That's just silly. I don't think you (or I) are likely to become a fanatical XP programmer, but you can read this book in an afternoon, and it will definitely have you thinking differently about how to meet your daily programming challenges.
 

  Refactoring
by Martin Fowler

If you haven't heard of refactoring, you really need to read this book. Refactoring means "Follow a disciplined approach to rewriting your programs to make them more maintainable, more efficient, etc., without affecting the behavior of those programs." That is, without affecting your users' experience with the software. Fowler identifies typical bad patterns in the way we write code, and takes us through a step-by-step path to fixing the code. The examples are all in Java, but (a) every PL/SQL developer should be able to read and be comfortable with basic Java classes and (b) even if you're not, you will still get a lot out of the book.
 

  Code and Other Laws of Cyberspace
by Lawrence Lessig

Lessig recasts the role of software developers as law-writers in the modern world, and then he questions the direction that software is today taking all of us. This is a dense book, not very easy to get through, but it is clear that Lessig has thought long and hard about the ramifications of unconstrained insert of all this new technology into our lives.
 

  Peopleware
by Tom DeMarco and Timothy Lister

Another classic in the world of software, this book's message is centered around a simple and unobjectionable truth: software is written by human beings. So if you want really good software to be written by your team, you need to make sure you take care of your people. Here's my suggestion regarding this book: buy a copy, and give it to your manager and say "Thanks for being such a fine manager, I am sure you will appreciate this book." And then even if they are not a very good manager, maybe they will read it and get a little better.
 

  Horton Hears a Who
by Dr. Seuss

Yes, indeed. Horton Hears a Who. Well, OK, I don't think that reading this book will do much for your programming. I do, believe, that it is an absolutely critical book to read to your children when they are young. It will help build a stronger sense of empathy in them for other living creatures, large and small. And that is a very good thing.
 

More More More

Sure, I could keep going, but my flight across the Atlantic is coming to an end. Time to shut down the laptop and look forward to seeing my wife again after a week apart.

I hope that you check out one or more or all of these books. Please don't hesitate to get in touch if you have any questions or comments. Or, best of all, post a comment right here, on my blog!

Tags:
Categories:

1 comment(s) so far...


Re: Books That Taught Me Lots

Great blog, Steve. I'm always fascinated to hear how people get started in the industry and how they improve themselves. I'll have to see if I can get my grubby mitts on copies of some of your library.

By MarkHarrigan on   Friday, May 14, 2010 6:51 AM
Search Blog Entries