What makes graphical user interfaces fundamentally challenging to implement, even for experienced practitioners? Please send me your favorite papers, talks, blog posts on this subject! (see caveats below)
-
Show this thread
-
Replying to @sliminality
Brad Myers. "Why are Human-Computer Interfaces Difficult to Design and Implement?" 1993pic.twitter.com/TWkh875u5l
3 replies 4 retweets 52 likes -
Replying to @wcrichton
So this was the first article I went for, and I think that only 4/9 of these really strike at the problem I'm focusing on: programming in terms of subroutines; handling all possible inputs; poor language support; and difficulty of modularization.
1 reply 0 retweets 1 like -
Replying to @sliminality @wcrichton
The rest seem kind of orthogonal: that we should be developing iteratively and not using the waterfall method; that regression testing is especially hard; that frameworks have thick manuals—all of this is important, but ultimately not about challenges in expressivity.
1 reply 0 retweets 0 likes -
Replying to @sliminality @wcrichton
Some of his points also seem like sailed ships. He argues that UIs, being multithreaded, are subject to all the challenges of concurrent software—but many Web UIs are functionally single-threaded, and even those with worker processes don't face the usual data consistency problems
2 replies 0 retweets 0 likes -
Replying to @sliminality @wcrichton
The "real-time" constraint made me lolcry because he's all like "it's difficult to run at 60fps, you get <10ms of business logic per frame!" and we all know most Web interfaces gave up on that ages ago...
2 replies 0 retweets 2 likes -
Replying to @sliminality @wcrichton
All of which is to say that this was the best academic article I could find, but it just makes me want...more? More depth and detail, maybe adjusted for contemporary GUI development practices, idk...curious to hear your take!
1 reply 0 retweets 0 likes
Agreed, life is different with modern web tech. But IME, "UIs are essentially state machines" doesn't feel right. React + Hooks + Contexts + Mobx vastly simplifies state management and model -> view mapping. Now, asynchrony and optimization take most of my UI dev time.
-
-
Replying to @wcrichton @sliminality
I would have said: state machines + incrementality. And the state machine style makes the async behaviors easier to handle.
0 replies 0 retweets 1 likeThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
cognitive psychology. PhD