I got the book Sketching User Experiences:The workbook(different from the Sketching User Experience), don't buy that book. It also has Bill Buxton as its author, but has only some references from the original book.
If there is one UI design book to read, "dont make me think" is it. And if you don't have time for it's already speedy read, the entire book gets summed up in the title: Don't make your users think about how to use your software.
> "Another example from the world of Microsoft Windows is the Alt+Tab key combination which switches to the "next" window. Most users would probably assume that it simply rotates among all available windows. If you have window A, B, and C, with A active, Alt+Tab should take you to B. Alt+Tab again would take you to C. Actually, what happens is that the second Alt+Tab takes you back to A. The only way to get to C is to hold down Alt and press Tab twice. It's a nice way to toggle between two applications, but almost nobody figures it out, because it's a slightly more complicated model than the rotate-among-available-windows model."
I don't think anybody who used OS before expects a different behavior, most users know that alt tab toggles between recent apps
Yes, it's a bit dated (check out those screenshots!)... but the fundamental concepts are still valid. He's trying to explain that you should make programs behave as the user would expect them to -- but it's up to you as the developer to use your judgement to know what the common expectations of the time and platform are.
I was taught this as "The Principle of Least Surprise" or do the thing that causes the least surprise.
Where it gets tricky is that as programmers we are also power users and our mental model of what we expect to happen and what a user expects to happen diverge, I try to have empathy for the user.
One of my tricks is to imagine what my mum would expect to happen (not because she's a woman, it's not a sexism thing I hasten to add) but because she's a 60yo woman who didn't start using a computer until she was in her 40's and is slightly wary of them still.
If it passes the mum test then I know I'm on the right track.
There are many books talking about UX/UI design, but most of them are quite abstract and do not tell you, when exactly, on which stage of your software development process to apply the knowledge they present. This often leads to a typical mistake done by developers, that I've seen in too many projects, when UI design is considered at later stages of the project, when they are starting coding the UI and all the backend is already done. Because of that, the process is equally important and needs some of your attention.
To achieve really good results in UX design, to do it at the right time, I'd recommend to start not from the books, but from the interaction design specialization on Coursera at https://en.coursera.org/specializations/interaction-design or you can take just intro - https://en.coursera.org/learn/human-computer-interaction. You can take the courses for free and they'll give you the necessary mindset and understanding of process. You'll find that product design actually starts from UX, not ends with it and it defines the necessary requirements framework for the system architecture, which you can use later in combination with BDD/DDD. After that course you can start reading the books (Steve Krug, Don Norman, Alan Cooper, indeed!) and platform guidelines (my favorites are for Google Material Design and Microsoft's Modern UI).
It will be great if someone here recommends some books or articles about UX design process and integration of it into popular agile methodologies.
I enrolled on the Interaction Design specialisation in November 2015 and worked through the modules until July 2016. On the whole I found the course interesting and often fun, and I feel that I learned quite a lot. Until, that is, the 7th course: Designing, Running, and Analyzing Experiments. This was nine weeks of statistical analysis using steadily more elaborate analytical models. I ground through it and finished with a decent grade (>90% iirc) but it ruined the whole experience, and I had no interest or motivation left to even start the capstone project. Grounding UX in an analytical framework is important, and statistics are necessary for this, but that module was just overkill.
So tldr: the specialisation is a good experience, but make sure you know what you're committing to.
"Build Better Products" [1] by Laura Klein, will be available on Nov 1st. Laura Klein was recently a guest on the Lean Startup Podcast [2]. She brings an experimental, iterative, approach to design.
Nielsen Norman Group has a blog archive[0] spanning over 20 years, with posts from Jakob Nielsen, Don Norman and Bruce "Tog" Tognazzini, among others. For example:
"10 Usability Heuristics for User Interface Design" by Jakob Nielsen, January 1, 1995 [1]
Since there are already a lot of books here..
I'd say reading some of the top voted questions on Stack Exchange's "User Experience" gives an idea of things UI designers consider relevant.
"Understanding Comics" by Scott McCloud! Simply the single most important book to understand sequentional word/picture combinations. And yes, it's a comic!
The original Macintosh User Interface Guidelines are still worth a read. Some of them have been forgotten. A good one is "You should never have to tell the computer something it already knows".
A bit of an overstatement, considering /bin/rm, Amazon Echo, NFC (e.g. Apple Pay), car pedals, shake gestures (e.g. camera activation on Moto X), and keyboard shortcuts (e.g. Win-L to lock the computer).
I know, you were probably talking about GUIs specifically, but how you interact with a GUI is not really covered by Tufte. I second the recommendation for The Humane Interface for that.
The book, and Tufte, focuses on effectively displaying quantitative information. He takes a relatively hard line about it and I have found it one of the most useful texts for helping me take "some truth the system knows" to "some truth the user knows".
Of course you have to take it with a few pinches of salt.
Firstly it is largely his opinion. Studies into this area are rather good on the general points however the fine detail is incredibly hard to study accurately.
Secondly you may not actually want to make a UI that conveys the "truth it knows" above all else. Often you want to convince the user that the UI is good at conveying information (which is not the same thing) or that it is very easy to use (which is again, not the same thing).
I heartily recommend this book because it teaches one very hard thing very well. You just have to understand that you do not always want to do this thing (yet you now have a way to start to understand the trade-offs you are making).
There are two more books, on concepts I believe, and verbs.
It's not the most practical way to learn UI design, but I enjoy how well it makes the case for good UI. Too often, I see programmers dismiss design. It seems not to fit into their scheme of values, i. e. "it's not scientific" or "it's just shiny packaging " or "it's something for beginners – I'm an expert". Then you get some guy replace all custom fonts on npmjs.com wit Arial because "all sans-serifs look the same anyway".
(the example is more "design" than "user interface" but it's the best one I remember)
One of Tufte's main themes was, I thought, that only information that directly conveys meaning should be included, and everything else should be thrown out. Where everything else, in the context of UI design, would probably be excess styling. On the other hand, I forget where I read it but we know that people are biased into finding more attractive interfaces more usable, even if a "usability expert" might disagree. So personally, I find Tufte's title fitting - he really is talking about effectively displaying quantitative information.
Alan Cooper's About Face. It's quite old - the latest ed is from 2007 - but it is still very good at introducing goal-oriented design and lots of practical design concepts.
I use it every time I need to craft an interface but especially for SaaS apps. The OP requested something from a 'newbie perspective'; this book will explain the basics but the real value comes from the explanations and advice with respect to why UI decisions lead to happier users.
I've copy/pasted the chapter headings from the site:
Well, I tried to download the sample chapter by entering my email address and clicking "Send Me the Free Chapter". But instead I got subscribed on an email list.
So I'm afraid I have to say: that UI really sucks :)
1) Want to make user interfaces that are actually useful to people? Read up on product management, UX and interaction design. Important skills: articulating the problem you are solving and for what kind of user, and being able to validate whether your hypothesis is on point. Iterating before committing further resources to building a prototype. Conducting user testing sessions (rocket surgery made easy is a good resource for this).
2) Want to make a specific view / flow of a product inviting and visually appealing? Study visual design and typography.
3) Want to be able to build a functional prototype that looks reasonably good? Study frontend design / development. There are a lot of frameworks that could get you up and running.
IMHO going for (1) and (3) first is smart; if you can't prototype and evaluate a user experience that has a shot in hell of being useful to an actual user, being able to make stuff look pretty is kind of irrelevant (unless you are specializing and collaborating with engineers and UX people). In any of the above cases, at least knowing more precisely what you want to learn will help you do better googling, e.g "best books on visual design" or "best books on interaction design".
This one is good at teaching both fundamental design principles and UI design in particular
Designing Visual Interfaces: Communication Oriented Techniques
This is an introduction to UX
The User Experience Team of One
It's from Rosenfeld Media and you should take a look at the rest of their books. They are of a high quality and cover a wide range of topics related to both UI design and UX.
If you go briefly through it, you'll certainly find some sections useful for clearing things up with information design, capturing design goals, singling out tasks etc. It sparked my own interest in user experience and service design back then.
To my opinion, after much thought and practice, UI design is very much a shell to everything that's preceeding it on the timeline. Try to cover UX as well as UI, capturing requirements, etc.
It is also important to find a book, a blog or a course that is mesmerizing particularly to you, and easy to grasp with your specific background. Good luck!
Alice
If you can read only one book read About Face 2.0
You can find a somewhat better about most of the topics mentioned there that go into more depth into individual topics (except maybe the core of interaction design) but About Face 2.0 will give you a solid foundation into design applied to interfaces.
It's not explicitly computer UI design, but the book is essentially an alphabetical list of design concepts with illustrations/examples, and they're very applicable to computers. Amazon has "look inside" if you want to see what it's about.
Second Tufte, read all of them several times and they've influenced everything since. Raskin's "The Humane Interface: New Directions for Designing Interactive Systems" is another good one, puts a lot of solid research into context.
Basically, don't forget the human in human computer interaction/UI/UX. It's very easy to come out of the academic perspective on UI/UX design designing exclusively to efficiency formulas and words in a glossary. Keep the user, the human, and their context in mind.
Not a book, but if you want to improve your UI just watch as a novice user tries to use your software. You will learn in 10 minutes things it would take a book 10 hours to explain.
I found Design for Hackers helped make my work less vomit inducing, but I'd suggest that it's really mindfulness of what you're building (rather than just flinging interface at a screen) that'll get you over the first hump, and almost any book will suffice.
I've come back to this article a couple of times a year since it was written in 1994 and it still generates great insights into what my users will want from my systems:
It's a little dated (is it sad that 2006 is "dated"?), but I still find "Designing Interfaces" by Jenifer Tidwell (it's an O'Reilly book) helpful once in a while for basic UI/interaction thoughts.
Agreed on this: it's handy because it has a catalog of design elements and tells you when you should and shouldn't use them. That's pretty helpful compared to more abstract theories about UI stuff, for some people.
Yes, this is the first book that came to my mind too because for any good UI design, you first need to get your priorities straight which is common sense of design comes first, the graphics and cosmetic part comes second (though they're not mutually exclusive).
On a related noted, I've often wondered how Material design and all these latest skeuomorphic designs kind of go against this advice of Don't make me think. Is it text, is it a button, is it a drop-down? You're making me think too much.
http://cs.brown.edu/courses/csci1300/
Particularly (free links with pdfs),
Don Norman - Design of Everyday Things https://archive.org/details/DesignOfEverydayThings
Bill Buxton - Input Manuscript http://www.billbuxton.com/inputManuscript.html
Alan Cooper - About Face http://feiramoderna.net/download/pos-positivo/COOPER-Alan/Ab...
Vignelli - The Vignelli Canon http://www.vignelli.com/canon.pdf
Bill Buxton - Sketching User Experiences http://bscw.wineme.fb5.uni-siegen.de/pub/bscw.cgi/d807887/Sk...
(the workshop slides) https://www.medien.ifi.lmu.de/lehre/ss14/id/Day%202%20Sketch...