Reading the recent TOCHI (Transactions on Computer-Human Interaction), a group of researchers developed yet another automatic user-interface generation tool, this time for the smart computing space. Reasoning that there will soon be an explosion of software in the “Internet of things,” these brave souls ventured to create a “one size fits all” approach to the controllers, so that User Interface designers would no longer have to be a part of the development team.
As much as I appreciate their research and admire their ambition – a word needs to be said about the lack of feasibility in the approach. The core problem with the “one size fits all” approach is the same that caused Microsoft Access to fall by the wayside to code-based languages like PHP and .Net.
In each of the attempts to create a GUI, RAD code-generator, the software works great for 90% of what a project is looking to accomplish. The programs allow someone who has no coding experience to create a decent prototype. It allows developers to create a framework in a fraction of the time that they would spend using code-based tools.
The problem is that the devil lies in the details. The final 10% of customization will take the developers at least as long, if not longer, than they would spend building the app from scratch. A good portion of that customization will even be impossible or deemed unfeasible. Eventually, the stakeholders will need to choose between settling on a substandard final product, or rebuilding in a more flexible language.
Time and again, this is why .Net and PHP have outperformed GUI-based tools. Despite hundreds of millions of dollars of venture capital poured into unsuccessful projects, none has to date been able to provide a more compelling workflow for developers than the traditional tools. Simply put – designers and developers will never go out of fashion, just like carpenters will never be replaced by IKEA. Although RAD tools are great for prototyping simple projects, you would never trust a critical application to one of these packages.
Written by Andrew Palczewski
About the Author
Andrew Palczewski is CEO of apHarmony, a Chicago software development company. He holds a Master's degree in Computer Engineering from the University of Illinois at Urbana-Champaign and has over ten years' experience in managing development of software projects.