Books to read
Python
- Learning Python
- Mark Lutz - O'Reilly press. Probably the best book on programming Python if you already
know another language. Typical O'Reilly syle, so if you don't like that you may prefer:
- Internet Programming with Python
- Guido Van Rossum et al - ??? Written by the language's creator with a strong bias to
internet programming including HTML, CGI and general sockets. It does have a general
language tutorial at the beginning though.
- Programming Python
- Mark Lutz - O'Reilly press. The classic text. It describes the why's and wherefores of
the language better than the others, strong on modules and OOP. Also gives an intro to GUI
programming.
Tcl
- Tcl and the Tk toolkit
- John Ousterhout - Addison wesley. The classic on Tcl by the language's creator. Very
much a reference book and rather out of date now. It needs a 2nd edition. The Tk section
is of interest to any Tk user regardless of language (Tk is a GUI library and is
implemented on Tcl, Perl and Python).
There are several other Tcl/Tk books but I have
no personal experience with any but Ousterhout.
BASIC
There are many many books on BASIC covering each of its many dialects. If you are
serious in pursuing programming in BASIC, especially on rthe PC then I strongly recommend
using Visual Basic and studying any of the many many books on that version.
General Programming
There are some classic programming texts that any serious programmer should own and
read regularly. Here are my personal favourites:
- Code Complete
- Steve McConnell - Microsoft Press. This is the most complete reference on all things to
do with writing code that I know. I read it after several years of experience and it all
rang true and I even learnt some new tricks. It literally changed the way I wrote
programs. Buy it. Now!
- Programming Pearls
- Jon Bentley - Addison Wesley. There are two volumes, both invaluable. Bentley shows how
to improve the efficiency of your programs in every conceivable way, from concept through
design to implementation.
These are part of a programming library that came out of Bell
Labs in the 1980's in the wake of Unix. There are so many classics in this series that I
will simply say that anything from the pens of Ken Thompson, Jon Bentley, Dennis Ritchie,
Andrew Keonig and the rest at Bell Labs is worth reading. The styles may vary but the
content is pure gold.
- Algorithms by Donald Knuth
- This is a set of books describing fundamental algorithms that are used by programmers
over and over again. Heavy going, and a bit mathematical but, if you are concerned about
the efficiency and absolute correctness of your programs, they are worth searching out.
The whole set has recently been reissued with some updates.
Object Oriented Programming
I've already mentioned these, but here they are again anyway:
- Object Oriented Analysis
- Peter Coad & Ed Yourdon. - A great intro to OO concepts with a very simple notation
for recording your designs. As an added bonus the notation is very similar to the new
Unified Modelling Language (UML) standard that is being adopted by most books, tools and
journals.
- Object Oriented Analysis and Design with Applications
- Grady Booch - Benjamin Cummings. This is another excellent book, moving more into the
detail of designing classes and objects.The 1st edition, if you can find it, illustrates
the lessons in 5 different OO languages whereas the second edition only uses C++ and is
the poorer for it. It uses Booch's own notation which in my opinion is still the best
notation so far seen but it is being eclipsed by UML and so is effectively obsolete. Booch
is reputed to be bringing out a new edition using UML, but it's been a long time coming...
- Object Oriented Software Construction (2nd Ed)
- Bertrand Meyer. Meyer has his own OOP language - Eiffel and uses it to teach OO very
effectively. Because Eiffel is (unfairly) a bit of a minority interest the book takes a
little extra effort to read. It is undoubtedly worth it for the sheer breadth of coverage
of the current OO technology scene.
Other books worth reading are:
- Object Oriented Design Patterns
- Gamma, Johnson et al. A revolutionary book when it came out. It contains a number of
common OO design patterns and, perhaps more importantly, a notation for documenting them.
There is now a flourishing patterns discussion and a dedicated web site with many
additional patterns as well as variations of the ones in the book.
- From Clouds to Code
- Jesse Liberty(Wrox Press). This book takes you through the process of building a real OO
application - warts and all. Its rather like our Case study but much bigger and includes
use of design tools like UML.
A Web Server development environment using Python. Tcl
The definitive Tcl site at the time of writing
- it has a habit of moving!
BASIC
The Microsoft web site for VB info
There are other online web sites for VB resources: components, tips, chat-rooms etc.
Other languages of interest
java, javascript, perl, smalltalk, Borland
Programming in General
Try finding some general programming links pages on Yahoo etc. There are several good
ones out there, I have no particular favourite.
Object Oriented Programming