Could it Really Be…Duke Nukem?

“Duke Nukem” from “Duke Nukem forever”
Image taken from 3D Realms.

Here’s what the folks at 3D Realms have to say:

Last Saturday we had our annual company Christmas party. It was a lot of fun as usual but it featured one special surprise. It turns out that several people had been secretly working late nights and into the wee hours of the morning preparing a special video for those at the party. They created a short teaser for Duke Nukem Forever.

After seeing the teaser we thought it was something we should share with all of you and while it’s just a teaser, rest assured more is coming.

Tomorrow, Wednesday the 19th, around noon CST, we will release the first teaser trailer from Duke Nukem Forever.

Well, this should be interesting…


Etiquette Reminder

Woodcutting of a gentleman tipping his hat to a lady.

A quick reminder to my readership: If you’re going to be a jackass in the comments (like “Brian” was in this one), your comment will either not get approved, or — as in Brian’s case — “disemvowelled”. You’re in my virtual living room, and I expect you to behave accordingly.


Windows Vista Annoyances

Cover of the book “Windows Vista Annoyances”

I just got an announcement from the folks at O’Reilly about their new book, Windows Vista Annoyances. I thought to myself, “Well, that’s good for 500 pages of material”. Then I checked the page count: 664. Heh.


Many RailsConf Proposals Submitted, Included Mine

Joey deVilla playing accordion onstage at RailsConf 2007
Me playing accordion (with Chad Fowler, who was playing ukelele) at the RailsConf 2007 evening keynote.

So Many Proposals, So Little Time

Chad Fowler, organizer of RailsConf, the annual conference for Ruby on Rails developers, writes:

There were more proposals for RailsConf this year than there were attendees at RubyConf 2006 [According to this site, there were about 250 attendees — Joey]. This means two things:

1. The state of the Rails community has changed significantly in that it has grown and there is a larger subset reaching the expert level.

2. It’s going to take us a while to sort through all of these proposals and make selections. Apologies in advance.

My Proposal

The deadline for proposals was last week, and I submitted one. Since I’m keeping a diary of the work I’m doing here at TSOT (where we’re building custom social software using Rails), I thought I had some pretty good material for a presentation.

I don’t think it’s breaking the rules to publish my proposal here, so here it is…

Adventures in the Deep End: Our First Serious Rails Project

Session Type
45 minute conference session


We joined a start-up to get some Rails experience; the company’s developers left and they needed new ones. In our favor: a mostly-working Rails app, funding and interested customers. Against us: we were all Rails newbies. We were in the deep end now!

We’ll talk about our experiences: the code we inherited, the lessons we learned and the agony and ecstasy of working on our first serious Rails app.

We were developers who wanted a challenge. Looking for some serious Rails experience and a chance to try something a little different, we left our jobs to join a start-up with a Rails app that needed a new coding team. Our mission: finish coding a social networking application designed for fraternities and sororities.

In our favor, we had a mostly-working application, development experience, funding, customers interested in paying us, good gear, a nice office, our rugged good looks and an accordion. Against us: a lack of experience with Rails (and in some cases, Ruby), an unfamiliar codebase with varying degrees of wonkiness and of course, a deadline.

You’ll hear the good, the bad and the ugly about our experiences as a team with minimal experience working on a Rails app that we inherited. We’ll talk about how we learned both Rails and someone else’s code in a hurry, how we organized ourselves and divided the work, the approaches we took in refactoring the app, the production setup we used, the “dos and don’ts” we learned along the way and the agony and ecstasy of working on our first serious Rails project.

If you’re thinking about making the leap from noodling with Rails example apps in your spare time to full-time it-pays-the-rent Rails development, you won’t want to miss this presentation.

Presenter Bios
Joey deVilla, a senior developer at TSOT, likes to mix software development, technical evangelism and accordion playing (he jammed onstage with Chad Fowler at the last RailsConf). After doing a lot of pointless noodling with Rails example apps, he took the plunge and left a cushy technical evangelist job at a stable internet company to take a chance on a start-up building social software in Rails. Joey is an active participant in Toronto’s vibrant developer community: he helps organize and provide accordion music for DemoCamp and TSOT’s Ruby/Rails Project Nights.

Dan Williams escaped from rather questionable fields — military research, insurance and telcos — to get some honest work doing full-time coding in Rails. As a senior developer at TSOT, Dan’s current projects are building social software targeted at fraternities and sororities and modelling his working life after the movie “Office Space”. While Dan does not have a mullet, he embraces the mullet philosophy: “Business in the front, party in the back”.


Facebook for Old People

The new job (I’ve been here less than four weeks) involves developing social networking software that has been customized for specific groups, organizations and associations, so naturally software of that ilk catches my attention. Here’s a cute parody of Facebook that appears on Straight from my Brain: Pensionbook!

Pensionbook: a parody of Facebook, customized for old people
Click the image to see it at full size.

[Found via Jen Vetterli.]


Happy 20th Birthday, Perl!

The Perl CamelWhether you think of it as “Practical Extraction and Report Language” or “Pathologically Eclectic Rubbish Lister” (that’s my choice), we internet app developers owe a lot to Perl. It may have started as a little language that let its creator Larry Wall automate administrative tasks, but in the 1990s, its strong text-manipulation capabilities made it well-suited for producing dynamic web applications. Its success in this arena earned it the sobriquet “The Duct Tape of the Internet” and it led the wave of “scripting languages” — of which my current language of choice, Ruby, is a member — which function as the “P” in the LAMP stack. I think of Perl in the way I think of all those music lessons I had to take as a kid: it drives me crazy, but I wouldn’t be where I am without it.

December 18, 1987 is generally regarded as the day that Larry Wall first released Perl via the newsgroup comp.sources.misc. Here’s an excerpt from Larry’s description of the language, taken from his manpage:

Perl is a interpreted language optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information. It’s also a good language for many system management tasks. The language is intended to be practical (easy to use, efficient, complete) rather than beautiful (tiny, elegant, minimal). It combines (in the author’s opinion, anyway) some of the best features of C, sed, awk, and sh, so people familiar with those languages should have little difficulty with it. (Language historians will also note some vestiges of csh, Pascal, and even BASIC-PLUS.) Expression syntax corresponds quite closely to C expression syntax. If you have a problem that would ordinarily use sed or awk or sh, but it exceeds their capabilities or must run a little faster, and you don’t want to write the silly thing in C, then perl may be for you. There are also translators to turn your sed and awk scripts into perl scripts.

Happy 20th birthday, Perl, and thank you Larry Wall (even though your language often made me want to hurl my machine out the window)!



New York Times Article on The Parallel Processing Problem

Two toilets, side by side.
Admit it: you love toilet humour as much as I do.

Talk about the “Multicore Crisis” isn’t new in programming circles. What is notable is that it just got mainstream coverage in the New York Times, in an article titled Faster Chips Are Leaving Programmers in Their Dust:

The potential speed of chips is still climbing, but now the software they run is having trouble keeping up. Newer chips with multiple processors require dauntingly complex software that breaks up computing chores into chunks that can be processed at the same time.

Aside from a minor quibble I have with their use of the word “manycore” (which sounds more like a music genre rather than a processor type), I think it’s a decent layperson-friendly article on the topic.