That was quite enjoyable, straight forward, and entertaining for the < 5 min duration.
I really appreciate putting the user in context of their own lives compared to as if locked in a room with just that interface in front of them.
Microsoft brings in people a lot (or so I hear) to do user testing. I wonder how processes can be redesigned to also take "The user is drunk" approach.
Microsoft sent out a high level research team to a company I worked at to collect data and feed back on Outlook. During my interview I asked the lead researcher why he's going through all this trouble to collect data, when he uses the same product himself, and can pay attention to how he's using it and see the disconnects between the use cases and the UI directly? It was a fair question, but I don't recall him having a good answer, other than jotting a note and agreeing. My follow up question was surly there's innovation in Microsoft around UIs, why not interview those folks? To which he and his team laughed and said you don't want any of those folks ideas. Amusingly honest, which I didn't expect.
It's very difficult to switch to a user's perception when you've spent a lot of time working on a product. Even if you didn't, being a professional in the field (game design, software development, even being an audio engineer while listening to music) really distorts your vision — so, if you want to predict the actual user/consumer's reaction, you'll better ask them.
This mentality tends to protrude in a lot of non-software related fields as well. There are many times for example where I question the layout of the instruments in my car or why my local grocery store stocks items the way it does. When you work with software/ui a lot, you tend to develop an internal organizational logic that's very different from normal users. This influence becomes quite noticeable when you have to respond to unfamiliar tasks.
The simple answer to your question is that you(the researcher or dogfooder) are not your users.
I'd say most people overestimate how much their own personal experiences generalize (to a meaningful n) or overestimate their ability to empathize with users. Even user researchers.
> During my interview I asked the lead researcher why he's going through all this trouble to collect data, when he uses the same product himself, and can pay attention to how he's using it and see the disconnects between the use cases and the UI directly? It was a fair question, but I don't recall him having a good answer, other than jotting a note and agreeing.
I'm surprised he didn't have a better answer. Experienced users cannot intuit the problems that new users will have, and the ones who think they can are the reason we have bad production interfaces. If you're used to pressing Control-Alt-Space, F, Shift-G to perform a common function, then that seems easy to you, and pressing F1 instead seems hard because it's not wired into your muscle memory. The only good way to find snags in your UI is to ask novice users in the field.
If you enjoyed that, here[0] is a recording of Will speaking live at a conference. It is on the same topic, only funnier and expanded to roughly 20 minutes.
Especially enjoy the "drunk but not dumb" part. Minimal design and big buttons do not make great UI. It's all about user intuition and guided experiences - recognizing what a user is wanting to do and helping them achieve it.
Sensitivity to the user's emotions, and thus their capacity to feel insulted by such things as simplicity, explanation and repetition, is not an excuse for failing to address the need for simplicity, explanation and repetition, but advice to interface designers on the need to be both relentlessly explicit and yet at the same time not insultingly condescending is both familiar and unhelpful.
His examples are clear elsewhere in this otherwise thought-provoking talk, but in the case of reconciling treating the user as 'being drunk' with treating them as 'not being dumb', I think he leaves the door open to interface designers not still subjecting their work to sufficiently rigorous scrutiny: what does a dumb drunk user do that one who was drunk but not dumb would not do? How drunk do you need to be be to act dumb even if you are smart when you're sober?
Not an eye-opener, but very professional presentation. I've heard this ideas before and even talked about them myself, but I still enjoyed watching to it, and I'll definitely use the metaphor afterwards.
It's kind of interesting to take an approach like this and contrast it with the user experience of something like Vim or Emacs. These editors are extremely popular despite not making it easy for first time users.
Is this because the target demographic of Vim/Emacs are all power users? It seems like making powerful tools like these are at odds with treating the user like they're drunk.
Vim and Emacs are not as popular as you might think. They come installed by default on most unix systems, but millions of developers go out of their way to install (and pay for) Sublime Text or Notepad++. And those are dwarfed by Visual Studio and the IntelliJ-based IDEs (RubyMine, PhpStorm, WebStorm, PyCharm, Android Studio, etc).
Most of these editors are closed-source, cost money, and aren't installed by default. Yet Vim and Emacs are so hard to use that they end up being a fraction of the paid editors' user-bases.
Who am I to claim knowledge of editor usage? Well at Floobits[1] we've made plugins for Sublime Text, Vim, Emacs, and IntelliJ. We can see how many people download and use each one. Sublime Text and IntelliJ are by far the most popular editors. It could be that Emacs and Vim users really don't like to collaborate, but it seems more likely that simply fewer people use them.
I'm not trying to hate on Vim and Emacs. Once people do learn them (and heavily customize them with plugins), they are very productive. And Vim and Emacs aren't going anywhere. A developer can learn one of them and use it for a lifetime. But Vim and Emacs could be much more popular if they put some effort into improving the first-time experience.
I feel like there is this vibe out there that if you don't use emacs then you're some kind of inferior developer who has to rely on tools to do his/her work. That perpetuates a myth that everybody of significance is using it. I don't buy it either.
Just antidotally I've only run into one or two developers who use emacs or vim as their primary code editor. A lot of people like myself, though are proficient with one or another shell editor (Vim in my case) that they use when working directly on a server, or for certain, occasional things where it's more convenient.
I think we, as developers, go out of our way to perpetuate that myth. How many times have you heard an experienced developer sneer at a newbie because they're using Notepad or gEdit? I think that there is definitely a tendency amongst developers to venerate tools and forget that tools are great only insofar as they allow you to be more productive. When I'm using software, I care that it's correct, that its user interface is understandable, that it's secure, extensible and performant. Approximately none of those things have a correlation with the editor or IDE used to write the tool.
Why not? I'm only slightly trolling. This is exactly the attitude I'm talking about. We tell newbies that it's not possible to be productive in Notepad or gEdit, and then hand them a text editor that doesn't even write letters onto the screen when you type.
The key word here is actually editor. Of course notepad and similar work perfectly fine if all you are doing is monotonically outputting a stream of text. When you want to navigate it and make changes, however, they break down (in comparison with alternatives). For most of us, we spend more time editing than writing - even in greenfield development.
For whatever it's worth, that is what I tell newbies when I demand they switch to "some kind of real editor". As it happens, I'm fairly nondenominational when it comes to which they use; though I certainly have my personal preferences my advice is usually to switch to the editor for which mentoring is most easily available to them.
> "But Vim and Emacs could be much more popular if they put some effort into improving the first-time experience."
I think you are wrong about that. Distributions of vim that aim to do this (such as Janus, or Cream) get no significant traction. Things like GVim exist, but the only place I've ever seen anybody use them is on systems that don't have a modern terminal emulator installed.
Any attempt to "friendly-ify" the default Vim experience would do nothing but alienate current Vim users. The temptation to throw all your existing users under the bus to reach a hypothetical larger market should be avoided; giving in to those temptations kills open source projects. Open source developers should feel a loyalty to their users, not meaningless "sales" numbers.
It's not always as simple as "this person downloaded an IntelliJ plugin, so they're clearly not using Vim". This is because Vim (at least, I'm not sure about Emacs) is often available as a plugin for most editors. Sublime Text has Vim mode built in.
For example: most developers won't think of using Vim to develop a mobile app. In the case of building iOS apps, I'm not even sure if not using XCode is a possibility. But, Vim-loving developers will install the Vim plugin for Eclipse, and XVim for XCode, etc.
Interesting. I've usually had the opposite feedback from Vim users. They'll complain that Evil or XVim only has 80% of the key bindings and commands that they use. Apparently the missing 20% is very frustrating.
Evil mode for Emacs is the only "vim mode" that I have seen that is even slightly acceptable to me. Viper was fairly shit, and everything else that I have seen and tried was just awful. The most you can typically expect is some loose emulation of a divide between insert and normal mode, and maybe half of the normal mode commands implemented, most incorrectly (not taking counts or not combining with movement keys correctly are the most frequent oversights).
I do mobile development. About 95% of my time is spent in Vim, the other 5% in eclipse for the few things that it actually makes my life easier for. If eclipse were actually more useful to me, that percentage would probably drop as it would cause me to bother setting up Eclim (I can't be arsed to right now, since that 5% is so low.)
I feel like using the Janus plugin suite for vim goes a long way toward a better first-time experience, but even then there's not a good walkthrough of what Janus gets you.
Even with Janus, it's definitely not for beginners and there seems to be a natural progression from a basic text editor to a more powerful text editor like TextMate or Sublime Text, then you either go for the full IDE like RubyMine or end up using vim or emacs.
"Don't be overly simplistic in what you do. And if they're a power user, let them be a power user. Because realistically, the user is not actually drunk. The user is FINE."
Realistically, vim is not actually hard on you the first time. Vim is FINE.
I use Vim normally but I actually downloaded Sublime Text just to use Floobits. There's something really intimidating about using Vim with Floobits, and there's the lack of the nice visual cues like circling around highlighted text.
It's all about the point at the end of the video — the amount of attention and effort the user wants to give to your app.
If it's a usual consumer app, the potential user obviously has a lot less attention to give to it then you, the creator; to feel this, you really should imagine that the user is actually drunk.
But for a professional app, like vim or emacs, it doesn't apply. I switched from Sublime to vim this february, and it was a real effort, but I knew why I'm doing this, and I was willing to put this effort in. And it wasn't my first attempt either; I tried using emacs a year ago, but it still was to much of an effort and I had too much work to complete, so I dropped it.
I beg to differ! These editors are extremely popular because of lack of better alternatives and because of the great conservatism (it doesn't matter that there might be something better, I have already mastered this one tool). I give you Sublime Text as an example - it has exploded in popularity simply for its great user interface. A lot of the engineers I have met, that used Emacs or Vim, have either never heard of Sublime or never tried it. If they were curious enough to give me 30 seconds of their attention, they all agreed "this thing might come in useful". Some I have converted.
The same thing is true for Word, Excel, for that matter Windows, Photoshop. These are not the best user interfaces for the main bulk of their target market - they are simply dominating because of lack of better alternatives and/or the great conservatism.
My point is, just because you target power users, your software should not get away with a poor interface. As another example, look at the crippled tool we use every day - the shell (csh, bash) and compare it with something like fish (that is far from ideal but makes at least a bit of progress).
The video is the best thing I have seen on HN in long while.
If you know how to use vim properly Sublime just feels clunky. I'll switch to another editor with composable commands that provides a better interface, but that's certainly not sublime.
I've been thinking about this for a while and my current thought on it is that authoring UIs are fundamentally different than task-oriented UIs, as they are premised more on giving the user expressivity and power of creation. The same might be said of a UI like Photoshop- complex, need to learn how to use it, can do shit with it.
One of the beautiful things about great UI is that it's
not there. [....] It's like a guitar player who just lets
the music come out and they're not really sure if the
guitar's there any more.
It takes sustained time and effort to learn to play guitar, or to learn to touch-type, or to program, or to manipulate programs in a code editor. This is a completely different use case from that of a casual web site user. You don't hand a musician a 5 inch screen with a big blue button and expect them to play it like a guitar.
Are they extremely popular? Or are the users just more vocal about it?
I went through the whole emacs tutorial and still have no idea what I'm doing. It's very difficult and counter-intuitive. On the other hand notepad++ does everything I need it to do and works right out of the box.
I definitely think emacs is cooler and has more features, but you can guess which one I use day to day.
vim is all muscle memory. You don't need to read any menus or icons. It is perfect for drunk coding with blurry vision. It just isn't ideal for casual use. This is the real difference.
Most web interfaces need to be immediately usable by a casual user to sell products or ad views.
Expert interfaces can be as complex as you like as long as they reward learning time with productivity improvements. If you are going to be spending the rest of your career writing text, spending hundreds of hours learning a powerful tool is time well spent. Not that vim is that tool for everyone but most programming editors will have a learning curve which is beyond anything a casual user would attempt.
Great video.
I've seen more and more websites with the huge button that "does what it is supposed to do", but in many cases the companies are leaving out a description of what their product actually does.
So in a moment of Sunday night serendipity, I liked the video enough to follow the link to Will's consultancy site and then his personal site[1], where I was intrigued enough with the interface to click through a few items. Seeing the name 'Bankai' took me back at least a couple of years when I spent plenty of time on the then new thesixtyone.com interface admiring their interface and gamification of new music discovery, where I had 'hearted' a few of Bankai's tracks. Will appears to be prolifically creative and dedicated to sharing, inspiring qualities.
This is like asking if they are gay or lets say it's audio, asking if they are black. Saying OT doesn't really let you off for asking questions about peoples private lives.
It's perhaps a slight exaggeration, but it is to make his point that "UI dead simple" >> "Complex UI that you can't tell what's what with a blur".
You may not have had blurry vision... But your attitude may have been as if you did have blurry vision. Oh there's no big colorful button? X. Oh this sight is monotone? Boring. X.
Of course I get the point, I just found it a bit strange he explained the blurry screen the way he did. Blurry screens are indeed very useful when designing UI's.
I really appreciate putting the user in context of their own lives compared to as if locked in a room with just that interface in front of them.
Microsoft brings in people a lot (or so I hear) to do user testing. I wonder how processes can be redesigned to also take "The user is drunk" approach.