The common misbelieve in generative UIs


I’ve seen it over and over; the so called magic presentation services: Systems that can easily support different channels and devices (Internet, WAP, Digital-TV, …) without explicitly designing applications or meta data for them. Don’t get me wrong, I strongly believe in architectures that support multiple channels. I just don’t believe that nowadays systems can fulfill this demand in a generic or generative fashion. Since each channel or device has unique capabilities, restrictions as well as additional functionality, they have to be considered. None of the generative approaches I know take these facts into account. Most engines just render the same screens into different representation technologies and reuse the very same UI-process. The results are user unfriendly applications that can’t deal with device and channel specific characteristics.


 


Sometimes less is more: Support only channels and device that are important for the chosen business scenario, but the clue is to support them in a smart and efficient way.

Comments (4)

  1. Anonymous says:

    When I first looked into Whidbey I saw that there are no mobile controls available… And why? Because their functionality are now build in into the existing ASP.NET server controls! They use the same magic presentation services and I think it’s not too bad…

  2. Anonymous says:

    Your right, these controls are great! They’re great, because there is a difference between channels and devices: ASP.NET solely serves the Internet/Intranet channel. Even if the application runs on a different device, it remains a browser based application. A different channel would be a WinForms(Smart Client) or a Digital TV application.

    Therefore, I don’t see any problems in rendering controls to different devices as long as dialogs, pages and UI processes adapt to the underlying hosting device. But serving different channels is not only a question about rendering, it’s more important a question about different transports and higher level communication protocols.