Ignition
Another loose end that I felt deserved it’s own post is a follow up from the ignite thing I did.
Did I mention that I was nervous that night? I seriously wonder if I managed to make my point at all. But this post is here to clear that up.
I won’t post my actual slides. In keeping with Andrews beautifully minimalist approach to presentations, the slides don’t contain any actual information. But here is the text from the presenters notes. It’s pretty much a script, timed to fit in the limitations of the format.
- I propose that the internet is immature.
We are currently in the second expansion phase of the web, the first being the dot com bubble that so famously burst in 2001, and we have come a long way.
But we still have a long way to go.- I used to have a VW Kombi. It was baby poo yellow and was kitted out for camping, with a sink and a bed and a fridge. That model had twin carburettors and the control rod that synced them used to come loose while I was driving. The accelerator pedal would flop to the floor and I’d have to coast to the side of the road to fix it.
- The windscreen wipers would come loose too. I kept a shifter in the glove box so I could fix them when it started raining. That old car had plenty of quirks, and I got to know that car, and it’s quirks, pretty well.
I got so familiar with it that I took the quirks for granted- I think the web we use today is just as full of quirks as my old rust bucket (which I bought for $1000 and finally sold for $100). But like that car, we are so close to, and familiar with, the quirks that we take them for granted. We don’t question them.
- jQuery, Dojo, Yahoo UI, Prototype. These are just a few of the JavaScript tool kits that many of us probably use on a daily basis. They help ease the pain of browser detection, feature detection, plug-in detection, progressive enhancement, graceful degradation.
- As with JS, we all know some CSS hacks, and probably have our favourites. The box model Hack. The Holly Hack. Clearfix. IE conditional styles.
The thing that all these JavaScript and CSS hacks have in common is that they are workarounds for problems.
Not solutions.- AJAX, a fancy new term for some old technologies, is another work around for the stateless nature of the web itself.
By design, the web is stateless and that it opposite to the state-full nature in which most desktop apps work, and the way users expect them to work.- In the original browser wars, fought between Netscape and MSIE, we wrestled with proprietary tags, and inconsistent implementations of JavaScript in a day when nobody had heard of a DOM and HTML was regularly badly formed. The world became a better place with the rise of a standards body like the W3C who imposed a sense of order and direction on HTML.
- It’s not over, and the browser wars are upon us again. Firefox slowly erodes IEs massive market share, with Safari nibbling at the heels too. And there are other browsers out there.
- The working group in charge of HTML5 started work in 2004 and is stacked with industry reps pushing their own agendas. The WHATWG was born out of frustration with the W3Cs lack of progress, but in 2007, the WHATWG recommendations were folded back into the W3Cs work on HTML5.
- But as with any committee, there are private agendas, and Microsoft who still commands the lions share of the browser market, no matter what we may think of them, has chosen to go it alone and stay out of the process, leaving Opera, Google, Apple and Mozilla (who between them account for about 20% of the browser market) to argue about the future of the web.
It is interesting to note that the original HTML specification was not written by a committee.- In the mean time, everyday developers are pushing ahead with actually building the web of tomorrow.
Rich Internet Application, which is just a fancy term for a useful web site, push the boundaries both in terms of what people are learning to expect from the a web app, and the technology used to deliver those apps- The bar keeps getting raised in terms of our expectations of the web, yet the pace of development of the underlying foundations of the web move at a glacial pace. When will our expectations of the web exceed its ability to deliver? And I’m not pointing the finger at developers, but at the constraints being placed on us.
- Like some street magician, we have all been distracted by the focus on which browser is best, how fast JavaScript engines are getting. We miss the fact that the protocols the web is built on were never intended for the kind of uses we put it to.
- Like my old Kombie, I didn’t need to keep throwing time and money at fixing things that broke. What I needed was a new car that worked the way I wanted it to.
- I say we need to rise up and say “we aren’t going to take it anymore!” We deserve a robust application framework on which to write our code without fear of session hijacking, backwards compatibility problems, or session time-outs.
- We need to acknowledge all the cleaver people that brought us as far as we have come. (There are probably a few of them here in this room)
To their credit, I think they brought us to where we are today *in spite* of what the web has to offer, not because of it.- Every day I am amazed at what a cleaver bunch of humans we are, and how we manage to wring new and creative uses out of the web, far beyond anything that Tim Berners Lee could ever have imagined when he first invented HTTP/HTML.
- I have no idea what’s coming next, but I suspect we are soon going to start expecting more from the web than it can deliver. And when that day comes, we will start using something else. The buzzword “Web 2.0″ has grown tired, but I think there will be a new web at some point, and that perhaps it will be radically different from what we are use to, possibly even down to the protocol level.