9 ms·
Show HN: An experimental, keyboard-first user interface
- dschramm 7y agoHello HN! We just rolled out this little MVP for a new user interface for our knowledge base software. I would love to hear what you think about it! Cheers, Daniel
- nadima 7y agoInteresting, particularly useful for power users and high frequency usage products. Have you researched which applications have the highest penetration of keyboard usage and why? Afaik most users even on desktop apps (e.g MS office suite) can only retain a handful of shortcuts. What's your strategy to train users to have a fully keyboard based navigation? Btw did you use any open source library to manage keyboard shortcuts?
- dschramm 7y agoWe have not found any reliable numbers on keyboard usage vs mouse input yet, but it would be quite valuable. Compared to normal shortcuts the commands are easier to remember, because they mostly represent the verb for the action you want to accomplish. Instead of memorizing Ctrl + E or similar for a new article, you type /write or an alias like /new. This way you only have to know what actions are possible, without connecting them to an inconclusive key combination. Most commands will auto-complete after the first two letters, so you are not losing that much time either. Our frontend is build on Vue.js and the shortcuts are handled by global JS events.
- Hackbraten 7y agoPlease add a language selector so I can read the website in English. Or maybe lose the German localization altogether. As a German native speaker, I find the German translation quite difficult to read.
- marvinblum 7y agoYou can change that on the account settings page. https://emvi.com/account https://emvi.com/account
- marvinblum 7y agoIn case you're talking about our blog, you need to change your browser language :3
- the_duke 7y agoA big issue here are mobile/touch devices. You don't want to force your users into keyboard driven interaction there. But as decent mobile support is almost a requirement nowadays (even if just inside the browser), you end up with two completely different interaction designs and would require users learning everything twice.
- dschramm 7y agoThat's definitely something we have to look into. We currently see mobile usage primarily for searching and reading and less for creating content. But you are right, this needs special attention. We do not want to maintain two different approaches.
- GrumpyNl 7y agoI understand you will like this if you like command line interfaces.
- marvinblum 7y agoWe showed it to some people who are unfamiliar with command lines and they liked it. It's just that most non-technical users never encountered an interface like this, but they do like it if you show them how it works. This is why we're going to add an interactive tutorial.
- otab111 7y agoI'm very confused by the fact that this page itself does not have a visible focus style on interactive elements, making it very difficult for somebody who navigates the web with a keyboard to see what they are clicking on. I could not tell even if all the links on screen were actually reachable by tab key. Maybe I've missed the point, but there are people who use they keyboard exclusively when navigating a web page already, and I would think accessibility for those people would be a big consideration in what you are doing.
- dschramm 7y agoYou are right, I created a ticket for this to be fixed in the next release!
- bluemooner 7y agoThanks for sharing this! I find these kind of articles very interesting, as they go really deep into the analysis behind product development. As for the feature itself, as other people have already mentioned, I think it depends on whether your users are more accustomed to GUIs or CLIs. Personally, I prefer the latter so I'm definitely biased.
- dschramm 7y agoWe are trying to present GUI users with good arguments for a switch. Our tests with people that are unfamiliar with CLIs showed they were up to speed after a short amount of time.
- Quanttek 7y agoUsing slash ("/") for commands can slow down many users not on QWERTY keyboards because "/" requires one to press shift (e.g. QWERTZ or AZERTY keyboards)
- dschramm 7y agoGood point. We are on QWERTZ aswell, so we are thinking about making it customizable at some point.
- dariusj18 7y agoLet's bring back gopher and use this as an interface.
- achillean 7y agoNot sure if joking but Gopher is alive on the Internet today (281 results) if you wanted to create a new interface and test it w/ real data: https://beta.shodan.io/search?query=port%3A70+gopher https://beta.shodan.io/search?query=port%3A70+gopher
- httpsterio 7y agoI like the idea and I would use apps like this in my own personal life, but as a UX designer this is also a super horrible experience if you don't give any affordance in the UI to the user indicating what type of action they can take.
- marvinblum 7y agoYes we've thought about that too. That's why we added autocompletion and we will add an interactive tutorial should we decide to commit to this.
- flyinglizard 7y agoNot just auto completion but interactive auto completion coming from a list of options. This is what I did for one of my projects - you get a vertical list of all possible inputs (within reason of course) which is narrowed down as you type. You could use the arrows to navigate if you're not inclined to type - arrows - tab - arrows - tab would build a complete command sequence.
- marvinblum 7y agoThis is exactly what we did.
- Enginerrrd 7y agoThe gold standard of keyboard discoverability and low cognitive load has to be Microsoft office suite. The Alt key reveals all the shortcuts on screen, and as you type them the context changes to the sub menu you've selected. It's an astonishingly effective and useful accessibility feature. I wish this WAS the standard.
- spyckie2 7y agoThere's nothing better than for a user, especially one who relies on visuals, to visually see a "tree" of the possible actions they can do. And not tree in a literal or CS sense, but rather, buckets of activities with sub activities, not in a hierarchy but in an intuitive and context-creating way.
- eyelidlessness 7y agoFor (relevant) prior art, see Notational Velocity (which appears to have successors in various states, nvAlt and nvUltra). There's also Alfred, Quicksilver and Enso
- matlin 7y agoAdditionally, Superhuman seems to be doubling down on this approach for their productivity inbox and VS Code has this type of input/UI available with Cmd-P. Spacemacs kind of does this when helping you navigate emacs modes. It's a fantastic marriage of traditional search box feature discovery and keyboard shortcuts.
- marvinblum 7y agoThese are the places where we got our inspiration from :) But we couldn't find any relevant attempts to implement something like this in a browser, especially for non-technical users.
- marcosdumay 7y agoWeb sites tend to be created for novice users, because users come from everywhere all the time, and tend to not stick around for long enough to get competent on your design. (Really, on how many sites can a user get competent?) I guess it's time to reexamine the reach of assumption, but I'm sure it will stand correct more often than wrong.
- marvinblum 7y agoI agree, but Emvi is a knowledge management tool and if you decide to use it, you usually stick around for a while. So our users should have time to learn it. And I think it's really intuitive already.
- taeric 7y agoWorse, web sites tend to be written from a position of derision regarding most novice users.
- jborichevskiy 7y agoNot 100% related but a fun thought experiment I’ve been thinking about. What if all these various online marketplaces (Amazon, Shopify, Weebly, Wix, eBay) had the exact same interface functionality? Themes might be different but searching, sorting, comparing, and buying were standard across the board, like NPC shops in video games. I feel like it would lead to a significant increase in sales, due to the decreased cognitive load of figuring out yet another shitty interface. Mix in seamless payments and account management, and the idea of an online store starts to disappear entirely, to be replaced with the ability to just... buy stuff.
- dschramm 7y agoInteresting thought, I would love to hear the leading UX designers of those companies discuss their ideas, desperately trying to settle on a solution they all like.
- dfee 7y ago“What if there was only one way to buy things”, “then 100% of things bought would be bought through that one way”. If you eliminate differentiation you are eliminating friction, but also innovation.
- Groxx 7y agoSeems we might be giving it the hug of death. In case it renders weird / 503s: https://web.archive.org/web/20200320200023/https://emvi.com/blog/a-new-experimental-user-interface-QMZgmZG1L5 https://web.archive.org/web/20200320200023/https://emvi.com/...
- marvinblum 7y agoHm everything is looking good so far. We'll switch to a more powerful machine anyway soon ;)
- marvinblum 7y agoJust in case, here is our Medium blog: https://medium.com/emvi https://medium.com/emvi
- philjohn 7y agoI worked for a company that made software for libraries (public and academic). It evolved over many years, starting off as a terminal session onto a mainframe. The newer windows version still kept every single keyboard shortcut, because it turns out once you know the shortcuts, it's so much faster than pointing and clicking.
- marvinblum 7y agoYeah I really do love that. Once you get a grasp on it, you can control it blindly. I'm so quick on our UI right now, that you sometimes don't even see the command line opening. I think this efficiency combined with modern design has great potential.
- EvanAnderson 7y agoDevelopers paying attention to keyboard shortcuts is a fit-and-finish metric. I'd even go so far as to suggest it's a good indicator of whether the developer actually cares about their users. Windows itself did a great job of keyboard shortcut consistency through Windows 7. Windows 8 and beyond, however, have been less so. Pressing ALT-F4 while Windows Explorer has focus on Windows Server 2019 and finding that you're rudely logged-off with not warning (which has something to do with UAC settings, and can be replicated on Windows Server 2012 R2 w/ the "Desktop Experience" feature enabled) gave me a very "Gee, these guys really don't care about me" kind of feeling. There are others, but they're not coming to me right now.
- marvinblum 7y agoThis is probably happening because it takes a lot of effort to get a keyboard controlled interface right. When everything is controlled by mouse you can separate concerns more easily. We had to put some thought into our state management which is even harder in the browser than it is on the desktop.
- userbinator 7y agoThat's weird, apparently in Win10 and 8 you should still see a confirmation dialog, so I'm surprised why 2012R2 and 2019 wouldn't: https://winaero.com/blog/wp-content/uploads/2012/08/shutdown.png https://winaero.com/blog/wp-content/uploads/2012/08/shutdown... https://www.tenforums.com/attachments/general-support/241264d1564075354t-start-shutdown-menu-changed-its-default-switch-user-screen-shot-07-25-19-10.19-am.jpg?s=8da2aa0d464cbab8099a936bd580b926 https://www.tenforums.com/attachments/general-support/241264...
- nemoniac 7y agoAn excellent keyboard-first interface exists already. It's called Emacs. Give it a chance. It might surprise you.
- CarlRJ 7y agoVim
- chickenpotpie 7y agoI've had an idea for a while now to have a website that only has a text input like this to allow simultaneously building a website and a voice assistant (Alexa/Google Home) plugin. The development is much faster because it's the same back end for both apps, gives a standardized UI, and the auto fill on the website teaches what is possible on the voice assistant.
- DavidVoid 7y agoAlways good to see companies put some effort into good keyboard navigation! If you want a keyboard-first interface for your web browser I can recommend Vimium (which I'm sure a lot of you have already heard of). I'm not actually a Vim user (at least not yet), but I rely pretty heavily on Vimium's shortcuts in Firefox nowadays. I started using it when I had a school-provided laptop which had an awful trackpad which was way too slow and annoying to use for my taste. Vimium: https://vimium.github.io/ https://vimium.github.io/ Screenshot of shortcuts in Vimium: https://i.imgur.com/x1Y7OvQ.png https://i.imgur.com/x1Y7OvQ.png EDIT: I almost forgot to mention my favorite feature (which is not limited to Vimium). Custom search engines are great! If I want to go to the Wikipedia page on aviation then I can just press Shift+o and type w aviation and it will immediately open that Wikpedia page in a new tab. The other search engines I frequently use are: google translate, thesaurus (synonyms), and justwatch (to see if/where a show/movie is available in my country).
- dijit 7y agoIf you're going down that route I recommend Qutebrowser[0]. I'm a pretty staunch advocate of it since it doesn't feel at all like a "hack" of vim in the browser, and because it's chromium basically all websites work. (However, I am contributing to the monopoly of chrome based browsers, which is a bad thing in my personal opinion). It's also easy to extend, I think it's the ultimate hacking browser. PS: it takes a little tinkering to get really nice looking on MacOS. [0]: https://www.qutebrowser.org/ https://www.qutebrowser.org/
- RobertRoberts 7y ago>Custom search engines... Firefox has had this feature for many many years. I press ctrl+L (keyboard focus to location bar) type "w aviation" and press enter. It's built in already as a default feature. To add a custom search to Firefox, right click on the search field and click "Add keyword for this search". I chose "w" for Wikipedia like you have.
- sullyj3 7y agoChrome does this more simply, but the feature is less discoverable. you don't have to create the keywords manually, you just hit tab after entering the URL where the search box is located. since the URL is autocompleted, for frequently used websites this is a matter of typing the first two or three characters and then hitting right arrow.
- zzo38computer 7y agoI think the solution should be to use the "accesskey" attribute. Unfortunately, not enough web page writers use it.
- marvinblum 7y agoWow I actually never heard of this! I will definitely consider it while implementing more features of Emvi in our new UI.
- crocodiletears 7y agoThis interaction model looks a lot like a hybrid between Blender's tool search, and FEMA.gov's site navbar, both being among my favorite UI elements floating around cyberspace. I don't have anything to criticize here, or any insight to add. I'm honestly just thrilled that this concept of a hybrid command-line is being explored more thoroughly.
- marvinblum 7y agoThank you! We're thrilled too by all the positive feedback and we'll continue to work on this :)
- bastijn 7y agoIt looks a lot like the command palette of sublime, vs code, etc (cmd+shift+p). Combined with the navigate functionality of those editors (cmd+p). Where actions like back map to the command pallet and navigation like .articles maps to the file navigation.
- myfonj 7y agoExactly. "Command palette" is the name of this user interface element known from many editors, app launchers and OS app integrations and is proven to be extremely efficient. It almost seems like the article is reinventing it and calling it "command line". BTW even in VS Code there is in fact single unified input: "Go to File input" (Ctrl+P) that changes behavior according prefixes; "Show all Commands"(Ctrl+Shift+P) just opens the same input with ">" prefilled; "Go to Symbol in Workspace" (Ctrl+T) prefills "#", "Go to Line" (Ctrl+G) prefills ":" and so on. It even shows you placeholder when empty that reads "Type '?' here to get help [...]" what lists all those prefixes.
- rplnt 7y agoCheck out Vivaldi browser. I find it unusable due to its performance, but they do some interesting stuff. https://help.vivaldi.com/article/quick-commands/ https://help.vivaldi.com/article/quick-commands/ Also, classic Opera had single key page navigation (and loads and loads of shortcuts). https://web.archive.org/web/20111014104313/http://help.opera.com/Windows/9.50/en/keyboard.html#single-key https://web.archive.org/web/20111014104313/http://help.opera...
- RMPR 7y agoImho, the right approach is the one taken by qutebrowser, a lot of shortcuts yes, but it's almost impossible to only use the keyboard and, when you do so, you can't be as productive as when you use the mouse, because it wasn't designed for a keyboard centric use.
- dotancohen 7y agoThe thing missing from both those implementations is link following. That's the "HT" in "HTML" and "HTTP", so no supporting it from the keyboard seems almost unacceptable to me in a web browser. Yes, I'm aware that no major brower _ever_ did support link hinting out of the box. I'm using Tridactyl now, and am extremely happy with it. There are some problems, notably on the lack of Tridactyl support before the page loads, but with TreeStyleTabs it is the best browsing experience I ever rememeber having.
- dangoor 7y agoThis gave me a sense of deja vu. A couple of weeks ago, there was repl.it's "graphical command line": https://news.ycombinator.com/item?id=22498665 https://news.ycombinator.com/item?id=22498665
- Avamander 7y agoI suspect most people here are forgetting that the average person types slower and finds keys slower than they can point-and-click, because they can't touch type. Keyboard-first user interface is definitely not an improvement if the same thing can't be done with a mouse in a reasonable time.
- deleted 7y ago[deleted]
- gamegoblin 7y agoIs this true for anybody under the age of say, 40? I don't know a single person between the age of 15 and 40 who can't touch type at least 50 WPM. I think the main hindrance for most people is not lack of touch typing skills, but more lack of ability or desire to memorize key bindings or the names of commands.
- varrock 7y agoExactly. It's just as equivalent as having to memorize where some hypothetical share button is on a webpage. I've had this experience trying to change my settings in iOS; I often forget where I'm supposed to click to get to certain settings.
- p1necone 7y agoSame issue on android, there needs to be a search function like there is in the windows control panel because there's so many categories and I'm never quite sure which category something is going to be in.
- chrismorgan 7y agoAs an Australian, outside the family I grew up in, and other software developers I know, I can’t think of anyone that I know can type at 50wpm on a physical keyboard. But then, I don’t actually know the typing abilities of many people in the range 15–40. On touch keyboards with autocorrect and autocomplete, I’ve seen various people typing well past 50wpm. Meanwhile I type 110wpm on a normal keyboard and maybe 30wpm on a touchscreen phone keyboard. (On later reflection, I have actually thought of three that I know or used to know that can type at a decent speed. But I can think of quite a few more that can’t.)
- keenmaster 7y agoI could see this getting acquired to enhance Microsoft’s Cortana or Apple’s Siri and Spotlight.
- marvinblum 7y agoWe are open for offers :D
- staplers 7y agoLooks like Notion for purist developers. https://www.notion.so/ https://www.notion.so/
- p2t2p 7y agoSee also: dot menu in Jira
- p2t2p 7y agoI mean try pressing dot on your keyboard on any page in Jira
- RMPR 7y agoI absolutely like this, being a keyboard centered user, I like to see things making my life a lot easier.
- pulkas 7y agoI think bloomberg terminal's UI is the best keyboard centiric UI ever. https://www.youtube.com/watch?v=LE8HiHZcgEE https://www.youtube.com/watch?v=LE8HiHZcgEE https://www.youtube.com/watch?v=ODgs0eWAIKc https://www.youtube.com/watch?v=ODgs0eWAIKc
- notRobot 7y agoRelatedly, there's nothing I hate more than new keyboards and laptops not including the "menu key", which has the same action as a right-click. https://en.m.wikipedia.org/wiki/Menu_key https://en.m.wikipedia.org/wiki/Menu_key I have a hard time living without it.
- marvinblum 7y agoGood idea! We can bind that additionally to the Control + Space keyboard shortcut.
- wainstead 7y agoI used ratpoison for a while on one of my Linux boxes and much liked it. > The name "ratpoison" reflects its major design goal: it lets the user manage application windows without using a mouse. Unlike other tiling window managers like Ion, ratpoison completely ignores the mouse (or "rat"), and avoids window decorations as much as possible. The default keybindings are specifically designed to not conflict with Emacs. https://en.wikipedia.org/wiki/Ratpoison https://en.wikipedia.org/wiki/Ratpoison