I know it’s not good form to tell the punchline first, but here it is: I’ve chosen to go with OS X 100%.
Windows lovers don’t hate me. I have 3 Windows boxes in my office, including two awesome Thinkpads that have served the cause well. But Windows has one unforgivable shortcoming: a funky command line environment. I’m a Unix guy and I live and die by the command line. I program 99% of the time in Vi and Shell.
I’ve tried to buoy up Windows with Cygwin, with some success, and with lots of frustration. In my most recent effort to create a good PHP development environment, Cygwin came up against an foe it could not defeat: Vista. Cygwin became intractable, sometime stuttering for 10 seconds before executing a simple directory read.
When I get disgusted with Windows I often turn to Linux. Over the years I’ve installed dozens of Linux distros, and uninstalled just as many. I hate every Linux desktop manager. In my opinion they are all ugly and crude, and in their latest incarnations (KDE 4 and Gnome), ill-guided clones of Vista. Like everyone else, I use Linux every day on the server side, but not on the desktop.
My requirements are Unix command line tools, a decent window manager, desktop eye candy (such as nicely aliased fonts), reliable hardware (not Frankenstein junk as in so many cheap PCs),
Here are a couple of PDFs that you might find informative. I submitted the recursion essay to Headfirst Books as a sample of my writing within their format. The REST essay was prepared for my PHP course. You’ll have to provide the soundtrack yourself. Imagine that my delivery is a lot like Brad Pitt’s in Fight Club…if you want.
Did I mention that I’ve retired from the Startup? It’s been a year now, and I’m popping it off the stack of Things I Want To Do before the Big One Hits.
One thing I learned from the experience is that University Ave doesn’t have quite as many Maserati’s on parked on it this year. I wonder where they went? The crowds at Peets seem a little more sedate, but the crowd at Starbucks is as dense as ever. By dense I mean, of course, as populous as ever.
Most of all I’ve learned that I need to do more research and more walking. As I’m walking up and down the hills of my little town, the ideas flood in. Usually they flood out just as quickly because my I.Q. drops 40 points when I sit back down in front of the keyboard. So, I carry a little notebook to record my inspirations. One of these inspirations is: swim upstream.
Some of these ideas are about programming. Usually they are concerned with climbing out of the HTML/HTTP quagmire and reaching higher ground. Right now I’m looking at Seaside and thinking of how I can use the ideas behind it in my own projects. I’ve been doing MVC frameworks for years, and if you’ve seen one, you’ve seen them all. Some are slick (Rails) and some clunk along (the PHP frameworks), but they all work well enough to get the job done.
Though I spend a lot of time doing PHP, my research is leading down a new path, to languages that can do a little more soul-searching than ham-fisted PHP. Smalltalk (the language of Seaside), Lisp, or Scheme would be perfectly suited to what I want to do, but I don’t know any of those languages well enough to do anything serious. I do, however, know Ruby. So, I’m getting serious about Ruby these days. I don’t intend to be mysterious: I’ll just say, I’m thinking about meta-programming a lot. Ruby is a great language for meta-programming—we all know that.
I think this project will require a lot of long walks. I’m looking forward to it.
At this year’s O’Reilly Open Source Conventions, Chris Shifflet and Sean Coates, will present “PHP: The Good Parts.” This blog is not connected in any with with O’Reilly or OSCON. However, we wish them well, and welcome any spillover that wanders to this site.
As for our name (PHP: The Good Parts), it is obvioulsy inspired by Douglas Crockford’s great book about Javascript’s good parts. If you’re interested in making sense of Javascript’s mysterious inner workings, Javascript: The Good Parts is the go-to book.


I just found Bloglovin.com today. It’s a cool aggregator from some Scandinavian dudes. Check out their about page for info on how they created this cool site. It took two weeks to go from concept to product. I’m wondering if this is a Rails site.
Follow my blog with bloglovin
The mood is grim in the Ivory Tower. With the budget cutbacks now in effect, hundreds for courses have been cut from the CCSF Fall 2009 semester, and the pace will accelerate in the Spring.
All in all, CCSF has done a good job of handling the reduction in state funding, with no layoffs this year, nor in the Spring semester of 2010. Emeritus professors have been cut from the rolls, and full-time teachers no longer teach “overload” courses. In academic lingo, overload simply means overtime.
The axe will fall in Summer of 2010; the entire Summer session will be cancelled.
My suspicion is that these budget cuts will accelerate the infiltration of online courses into the curriculum. The ROI looks good to the bean counters: enrollment for online courses is off the charts, while face-to-face courses is stagnant with paltry enrollments. It’s a no brainer that the cheerleaders for online courses will jump on this with all their feverish hype.
So, I suggest that there is a great opportunity in this hysteria. The porn industry has already built SlutBot, which passes the Turning test with flying colors (if you’re a horny guy). How much harder would it be to create a ProfessorBot to answer the questions on my Ruby course forum? If only we could convince the porn kings to direct their massive talents to creating a Robot Ruby Professor!
I will be the first in line to buy that software—unless I write it myself.