I’d like to talk about future-proofing for a bit. One of the things that’s niggled at me for quite a few years has been the suffixes you find in websites. In the beginning you had either “.htm” or “.html”, and even that was annoying. It’s one thing to have everything be .html. But then (I think FrontPage or its ilk were responsible, but someone please set the record straight here) we got .htm pages as well. Now, it was a 50-50 chance that your memory of a URL was correct. In time, we’ve gotten .jsp (with the hideous jsessionid nonsense), .php, .cgi, and (God help us) .pl pages or .py pages, and probably a whole host more. Is there *any* good reason for this rubbish?
You know, technologies underlying your webpages are going to change. There’s nothing you can do about it, they just will. Slashdot is a good example of using .pl extensions. And again, why? Why use any extensions? What happens when you switch from perl to ruby or python?
The point is that the web is evolving. So, why deliberately lock down your site to embrace one web technology? So your website is up for 5 years with your ugly-assed jsp pages and you’ve gotten up there in your google rankings and what not. Then along comes your new business needs, driving your web infrastructure away from jsp to php. All of a sudden you change your extensions, and now you have to do a whole bunch of redirects. Do you see how this doesn’t scale at all? Is it just me?
Honestly, .html extensions are there needs to be, if anything at all. What I really like are no extensions whatsoever. Django embraces this idea. You get really beautiful URL’s with no extensions and other ugliness. Down the road, when you switch to RoR or Java or whatever, your URLS (gasp!) will not have to change!!
OK, that came off pretty rant-like, but the ultimate point I wanted to make is this: my employers are cool like that. They’re paying attention to the things I say 🙂 I brought up the point of future-proofing url’s, and if you look around on the site (especially the revamped DevZone, you’ll see a lot more future-proofed URLs. There’s still some ways to go before we stop exposing the technology behind our web infrastructure, but it’s a great start.
Tell me your thoughts on this — I’m especially interested in you .jsp and .php people. How do you possibly justify that nonsense?