What to do if you are a good developer but no designer?

46 points by kamme ↗ HN
My personal problem is that I have some good idea's and I can code (php /django) but I have close to no design skills whatsoever. I know what functions should be on the websites of my ideas but when I try to make a design in GIMP it just does'nt look good. I have the impression people can learn how to code to some degree, but you can't just learn how to make great designs. Do you agree? Or what made you a coder and designer?

59 comments

[ 8.5 ms ] story [ 206 ms ] thread
Everyone has strengths and weaknesses. It's good to identify those areas where you're deficient, the next step is to find ways to compensate. Partnering//hiring a designer is a pretty popular solution.
Excellent point, as a designer I work hand-in-hand with a talented programmer for all my projects. He in turn sends UI work to me because he understand his limitations.
Yes, there's a certain amount of raw artistic talent involved in design, but you can get a lot of the way with two rules:

1) Be Simple. 2) Be Sparse.

You don't need drop shadows, shiny buttons, gradients, rounded corners, animation, or complex imagery to make a good site. As any good musician will tell you, music is about what you do with the space in between the notes; graphic design is about what you do with the space around the content (and if your content is good, the less crap you need to put around it!)

If you use a simple layout, a very small palette of 4-8 colors, 1 font, and only a few font sizes, you'll find that your designs will improve automatically. If you lack even the basic ability to coordinate colors, use a tool (http://www.colorschemer.com/schemes/ is a good source), and never deviate from the scheme that you choose.

Remember: think Google, not Microsoft.

These are really good points. If you want to go beyond this, I'd suggest looking at <a href="http://www.amazon.com/Principles-Beautiful-Web-Design/dp/097...">The Principles of Beautiful Web Design</a>, which is a good primer for web design principles. It's one of the few web design books aimed at people who find coding easy but design a mystery.
Your point is correct but you worded it incorrectly. Design is not about "what's around the content" design IS the content and shouldn't distract from it (like websites from 2001-2004). Design should enhance the content and the functions of the software.

Good design is also about layering, which sometimes means rounded corners, gradients and complex imagery. Done right it won't distract the user from the essential functions.

Also, I recently designed an interface for a .NET application, first version was Google-ish, sparse design, content front and center, just a logo and some very basic design elements. Client HATED it, wanted shiny buttons, gradients and more "bling". Second version was designed to look exactly like an MS Office online app and the client was in love.

Just remember, most design is dictated by the client, whereas your programming functions aren't inspected by the client and you aren't forced to re-code something to add more "bling".

I would add 3) Be Consistent, which shouldn't come too hard to a good programmer.
4) Line stuff up. Design on a grid. Simple, but often overlooked.
I know "me too" posts are frowned upon, but I cannot agree with this enough. So often I see a site that has the most simple alignment issues, and the whole thing goes to shit.

Pick a grid. Stick to it...no matter what. As with anything, once you master it you can deviate from the rules. But if you want to create something nice, try your best to stick to the design standards you set for yourself.

If you're not worried about creating great art, it can often be good to add some drop shadows and gradients. Those little touches can make the site feel more "completed." These tools are obviously cliched, but they're popular because they work.
1) Be Simple. 2) Be Sparse.

I agree. Google is a good model. It's clear that even now they don't really get design. Their rule is just to make everything simple and functional. This means that even though they never manage to do anything inspired (Google has never made anything people would compare to the iPod) they at least avoid a lot of design mistakes. You can probably get 85th percentile design merely by avoiding mistakes.

I realized that Google didn't really get design when they added dropdown menus to Google Docs. Even Microsoft has moved past that. One of the things that impresses me about 280 Slides is the amount of functionality they've been able to pack in without resorting to a menubar.
Designers are relatively cheap, compared to developers. If you can't find a friend to help you out, pay someone to do the designs for you.
Design isn't exactly a commodity. I mean, look at this very thread.
No, but there are far more underemployed designers than programmers, so all but the absolute best design gets very much devalued. Ask a designer friend how long they spent as a perma-temp.
I'd disagree here.

While an average designer probably does make less than an average developer, often people are quick to assume design isn't important--and therefore not worth paying for.

Sure it's easy to throw a design together and make something look decent.

But to have a designer that understands color theory, spacing, typography, usability/accessability, being able to "lead your eye" along with many other important skills--you have to be willing to pay.

Just like you can get a programmer that can technically program--but has no experience, no understanding of design patterns and has barely heard of this SQL thing--but they can still program your site, and that's good enough for you.

I think it's a mistake to penny pinch when choosing a designer. It will come back to bite you in ways you don't expect.

Like causing confusion among customers, increasing your bounce rate and ultimately affecting sales.

I recently went through the process of finding a designer and had enormous success using freelance sites such as getafreelancer.com (not affiliated).

