Unless you’ve been living on Mars for the past few years, you’ve probably heard of the war between Windows and Linux. But there’s more to this battle than just a group of Linux “freedom fighters” taking on a monolithic corporation. There is a philosophy at work here and I’m talking about something deeper than the “information wants to be free” mantra that the open-source crowd is fighting for. You see, Microsoft has spent billions of dollars and man-hours trying to make software that’s easy to use. Unix on the other hand has always been about software that does one thing and does it well. To that end, most people can sit down in front of a Windows computer and get the hang of it after a couple of hours – yet Windows has historically been an OS of dubious stability. Unix (and its offshoots, like Linux) has a reputation for stability but is also well-known for being somewhat less than user-friendly.
Unfortunately, this is par for the course with computers. Making a program easy for non-technical users means adding huge amounts of code, which introduces the possibility of instability. Making a program as rock-solid as possible means removing large amounts of code or features. Think about writing down a recipe – for someone that’s never cooked anything before, the recipe would need to be long, complex and detailed. Writing that same recipe down for a professional chef like Jamie Oliver or Emeril Lagasse would take far fewer steps. The sheer length and complexity of the first recipe means that you are more likely to make a mistake while writing it down; the smaller “professional” recipe – being shorter – will, by definition, have fewer instances for you (the “programmer”) to make an error in your “code”.
While this is true of software on any platform – Windows, Mac, Linux, whatever – Windows has historically been buggy because it can do just about anything out of the box. Linux has been stable because it has historically lacked many of the features that make Windows easy to use. To be sure, many Windows users that have experimented with Linux typically go back to Windows because doing certain things with the operating system – such as adding a modem or printer – have been far more complex and arcane than it is with Windows. Linux itself isn’t perfect: as more and more features are added to the operating system (to make it easier to use) it’s paradoxically becoming susceptible to the same “feature creep” and instability that has plagued Windows.
The reason I’m bringing all this up is because of something that happened this week. I’ve really taken a shine to Virgin Radio lately (specifically Pete and Geoff’s morning show) and was looking for a program that can “record” digital music streams. There are hundreds of apps out there to do just this, but my research into the matter suggested that the two market leaders are Replay Radio and Total Recorder.
Replay Radio bills itself as “an incredibly easy way to record radio broadcasts” and is “like a TiVo DVR for the radio”. As you can see from these screenshots, they’re right. Once installed on your system, Replay Radio downloads a list of almost 950 online radio stations and 675 specific radio shows. Recording radio streams is as easy as a few mouse clicks. Replay Radio has its own built-in tuner so you don’t need to have anything but Replay Radio itself running in order to snag your favorite radio shows. And because it considers itself to be a PVR for radio, it of course has a built-in and easy to use scheduler so that you can – to borrow a phrase from a late-night infomercial – “set it and forget it”. In short, Replay Radio it’s a music lover’s paradise.
While Total Recorder has been around for ages, it’s a bit harder to understand than Replay Radio. It works by installing a “virtual sound card” on your PC. Any sound that is played on your PC is then run through this “virtual” sound card and recorded before being passed on to your “real” sound card. The advantage of this method is that it can record from any sound source on your PC, while Replay Radio is made to work with Windows Media Player, RealPlayer and WinAMP only. The basic version of Total Recorder doesn’t have a built-in tuner, so you’ve gotta go to a website and open the audio stream manually with Windows Media Player, RealPlayer or the site’s specialized java or HTML-based player before pressing the “record” button. You also have to manually download and install LAME MP3 encoder if you don’t have have it installed already; even if you already have LAME on your PC, you have to manually locate the LAME_ENC.DLL file on your hard drive. Next, you have to manually select all the pertinent MP3 settings – bitrate, ID3 tag, quality preferences – before before Total Recorder can record streams as MP3s. You also have to set the recording levels yourself. Although Total Recorder comes with a built-in scheduler, the fact that you have to go to a website and open up a stream by yourself limits the usefulness of the feature. Total Recorder doesn’t sound like a lot of fun, does it?
Guess which one works though?
I downloaded the latest demo of Replay Radio and had nothing but trouble with it. Although installing and using the software was a breeze, several issues immediately cropped up. Many scheduled recordings either recorded for 5 seconds and inexplicably quit, or just didn’t bother recording to begin with. Many radio streams sounded fine whilst listening to them live but came out of Replay Radio’s encoder “stuttering” and with lots of “pops”. Many – if not most – were simply too bad to listen to.
I blame this last problem on the fact that Replay Radio offers very limited options for encoding the audio files it produces. You’re allowed the option of making WAV files or “Near CD Quality”, “FM Quality” and other similarly-named types of MP3 files. The stupid thing about this is that Replay Radio doesn’t tell you that “Near CD Quality” is simply 192kbps MP3 – which is a stupid waste of space if the radio stream you’re listening to is broadcasting at anything less than 192kbps – which most do. The highest quality stream that Virgin provides is 128kbps, so encoding anything above that is simply wasting space and won’t make a better sounding file either. Replay’s help section suggested that I kick the quality level down to “FM Quality” (128kbps), but this only decreased the frequency of the stuttering. So great – now every 10 words stutter, not every 5. I did like the fact that I could record any number of programs from KCRW’s famous Morning Becomes Eclectic show to Neal Boortz with a couple of clicks. But what good is a slick interface if the program doesn’t record – or when it does, makes such poor recordings that you can’t listen to it?
Fed up with all this, I decided to give Total Recorder a try. As you might imagine from my description, getting everything set up was a bit more involved than with Replay Radio. It doesn’t require a master’s degree or anything, but it doesn’t come anywhere near passing the “Mom test”. To Total Recorder’s credit though, most of the complex setup steps only need to be done during the initial setup of the app. Now that everything is set up just right, all I need to do is open Total Recorder, go to Virgin’s site and open the stream, then press the “record” button. Once the recording is up and running, all I need to do after that is click the “auto stop” button to tell Total Recorder when to stop recording.
I’ve used it to record the past three days of Virgin Breakfast and… well, it just works! – although it should be stressed that Total Recorder doesn’t sell itself as anything other than a recorder. It never claims to be – nor has aspirations to become – a “radio DVR”. It also works smashingly well with the many online radio stations that have “customized” players that open up in their own windows instead of simply opening WMP or RealPlayer. I decided to check out a couple of stations from my old hometown – 99X and WGST – and Total Recorder snagged those streams flawlessly as well, even though 99X uses WMP embedded in a pop-up window and WGST uses a proprietary player provided by a company called Liquid Compass.
Dealing with all this for the past couple of days made me think of the whole “features vs. stability” argument. There’s a lot to be said for designing software that’s easy to use. In fact, the first rule of writing software for non-technical users is this: if the user has to read documentation to use it, you designed it wrong. People that write software for use in POS systems, movie ticket or information kiosks, DVR set-top boxes, electronic voting booths, etc. have this pounded into their heads, and for good reason. The whole premise of computers is to make things easier, cheaper and more efficient – if Target has to spend thousands of extra hours teaching their employees how to use a new POS system, it’s not easier, cheaper *or* more efficient for the retailer. If a cable company’s tech support lines are flooded with requests for help using a DVR, it’s not easier, cheaper *or* more efficient for that company.
Needless to say, Replay Radio passes the usability test with flying colors. But what good is usability if the underlying product doesn’t work?? Replay Radio might be a DVR for Internet radio, but it’s a DVR that doesn’t record the shows you want to hear. Total Recorder might be the software equivalent of a simple tape deck, but guess what? 99% of the time… when you put a tape in a tape deck and press the “record” button… it works.
Ain’t technology grand??
UPDATE! Silly me… Come to find out – with RealPlayer at least – all you need to do to schedule a recording is go to the Windows Scheduler (Start > Programs > Accessories > System Tools > Scheduled Tasks) and create a task to open RealPlayer at a certain time. Then open the “Advanced” properties for the task and paste the URL of the stream after the path to the executable. For instance, the following command-line will open Virgin Radio:
C:\PROGRA~1\Real\REALPL~1\realplay.exe http://www.smgradio.com/core/audio/real/live.smi?service=vraac
You can also check the “Stop the task if it runs for X hours” and shut down RealPlayer after a given amount of time if you’d like.