Mission: Impossible–Purely Declarative User Interface Modeling
Recorded at:
And what does it solve?
by
Adam Nemeth
It's possible to create a declarative UI: just use HTML and CSS3 without JavaScript. CSS3 even does away with the transitions.
But what on Earth would it solve for the users?
Computers are interactive. Users command computers to do stuff for them. This is the basis situation. An imperative language expresses these need rather well.
Sure, you can build a declarative page descriptor, that's even benefical (albeit the above mentioned two languages are well-suited for this task already), but interacions will be verb-based. "If this button is pressed, we expect you, dear computer,to do this".
Declarative languages are known to hard to work with: while I'm fluent both in XSLT and TypoScript (just two examples), I know that most programmers find them really hard to work with.
A good engineering product is one that solves needs perfectly for the users. The user of an API is the programmer, and what a programmer creates is used by the end-user. If the programmer has to do dances, or the end-user gets a software with bad ergonomics, you've failed to create a good engineering product.
The good reaction to such CTO requests is "you're an idiot, you either forget this sh.t right now or I'm outta here."
Nowadays writing the UI in a declarative is not a challenge
by
Javier Paniza
The Challenge: "We want to write the complete UI of our next generation ERP System in a declarative way. Not a single imperative statement."
Today, any Java developer can write a business application with automatic UI generation using open source domain-driven frameworks, such as OpenXava. In fact, there is already a complete ERP without a line of User Interface code written with OpenXava.





Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think