Not quite 20 years ago, I was consulting for Symbolics, working on a Windows front end for PC Macsyma. I was writing Windows code in C, and working closely with a Symbolics LISP programmer named Frank. One day the two of us were in my office trying to debug my callback interface between Windows help and the Macsyma engine, which enabled running live demos from help files. After watching me sweat out the sem Not quite 20 years ago, I was consulting for Symbolics, working on a Windows front end for PC Macsyma. I was writing Windows code in C, and working closely with a Symbolics LISP programmer named Frank.One day the two of us were in my office trying to debug my callback interface between Windows help and the Macsyma engine, which enabled running live demos from help files. After watching me sweat out the semicolons and curly-brace-matching and the pairing of LocalAlloc calls with LocalFree calls and the obsessive care about resource leaks that writing Windows C code required, Frank said “Y’know, Martin, you should switch to LISP. It would be like a little vacation for you.”Of course, it was true: compared to LISP on a Symbolics workstation, I was working with flint knives and bear claws. I think I had an 80386-based PC, and was developing for Windows 3.1 using Microsoft C and the Brief editor. Fast forward to 2007. I’m still tackling the hard stuff, but it’s C++ with ATL, in ActiveX controls. I have much better editing and debugging tools, but I still have to be obsessive about resource leaks. I do get to go on a “little vacation” once in a while, but it’s not to write LISP: it’s to write C#, or sometimes Python.I’m just finishing up a little sample site in C# and ASP.NET: my vacation is almost over. Pretty soon, it’ll be back to the C++ salt mines for me.Actually, I’m kind of looking forward to it. Software Development