This post is, simply put, about the next step in web design.
If you have been paying attention (you have been paying attention, right?), there have been countless opinions, views, pundits, open letters, pontifications, rebuttals, whining, coddling, and fear.
Now that we got all of that out of our system, what are we – as developers who do stuff daily- going to do about it?
Driving home from work yesterday, I started thinking about a new approach to web design. An approach that will allow free form web presentation, semantic HTML (read: bot crawl-able and indexable), and separation of concerns. None of this is revolutionary – but I have yet to see it spelled out this way anywhere else.
This Morning’s Broken Client Side Model
Below is a picture that describes the way it is today. This is the ‘before’ (Flash aside because its a “black box” in an HTML document, and since some argue its the most important and successful technology on the web lets table that for a moment).
So what can we do differently today?
This Afternoon’s Client Side MVC Model
Browsers obviously are a huge play here. People who say browsers aren’t innovating haven’t been paying attention. They will get faster, which is really the main issue here. Mike Erlanger suggests that HTML5 is really the turning point. This modern approach can be done today, but ultimately suggests that what is sent over the wire is data (existing as a DOM in today’s parlance), and the presentation will be done by the programmer, on the client (this is my thoughts on HN regarding this issue).
Full model-view-controller, free form web design, semantic web, can be done today (and be done better tomorrow). Is anyone already doing this?