I received about 30/40 replies. While I only need 1 designer, I now have 4-7 quality designers that I can go to for quality work in the future.

The short answer: You get what you pay for. Just like in every other profession.

"often people are quick to assume design isn't important--and therefore not worth paying for"

Well that is not what I said.

So what do you pay your freelancer designers? I highly doubt they earn 100$ per hour?

What I meant is that if you can earn 100$ as a developer, you can afford to pay a designer for 50$. If I thought that design was worthless, I would have recommended do-it-yourself design.

Tichy, I never said you said that.

$100 is very reasonable for a quality designer--personally I find $75/hr to be a good rate for the type of work I'm looking for.

My whole post wasn't geared towards your comment--so I apologize if it came off that way.

Did not mean to imply this was your view.

My point was, many people assume design is the least important part of a web site.

This mind-set is flawed, because design is very important. Not the most important part--but still very important.

There is a reason some designers charge $25/hr and some charge $100/hr, and the $75 you save today may (or may not) cost you $1,000 tomorrow.

I admit I made it sound a bit too easy in my reply. For me the preferred way to would have a designer as a partner, because the designer should be involved in the whole evolutionary process of creating an application. With freelancers usually you give them some specifications and they deliver, but it is difficult to work in an evolutionary way.

I was lucky to find some affordable designers, but I am all for giving them their money's worth. I can't design at all, so I respect good designers for their work.

I'm actually a developer and I have to strongly disagree with this comment. The same gap exists (http://www.joelonsoftware.com/articles/HighNotes.html) between good designers and mediocre. In my experience, great designers are far from a commodity. I also agree with the other poster who said "Think Google not Microsoft". That's great advice - with a little practice even a programmer can produce decent designs if they keep things simple and don't try to get fancy.
"with a little practice even a programmer can produce decent designs if they keep things simple and don't try to get fancy"

Yes given time a designer can program an entire software program by keeping things simple and not getting fancy. I'm a designer and have programmed a good deal, however like designs from my programmer, you'd laugh at what I've coded.

Agreed on all sides. The gap between decent and really good designers is huge and great designers are no more a commodity than great programmers. If the author can find a great designer to work with I'd strongly recommend he does. If not, and he's doing it himself, he needs to keep things simple if he's going to produce passable designs.
why not pick up a readymade template? something from template monster; or maybe even some free template (oswd.org, freecsstemplates.org)?
Please tell me you didn't just recommend template monster. I can spot a "template" design 1000 miles away. I'd rather have my programmer hack his own design than buy a "design in a can"
Check out http://99designs.com and http://www.crowdspring.com to outsource your design.

Some people have natural talent with design. If you find you aren't one of these people, just get someone else to do it. I've had great experience with crowdspring and it is very good value for money. The best part about these two sites is, you get to choose the best design and give the designers feedback for further iterations.

Sites like these are like Elance for programmers. They devalue good design and force designers to work for very low rates and compete with each other thereby cannibalizing the industry.
They don't force anyone to work for low rates. They give designers/developers without the ability to develop business relationships or standard business a way to find clients. I see a lot of jobs on the programmer sites that end up going for less than $5 an hour. It doesn't mean I'm not charging a lot more than that per hour anymore. I can because I've developed relationships with people who will pay more.
These kinds of sites are ruining all creative industries.

It's working for spec on the off-chance your designs might get chosen. THe odds are stacked against you and the competition devalues your work. It's the type of thing that is historically rampant with IP theft, abuse, underhanded tactics etc.

Designers should not be working on spec; ever, especially college educated designers. It's tempting to get these projects under your belt for the experience and the portfolio but once you go down that path, it can be hard to raise your rates up to a liveable wage when everyone else is working for free or cheap.

They aren't ruining creative industries at all.

If you're good and can market yourself you can always find people to pay the rates you want. If you are missing one of those things you wouldn't be getting the rates you want anyhow. Your work is worth exactly what someone is willing to pay for it. If you can't find people to pay what you want then you are overvaluing your abilities.

The point is that people rely on a living wage, and too much competition reduces it to an unreasonably low rate for people in more expensive areas.
Expensive cities and design jobs are both luxury goods.

Some day I hope to start up a bunch of huge computer labs throughout SE Asia and Africa so that kids can come in and do custom programming and graphic design, undercutting all of us Westerners. I'd rather have disadvantaged teenagers drawing little icons for $5 a hour than working as hookers to get $10 a night--even if it means that designers in the US won't be able to afford to live in downtown S.F., drinking $6 cups of coffee, and buying $5K of gadgets every year.

We had a very positive experience with 99designs. We offered $200 awards to the top 2 entries for logo design and got 140 or so submissions/revisions from 36 different designers. We had a very difficult time narrowing it down from the top 10 or so because the quality was so great and the designers were quite responsive.

