That wasn't my intent. Good designers are no rarer than good engineers. It requires a good mix of talent and skill. What I meant about ignoring users is this: You must listen to your users but you must also watch them. People often say something different than what they actually do. And people will ask for a feature because it seems logical to them, not because it's actually the best feature. After all, they aren't the feature experts: you are. Often, once you show people the right answer, even if it's not what the asked for, they will love it. There weren't millions of cellphone users clamoring for multi-touch phones, but once people saw the iPhone most of them loved it. When to listen to your users and when to ignore them (but still address their concerns), requires skill and experience, but it definitely can be learned. Usability is as much about anthropology and psychology as it is about computer science.
- Josh On May 29, 2009, at 5:24 AM, Reinier Zwitserloot wrote: > > Never thought of it like that, Joshua. Huh, this thread is kind of > making it sound like being a good designer is a rare feat reserved > only for those akin to a deity on this world. Eh - practice makes > perfect, I guess. I do stand by my point that in many cases, people > weren't even trying, and if you do try, you'll get something passable, > even if it isn't quite perfect. > > On May 29, 8:14 am, Joshua Marinacci <[email protected]> wrote: >> Part of the art of UI design is knowing when to listen to your users >> *and* when to ignore them. Most of the many UI flaws in Windows >> remain not because Microsoft's designers are unaware of them. :) >> >> On May 28, 2009, at 9:52 PM, Michael Neale wrote: >> >> >> >>> OH, also, and when you fix something, there will be the 10 angry >>> emails from people who don't like it now, who liked it then, or >>> don't >>> like change, or just like to write angry emails. >> >>> You know when Toyota changed the Landcruiser from having a basic >>> metal >>> dashboard to a modern one they got death threats ! >> >>> On May 29, 1:09 pm, Ryan Waterer <[email protected]> wrote: >>>> I think that you hit upon a very important aspect of good design -- >>>> that it >>>> is consistent throughout the user's experience. If even one part >>>> of the >>>> experience is less than satisfactory, then the designers have >>>> failed. The >>>> user walks away with a bad taste in their mouth. >> >>>> I'd love to hear Josh's thoughts once JavaOne is over. Best of >>>> luck! :) >> >>>> --Ryan >> >>>> On Thu, May 28, 2009 at 8:49 PM, Reinier Zwitserloot >>>> <[email protected]>wrote: >> >>>>> Here's a fine example of how clearly somebody wasn't even thinking >>>>> straight. This is linux, doing a major update in ubuntu. Just a >>>>> few >>>>> things sprang to mind: >> >>>>> The theme: Every so often I get a dialog box that tells me that >>>>> I've >>>>> changed some settings file and now apt-get doesn't know what to >>>>> do; >>>>> replace, keep the old one, attempt to merge it. This dialog is so >>>>> ridiculously insanely stupid that I don't get why microsoft isn't >>>>> showing this to the world and going: TADAAAAA - linux is an >>>>> amateur >>>>> toy that doesn't deserve to play in the real world. It's that >>>>> dumb. >>>>> We're using a gui based updater here that's just a light >>>>> frontend on >>>>> top of apt-get, which is a package manager that basically knows >>>>> dependencies and works it all out for you, and can even update >>>>> packages by taking down the service, replacing the files, >>>>> integrate >>>>> whatever changes to the settings files are required, download and >>>>> install all dependencies, then take the service back up. That's >>>>> quite >>>>> a feat, and apt-get is really cool. It's probably the principal >>>>> reason >>>>> why debian is cool, and ubuntu ate redhat's lunch (redhat uses >>>>> rpm, >>>>> which can't do all that). Now that you know, let's move on to how >>>>> this >>>>> fantastic tool turns into unbelievable suck, just because of bad >>>>> user >>>>> interface design. Compared to the mind boggling effort that goes >>>>> into >>>>> maintaining all those packages, keeping a fleet of mirrors running >>>>> to >>>>> serve all of them, and the effort that went into the technical >>>>> design >>>>> and development of the apt system, this is small fry: >> >>>>> [ simple stuff that's easy to fix and should assault your senses >>>>> immediately. This isn't the kind of Joe Nuxoll style thinking >>>>> out of >>>>> the box stuff, just general: We need to make sure our user >>>>> interfaces >>>>> aren't explicitly out to shoot the user in the foot] >> >>>>> A. it's an enormous dialog box that's totally empty, except for 1 >>>>> dropdown box. Anyone remember the microsoft shut down dialog >>>>> drama? >>>>> the entire screen as real estate, and you hide the important bits >>>>> in a >>>>> -drop down box-, that you have to click. WTF? Dropdown box >>>>> contains >>>>> the same 5 choices every time. Opening it just opens it across a >>>>> sea >>>>> of grey. If you're thinking of user interface design even a >>>>> little, >>>>> the first time you as a developer see this dialog box, you should >>>>> file >>>>> a 'critical' bug or fix it then and there. You don't let piss like >>>>> that go out into the world, period. >> >>>>> B. One of the times the dialog box popped up it didn't even >>>>> have a >>>>> sensible file name. I had absolutely no idea what I was supposed >>>>> to >>>>> 'keep', 'replace', 'integrate'. >> >>>>> Now lets dig deeper. We know that apt more or less forces this >>>>> situation, if you have any experience with the text output of the >>>>> apt- >>>>> get tool. But, even with the way apt works, we can do a better >>>>> job, >>>>> even if we're still not in Joe Nuxoll think: >> >>>>> C. Give me the full path to the settings file, show the diff >>>>> between >>>>> the old and the new, and offer me an option to manually integrate >>>>> the >>>>> files. >> >>>>> And now for the big whammy, let's redesign this entire thing so >>>>> that >>>>> it's actually, you know, usable by a mere mortal: >> >>>>> D. There's such a thing as file system hooks. Apple uses it in >>>>> place >>>>> of a registry; all applications have a file in them that explains >>>>> which files they can open, and everything you put an app on your >>>>> harddisk, a system hook reads this information and makes sure >>>>> that, >>>>> when you right click on such a file, that app shows up in the >>>>> 'open >>>>> with...' dialog. There's neither a registry (windows) nor a big >>>>> settings file (linux) to worry about. When you delete the app >>>>> (there >>>>> are no uninstallers on os x, just delete it), the file system hook >>>>> removes that app from open with lists. You can apply the same >>>>> tactic >>>>> to settings files: *ANYTIME* I mess with a settings file, apt >>>>> should >>>>> be called so that it can inspect what I just did, see if it can >>>>> automatically integrate that change with a possible future update, >>>>> and >>>>> if not, back up the previous version, and send me a mail (or >>>>> better >>>>> yet, if we're on a GUI, show as I try to save it) how I can fix it >>>>> or >>>>> where I can edit it so that it does integrate properly. Note that >>>>> all >>>>> major linux file systems offer this feature. >> >>>>> NB: For many apt-get installed tools, the settings file for that >>>>> tool >>>>> is managed by apt, but it 'includes' a special file that you can >>>>> safely edit without setting yourself up for future pain. However, >>>>> most >>>>> manuals on configuring the tool aren't debian/ubuntu aware and >>>>> point >>>>> you to the file you're not actually supposed to edit. Often there >>>>> are >>>>> some remarks in there by the debian package maintainer that you're >>>>> not >>>>> supposed to edit this file, but, yeah, as if I'm going to read all >>>>> of >>>>> those! How perfect would it be that, on saving, apt-get runs in >>>>> the >>>>> background, automatically diffs my changes, and tries to >>>>> automatically >>>>> move them to the right properties file, -or-, mails me this plan >>>>> so I >>>>> can confirm or deny it. >> >>>>> E. Upgrading debian or ubuntu takes a day or two. That's because >>>>> for >>>>> every conflict and settings problem you get a dialog box. I'm not >>>>> going to sit and stare at my computer for the 1 or 2 hours total >>>>> runtime it takes to process all updates, so what ends up happening >>>>> is >>>>> that it just sits there, idle, showing a dialog box, and every >>>>> hour or >>>>> 3 I check in, turning the process into a long and painful process >>>>> that >>>>> I loathe. There's no excuse here: the gui tool (and probably apt- >>>>> get >>>>> itself) should figure out all conflicts beforehand, and toss all >>>>> dialog boxes my way BEFORE starting the actual process of >>>>> downloading >>>>> and replacing things. This also allows me to hit 'cancel' midway >>>>> through, whereas with current apt-get, you can't really do that >>>>> halfway in. >> >>>>> You could take that opportunity to rethink the design of your >>>>> dialog >>>>> boxes, and for e.g. settings files, show a table, with checkboxes >>>>> that >>>>> you can quickly mark as replace/keep/integrate, along with e.g. >>>>> double >>>>> clicking on any entry to show a diff editor so I can manually fix >>>>> it. >> >>>>> Is this easy? Well, I just thought of all of that in the span of >>>>> 15 >>>>> minutes, and compared to the effort behind the mirrors and apt >>>>> itself, >>>>> developing all of that is indeed easy. And yet, its the difference >>>>> between 'utterly useless piece of tripe that makes me want to >>>>> throw my >>>>> house server out the window every time I dare update my ubuntu', >>>>> and >>>>> 'so awesome I'd shit bricks - and I'd tell all my friends too'. >> >>>>> On May 29, 3:49 am, Michael Neale <[email protected]> wrote: >>>>>> Well good luck with everything for JavaOne ! And I hope you can >>>>>> post >>>>>> more on this subject in the future - just resurrect it when you >>>>>> have >>>>>> some time ! >> >>>>>> On May 29, 11:47 am, Joshua Marinacci <[email protected]> wrote: >> >>>>>>> It sucks that this thread is going on right now during JavaOne >>>>>>> prep. >>>>>>> I'd love to join in. I'll just say this really quick: >> >>>>>>> Yes, UI design (and visual design in general) is an art. But >>>>>>> there is >>>>>>> method to the madness. There are rules and guidelines. There are >>>>>>> things you can learn and apply in a rigorous manner. And yes, >>>>>>> it's >>>>>>> even possible for engineers to learn the basics of design (UI >>>>>>> and >>>>>>> otherwise). I hope to explore this more after JavaOne. In the >>>>>>> meantime, stay tuned for some cool stuff next week and feel free >>>>>>> to >>>>>>> send me your questions on anything. >> >>>>>>> - Josh >> >>>>>>> On May 27, 2009, at 8:29 PM, Ryan Waterer wrote: >> >>>>>>>> The tools help streamline parts of code that can be >>>>>>>> streamlined. >> >>>>>>>> "Beauty is in the eye of the beholder." What is intuitive to >>>>>>>> one >>>>>>>> person can be cumbersome and clunky to another, or too simple >>>>>>>> and >>>>>>>> limiting to someone else. From my understanding, we want to >>>>>>>> design >>>>>>>> to a certain demographic, and have it be as easy to use for >>>>>>>> that >>>>>>>> demographic. >> >>>>>>>> I believe that UI is art. Just like art, you can teach design >>>>>>>> principles, concepts and techniques. Just like with art, some >>>>>>>> people with be naturally gifted, and understand ways to present >>>>>>>> the >>>>>>>> information in an effective manner. I also believe that >> >> ... >> >> read more ยป > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
