Home
Foreword
Preface
Class Idioms
Collections
Implements
Constructors
Terminate
Forms
On Error
Frameworks
F.A.Q.
Value-added
FSMs
Constants
GOTO
Hungarian
Nothing
Properties
Big EXEs

In 1986, Russell Sage wrote a book called Tricks of the UNIX Masters that was destined to become a minor classic in Unix circles. In 1994, when I was getting into Visual Basic, I bought a VB book with a similar title only to be disappointed when the lengthy chapter on 'error handling in the real world' proved to contain nothing I didn't already know and lack much that I did. Although Sage's book went on to be successful and is still well-regarded today, its audacious title opened the floodgates to a tide of self-proclaimed 'advanced' books that are nothing of the sort. I've bought a lot of VB books since then, and most of them can't hold a candle to Microsoft's own Visual Basic Programmer's Guide.

With this in mind, let me tell you something about my own  book. I won't jump on the 'advanced' bandwagon, since I don't consider myself to be an advanced programmer in Visual Basic or anything else. I am, however, a programmer, and the fact that I have been one for almost twenty years means that what I've written here carries the conviction of experience. This isn't the sort of book that could be churned out by a professional author after a hasty survey of hot topics in Visual Basic, and I say this not with conceit but with the knowledge of how much time and effort I have invested over the years in finding out the things I have written about.

And so to what I have written about. This isn't a book about databases or the Internet, it's a collection of essays about the craft of programming applied to Visual Basic. In some circles this needs spelling out because the word 'programming' has been devalued by its confusion with the whole process of building applications. There is more to building applications than dropping controls onto Visual Basic forms, but it's hard to explain this to people who have had no education in the fundamentals of computer science. And yet the same perverse snobbery that regards binary arithmetic and algorithm design as 'geeky' is surely part of the reason most software projects fail†. Perhaps the most effective description is the complementary one: take away everything you know about application building, and programming is everything else. William Gibson would call it 'interstitial' – it's the bits in between the bits that the average drag-n-drop programmer considers important.

I should also caution that you'll find this book a far from coherent read, which reflects its genesis as a series of articles written for my web site at www.keysound.com. However, more than twenty thousand people have seen the material you now hold, and the responses I have received have been overwhelmingly positive. I hope you like what you find here, and I would be happy to receive any feedback.

Mark Hurst
markh@keysound.com
 

Key Spinner

© 1998 - 2009 Mark Hurst. All rights reserved.   Updated August 24, 2009