Categories
Uncategorized

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.]

Categories
Uncategorized

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)!

Links

Categories
Uncategorized

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.

Categories
Uncategorized

The Star Wars Holiday Special

So Bad, Even George Lucas Wants Nothing to Do With It!

Even as an eleven-year-old back in 1978, I knew as soon as voice-over went…

with special guest stars…Beatrice Arthur! Art Carney! Diahann Carroll! The Jefferson Starship! Harvey Korman!

…that something was about to go terribly, terribly wrong with the Star Wars Holiday Special, a show so terribly bad that even George “I’m no longer qualified to tell good from bad” Lucas has disavowed any involvement with it, no matter how minor.

Now, thanks to the miracle of Google Video, you too can enjoy the so-bad-it’s-goodness of the Star Wars Holiday Special, either in the tiny window below or on its Google Video page at a larger size. After watching it, Episode I: The Phantom Menace seems like The Godfather in comparison. At least Phantom Menace had the decency to not include a scene featuring Bea Arthur doing a Broadway number and dancing with Greedo.


Click here to watch a larger version.

The Five-Minute Version

If you can’t bear to watch all two soul-crushing hours of the Star Wars Holiday Special, you’re in luck: some kind sould has created an edit that sums it up nicely in five minutes. It spares you a lot of painfully bad wookie pantomime…


Click here to see the video on its YouTube page.

Links

  • Wikipedia page for the Star Wars Holiday Special
  • Stomp Tokyo’s review: “Like so many of the films we end up watching, The Star Wars Holiday Special is a curiosity best left to extremely hard-core fans and to the corners of history. No matter how appealing it sounds to begin with, we guarantee this viewing experience can bring you little but pain. Fast forward to the animated sequence (let the Force be your guide) and turn the VCR off immediately after it ends. Trust in these words: you’ll hate the rest of the special, and hate leads to the Dark Side.”
  • BadMovies.org: “Arrrrggghhhhh! Why am I watching this?”
  • i-Mockery.com: “I don’t care how many public claims he’s made about wanting this holiday special wiped off the face of the planet, I still have a hunch that George Lucas watches it every night, masturbating furiously as he cackles like a madman. Oh you knew what you were doing Georgie boy… and just because you made sure your name didn’t appear in the credits doesn’t mean you’re not still responsible for it. Come on George! It’s time for you to let the world see that twisted stepson known as “The Star Wars Holiday Special” whom you’ve had locked in the attic all these years. After all, if you can show the world “The Phantom Menace” with no shame, I see no reason why you can’t give this special the same treatment.”
  • The Unknown Movies: “Though I was really pained by many moments of this terrible special, I must admit that several hours later I found myself laughing out loud, remembering some especially horrible moments. As I write this, it is 24 hours since I’ve seen the special, and I am still laughing out loud at times as I write, even remembering some of the material that while watching almost made me scream in agony. So I guess in an indirect way, I did get some entertainment value out of it.”
  • OhTheHumanity.com: “If you want to beautiful childhood memories to disappear, if you want to brag about how much Star Wars stinks and this shows it, if you want to take your mind off how happy your life is and want to wallow in misery for a couple of hours, please see this. Hell, please see it anyway, if you can find a bootleg, because it’s probably the most messed up thing you could ever watch around the holidays other than your aunt hit on your older brother. I’ll be washing this movie off me for weeks.”
Categories
Uncategorized

Gift Idea: “RailsSpace: Building a Social Networking Site with Ruby on Rails”

Cover of the book “RailsSpace”Today marks the start of my fourth week at TSOT, a Toronto-based startup that develops custom social networking software in Ruby on Rails. The company’s first two products are FraternityLive and SororityLive, which as you might imagine are targeted at fraternities and sororities, with future plans for creating similar apps for other fields.

I was hired primarily for my tech evangelism cred and broad development experience (Visual Basic, Python, PHP, Director and Java from the rough-and-tumble Java 1.2 days) rather than for experience with Rails, on which I’d done only a little spare-time noodling. This means that a good chunk of my time during this first month on the job has been split between getting familiar with Rails as well as TSOT’s apps.

Just before my first day at TSOT, I went down to Boston to join my in-laws for American Thanksgiving. While there, I decided to take advantage of the strong Canadian dollar and Thanksgiving weekend sales to do a little job-related book shopping. Although I had the PDF edition of Apress’ Practical Rails Social Networking Sites, I was pleased to stumble across another book on building social networking apps in Rails: Addison Wesley’s RailsSpace: Building a Social Networking Site with Ruby on Rails. I figured that if I find a book that covers the sort of development work that I’m about to start, I should buy it on the spot (after a quick skim of the book while in the store, of course).

Of all the books I’ve read on Rails development, this one’s my current favourite. Yes, there’ll always be a special place for Agile Web Development with Rails, but I have to say that I like the pacing, ordering of topics and the presentation of material in RailsSpace a little bit better. I like the way that authors Michael Hartl and Aurelius Prochazka take a slightly different approach to teaching Rails, from going with a social networking app rather than a “store” app to their clever visualization of Rails’ directories as a pie chart, shown below:

Rails directories, laid out in pie chart format
Graph adapted from RailsSpace
and borrowed from Weblog of Fernando Reig Matthies.

