Character Destruction
It is hard to deny that last night's episode of Six Feet Under, Singing for Our Lives was one of the best of the entire series. Unfortunately, it ended with Nate Fisher, my favorite character, suffering a stroke and landing violently on the floor. Then, of course, came the fade to white, and worst of all, no previews of what's to come.
I get the feeling that Nate will die, kicking off a maelstrom of emotion and turmoil that will tear the Fisher family apart. Afterall, Nate, as unstable as his life has always seemed, was the rock of the family from day one. He always seemed (crap, I'm talking in past tense, aren't I?) like the ingredient of reality in a recipe of struggle and frustration.
There is a lot more that I could say on the subject, but one of the cool things about the web is that there are all kinds of people out there sharing similar opinions. I found a nugget of truth in 6FU, Singing for Our Lives, and most notably, another Singing For Our Lives.
Six Feet Under is truly in a league of it's own. It's a real shame that the show will soon be six feet over.
Television | Post Comments | View Comments (3) | Permalink
Hacking Your iPod With Perl
After initially playing around with the iTunes SDK while developing in C++, I checked out a more recent version of the SDK and found that supported languages included C# and Perl. Being the Perl hacker wannabe that I am, I decided to give hacking my iPod a whirl.
The final result is a Perl script called ipod.pl that, if nothing else, shows you how you can hack your own iPod using Perl.
Setup was simple. I just had to make sure my copy of Cygwin included the libwin32 library for Perl. It didn't, but thanks to Cygwin's handy package updating feature, it was a snap to retrieve. The only other real requirement is that you have your iPod attached to your PC and you've got a copy of iTunes installed.
The script I wrote, which is now available in all its glory, simply grabs a handle on the iTunes application, grabs some high-level information about the attached iPod, finds the largest playlist (note the assumption here that the largest playlist is always the main iPod playlist), and then spins through the tracks in that playlist to find the top 5 most played tracks.
Here's a screenshot of the output:

