Archive for the ‘Technology’ Category

HTTP and the Stagnation of the Web

Thursday, January 1st, 2009

If you’ve read some of my previous posts, me and the current state of web technology have shared a love-hate relationship, more so on the latter side of things recently. Frankly I think the web has reached the pinacle of it’s current incarnation. Sure, there are lots of companies out there working hard, but for all the effort, little progress has been made.

I’ve come to believe that the main culprit of this is the HTTP protocol. It’s inefficient and encourages uses of technologies such as HTML, XML, and JSON. These technologies had their time, but I would think by now that time should have passed.

To give a comparison, the web is in the same technology state as the automotive industry. Over the years cars have changed in appearance to fit the times and consumer appeal, and thus have websites changed. Sure some new technological offshoots have occured to support these changes, but these changes have been at best iterations.

Now we’re here in the year 2009 and the automotive industry is facing consumer pressure to find alternatives to expensive fuel consumption on diminishing fossil fuels. So the automotive industry has begun to respond with more fuel efficient vehicles, but that only delays the fact that we won’t be able to run on fossil fuels forever.

Similarly, the web continues to run on HTTP, all the while seemingly not realizing that this protocol and behavior is simply not maintainable if we ever want the web to move on.

Personally, I think binary protocols are the future of the web. Now I know the majority of web developers would cringe at that, saying they like plain text protocols, but really, why does the data need to be transfered in plain text as long as a binary transfer can be transcribed to a human readable format on the client end?

The problem lies in the transition and that problem is threefold: browser compatibility, site compatibility, and search indexing. Current browsers have a hard enough time with HTML and CSS, so a new protocol would need extremely strict compliance standards. Everyone is aware of these issues but consumers really don’t push back like they should.

Site compatibility covers the issues of existing sites that this new system would need to be backwards compatible with. Sites like this would probably be phased out gradually (when was the last time you saw a ‘96 era site that was popular? )

Finally, every search engine out there relies on theese plain text protocols for indexing, so some considerations would need to be made for them. Take for example the Flash format, which was not originally designed to be indexable, and now there are efforts to go back and make it indexable without majorly rearchitecting the format. It’s proven to be difficult so far.

There’s only so much HTTP can do, and while it does have it’s uses, there are better routes to go in the future.

Goodbye Mozilla Firefox

Wednesday, May 14th, 2008

I’ve had some recent issues with Firefox. Nothing that bad, just frequent crashes, corruptions, and an unwillingness to create new tabs with any sense of speed. I know that barebones Firefox probably wouldn’t have these issues and my problems are likely the result of some malicious script or bloated add-on. However, This would be the third time in two months I’ve had to wipe the software and start over clean slate.

Frankly, I’m sick of it. I love Firefox, but when software stops working for me in a repetitive fashion like this it’s time to find alternatives. I chose to go with Firefox’s cousin, Flock. Flock has many great social networking features already integrated (in fact I’m posting this from Flock itself, not a webpage in Flock, the application itself). It’s also based on the Mozilla Firefox codebase so the experience is very similar. I don’t have all my favorite add-ons, but i suspect porting them wouldn’t be that difficult.

Here’s to change!

Breaking The Web Page Paradigm in Flash

Saturday, March 1st, 2008

I had an interesting thought tonight that I thought I’d share. Most of the recent Flash/Flex website fall into three primary categories in terms of interaction: applications, web page emulation or the ever-loathed eccentric designs. Obviously, applications are Flash sites that behave much more like traditional desktop applications. However, the other category is usually seen when someone is making a flash site in lieu of an HTML site, so we get a design that has behavior similar to HTML pages. Click button (Request), go to “page” with content (Response). “Page” transitions are pretty, but the use of these transitions usually add an extra unnecessary 200-300kb on the download. We’ve all seen our fair share of these sites, some hit some miss. The last category is the eccentric design category. These are the Flash sites you go to and spend 5 minutes trying to figure out how to navigate (or read instructions) and when you do, you get an experience worse than category 2.

Everyone hates the last category, tolerates, the second, and are usually very accepting of the last (only for those applications that follow typical application behaviors). There has to be some middle ground between the second two. Interaction that is neither entirely Request-Response nor eccentric. What would that be? I think what I’m looking for here is a paradigm that allows for standardized navigation but also asymmetrical flow of information. I’m not saying it would work, but it would certainly be worth exploring. Possibly some type of AI could be used that acts as a broker between the user and the content. How’s that for out of the box? An AI driven website?

Moving on from Traditional Web Design

Thursday, February 28th, 2008

Monkey BarsAs of tonight, I decided to discontinue pursuing future projects in the area of traditional HTML/CSS design. This is partly based on my mounting frustrations with the CSS standard, that despite being explicitly defined by the W3C, has never been fully and properly implemented by any browser. Every designer instinct tells me that CSS is necessary and not to use table designs, but recently I’ve found it increasingly hard to rationalize this as a benefit against productivity.

As far as I’m concerned, technology should be an aid in my pursuit of the holy grail of Design. If the technology is too old, or just not up to par with my needs and expectations, than I have no other recourse but to pursue other technology that lets me do what I want consistently and with the relative ease I expect. To this end, I have recently put much time into developing with Flex, and in the future plan on working with Silverlight (as much of an Adobe fan as I am, I’d be a fool not to learn more about the competition, for more info, see Blue Ray). I like pushing the edge, and to me, CSS feels like a hack to make HTML, nearly a 30-year old technology, look decent. Ditto on JavaScript in terms of AJAX (that aside, I love what JavaScript is, just not how it is used).
Another factor in this decision is a shift in career focus for me. While I intend on continuing my design skills, I find myself enjoying application programming more and more each day. I find myself more challenged with this, but challenged in a good way.

I find it so much more rewarding not to be fighting the technology, but instead fighting against my own lack of knowledge as I push myself into these areas of programming that are, at least to me, new. I don’t feel like I’m giving up on HTML/CSS. In fact if anything, I consider my journey through HTML/CSS based design complete. It’s been a mix of good and bad, but what I take from it are the lessons and the experience.

So here I am, feeling at a crossroads of sorts. While I find comfort in what I’ve learned, I feel the urge to push forward, and while my past and the present is important, in many ways they both hold me back.

Now all along you’ve probably been wondering about that little picture up there. It’s for the analogy I’m about to give you: Living as a developer/web designer is much like swinging along on monkey bars. You want to keep moving because if you stop too long on one rung, you lose your momentum, you risk losing your grip, and even if you want to start moving again, it’s not that easy.

RIP, HTML/CSS
2002-2008