So take it from a guy who’s paying his rent by working on Rails social networking apps: if you have some development experience under your belt and are looking to pick up Rails in a hurry (or if you’re looking for a gift for someone who needs to learn Rails in a hurry) I recommend:

Here’s what other folks have to say about the book:

  • Review at Amazon.com by Charles Harvey: My favorite of the Ten Ruby and Rails Books on my desk — “The authors’ programming style(s) are easy to read while following and teaching the Ruby/Rails community practices. The book uses output examples after each snippet of code so you can follow along not wondering if what you just did worked.

    The example app you produce while working through RailsSpace is not YASNS (Yet Another Social Networking Site) rather a (LBERBPS) Learn by Example Rails Best Practices Site. It was fun for me as I was tired of shopping cart, and book/music store examples.

    I don’t know how to put it into to the right words, but this books code flows.

    I always enjoy the rare book that sets a standard of excellence, and that is what puts this book at the top of my Ruby on Rails Library.”

  • myCATs: An excellent Rails tutorial for the intermediate Rails Programmer — “This book is just plain fun. As the title implies, the focus is on building a social networking site using Ruby on Rails. The depth of knowledge of the authors, Michael Hartl and Aure Prochazka, is evident right from the first chapter. The examples are relevant and well explained, with clean, consice, well-tested and correct code.”
  • Nate Klaiber: RailsSpace review — “I may seem cynical about social networks, but this truly book pays attention to the small details. Building a social network is a great tutorial that covers many aspects of Rails and building your own application – no matter what it is. It has several callout boxes that give more explanation where it is needed. It discusses the importance of testing. It shows the importance of refactoring. All of this comes together to make a great reading experience and knowledge gained. If you are a Rails professional, there might not be a whole lot new for you, but if you are just beginning Rails this is an excellent full-blown tutorial. Even if you don’t want to create a social networking site, the foundation and principles set in this book will give you the knowledge needed to start building your own application.”
  • ComputerWorld: RailsSpace hits the Ruby on Rails learning sweet spot — “…if you’re already a proficient OOP developer — or a beginner who prefers learning by example — RailsSpace offers useful insight into what the Ruby on Rails hoopla is all about.”
  • A.P. Lawrence: RailsSpace — “I liked also that the project paid attention to both looks and ease of use without clouding up with too much detail. The design is simple, but with enough attention paid to presentation to understand how to accomplish that in ROR, and the same is true for niceties like data validation: they do enough to show the concepts without burying us in it.

    The authors also included deliberate mistakes – that is, design deficiencies which you might notice before they get around to pointing out the problem. That’s good too, because often the best way to understand why you need to do something this way is to see what happens when you don’t.”

  • WebChicanery: RailsSpace – The Book — I’m somewhat skeptical of these “build a project and learn” type of book, but this book may be one the the handiest book on Ruby that I’d had a chance to read. The authors approach it was a very pragmatic and structured standpoint, all while explaining some neat steps and additions they’ve thrown in along the way.”
Categories
Uncategorized

On Extended Warranties

Illustration of a cellphone walking through a number of hazards
Illustration by James Kaczman for the New York Times.
Click the image to see the illustration with its original article.

In response to an article from last year titled Extended Warranties are for Suckers, a reader going by the name “any non moose” pointed out in the comments that:

Corporates often prefer to warranty their purchases, since having a fleet of consistent items is much cheaper than having a hodge-podge of all different ones. Being able to swap one item for an identical one within your own organisation without having to retrain the user(s) is very very useful.

But I agree that for a SOHO or hobbyist, warranties are as you say, for suckers.

Yes, moose, when I was writing about extended warranties, I was referring to purchases made for home, hobby or SOHO purposes.

Since we’re in the final week of shopping before the holiday that’s increasingly referred to as “Holiday”, here are some links for those of you who are purchasing electronics as gifts and wondering if the warrantly plan is worth it (generally not):

Categories
Uncategorized

“Bioshock” Meets a Shopping Cart

I love this Photoshop job in which Rapture (the setting of the game BioShock) propaganda replaces the standard “Do not leave child unattended” message on grocery shopping carts:

Grocery shopping cart plastic thingy marked “Is a man not entitled to the sweat of his brow?”

The line is derived from the philosophy of game character Andrew Ryan (whose name and backstory are rearrangements of Ayn Rand). You hear it in an in-game recording in Ryan’s own voice:

I am Andrew Ryan, and I’m here to ask you a question: Is a man not entitled to the sweat of his brow?

No, says the man in Washington. It belongs to the poor.

No, says the man in the Vatican. It belongs to God.

No, says the man in Moscow. It belongs to everyone.

I rejected those answers. Instead, I chose something different. I chose the impossible.

I chose…Rapture.

A city where the artist would not fear the censor. Where the scientist would not be bound by petty morality. Where the great would not be constrained by the small. And with the sweat of your brow, Rapture can become your city as well.

If you’re looking for a gift for someone with an XBox 360 or a PC with enough horsepower to play modern first-person shooter games, you might want to consider BioShock as a gift. It’s an excellent game that blends gaming action with a very rich backstory — quite possibly the richest since Myst. Better still, it’s can be finished in an amount of time that still lets you have a life: at the “easy” level, I finished it in a about a week, playing a couple of hours a day, and I’m a relatively casual gamer.

Links