The Utopian UI Architect
medium.com
medium.com
I'd like to put him and Loren Brichter (another genius) in a room and be a fly on the wall, and listen.
Inventing on Principle: https://www.youtube.com/watch?v=PUv66718DII
The Humane Representation of Thought: https://vimeo.com/115154289
I also reject in more essential terms the line of thinking around "actually implemented anything revolutionary as opposed to talks/ideas". Don't underestimate the power of well-argued ideas. See re: horse carriages above. You need to start somewhere, and that somewhere is ideas, sketches, equations, talks. If it doesn't make sense to you, fine. If it makes sense to some people, they'll go and use, reuse, some of the ideas in a hundred different projects and implementations. The turing machine was a mathematical device invented to solve a rather abstract mathematical / logical problem. It took some time to get to the iPhone from there. You need free space for the next Turing Machine to come from. Those types of ideas are very rare.
Side note - It is curious to me that some of the most interesting projects start out as "side projects" of PhD students, since they have the free time (the true quantity of which rarely admitted), usually not directly related to narrow research focus of whatever P.I. they work below minimum wage for asked them to work on.
I'm not saying he's not a genius, I'm just frustrated that he's making such elementary mistakes on his own website for the sake of graphic design "beauty". It's almost ironic because he has articles up there that kinda rant about just this type of thing...
Everything about the website screams scroll down, (Chrome Win10) but the scroll wheel doesn't work and there is no middle click option(!), On MSEdge the scroll does work but veeeeeery veeeeeeery sloooooooowly (and still no middle click).
If you want to some of his inspired UX, view https://vimeo.com/67076984
His background was graphic design or photography or something but he had worked at a very high level at a revolutionary software company.
He then went to a small company that was acquired by Google. Once there, he was working with these freshly minted Stanford HCI PhDs.
They wanted to do studies and gather empirical data before making even the smallest decision. My friend would say "trust me, I've seen this before, this is the correct answer" but he'd get overruled and they'd go through all this effort and end up at the very same conclusion.
Some people just "get it". Pay attention to them.
Anyone who "gets it" will be measurably right often enough that nobody should have to take things on faith for very long.
What he says is that some people have very good intuition (build on experience and some perspective) which allow them to make good decisions without the need to conduct lengthly studies before they make any decision.
This might not be good scientific inquiry but it does make them very effective in moving things forward. Furthermore much of that intuition is built around a very unbiased view of the world which means they might be wrong but will be quick to adjust.
Compare that to those Phd students who only learned a method but don't have any other way than to ask others what the right decision is.
It's like reading a book and not understanding what it's about.
And keep in mind that you don't have to be right to "get it your way" data can back you up repeatedly and you end up failing anyway because you are measuring the wrong things.
"They" are human and are prone to the exact same errors and mistakes as anyone else. Google is technologically successful because they try to base their decision on analyzed data instead of a gut feeling.
I think the point of GP is that listening to the 'someone who "gets it"' can speed up the development process. Indecision has costs, and you can run studies in parallel anyway. Sometimes costs of having to backtrack every now and then are outweighted by the benefits of moving fast.
RE arguments against testing in code - testing is cool and all, but at some point you have to ask yourself whether you want to ship a product or a test suite.
BTW. the whole anecdote reminds me of a story from Microsoft about problems coming from a group of PhDs:
I'm all for testing and empirical studies, but it can be taken too far. Zynga focuses so much on measuring and testing, that it sucks all the fun and personality out of their game designs.
It would be a waste of his time to do more "implementing" than quick sketches for the purpose of communicating the ideas. His ideas are his "product".
Recently, I've been really impressed by the stuff Bret Victor, Vi Hart, and Nicky Case have been doing. But I don't put them on a pedestal. I dig into their source code, learn some lessons, and set my goals a little higher. That's how we make progress.
This isn't just a tech problem, either. The concept of "canonical" artists, writers, and musicians can really stifle creativity and make people aim way lower than they ought to.
Edit: typo
If you look for instance at LightTables, which sort of scratch the same visualization itch. The demos are awesome, but then you think at what it takes to make them work, you realize it's a lot of case-per-case work. Work people won't always be willing to put in to have a nicer visualization of a problem instance. It's dead in the water for general debugging, for instance. I can see it work for specialized frameworks (animation ...) and scientific research however.
So I'm interested but not excited enough to jump into the bandwagon before I know where it's headed.
He argues that interactivity is actually a failure state of software that doesn't figure out what the user wants from history and context, without demanding their time and attention.
>"I argue that interactivity is actually a curse for users and a crutch for designers, and users’ goals can be better satisfied through other means."
>"Information software design can be seen as the design of context-sensitive information graphics. I demonstrate the crucial role of information graphic design, and present three approaches to context-sensitivity, of which interactivity is the last resort."
Working at TomTom on GPS navigation really drove that one home, where an "interactive" user interface could cost people their lives. Imagine a popup that said "Did you really mean to miss that exit? [yes] [no]", instead of just recomputing the route without asking.
[1] http://worrydream.com/MagicInk/#interactivity_considered_har...
For one thing, his basic premise is not really much different from Engelbart and Kay.
For another, he doesn't propose specific processes or nuts and bolts design. The thinking trails off after "and then we make it more interactive..." Again, Engelbart did this. We've incorporated some pieces of it. We can still refine things. But the design problems always exist in the realm of compromise - if we automate more, we also have to specify more. General purpose solutions tend to fall back towards tried and true. When you put up a slick interactive demo, you have the benefit of being able to solve a very small problem, very precisely.
You know what UX problem needs the most solving? Documentation. You made a thing to automate a thing. But you didn't document it. So it's too non obvious to bother with. So it doesn't get used. The best work that Victor, Case, et al have done is fundamentally a form of documentation, not expressive tools. I've seen lots of folks try to take the lesson to heart and make their app more like that documentation. But it's a mess because it tends to leave out some necessary level of power or performance to be a good tool. It's extremely expensive to add the interactivity in many real world cases.
Do your web site forms do form fill properly?
The SAP ERP software UI dates back to the 80s, and is still basically all text based, even the tables are still made out of ASCII chars.
Screenshot of an text based table (SAP ERP): https://mysapbasis.files.wordpress.com/2015/02/screenshot1.j... ... the table borders are drawn over the all text (= a lot of space and tab chars) based table.
Textfields cannot be longer than 40 chars, multiline textfields don't exist (basically one textfield per line) and it looks like a dinosaur UI in 2015 - optimized for 14" CRT monitors. Their HTML4 Netweaver UI and Java "experiments" failed.
The ABAP script language dates back to the 80s too and looks like COBOL. https://en.wikipedia.org/wiki/ABAP
Can't argue the old SAP ERP looks outdated (but ... somehow it works :)).
Recently SAP released a new product called Cloud for Analytics, here's some of the screenshot:
http://www.sapcloudanalytics.com/images/carousel-plan.png
http://www.sapcloudanalytics.com/images/carousel-discover.pn...
http://www.sapcloudanalytics.com/images/carousel-visualize.p...
http://www.sapcloudanalytics.com/images/carousel-predict.png
There are still plenty rooms to improve ...
PS: I'm part of the Cloud for Analytics team.
http://scn.sap.com/servlet/JiveServlet/showImage/38-127432-7...
- I've seen my fair share of columns typed as fixed-width NCHAR. Yeah, a "89.99" order total you see on the screen might be stored internally as `000000000089.99`.
- Booleans? Why not use `x`, ` ` and `#` instead of true, false and null?
I've been using hotloading css, react and redux for the past few months and it's an amazing experience. It enables you to iterate quickly and see changes immediately. (Admittedly, as a project grows, there's a small delay between saving and seeing the change. I'm not sure if it's avoidable or not... But it's still much faster than having to do a full-page reload.)
[0] https://gaearon.github.io/react-hot-loader/
The downside with redux is that simpler things can take a bit more code than you might wish. You have to add an action handler / reducer, action creator, etc. However, it's generally very easy to extend previously written code, and it's very easy to reason about the data / logic flow.
Another pitfall with redux is that it doesn't provide any help when you have to react to changes. A few days ago in reddit I wrote a small example explaining what I mean [0].
You might be interested in checking out relay-local-schema [1], it looks promising for experimenting with GraphQL and Relay.
[0] https://www.reddit.com/r/javascript/comments/3u0167/getting_...
I also have a lot of highly-opinionated grandiose ideas. Perhaps I should put up a website and start giving talks.
Don't discount the difficulty, even after coming up with a brilliant idea, to communicate that idea effectively and in a way that influences people to see its potential.
Same with Victor, I think it's better that he focuses on the exploring the idea space and finds even better approaches. If his ideas are any good, there will be modern Henry Fords that will assemble teams and resources and will build businesses around his ideas. Henry Fords will potentially reap millions of dollars of profits.
Bret Victor will have his legacy as a reseacher and explorer of ideas. He will never get tons of money out of his ideas, but it seems that it is the path he has deliberately chosen. His name might be mentioned in human computer interface research 100 years from now, alongside Engelbart, Kay, etc.
It certainly makes me wonder how much creative talent is locked up within big corporations. All you end up seeing is super-refined output, like a single polished grain of sake rice. Since leaving Apple it's undoubtable that Bret has made much more far-reaching contributions that can be attributed to to his process of thinking aloud and publishing his thought process.
I did notice that the OA is illustrated with really nice pictures of a studio/workspace furnished with books, notice boards and desks alive with paper illustrations. when I read the tag line...
"An ex-Apple interface designer’s 40-year plan to redesign not just the way we use computers, but the way we think with them"
... I thought the article might be about Jef Raskin and the Humane Interface for a moment.