Design and programming seem to be two different disciplines. But as a programmer myself, I really want to have some UI skills too. But I feel at a loss because delving into a different industry can seem daunting.

Could somebody nicely suggest some guidelines/roadmap for programmers to learn designs helping them to skin their programming works? So that programmers like me would not need to only have horrible skins but have some nicer skins for their program user inteface.

2 Answers 2




Then read Sketching User Experiences for sketching, learn what a persona is (google it or read the entire book The Inmates Are Running the Asylumn), and Emotional Design for desirabity.

Good solutions are usable, useful, and desirable.

To start designing, understand who will be using your solution and what your objectives are. Why are you doing this? What should this accomplish? How can I write this in a way that can be measured?

Products suck because people build the first thing that comes to mind. Or they build something they think is cool. Keep building cool stuff if you want to invent something big like the railroad, the telephone, or the TV. Realize 97% (or some ridiculously high percent) of those projects fail. To innovate, you need to find a need. Contextual Design or Observing the User Experience will get you started observing people.

Design of Everyday things will snap you out of that trance you've been in your whole life. Inmates are Running the Asylumn will demonstrate how awful engineers and programmers are at designing solutions, beginning with their attitude toward people.

Nuclear plant meltdowns, plane crashes, space shuttle disasters, the 2000 United States Presidential Election being awarded to George Bush, and almost all the shitty stuff in your life could be prevented with good design. Read Thoughts on Interaction Design to learn how designers will be working with politicians in the future to solve the world's "wicked problems:" poverty and education.

  • To programmers credit, they have the hardest job on Earth. Think about it. They aren't normal people. Most people were challenged by computers and they just gave up. Programmers are a different breed of person. They are the mountain dew of the work world. They actually like the torture and delayed gratification. Good for you. :) But still get into design. Just a little bit, to see if it fits. Nov 23, 2012 at 9:25
  • 2
    ?? Interesting take on programming. I suppose then that I am not your average programming. I don't like torture and want my gratification instantly. And that is what I actually get when programming: I get to see the results of what I have coded immediately. Unlike design, where you have to wait for the programmers to implement your design before seeing anything in any real working state... ;-) Nov 23, 2012 at 11:04
  • 1
    Sketches, my friend. Early and often. Nov 23, 2012 at 13:02
  • Somehow sketches just don't do it for me... :-D Nov 23, 2012 at 14:01

User experience isn't only about designing the user interface, it is about planning the user's interaction with the product.

This affects the requirements, not only the interface.

The design of the actual interface builds on this and adds readability, emphasis, lack of distractions and aesthetics.

There are good books you can read such as " Don't make me think", " The psychology of everyday things" and others you can find recommended in this and other sites.

On another note, you might want to look into software project management topics including gathering and writing requirements and software cycle management and software engineering topics such as UML to get the complete picture of software development.

  • Good advice. I will certainly look into software engineering and project management stuffs some time. I hope I am able to handle software which can scale up, and fit for collaboration among developers. And I hope I am capable to do requirement analysis work too which in monetary term is worthy of several times the value than just implementers. I might start a learning journal blog some time when I begin to learn new things. Nov 23, 2012 at 17:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.