Unfortunately, it looks like the play count for a track in your iPod is only incremented when you play it in iTunes, so I don't think it's a real representation of the number of times you've listened to the song. However, the real purpose of this script is to show how easy it is to start querying the iTunes SDK and finding out information about your iPod or even controlling it – that's right, you can play a track, rewind a track, play a playlist, etc. I think this is where somebody could get really creative. I've only scratched the surface.
If you have questions about the script or know of any cooler applications of this functionality, either leave a comment or drop me an email.
Programming | Post Comments | View Comments (1) | Permalink
Run to Your Bunkers
Earlier this month, Internet security analyst Art Manion wrote a piece called A safe browser? No longer in the lexicon. Shortly after, Dean Hachamovitch, the head of the Internet Explorer team, got all turned on while reading it. This isn't surprising given the fact that Internet Explorer is every hacker's favorite wet dream of a target. Reading about how no browser is safe surely must give the IE team a warm and cuddly feeling inside.
However, before you stop using the web, step back for a second and ask yourself one question. Should I trust a guy with porkchops like these? Okay, one more question. Is browser safety a black-and-white issue or is there a grey area?
The answer to the first question is "of course not." The answer to the second is a little more complex, but I'm partial to the grey area theory. The main weakness of web browsers is that everyone and their grandmother uses them, so sure, a browser like Firefox is unsafe at times just like Internet Explorer is. The difference is that one of the two is selling your soul to the devil while you use it and the other is not, and to me, that is the real problem.
Afterall, how many times have you fallen victim to phishing attacks or ActiveX scripts taking over your hard drive? Even when I was an IE user none of that stuff ever happened to me. Sure, I read the news articles (and still do) about the latest browser vulnerabilities, but just because someone finds a vulnerability doesn't mean it has been exploited. And even when it has, it very rarely ever spreads in the way that something like Sasser or Code Red did.
The truth is, the most damage is being done by those spyware and adware-laden cookies that IE so mercilessly consumes like a pre-South Beach Diet Cookie Monster. If you don't believe me, use Internet Explorer for a week and then run Ad-Aware on your computer. Then use Firefox for a week and do the same.
So is there a completely safe browser out there? No, there isn't. That's just the reality. However, I do believe you're a lot better off using Firefox than you'll ever be with Internet Explorer. So remember kids, don't ever trust a guy with porkchops, and if you are working on a project that is practically doomed, instead of wasting your time reading gratis propaganda try and focus on the tasks at hand or else your biggest competitor will walk all over you.
Yes Dean, I'm talking to you.
Browsers | Post Comments | View Comments (0) | Permalink
Web Design Isn't Easy
Before you choke on your Cheetos, note that the title of this post isn't "Web Design Is Hard." Okay, now we can begin.
I was reading an article about wireframing and prototyping in HTML when I ran across the following:
In some circles, HTML has acquired the reputation of being a time-consuming, difficult undertaking best left to developers.
My question is, in what circles? I guess taking context into account, I can see why usability folk might be scared to venture into the web design world, especially if they're stuck in their Visio ways. However, in nearly every circle I've been in, the exact opposite is true. HTML and more generally speaking, web design, have taken on the reputation of being easy.
In the software development world, which is a world I live in for at least 40 hours a week, I consistently hear references to the ideas that building web pages is trivial and that web developers are a dime-a-dozen. I suppose I can agree with both points, the latter simply because it is undeniably true and the former because I have been building web pages for eleven years.
The distinction that needs to be made is that good web designers and developers are not a dime-a-dozen. In addition, designing and building good websites is most certainly not trivial, even for someone who has been doing it semi-professionally for as long as I have (or longer).
Typically the people that say things like "we can just throw a web page together – it's simple" end up producing pages that look something like this. Actually, that's being generous.
I always take statements like that with a grain of salt, because it's just like hearing someone say "I am a C++ coder and write programs all the time." Then you take a peek at the code they've written and find a bunch of stuff like this.
The truth is, there is an artistic side to web design and development that most people just don't have. If I've ever had it, it was a struggle to attain and very fleeting. I believe there is an artistic side to programming as well, and it's easy to tell when someone has it. It's easy to tell when they don't too. The problem is, you can often get away with not having the artistic side in the programming world – the same is not always true in the web design world. It's just a fact, most people will naturally respond to a site like | seriph | in a way that they won't to a site like yoda.com (though you have to admit that site is pretty hilarious).
So in conclusion, if you're one of those people that tends to write off web design as something trivial, only for those who "aren't smart enough to write real code," go pay a visit to mezzoblue, SimpleBits and Stopdesign (feel free to check out their source code too) and then come back here and tell me why.
Web Design | Post Comments | View Comments (0) | Permalink
Means to an End
Who knew it would actually take less time for me to download Trick Daddy's whole new album than it would to search for and download a single song from that album, "Sugar (Gimme Some)," using WinMX and Shareaza.
Granted, it probably would have taken much less time if I just bought the song I wanted on iTunes, but isoHunt has such a better pricing model. ;)
Music | Post Comments | View Comments (0) | Permalink
Massive Attack
Don't let the name fool you, Massive Attack doesn't make the kind of music you'd expect the guy from Aphex Twin to make if he was on crack (or is he already?). No, Massive Attack is actually the opposite of what you'd expect. Perhaps "Gentle Breeze" would be a more appropriate monicker. A lot of people seem to correlate them to Portishead, and I can't say that I disagree with the comparison. However, to be fair you have to at least throw in a pinch of Bjork to the mix. Whatever way you put it, Massive Attack is part electronica, part relaxation, and just what the doctor ordered when it comes to my musical tastes.
If you're curious and looking for something new to throw at your aural palate, either listen to the angel on your shoulder and pick up one of Massive Attack's albums at your local record store, or listen to the devil and head on over to isoHunt.
Music | Post Comments | View Comments (0) | Permalink
Fruition
If you'll remember, about a month ago I talked about an idea I had for developing a web application based on an API like the Google Maps API that would make hunting for houses easier:
After playing around with Google Maps...it seems to me that with a little bit of...creativity, someone could create a killer web application that would allow potential home buyers or leasers to view available homes on a map.
Well, it turns out that Paul Rademacher has done just that. In an article over at News.com today, Paul's HousingMaps service is given as an example of the many map-based web applications that are popping up all over the web as of late.
Paul does pretty much exactly what I had envisioned. He takes housing listings from Craigslist and projects them onto the same map format you're used to from Google Maps to give house hunters a visual look at where houses are available. Among many other cool uses, I believe the ability to plan a day of "house drive-bys" is enough to take this type of application a few steps beyond anything previously available.
Oh, and while we're on the subject of really cool map-based web applications, take a look at Seattle Bus Monster. I spotted that one thanks to Scoble, and even though he and I are local to the Seattle area, I believe anybody can appreciate the usefulness of such a service.
Convenience and efficiency make one heck of a lethal combo.
Computers | Post Comments | View Comments (0) | Permalink
Why Linux Isn't Ready for the Desktop
Asa Dotzler has written an excellent post on why Linux isn't ready for the desktop. I think he hits the nail right on the head when he narrows down the operating system's weaknesses into four distinct areas – migration, stability, simplicity and comfort.
If you're at all interested in Linux, alternatives to Windows, or the hurdles involved in creating good software for users, be sure to give his post a read.
Computers | Post Comments | View Comments (0) | Permalink
The Island
Last night, mostly by chance and good timing my girlfriend and I were able to catch the sneak preview showing of The Island, directed by Michael Bay and starring Ewan McGregor and Scarlett Johansson.
After seeing a few previews on TV I still felt like I didn't have a firm grasp on what the movie was about, and seeing the actual film confirmed that. The Island is a futuristic (2019) sci-fi thriller that contains all the action-packed sequences you'd expect from a Michael Bay film. Both McGregor and Johansson were brilliantly cast for their leading roles, and McGregor especially stands out the scenes where he plays both a clone and his source simultaneously.
I actually think it was good to go into this one not really knowing what was going to happen. It multiplied the elements of surprise throughout the film. I would have to say this one ranks pretty far above I, Robot and either just below or right on par with Minority Report, to mention just a few recent films in this genre.
If you've got the $19.00 to spare on a pair of tickets (or your one of those people who goes to movies by themselves), I recommend seeing this movie in the theater.
Movies | Post Comments | View Comments (0) | Permalink
Another Reason to Hate AOL
When I heard today that AOL Music was offering video downloads of Live 8 performances as part of their exclusive partnership, I immediately checked out the site to try and catch part of Coldplay's performance.
Imagine my frustration when after finding the full list of performances and then the list of performances available by Coldplay I got the following message in the video player popup window:
We're sorry, this feature is unsupported in Firefox.
Get with the program, people. As if I didn't hate AOL enough already.
Browsers | Post Comments | View Comments (1) | Permalink
Enforcing www
I hadn't really noticed until tonight, but up until now it was possible for anyone to view my blog by either pointing their browser to bernzilla.com, or www.bernzilla.com or even something bizarre like voteforpedro.bernzilla.com. Now, this is all fine and dandy, but the one problem this can cause is that repeat visitors who have chosen a site theme other than the default will lose their setting if they visit a different "server." So for instance, if I set the Gecko theme (see the sidebar) as my skin while visiting www.bernzilla.com, I'll still see the default Snow theme if I visit bernzilla.com.
So how is this problem solved? Very easily, thanks to a quick and easy mod_rewrite refresher lesson from Practical Applications. I say "refresher" here because we've been down this road before.
As you can see from that site, forcing the www in all visits to your domain is as simple as adding three new lines to your .htaccess file, and maybe an .htaccess file if you didn't already have one. The change I made to mine looks like the following:
# only allow requests with www in the domain
RewriteCond %{HTTP_HOST} !^www.bernzilla.com$ [NC]
RewriteRule ^(.*)$ http://www.bernzilla.com/$1 [R,L]
The first line (under the comment) looks for any requests in which www.bernzilla.com is not the HTTP_HOST. In matching cases, the second line applies the special rule. We fetch everything following the forward slash after the server name and tack it on to the end of the server name we want to enforce. So in the case where someone has requested something like bernzilla.com/projects.php, they will be redirected to www.bernzilla.com/projects.php.
Pretty nifty, huh?
Web Development | Post Comments | View Comments (3) | Permalink
Firefox Secrets
Earlier this week I received my free copy of the book Firefox Secrets in exchange for letting SitePoint include my Firefox port of the GrayModern theme on a CD they included with the book (as previously blogged).
I spent some time last night skimming through some of the chapters and I have to give props to Chu Yeow for putting together an excellent Firefox resource for novices and power users alike.
I was a little disappointed that neither I nor, more importantly, Johannes Schellen, were given credit for any of the work that went into creating the GrayModern theme for Firefox, but such is life:
This is – you guessed it – a gray, modern theme that, like Whitehart, is a continuation of work that was started and discontinued by its original creator. The Gray Modern [sic] theme was first seen in the Mozilla Application Suite and was created by Joe Hewitt. If you're migrating from that earlier browser to Firefox, this theme...can give you and your users some continuity as they make the transition.
Nevertheless, Firefox Secrets is a goldmine of information that I highly recommend to anyone that is interested in learning more about what Firefox can do for them.
Browsers | Post Comments | View Comments (2) | Permalink
Multiple Identities in Thunderbird
One of the things I've put off for too long is setting up multiple identities in Thunderbird. Essentially, multiple identities allow you to respond differently to emails you receive at the same email account. This probably most directly applies to situations where you have a catchall account that receives email to multiple email addresses (a situation typical of those who own their own domain). However, it also applies when you receive email at the same email address from various, distinct destinations. Such is the case with me, as I receive email from this blog and my Coldplay site at the same email address.
To figure out how to set up multiple identities, I looked at the MozillaZine Knowledge Base and found all the information I needed. That's where the straightforwardness came to a halt, though, unfortunately.
The problem with the way the Thunderbird team has implemented multiple identities is that it is based off of the assumption that they will be uniquely identified by email address. As the case I've identified clearly shows, this is not always true.
The main reason I wanted to set up multiple identities is so that I can have different email signatures depending on where the email I'm replying to has come from. Right now, with the default configuration, I have to type my signature, complete with name, site name and web address whenever I reply to Coldplay-related email (which unfortunately comes more frequently than blog-related email).
Because Thunderbird assumes identities will be unique based on email address, the process of updating preferences for an identity isn't intuitive, nor is the process of choosing an identity from the drop-down From: box when replying to an email. Imagine being faced with the decision between email@example.com and email@example.com when replying to an email.
Another unfortunate side-effect of this (or perhaps an unrelated bug?) is that changing the signature placement preference doesn't seem to stick. So if I choose to have my signature appear above the quoted email I am replying to and hit OK, my preference is ignored and the default setting of appearing below the quoted text remains set.
Needless to say, it only took a few minutes of running into these types of issues before I wrote off multiple identities and decided to stick with the time-consuming option that I've become so unfortunately accustomed to.
If anyone has had any degree of success in a similar situation, I'd love to hear about it.