- We design and build extraordinary applications for companies looking to make the next great idea a reality.
- learn more
Web 1.0 to 2.0: What Kind of Application do you Have?
Of each particular thing ask: What is it in itself, what is its nature?
-- Marcus Aurelius

We get asked quite often to convert Web 1.0 applications into Web 2.0 applications. We do it so often that we've developed tools, written frameworks, published articles and whitepapers and given conference talks on the topic.
So far, there are and remain three different approaches:
- The Christmas Tree Approach - decorate an application with lots of Ajax widgets.
- The Reboot - reengineer your application from scratch.
- The Resurfacing - leverage the MVC nature of your application by turning your controllers into web services, your views from HTML into XML or JSON, and deploying a single page JavaScript client to access your new backend.
Which one to chose? That depends on what kind of application you have. Is it a Web 2.0 application masquerading as a Web 1.0 application, or is it really a rather dull Web 1.0 application that you need to tart up with a few widgets?
To get to the root of this question, it is helpful to take a brief stroll through the history of user interfaces. First there was the patch panel, followed a few eons later by the punch card entered program, followed by the terminal entered program and it's close cousin, the command line. Somewhere in there we had the great innovation of the full screen forms driven interface, a.k.a. the "green screen."
Next came the revolution of the GUI, with it's mouse, direct manipulation interfaces, etc. (An economist at the University of Chicago pointed out to me that a study had shown that folks using Mac's with all it's fonts and layouts got worse grades on papers, on average, than students using Wordperfect on the PC, so maybe the GUI wasn't an unalloyed boon.) A thousand flowers bloomed (from a somewhat sinister quote by Mao, I believe) and cool apps like Photoshop and Visio appeared.
Next came the web interface, which was really a major step back, as the web was really the reincarnation of the green screen with pretty pictures. And since that time, 99% of the applications we have been building are forms driven, green screen type apps.
So, when deciding which approach to take converting your Web 1.0 application to 2.0, ask yourself this question: is your application a forms-based interface because of the web and it's HTML forms or because that is it's nature?
If your application is a job application form, or a simple survey, then it's very nature is probably the filling in of forms. The best you can do is decorate this sort of application with widgets -- wedge many redundant forms into a small space with DHTML tabs, show the consequences of form changes with XHR requests to backend business logic, speed data entry with auto-suggest boxes. If, on the other hand, you're application contains within it implicit or explicit relationships that can be displayed in a visual fashion, say tasks that are positioned one after the other on a timeline, then your application is ripe for a direct manipulation makeover. Your real choice is between reengineering, i.e. did you make too many compromises when realizing your application as Web 1.0 that the controllers and views are not granular or expressive enough to support the operations inherent in your new GUI interface?
Try a simple though experiment with your current Web 1.0 application. Imagine a direct manipulation interface for it, moving boxes or arrows around and try to map out what sorts of GET and POST requests will be sent to your backend. What information will the view's send back as XML or JSON. Either it will or it won't support it. If, for instance, your applications have many, many stateful interactions -- first you do this step, then you do this step, then a third step, but never in the wrong order -- you may well need to reengineer the whole thing.
Anyhow, we'll get into some more resurfacing demos in a few weeks.
Technorati Tags: ajax, web10, web20, green screen
Topics: Ajax Development, Web 2.0
Comments: 1 so far
Leave a comment
About Pathfinder
Recent
- Dealing With A Legacy
- Big Changes Underway at LinkedIn for Groups
- Four blatant iPhone usability blunders (and one constant annoyance)
- Flash/Flex physics engines and examples
- A Rails Story, Or An Engine That Really Could
- Data visualization and the art of conveying information
- What’s In Your Junk Drawer?
- Selling Git on the Business End
- IE8 Beta 2 Released
- Faster JavaScript for Firefox 3.1 Thru JIT
Archives
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
- August 2006
- July 2006
- June 2006
- May 2006
- April 2006
- March 2006


Now 1.0 is converted into 2.0..Is it a Web 2.0 application masquerading as a Web 1.0 application, or is it really a rather dull Web 1.0 application that you need to tart up with a few widgets? But now 2.0 is like a christmas tree decorated with an application with lots of Ajax widgets.so what is the next step……
Comment by Web Services Company, Saturday, April 26, 2008 @ 2:20 am