Last month I attended Mountain West JS and learned a lot from some excellent speakers. Several of the talks introduced me to new concepts or perspectives, and one in particular inspired me to think about what we do in a whole new way.
Whitney Williams gave a talk entitled 6 Design Skills Devs Need that helped me realize that what we do as developers is really a lot closer to design than we may think. We're not working with color and typography and emotion, but we are designing interfaces in code that we want to be elegant and innovative, yet also usable and obvious. In both situations we need to engage in creative problem solving, leveraging our understanding of human behavior to draw the user in and guide them in the use of your creation.
As developers, we often tend to ignore the psychological aspects of our programming. When we're crafting structures in code, we should be considering the user experience of the developers that will be helping maintain and build upon them. We should look at our code with a critical eye, considering how another developer will approach it. What parts of the code will they notice first? How will they likely go about mentally piecing together the flow and functionality? How can you make use of the developer's natural intuition to accelerate their comprehension of the code and how to interact with it or change it?
As we become better at communicating through our code and designing intuitive structures, we start to work together much more efficiently. We iterate faster, get more done, and naturally start to use that knowledge of human behavior to make the experience of our end users better as well.
Acknowledging the fact that we are engaged in a creative profession also allows us to take advantage of the research and innovation of the design community around sparking that creativity and inspiration on a regular basis. We all have to deal with times when we feel blocked on a problem with our well of ideas run dry. Take inspiration from the numerous articles out there for designers on how to break through the slump and reignite their creativity!
This is just scratching the surface of the many ways we can borrow from the wisdom of the design community. Take some time and read through Whitney's talk, and then maybe find some videos from recent design conferences. Look for design blogs and other resources to follow. Embrace your inner designer, and you'll be a better developer for it!