We'll definitely be doing more there. There's a lot of talented people doing this work for fun and/or on the side to build up their portfolio. Not sure how long this will last for these low prices, but I definitely recommend taking advantage of it while it lasts.

We paid for logo work at about the same price from an online company and got something passable, but had worries the whole time that we wouldn't get anything good at all.

In the end the 99designer winner even sent us the raw Adobe illustrator files, etc. The pro firms I saw were only sending the SVG for artwork, but the raw source is even more useful if we need to transform things down the line (and helps confirm it's an original work).

Not sure what the quality will be for website design, but the logo design side seemed to "crowdsource" amazingly well. YMMV.

If you're in the freelancing business I do have a bit of advice: if you work with another designer make sure you have a backup. If I had a dollar for every time a saw a project late/expensive because of the designer... I could eat at McDonalds a couple of times. Template sites are the best idea for less pretentious clients, and are much more profitable for you, so try to use them more often. But you do need a designer to work with for either the odd custom design or for the miscellaneous: logos, business cards and so on.
If I had a nickel for every time a programmer caused a major delay in a project (after the design was in place) I could probably buy a McDonalds franchise.

Elance/Outsource your programming for less pretentious clients, it's more profitable.

It goes both ways my friend ;)

It only goes to show work relationships in general should not be set in stone. It's the basic rule of fiability... if each has a 40% chance of failing, the pair has only 35% chance for success. Ergo, prepare for your partner's failure just as you would for your own, or more.
> you can't just learn how to make great designs

I worked with many talented designers in pre-Internet-Crash 1.0 days. They were very good at telling me where to add some whitespace - almost invisible tweaks that made great differences.

They all studied at design college. Of course in those days, their training was in print, and didn't enjoy working with the limitations of the web.

You could do some traditional artistic study?

Of course, if you just want your website to look great - hire someone. An advantage you have over someone hiring you to do programming work is that you can look at a piece of artistic design work and make a value judgement about whether it is any good.

Print designers know nothing of the web, and are a nuisance to good web designers everywhere. I have clients who routinely consult their "print designer" who in turn gives them the worst advice known to man.

As a web designer and user interface expert, when a client asks me for a brochure or business card design I dutifully refer them to a print expert and don't tell them "yeah I can do that" just because I can.

Worse, print designers know nothing of the web, and tend to think they know everything because design is design right! It's a pain to convince them that different mediums have different idioms and what works in print doesn't work well on the web.
Is a designer really necessary?

I argue here that they are not for the proof of concept stages.

http://thenextweb.org/2008/05/30/the-power-of-elegance-in-de...

Your argument is that teams don't need "20 designers" they need 1-2 to bootstrap the program until is takes off.

That's a big difference from "is a designer really necessary?"

Same argument but for programming; Do you really need a team of 20 programmers? My conclusion from that argument would not be "are programmers really necessary?" Would you hire a web designer to program your software?

If you're more just trying to make really nice forms for web applications, there's a nice set of CSS themes from Wufoo. I've been using them for lots of my prototypes before we hire someone to do the final design. In the mean time, all of our demos look nice.

http://wufoo.com/gallery/designs/

Design is one of my weaker talents. When recently designing my new portfolio site I made sure to play to my own strengths and made something technically challenging with an extremely simple design. I won't misrepresent myself as a designer and I am sending a good signal about the code that strings my site together. Just play to your personal strengths and you will have a great site.
How many hours do you spend on design? How many hours do you spend on development? That is your answer, practice makes perfect.

Being artistic is a natural talent to some degree but you don't need to be a Picasso to create effective web designs. However, you probably don't want to waste the time to become a good designer when you could be working on skills which are closer to your core expertise.

One thing I'm doing to keep the cost of a designer low is to have them focus on things I know I'm not good at.

I can slice the layout in Photoshop, markup the HTML and code the CSS--so I don't have the designer do any of these things.

I have them focus on things I'm not good at--colors, typography, general look and feel, etc...

This saves some money and let's me maintain control over the code base (which I like).

Hey guys, thank you for the massive amount of comments, I am going to look at most of the options: read the design book, keep in mind the priniples you mentioned and if that fails I'll look at the designer for hire sites.

Thanks again, I have never gotten so much helpfull feedback!

I am pretty much the exact opposite. I am a designer, but not really a programmer. I can program, but it is not pretty and has to be pretty basic. I am pretty much forced to rely on ExpressionEngine to get things working.

However, I don't care. I focus on what I am good at in order to get even better. Don't try to diversify. Specialize. There is more money in it.

Wow another designer on HN ... and I thought I was the only one.
I have a degree in design and half a degree in engineering :)

