Its been a while

26 12 2010

A lot has been happening over the last year or so, apologies for ignoring my blog, there is two reasons for this, firstly I moved to a Mac and had real problems finding a good Blog editor, have finally settled with Blogo , secondly I have been very deep inside a very very interesting Web 2.0 project for a major UK broadcaster. They have been allowing me to implement a lot of my best practices around Web 2.0. This is resulting in a new very advanced Web application that is built in a decoupled modular fashion using Dojo and REST.

I hope over the next few weeks to start to document some of these key best practices so that others can benefit from them. The whole experience has been hard work but the results of what is being built is going to help others that are targeting modern HTML5 based web browsers.

The topics I am going to cover:

  • Business Widget design and implement
  • Model View Controller advances in use with Dojo and Web 2.0
  • Web 2.0 Session State moving from page to page
  • REST Catalogs and REST Signatures
  • Maven Builds and Shrinksafe with Dojo and Eclipse
  • Styling with CSS3

I think this will keep me busy for a for weeks and help me get some of this information out of my head and into a form that will help others.






Page Oriented User Interface’s

26 12 2010

Page Oriented User Interfaces with HTML5 and Dojo

Since the move from server side Web based User Interfaces that have been generated by Servlets, JSP’s , JSF or even PHP, there has been a lot of innovation around how best to deliver and present the next generation of Web based Applications. Over the last 4 years a number of common sense best practices seem to be forming that are outside of any standard, toolkit or book. This set of blog updates will try and explain some of these best practices in a way that will allow others to think about there impact on there next generation user interfaces for the web.

So what is the term Page Oriented User Interfaces ? what does it mean ? Well in simple terms we all know that the web browser displays a page at a time, so the common thinking now is to try and make that page encapsulate the task or business function at hand. Keep all the user interface within the page to allow the user to complete the job. In the old world you would move from generated page to generated page and see that old flicker of a white screen as the web page refreshed. In the new world a number of asynchronous request can be made and the use of HTML5 with CSS3 and JavaScript could be used to create a powerful user experience more in a line with a sovereign application experience.

So if we now have the concept that the design of the page is focused on a set of business functions that are all surfaced around that page and AJAX and Web 2.0 techniques are used to present the UI, how do we navigate to this tasks. The next key principle of Page Orientated User Interfaces (POUIs) is the use of REST as a navigational point. REST is very good for data access and has changed the way we think of application servers and how they can delivery business information. When you start thinking of REST as a link to a page of content with a unique bookmarkable signature. It now allows a completely different way of thinking about page navigation. So all POUI’s will require a JAX-RS HTML Rendering feature. This will allow simple REST signatures that return HTML/TEXT mime types. These signatures can then take unique UUID’s to help identify data or business task.

Another key element of POUI’s if the use of state. State can come in a number of forms, Session, Application, Persistent, Page State. Each one has a different purpose to support the application.

So with the concept of Pages as a focal point for a business task, combinded with navigation using REST and a method for allowing various application state elements to exist we now have a basis to build a web application where users can navigate around, book mark, email , and maintain state with no server side overhead. These styles of application then become very scalable and flexible under high demand.

I will be writing up more of these principles over the coming weeks to help document these ideas.








Follow

Get every new post delivered to your Inbox.

Join 861 other followers