tags:

views:

537

answers:

14

With the advent of the web, most software is now geared towards that. But as a software developer, do I need to become better in the art of Visual Design (by practice or through classes)? Or should I make it clear in contracts and other jobs that my work is not about design? Maybe I should just put a much larger chunk of my project in the design work?

It seems like more often than not that design (and marketing) is more important than the code, even for corporate intranet applications.

+14  A: 

I think you need to know some design, but being a code guru AND a design guru seems nearly impossible. I'd rather be a great coder with decent design skills, and then hire out the great design to another firm.

sgwill
+7  A: 

I think you need good enough design skills to make a usable, pleasant interface. Also, I think that designers now need to know the basics of programming, just enough to understand css / basic html.

That way, you are able to create a good foundation for the designer, and also have the ability to do a basic working version that isn't ugly.

chills42
+4  A: 

Best thing you could do is hook up with someone that's a good designer geared towards web application design.

To be quite honest, all of us have our professional field of work. It's never the cake choice having a designer also work on the programming, or a programmer having to do the design as well.

I'll justify that by saying that the end result won't be the best one. If your a programmer that also has good experience as a designer, but your a programmer first, you'll notice that the design part of the work is always going to be the bit that's taking you more than you ever manage to calculate and also aggravate you in return. I've seen it happen, and it's really messy, when a programmer who can also be critical on design takes up to do the design part - invests a lot of time, never is really satisfied with what he does, and just gives up in the end and contracts someone to do it.

It's that little trick you always play on yourself. You instantly get a few ideas and think you can do it and that it'll look just great... but when you sit down it just never comes together.

If, by chance, you have no other solution than to also do the design, make sure you notify the client that you are not a professional designer, and that it'll take you times more to do the actual design than it'd take a professional designer and make the client know that he'll have to pay that extra time.

kRON
+2  A: 

As a consultant, I've always made it my business to be a jack of all trades, master of a few. In my experience, design work is not as involved or technical as coding. Therefore, if you are a code guru, it should not be terribly difficult to become a design guru over time. From a business perspective I think it's always preferable when you don't need to outsource talent or force your customers to look elsewhere for a skill set you can obtain with a little work and discipline. But that's just my opinion.
:)

Eric
+2  A: 

Much of 'design' is more about developing an application that adheres to good user interface principles and guidelines, making it easy to use. This is a skill every developer should be aware of, just as an engineer should know about traffic patterns if they're designing a freeway.

Pure aesthetics isn't as important if you get everything else right, but you shouldn't ignore it altogether. Don't spend days trying to accomplish what a good design firm can do in hours, your time should be more valuable than that. Hire someone if you want a really high level of polish Even if you can't or don't think it's worth it, it's not too hard to do a reasonable design if you make appropriate use of the native operating system controls and consciously pay attention to how things look. Even on the web, there are tools like color scheme generators and grid layout techniques that let even non "artistic" people do acceptable work.

Marc Charbonneau
+2  A: 

While every application that has a public-facing graphic interface needs good design for the most efficient user interface, there is plenty of work for "non-design" programmers writing business logic code or services or a number of areas that have no visual component. I don't think there is anything wrong with being a good programmer without great graphic design skills. It is rare to find a good developer that is a good graphic designer. I would rather leave the graphic work to a professional designer.

On the other hand, if you can master programming and graphic design, you make yourself invaluable. I doubt there are many capable of mastering both though.

Jim Anderson
+1  A: 

Being a good usability guy is much more important than being a good design guy. There are designers who create sites that look good and have extreamly bad usibility. Just steal your UI and make sure that mit makes sense, and if you need some cute graphics that you can't steal, then you hire a designer.

Charles Graham
A: 

I would say No. Programmers shouldn't have to be designers. I've been programming professionally for the last 15 years on all sorts of cool projects from video games to rocket control systems, and never once designed a web page.

On the other hand, understanding Usability is important if you do any interface work. Many people will appreciate an simple but intuitive interface much better than a pretty but convoluted one. Learn to design great interfaces well, and let someone else do the skins or css or whatever to make them look pretty.

AShelly
A: 

I would agree with most of the other comments. You shouldn’t be expected to be an artist\graphics designer. Unless that is what you want to be. Definitely knowing a little bit about graphics design would help. And I would also agree that intuitive, easy to use interfaces, is much better than a cute useless one.

Leverage the ideas of others, there are lots of web templates out there that you can draw inspiration from and even use for free. If you are lucky enough to find some one who is a graphics artist of UI designer, definitely leverage them.

The industry has moved to put more emphasis on graphics designers and it is starting to feel like design is more important than code. But I would have to disagree, code is still important. With that said, I still like working on flashy cool UIs. But more and more that type of work is moving to graphics designers in my company.

Ron Todosichuk
A: 

Are you as versatile as Leonardo Da Vinci? He is certainly one example of a person who had the skills to be both technician and artist.

I don't agree with blanket assertions that you should be one or the other. I believe that you should simply make an informed choice as to whether you have the talents to do one or the other or both.

You should also be realistic about the fact that developing your skills takes time. If you do have the aptitude and inclination to do both, you still must put in the time to develop both sets of skills. Would you rather be both a good designer and good programmer, or focus and become outstanding at one of them?

joel.neely
A: 

I think that design and development are two very different skillsets. Artistic and logical don't usually go together well in a single person. I think that the marriage of design and development requires people with a bit of understanding about each other's roles. So, I think that a great developer should have an understanding of design concepts, and a designer should have an understanding of development concepts. That is not to say that either could step in and do the other's jobs, just speak a similar language.

joseph.ferris
+1  A: 

I've worked with too many programmers who utterly failed at any kind of design task and neither knew it nor cared.

I don't think it's essential to be a be a designer, but I do believe it essential that you appreciate it, defer to a professional where possible, and make an effort to learn the basics.

You'll be a much more valuable asset if you do.

annakata
A: 

All I can say is that you cant afford to be pathetic in the visual design of the software.

Things running efficiently is a given for most stakeholders, what attracts them is mostly the ease of use and how it looks. Just think of commercially selling a console application, unless its a dev tool or something on those lines, chances are it probably wont sell.

Having said that I strongly believe that it takes different kind of mindset and train of thoughts to be a good designer and this has been understood well by a company like MS where they have tools like Visual Studio (Dev Centric) and Expression Suite (Designer Centric) to make full use of one's abilities working on the same WPF platform.

Perpetualcoder
A: 

I've found that being a programmer can actively hurt your ability as a designer. When I work without a design, I find that elegant markup or efficiency tend to drive the look of what I'm making almost as much as making it look good.

This isn't to say that you shouldn't take up design as well as programming, but they can be two things that can work against each other, and you should try to consciously keep your workflows for both separate.

Dan Monego