OTOH, the flip side is that you can accomplish things that for these people are essentially 'magic', and when employed to save them countless hours, earn you vast amounts of gratitude, as I'm sure you're aware.
He also regularly "checks" spreadsheets with a handheld calculator... Sometimes going as far as not using formulas at all.
So it's not just grandpa who doesn't know about Ctrl-F.
Negatory. We need to improve our UI metaphors. In the case of finding something, holding down one key while pressing another has no parallel to real life searching.
Let me tell you a story about my mum trying to view a slideshow on a mac. She double clicked on one of the photos (double clicking didn't come natural for her, but that's another story). Then she tried using the left and right arrows. Nothing. I noticed that Preview was only loading up the photo she clicked on, so there was only one photo in the slideshow. I helped her by selecting all the photos and dragging them onto the preview application.
But select-all and drag onto an icon had no real life metaphor for my mum and I didn't even bother trying to explain why it worked. (Maybe if there was some image of a slide projector and she could drag each image into a slot...but then again, I've got a terrible UI brain...)
tl;dr: if the UI is broken, fix the UI, not the end user.
Pushing peddles, turning a wheel, and shifting a stick into different positions didn't have many parallels to real-life actions before the automobile was invented, but people learned that UI regardless.
Giving some basics is not an unreasonable way to get people into the 21st century. People can take it from there.
...of course, perhaps the problem with the above is the assumption that they've had a chance to watch someone drive!
Yeah, but having a device instantly find something for you among a stack of 100 pages also has no parallel to real-life searching. The parallel to real life searching is paging through pages one by one, or browsing an index - precisely the things we're trying to get away from.
If you stretch your search for metaphors too far you end up with outdated ones nobody knows about - like for searching it'd be the old library card catalog. Heck even today, I bet a majority of computer uses have never used a filing cabinet with documents in folders.
At some point we have to create new metaphors, when the digital realm create opportunities that never existed in the real world
It's time we started using technology like adults, instead of children. The UI may be far from perfect, but the end user is the bottleneck here.
The ctrl-F issue is a perfect example: the problem is not that people don't know the key combination or that the UI is bad, the problem is the they can not imagine such blatantly obvious functionality would be there in the first place. If they did, they would have found the damn keys/icons/gestures, no matter how obscure.
Imagine instead that you are viewing an image in a photo viewer that has some text. Would you think to ctrl+f that? I wouldn't. The end-user you're referring to doesn't know the difference between the two scenarios.
But there's also a lot of shallow knowledge among the digital natives -- kids who've grown up in a world where there have always been computers, GUIs, Google, YouTube, or now, even Facebook and other social networks.
They know the basics, they're not afraid of them, but unless they've either been taught or are self-motivated to explore, discover, and learn, they are rote users, not informed users.
My point is that software offers possibilities that go way beyond our real-life experience; there might not always exist a good real-world metaphor for all useful operations, at which point education becomes crucial.
I think being "intuitive" and being easily discoverable are not the same thing for UI, and designers pay too much attention to the former while ignoring the latter. For example, command line options for Unix programs are not intuitive at all, but they are very easy to discover via a standard mechanism that most system users are familiar with (man).
Good interfaces communicate thing to the user. "Natural" interfaces only use things that have already been communicated or otherwise learned, which makes them much less flexible.
Ok, so you would recommend what? A single key? But remember, it needs to work in a text editor where you're actually typing stuff.
Of course, searching is such a fundamental verb that there probably should be a dedicated key on keyboards for it. In fact, on android phones, one of the four standard hardware buttons is for search. But the designers of most software have to work in the absence of such sensible input devices.
I hate to be the guy, but the "/" key definitely works to find something on firefox (and lots of programs), and definitely works in at least one text editor I know of...
Like it or not, the vast majority of the world uses a keyboard layout closer to that of the US than of Sweden.
I rather strongly disagree. You're essentially saying: we should limiting the capabilities of tools (regardless of whether they are electronic or not) to things that already have a direct and obvious parallel to previously existing things that are wholly obvious.
That essentially means: we should stop all progress. Absolutely not. Human beings are tool users, and tool _makers_. We make new tools to serve new problems. We learn how to use them. Via this mechanism, we advance.
Not very obvious. I just can't remember this one.
This highlights a few important facts. First, you can't write good software without being out in the "field" and really observing how your users use your product. It's very easy to get in the pattern of writing software for other techies. Second, something very simple as learning how to use Cntrl-F can drastically improve someone's quality of life. You don't need to build a fancy new algorithm, but you definitely do need to design a great intuitive user experience.
I've just acquired a new mac with Lion and a Mighty Mouse, and the number of functions built into that apparently-buttonless mouse is slightly overwhelming. I don't think I've discovered them all yet.
It's okay for me, but I can easily imagine your mother accidentally doing a two-finger horizontal swipe, winding up on another workspace, and being entirely confused about how to get back.
* This was at the point that they were going to give up and buy a new computer anyway due to OEM bloatware, so no harm in trying a new OS.
In college I worked as a T.A. for in intro programming class for non majors. For some the course started out teaching the students to use Nano as a text editor and assumed that they would choose a more full featured editor whenever they saw fit. Now Nano is a really bare bones editor, it doesn't even have line numbers. And not having line numbers is a serious problem when you're trying to debug c++ compiler errors that reference lines by number. I kid you not I saw kids counting down 100s of lines from the top of the file to get to the listing of the errors.
Now the thing about this situation is: these were perfectly electronically literate people. They all knew about Ctrl-F. And could easily be taught more tricks. The problem is they'd never grasped the philosophy of computers. Specifically that when a task that's so simply stated is taking too long there's normally a better way to do it. Or if there isn't it's an opportunity for you to make a better way to do it.
All of the students simply assumed that if there was a trick they'd have been told about it already so no one inquired further.
First thing you should teach in a class like that is to teach them to fish for tricks in the manpages/docs rather handing them individual tricks throughout.
My favorite thing about nano is that the commands are always at the bottom of the window for you-- no remembering needed. ^C and ^W are right there ;)
Other examples are all the keyboard shortcuts in Google's web apps: http://www.google.com/support/reader/bin/answer.py?answer=69... or having to type the name of an application to use it in Ubuntu Unity or Gnome 3, or Wikipedia's syntax, which excludes most users from contributing:
My rule of thumb generally is to pretend I am designing for an 8th grader. That may still be overshooting a bit though.
That was my impression anyway after doing about four years of IT and lab support for student government and activity groups at a large UC in the '90s.
The ones who did were bound for engineering or science, or were simply practically curious.
Somewhere there is a discussion group where people can't believe people don't know you can wear something other than geeky looking clothes. They can't believe someone would wear baggy jeans, a baggy t-shirt they got free at a conference, and white sneakers.
To say other people don't care is accurate, but doesn't do justice to the diversity of interests out there.
They have other priorities.
Yes, some are lazy or daft, but while you figured out how to use ctrl-f other people were learning to ski, climbing a mountain, jumping out of a plane, learning to dress fashionably, picking up girls, picking up guys, teaching their kids piano, etc. Even the lazy ones probably enjoyed being lazy and don't care about streamlining their searches. And the daft ones, well, if they have a learning disability or something like that, that's their story.
Viewing people having other interests as something to learn from and celebrate makes the world a different place. The humility that comes with it leads to much more learning about the world.
Yah, I don't mean "they don't care" as a judgement statement. You're absolutely right about this.
They don't care, but the lack of caring is getting to the point where it's more like they don't care how to use a shower (wow I can't believe I've been taking ice-cold showers all this time!) or drive a car, etc.
Half my friends don't know or care how to drive a car. I'm 32, don't have a licenses, and can probably count on my fingers the number of times I've genuinely wished I had one. Just because something is vital to you and your social circle doesn't make it universally true.
None of this addresses my point, which is that computing is an essential skill. Are you disputing that as well?
My first example of something people do that some make a priority and learn to do well was wearing clothing and being stylish. Members of this community have ready access to dress stylishly but I'd wager few do. Somewhere some stylish people can't believe they do that in the same way many people here are suprised people don't know ctrl-f.
Intuitively, people with a decent mental model of how text is processed by computers would expect that the computer could search through that text, and look for a command in the program to do that. But many people's mental model is that they are looking through a sheet of paper displayed on the screen.
How to change this is going to be difficult.
I think most people know Edit->Find
Do 90% of people not know what a keyboard shortcut is? Yeah, I believe that.
That doesn't really mesh with the quote, which was, "I do these field studies and I can't tell you how many hours I've sat in somebody's house as they've read through a long document trying to find the result they're looking for."
On the other hand, the Wrench menu (not the standard Mac menu on top) has a single 'Find...' option with the Command-F shortcut label next to it.
I constantly catch myself chanting, "Ctrl F, Ctrl F, Ctrl F" in frustration as I search for a lost item or try to find a keyboard shortcut on a quick reference sheet that's printed.
> cd /usr/bin/
> grep grep grep
Binary file grep matches
It's nice to know that there is indeed a grep in grep when you grep grep for grep.
[10:37 PM] 97Mb$ strings `which grep`|grep grep
`egrep' means `grep -E'. `fgrep' means `grep -F'.
Direct invocation as either `egrep' or `fgrep' is deprecated.
others, see <http://git.sv.gnu.org/cgit/grep.git/tree/AUTHORS>;
"Aw crap, that's not how I spell my last name." * finger twitch *
All the damn time.
and have that open up the browser's search box - be it a dialog or a bar at the top or bottom. That would allow us to associate clicking an icon with action that brings up a search input.
Or hey... have the search dialog always open. Many users (most?) at least understand the notion of internet search, and it's helped a lot that there's an internet search box at the top of all major browsers for the past several years.
Adding a default 'page search' box that's open all the time would be a big signal to users that this functionality even exists in the first place.
I'd say the same thing for privacy - screw 3 levels of SSL certificate hell and warning - give everyone a little cookie icon that shows, in nice easy language, the sites tracking you and the data they have stored in your cookies, and give an easy way - from the main browser screen - to poof them away. Shrill warnings about "web privacy" would go way down if the average user had one-click access to see what's being tracked.
Perhaps if there was an api to tell browsers to keep it open, it would be okay.
Or holding Shift or Ctrl to select multiple items (eg files to delete).
They always(!) lighten up and smile when I show them (no hyperbole!).
In programs used by the general public I have a hard time finding when C-f(cmd-f for mac users) is not the standard for search.
Schools should have a class on finding data. When I was in school we had to have at least one electronic source in our papers. This was supposed to help kids learn how to look up data electronically. They should take one day every year to teach kids how to mine that data with google, and things like c-f. This would allow the kids to find the data they need much faster, and may actually make them enjoy finding and learning more.
In terms of this particular feature, I love CTRL+F and I use it on a daily basis.
That 90% of people don't know about 'Find' functions (^F/⌘F)? Boggles.
Incremental search changes the way you navigate text beyond using it for searches. Want to move to particular place in the text file quickly without using the mouse? Pick the most unique string near it and incremental search to move near it, then use regular keyboard movement commands to get to it (if the unique string itself wasn't where you wanted to be).
I never found anybody else, ever, who knew about this one. I used it a dozen times a day.
Particularly if I end up using the trackpad at an angle so a vertical (to me) swipe is more of a diagonal on the trackpad.
I find this amazing, as the Find feature in a browser is my most common fallback. Too lazy to keep looking for something on a long page? Just use Find. Hell, they should teach it to you at school. It makes internet research much easier.
We will also generate automatically small macros from patterns in the users behavior.
While this only helps you improve the workflow of a task, I hope that our software will one day be able to recommend CTRL+F to people by comparing "fast" users with average users.
I thought so. So, I can't really say I'm surprised that 90% of people don't know how to search either.
The only way I knew it was there was because I read somewhere that Mobile Safari supports searching within the page, and I then had to Google for it to find out how to actually use it.
Oops, you said ctrl-shift-f, not cmd-shift-f. My bad!
i guess the programmer (Braam?) who said vim changes your efficiency habits was right...
He's not a programmer, but still. Wow.
This is a feature ed had 40 years ago.
Imagine a world where most people understood regular expressions. Definitely going to teach my son about them when he's mastered times tables.