12 ms·
Started with what could have been an interesting premise for discussion, and then lost me when he declared mice to be intrinsically bad in a writeup about user
by _bxg1 7y ago
Started with what could have been an interesting premise for discussion, and then lost me when he declared mice to be intrinsically bad in a writeup about user interfaces.
It always confounds me when people assert that the number-one desirable feature in all user experience is velocity of input. As if there's nothing to be thought about, much less discovered. Just data to be entered. That may be true in certain narrow segments of interfaces, like POS software and development environments, but to pretend that all human/computer interaction fits that mold is to be willfully ignorant of the reality of personal computing.
Edit: It's been pointed out that towards the end he does acknowledge some valid use-cases for mice, but he still drastically oversimplifies the space of GUI use-cases and ignores some of the key benefits of mouse-based interaction.
- throwawayjava 7y agoEven in development. In fact, probably especially in development! I've done a lot of programming where my productivity was input-constrained, so I know that that such jobs do exist. I much prefer jobs where my productivity is idea-constrained. The final code tends to be a lot more interesting, the process of creating it a lot more joyful, and the final software artifact a lot more useful. As a bonus, I tend to be paid at least an order of magnitude more for idea-constrained code.
- boring_twenties 7y agoAt least an order of magnitude? That's interesting, considering that even mediocre code jockey can make $100k a year, that must mean you make at least a million a year?
- Enginerrrd 7y agoThat's not a terribly unreasonable claim for a consultant on a particular job. The issue is you can't usually fill your schedule with such jobs.
- boring_twenties 7y agoThat sounds perfect to me, I'd love to just work 2-3 months out of every year and call it good. Do you happen to have any insight as to what kinds of specialties allow for these kinds of lucrative short term opportunities? My biggest problem with my erstwhile career was that the only good opportunities I've ever heard of were only full time.
- Enginerrrd 7y agoIn the software world? Not sure, I mostly do niche environmental consulting, engineering, modeling, etc. and have a reputation for solving weird problems for people in a variety of industries. Typically the lucrative work I'm talking about happens when I just negotiate a flat fee and it doesn't take me that long. Companies often like that because it limits their risk compared to my hourly rate. But honestly most consulting in most fields should have this type of negotiating opportunity. As long as it's not a field with some sort of existing convention of hiring lots of "independent contractors" that probably should be employees. As for time in... It takes a lot for maybe a year or so to get enough reputation that you aren't hustling for clients. But now they call me and I decide whether or not I can take them. I get a lot of last minute rush gigs which are usually the best money if I want to take them. Often I don't, and I throw out a "fuck you go away" number and then they jump at it anyway.
- username90 7y agoI don't think that keyboard only coding is even faster, I can beat top competitive programmers on speed and I use mainly the mouse to navigate and select code. It is possible keyboarders could be faster than me if we have to write huge amounts of boilerplate code, like 1 line of code a second, but otherwise using a mouse shouldn't be a disadvantage. Tip for more productive mousing: Disable "mouse acceleration" or "enhance pointer precision", it makes it harder for your body to adapt to the mouse. I can move it to where I look at the screen in an instant with almost no adjustment needed at the end since when that if off world space and screen space aligns. Of course I learned that skill to select and order units quickly in RTS games, but it works just as well for selecting and manipulating code.
- inciampati 7y agoWhat kind of code are you writing that requires or benefits from a mouse? For selecting code I can imagine it helps. A touchscreen is just as good. But for writing it? I haven't used a mouse to drive coding since a C++ course in high school almost 20 years ago. The only thing I use it for is selecting and copying code. For navigating and writing code it's all emacs, tmux, terminals and unix tools.
- kaybe 7y agoLabview code is something you usually don't write. It's common enough in research when working with hardware. https://en.wikipedia.org/wiki/LabVIEW https://en.wikipedia.org/wiki/LabVIEW addendum: It also allows you to create visual spaghetti code with the data pipes, which is much closer to real spaghetti than the text-based version.
- gdxhyrd 7y ago> A touchscreen is just as good. A touchscreen is a nightmare for manipulating small text. > For navigating and writing code it's all emacs, tmux, terminals and unix tools. Well, if you never leave emacs/vim and related workflows, you never know anything else. For writing code, yes, keyboard is best. For navigating, debugging and other things a TUI does not cut it. And I spend a lot more time reading and thinking about code than actually writing it. A particular example that stands out in the Linux world is GDB's CLI interface. It sucks. Its TUI is better, but still bad compared to a good GUI.
- jph00 7y ago> to pretend that all human/computer interaction fits that mold is to be willfully ignorant of the reality of personal computing He doesn't. He has a whole section where he points out types of software that mice are great for, even with a picture. He then describes types of software where he thinks keyboard is better (i.e. linear stuff).
- _bxg1 7y agoNot until close to the end (right after where I stopped reading, turns out). He still has some hardline views that I think drastically oversimplify the landscape, but apparently doesn't think mice are completely useless.
- inciampati 7y agoMice are sort of the simplest generic thing technologically possible 50 years ago that people can be taught to use. Touch screens at least will be better. A touch screen and a keyboard based interface is the fastest generic UI. I've been using touch laptops only for years. The mouse dies hard though. It's closer to the keyboard and I'm already proficient with it. I wonder if this will be true for kids growing up now.
- JaumeGreen 7y ago> A touch screen and a keyboard based interface is the fastest generic UI. I've been using touch laptops only for years. The mouse dies hard though. Touch it's ok with laptops, but when working on a desktop computer, with real monitors, some need another interface. I can't reach my screens from where I'm sitting comfortably, and if I could I'd place them further away.
- rini17 7y agoEven if touchscreen is faster (I'm not convinced), it is much less precise. You need huge UI elements, sparsely laid out. Standard rolldown menus are fine with mouse, awkward with touchscreen.
- mceachen 7y agoPoint of sale systems are painfully slow with a mouse. Touchscreens are ok, but the old text-based POSes were ugly but super fast. When my beta testers learn about keyboard navigation in PhotoStructure, it's so much faster than a mouse, and it's mostly just cursor keys, so it's not hard to remember.
- _bxg1 7y agoI'm not saying it never happens; Blender is one example I've personally experienced where input velocity would be a major drain on productivity were it not for keyboard shortcuts. But suggesting that Twitter shouldn't involve a mouse just because it's "one-dimensional" content is laughable.
- cellularmitosis 7y agoCan you explain why it is laughable?
- _bxg1 7y agoFor one, there's a lot more on the page than the linear feed. And then each tweet has several actions you can take on it, a drop down menu, etc. What was a single click becomes two or more keystrokes. When you factor in the other views that are even less linear - settings, editing your profile, messaging - you run into a long tail of cases that are poorly suited to a keyboard alone. This tends to be the case: a hyper-focused UI may work a little better with a keyboard than with a mouse, but a mouse does a much better job supporting the wide range of different cases out there and giving users a way to explore and discover the UI.
- htns 7y agoThere are a lot of people who never use a mouse while browsing the web! That's possible with browser extensions like Vimium, which show you a keyboard shortcut on every link when you press a key. "Two or more keystrokes" is a lot faster than using the mouse with that scheme.
- godot 7y agoI got to that point and had the same reaction you did, but finished reading the thread and realized he's actually claiming something far more ambitious and interesting than I thought he was. Particularly when he clarified that keyboard-only doesn't just mean text-based, and it can be graphical and keyboard-only. I'm trying to imagine UI that are graphical and beautiful but works with keyboard only, and it actually could be a very interesting world if that were popular. It's not unlike games from older days where ways of input is limited and input is purpose-driven. For sure, as you said, there's the discovery/exploratory aspect of using a software where GUI helps a lot. But there's definitely merit in what the author is saying.
- galangalalgol 7y agoAll the ms office 365 products are this already minus the beautiful. I only use keyboard shortcuts to interact with them.
- Enginerrrd 7y agoSame, and it's really intelligent design because you hit the alt key and it shows you the next key next to the usual buttons so you can keep keyboard navigating instead of forcing you to remember every single one. You end up memorizing them pretty quickly anyway for the most common use cases but can still keyboard navigate very rapidly to novel locations. I'm actually a big fan, despite my reflexive aversion to Microsoft products leftover from the 90's and 2000's.
- xmprt 7y agoFor example, take a look at qutebrowser (or Vimium if you're more into getting an extension for your current browser). It support basically 100% keyboard based browsing.
- feanaro 7y agoOr Tridactyl.
- michaelbuckbee 7y ago
- mind-blight 7y agoOne big issue with a mouse is that it's completely unusable for blind users. A touch tablet interface with a 1:1 mapping to points on the screen is significantly more accessible since you don't need visual feedback to know where you are. Mice work for a lot of us in a lot of circumstances, but there are UI options beside keyboard only vs. mouse
- saagarjha 7y agoMouse interfaces are useable, but not optimal, for blind users largely due to accessibility technologies.
- mind-blight 7y agoThe standard mouse hardware allows you to move the digital pointer relative to it's current position. That means you know need to know where the digital pointer is, and that's 100% visual. You could set up audio cues too give location feedback, but that's still not a great solution. If you use the same digital pointer with a drawing tablet that maps its surface to the screen, then you can set its absolute position on the screen. You now have physical feedback about your pointer's position, as well as visual
- BiteCode_dev 7y agoSpot on. Maybe the author didn't notice most users don't interract with a computer with a keyboard. They use a mouse, a touchpad or a touch screen. I use the keyboars a lot, but I keep my mouse. Why ? Cognitive load, that's why. I can remember all the shortcuts for all the apps. But I don't want to. Remembering things has a cost. Switching context has a cost. I have a limited brain budget and want to balance it between execution efficienty and solving the problem I'm working on.
- Sean1708 7y ago> but he still drastically oversimplifies the space of GUI use-cases and ignores some of the key benefits of mouse-based interaction. I think you've still missed the point. He's not saying that keyboards should be used most of the time, he's saying that keyboards are better for structured interfaces while mice are better for unstructured interfaces and a lot of what we consider to be unstructured interfaces are actually structured (e.g. twitter). While I don't think he's 100% correct, I do think he raises a lot of interesting points if you can look past his rather unhelpful delivery.
- undreren 7y ago> While I don't think he's 100% correct, I do think he raises a lot of interesting points One of the things I got from this was that maybe we should do more to design structured interfaces instead of counting the number of clicks needed to transition to the page you're looking for. Many enterprise applications (especially web based ones) are horrible to navigate, and some people spend most of their working days in them. It's terrible.
- MandieD 7y agoNothing makes me feel stupider than SAP Concur. I miss our old SAP "native GUI" travel reporting.
- zeofig 7y agoThe rat has you in its clutches. Kill the rat!
- tyingq 7y agoIt wasn't just speed for me, but uninterrupted flow. WordStar is probably the best example. Doing things like adjusting formatting, printing, saving a copy, etc...didn't pull my mind away from what I was writing. It's no longer practical because of the initial learning curve. So I'm not arguing for going back. But it did have advantages beyond just being faster.
- analog31 7y agoI'm amused by the thought that, like the famous legend about the QWERTY keyboard, the mouse is designed to slow us down and distract us from how slow and delicate the computer is. Since 1983, we are still guiding the computer through a series of tiny little steps in order to get anything done, while the real shame is that even after 35+ years, we still can't tell the computer what we want in natural language. Of course I realize the mouse has its uses. Since I recently started using Linux for some things, I've noticed a difference in online commentary about how to use it. In Windows, the instructions for installing a software app are many pages of pictures, with circles and arrows, and a paragraph of text for each one. When the OS changes some of its menus, the documentation is obsolete and you have to guess what you're actually supposed to do. Instructions for Linux are a few lines of text that you copy into your terminal. Now more and more instructions for Windows are going that way: Press Windows-cmd, enter some text, press return, done.
- prometheus76 7y agoLinux still has some of the same issues around online help, however, considering all the variants of Linux, and versions of those variants, and the insane number of possible variations of installations, and the amount of assumed knowledge behind a lot of the "tutorials" for Linux.
- throwaway55554 7y agoI spend a lot of time in an IDE at work. I spend a lot of time in vi at work and at home. I have the keyboard shortcuts for those apps, and a few more apps I use all the time, down. But I think if I had to memorize the keyboard shortcuts for every single app I use, I'd have a fit. Sometimes it is just better to use a mouse. Sometimes it's just nice to sit back and click around (web browser).
- bhauer 7y agoAgreed. Velocity of input is not nothing, but I think the original premise set up in the first tweet of the thread—that modern computer software makes us wait too much—is lost by focusing on an input mechanism, which would suggest the root problem is the human's ability to provide input. I contend my chief complaint with software, in any context, is that it makes me wait while it responds to my input, regardless of how I provided that input. Modern software: * Often cannot keep up with typing. * Often cannot keep up with mouse actions to, e.g., show highlights on hover or indicate interactive elements because there are too many third-party scripts executing (or whatever). * Takes too long to display results, again because of being too busy executing software components (trackers, ads, bloated client-side frameworks, whatever) that is not expressly related to my action. Also because server software tends to be written using inefficient languages, platforms, and frameworks that theoretically optimize for developer efficiency (arguable) at the expense of user experience. Every time I interact with a web site that is slow to respond to network requests, I am usually right to guess the server is PHP, Ruby, or similar. * Infantilizes the user by providing a too-narrow set of actions (the curse of "mobile first"), narrowing the functionality and in many cases causing things that should be relatively easy to require lots of steps. This may be where he was going with the remainder of his thread, but I think it went off the rails, as you said.
- peterwwillis 7y agoThe point is that one user interface cannot work for everything, but we hyper-focus on one anyway. All smartphones are touchscreen now, which is a terrible form of input for the vast majority of use cases. The blind can't feel it, a sighted person can't type without looking, it doesn't work with gloves, repairs are difficult and expensive, and typing requires complex software for it to not be slow and painful. Touch screens are not meant for 100% of user input, yet that's what we're left with. The mouse is just a poor form of touchscreen. Hopefully we can convince industry that the user's ease of use is more important than an inconvenient "standard".