Blogs
Obligatory Apple Post
Since what every tech blog reader needs is another round up of Apple’s Showtime event…
Overall, nice incremental stuff, perhaps a little disappointing to those who were expecting a radical new mainline iPod.
New Shuffle: This is getting close to being jewelry, actually is starting to look like a cufflink to me.
New Nano: Smaller, bigger drive, better battery life, colors. Solid incremental upgrade.
New iPod: A very small incremental upgrade.
Re-refactoring
Here’s a little riff inspired by one of the examples in Martin Fowler’s book Refactoring, which is another great programming book that deserves an appreciation post one of these days. This was actually also spawned by code that I’ve read, and later realized that Fowler did a similar example. Thing is, I don’t think Fowler went far enough in this case.
Here’s the example. (page 243 for those of you playing the home game).
Some 411 of my own
Saturday, Robin and I had the pleasure of being interviewed by Ron Stephens for the excellent Python 411 podcast. I think this was the first time I’ve ever been interviewed for anything, and while it’s always fun to talk about Python, the book, and me (not necessarily in that order), it does take some getting used to.
Anyway, I do mention this here blog during the interview, and while I don’t want to talk about the actual interview in detail until I hear the edited version, it did occur to me that I might want to have some actual Python content on board in case anybody comes by to check the place out.
Hybrids In Bloom
A couple of big stories in the wide world of scripting languages running on virtual machine platforms.
IronPython, the .NET implementation of Python created by Jython creator Jim Hugunin, released version 1.0.
The two primary developers of the JRuby project, implementing a Java-based Ruby interpreter, were hired by Sun with the mandate to bring JRuby to 1.0. Unsurprisingly, I think this is all great. Programming hybrids are a beautiful thing.
I/O, I/O, It's Off To Work I Go
Welcome to our program, Things I Agree With Totally And Wish I Had Said First. Our hero tonight is Tim Ottinger with his hit, “Frameworks are for the Impatient". It seems Ottinger is puzzled by a library he’s trying to use..
Look, this framework is not the game Myst. I did not install this thing so that I could amuse myself for days by running around the file system trying to figure out what it is about…
Fonts
I’m curious – how do you set up your screen in your text editor when you are programming?
Based on people I’ve worked with, I seem to do two things in my setup that are unusual. I use fairly large fonts (16-18 point, if I can) and I’m aggressive about cutting off lines at 80 characters. The upshot is that I’m showing less text on the screen at a time than most programmers I know.
Web Apps and Language Wars
I wasn’t planning on posting about either web apps or linking to Joel Spolsky again, but this language wars post is just too interesting to pass up. Besides, a jillion people have already commented on this, so what’s a jillion and one?
Spolsky is riffing on what language or platform you should use for an enterprise web project. He makes a few points (note, I’m paraphrasing him here – these are his points, not mine):
Java Closures
Here’s a nice item being proposed for Java 1.7: closures in Java. On behalf of all those people who actually do create entire classes just to be able to use map and other functional styles in Java, may I say, please, please, please put this in Java. (This seems a good place to link to Joel Spolsky’s wonderful programming fable “Can Your Programming Language Do This").
The proposed syntax looks like this:
Languages I Use
Continuing in the getting to know you kind of vein, I thought I’d ground some of what I say by talking about the three programming languages that have made up the bulk of my professional and hobby work for the past five years or so – Java, Python, and Ruby.
Java: I’ve been programming Java since either just before or just after the 1.0 release… can’t quite remember at this point.
Code Complete: An Appreciation
It’s been about 25 years since I first typed 10 PRINT “HELLO”, and in that time I’ve read dozens of books aimed at making me better at creating software. There are several things I want to do with this site, but certainly one of them is to recognize those books that had a particularly strong impact on my professional career.
The first one is Code Complete, by Steve McConnell. It stands out on the shelf because it’s not about learning a new language, tool, or discipline, and it’s not a big picture rethinking of software engineering itself.