With respect to the topic.. good design studios get involved in a project from day one and have a tremendous impact on the outcome of the final project. It's not simply a "skin" over a technology. It's should be a critical part of your operation.

I find it bizarre that many people assume anything "artistic" requires innate talent and you either have it or you don't. Design requires constant practice and dedication to be good and ten years (or more) of experience to be truly great, just like any other discipline.

My designs from 15 years ago are laughably bad but now I can whip up some decent fairly quickly. On the other hand... I haven't programmed anything in 10 years and have a long learning curve ahead of me.

I'd recommend looking for some good designers on one of the freelance sites.. there's no shortage of choice. If you decide to go it alone, or even if you don't, I recommend picking up the book "Design Elements" by Timothy Samara. It's the best, most concise, book on the general principles of design I have yet to find. It will give you a good overview and some talking points with any designers you hire.

Good luck!

Ugh.. ignore the typos.. typed too quickly.
Let other people who can design inspire you. Then copy the inspiration into photoshop and move it around till it looks nice.
The best thing that ever happened to me in terms of my design skills was finding one person who knew a lot about design to rip my designs to shreds every time.

The reason for that is simple: You have to develop your eye.

Let me explain. One of the first major pursuits I took up was music - playing AND writing. Ever heard the phrase "develop your ear"? Basically, the more you do it, and the more you can hear the difference between the crap coming out of your instrument or computer sequencing program (in my case) and something professional, the better you'll be at finding those subtle things that make it that much better. When I got into recording engineering, I didn't know the difference between electric guitar sounds besides "distorted" and "not distorted." After getting feedback on my early mixes ("That sounds like shit."), I can now guess amp manufacturers and guitar brands with pretty good accuracy just by listening.

Now that I'm learning to code, I've discovered that it's similar. When I started, the difference between bad complex code and good complex code was not obvious to me. After having MY code refactored by my boss/mentor, I saw the difference unfold before my very eyes. Now I get compliments for writing clever, efficient code instead of "Um... can I sit down here? I'd like to go over that with you..."

So basically, aside from practice, it's about learning what to look for. Learn to identify what's good and what's bad about any design, and eventually, with practice, your own designs will improve. You HAVE to have both components, though, or you'll be stuck in an endless loop of making stuff that is different without actually being better. (Personal experience.)

That said, go get a book on typography from the library. Make sure it's one with lots and lots of pictures, diagrams, and full pages focusing on one or two typefaces. You don't have to read it cover to cover, but get the basics.

Once you've started, identify a few friends who are either great designers or at least who really know what they're talking about. Don't show it to random people who will say "yeah I guess that's good." That means "I don't know much about design, but that doesn't offend me so I guess it's okay." That's not helpful.

Also, http://kuler.adobe.com is pretty cool for picking color schemes.

Before and after articles on redesigns of web sites and print materials are really helpful as well.

Lastly, find some computer programs (NOT web apps) that look really good and stare at them until your eyes hurt. Safari is one of my favorites - it looks great, but everything that makes it look great is incredibly subtle - The font rendering on the bookmark bar has a nearly invisible bevel, which inverts on mouseover (for instance).

EDIT: After an hour or so, I realized that parts of this came off kind of arrogant. I am not an amazing hacker or the best audio engineer - I just wanted to relate growth in those disciplines to growth in design skills as well.

So how did you develop your ear? Any details appreciated.
Hah! I listened to LOTS of music, good and bad. I went to tons of local shows and tried to figure out why the bands that sucked sucked and why the bands that rocked rocked, even when the bands that rocked were playing very simple music. I also did a whole bunch of recording, and spent a lot of time tweaking settings to try to figure out why my guitars sounded crappy and such. Eventually I figured out that the solid bands sound 100X better because they know how to get the right sounds from their instruments... and thus I began learning about amp manufacturers and popular models (can you tell me what the differences are between the distorted tones on a Marshall JCM half stack, a Vox AC30, and a Fender Twin? What about between pinstripe and coated drum heads? Picked and fingered bass? What's a "scooped" sound?)

And then there's just giving my mixes to people and listening when they tell me what's wrong.

I like inkscape from inkscape.org better than GIMP and there are lots of tutorials around that tool.
haha... I have the opposite problem of being a good designer but a crappy programmer.
Actualy I think it is a matter of practise. I am a fairly ok coder (django and python :D), but I am not exactly artistic. But I attribute that to "oh i am a good coder, so its ok for me to not put in the effort to learn UI and Design skills" mentality. Note that this is not something I do actively. I do try and make an effort to read UI books but the effort is no way even close to what I do trying to tinker with all things coding related. Unfortunately, while there is an element of genius/talent/"born with it", it is ultimately a matter of hard work (a saying about perspiration and inspiration by Edison comes to mind).