There has been heated discussion about designers learning code on the web, and here is one more view about it.

Some people say that we should keep the boundaries of the traditional divide between developers who create the code and the designers that design the experience. There are heated blog posts that deny the benefits of people other than developers coding or understanding code and then there are many posts that say that we should brake this divide. At Frantic we are braking the divide. We believe that teams work better when the developers understand basics in design and vice versa. The web design process has changed radically and the people should follow. It's the nature of this industry. To illustrate this point I've put together a couple of reasons for designers, producers, managers etc. to learn to code: 

Gain understanding

It's about understanding the medium and the products you design. Once you see how the web works, the solutions designed are more realistic and translate better to the final shape and form. Steve Jobs once said in an interview: "I think everyone should learn how to program a computer, because it teaches you how to think."

Communication

Programming is a form of communication. A deeper understanding of the form and the aspects that developers use to create code helps the people around them to make better designs and projects. Being on the same page makes the teams tighter and the work more effortless.

Exploration

Once designers begin to understand code and venture out of their comfort zones, new things start to happen making it much harder to fall back into old ways of working. Some say this restricts the designer, not resulting in the best possible design, but this is not necessarily true. Good designers will relish the serendipity when trying out something new.

Control

Once you are working with the code for the product or service you gain better control over the things you have designed. It's not the developer's interpretation of your Photoshop file, it's the designer's own view and execution.

Working with new tools

Code can do a lot of things that Photoshop can. The latest evolution in CSS and browser debugging tools let the designer create the typography and visual styles without ever leaving the browser. Coding is also great for creating automated systems, making the code work for you in precise manner. One example is Joshua Davis , a designer who uses code to combine mathematical patterns with illustrations. I used ActionScript to do all the boring repetitive and boring stuff when I was using Flash back in the days. JavaScript can do lots of the same things in HTML.

Taking the first leap?

If you are daring enough and ready to learn the ways of the Force… Er… Coding, there are lots of ways to start learning: 

Books that are short and sweet:
A Book Apart collection 

Magazine tutorials:
There are some great examples in .net magazine

Videos:
Lynda
Treehouse

Self learning and projects:
CodeAcademy is the web service for anyone wanting to learn coding