I’ve seen UX people run the entire gamut of programming knowledge. I think I sit somewhere in the middle. I can read code and do some basic things but if I were a client I wouldn’t trust me to code up your website. I know some incredible coders (I recommend my friend Tom at moreco.de for anything you need in that realm). I started in college with Computer Science. I switched because there’s two things about code that didn’t completely jive with me. One, I was not very good at it. Two, I didn’t enjoy it very much. I found my passion in UX with my major switch. However, my profession is not one that I believe that should let me (or you) off the hook of having coding knowledge.
One of my New Year’s resolutions was to increase my coding knowledge this year. I’m using CodeAcademy.com and some other resources. For me, I find that the more I actually sit down and fully understand what I’m writing the more I do enjoy it.
1. It helps define limitations and possibilities
How can you design if you don’t know what you can and can’t build? It sucks to build out wireframes only to be told by a developer that your design can’t be implemented. Go further than just knowing what code can and can’t do and find out what your particular system is capable of. The software architecture will play a huge role in these limitations and possibilites. Having the ability to dive into that without it going over your head is tremendously valuable.
2. It helps communication with developers
Developers build your designs. It helps to be able to talk their language.
Sometimes it’s hard to see how a design will play out when all you have is a static piece of paper and you need a prototype to see the dynamics. High-fidelity prototyping usually requires some sort of coding. This helps not only see how the design will play out in its final state but also helps you to figure out things you may not have without it. For instance, fringe cases and error cases could show up that you never thought about. Plus, it helps everyone else get a better visual and mental model of what you are designing.
4. It’s good for your brain
Learning a new language and a different way of thinking about problems will increase your brain’s health. Seriously.