I’m currently struggling with an issue that I think impacts many — if not all — freelance designers, especially ones who design apps and user interfaces.
The problem is simple: you land a new and exciting project, you create a great design, and everything’s going well. But eventually, things being to slow down, the client has many other priorities, your design is not implemented perfectly, and you begin to lose interest in the project.
No big deal, you got paid, the client is happy, time to move on, right?
That’s what I used to think. But I’ve begun to realize that this situation makes it hard to produce truly great work, the kind where every pixel and every interaction receives obsessive Apple-level care.
Is Perfection Overrated?
If the client can afford to pay you for your time, you could in theory go ahead and obsess about every single detail and screen. The things is, web or mobile apps have so many interactions, screens, and dialogs, that mocking up all of them in Photoshop (or even Fireworks) can be an overwhelming amount of work. So true perfectionists would probably code their design.
Let’s set aside the fact that HTML/CSS coding can be quite frustrating at times and not everybody wants to do it. Even if you do code your design, provide a style guide, and generally make sure everything looks great, when do you stop? What if things change? What about next month’s new feature, and the one after that?
I’m not saying that freelance designers can’t produce great work (after all, that’d be a pretty dumb point to make for someone who’s launched a freelance design job board). My point is that to reach that next level of design, two things need to happen:
1. Better Tools
Let’s face it, the tools we have at our disposal for web design pretty much suck. But things are slowly getting better. The design software side of things is still stagnant as far as I know, so we’re still stuck with your bloated Adobe software of choice for now.
But at least there’s progress on the coding front. Thanks to things like Bootstrap, HAML, or SASS, it’s becoming easier to design (or at least prototype) in the browser. And CSS3 lets us dream about making the horribly inefficient process known as “slicing” a thing of the past.
I have to admit I don’t always practice what I preach. But I do believe that moving forward, designers should strive for better and more flexible workflows. Even little things like jumping into Git to fix a CSS issue yourself rather than sending over a screenshot by email can make a big difference overall.
2. Better Clients
But I’d argue that the most important piece of the puzzle is actually the client: I don’t really see a way around it, clients have to become designers too.
Now let me explain that I mostly work with startups, so my clients already have a technical background and have all the skills necessary to producing good design. But they just often haven’t made that commitment yet.
Before you accuse me of looking down on non-designers, let me say that I’m not any better. I code without really caring about the quality, speed, or maintainability of my code. I figure that as long as it works, who cares?
Many coders have the same attitude towards design. But although you can outsource design, you can’t outsource caring, and that’s what ultimately makes the difference.
So here are my new design resolutions:
First, don’t limit myself to Photoshop. Ask clients for access to their Git repository, and fix things myself if they need to be fixed.
Second, ask more of the people I work with. If two lines of text are nearly touching each other, you shouldn’t need me to tell you to increase the line-height. If things don’t line up, you should know enough to fix it yourself. Prove to me that you care about the design as much as you care about the code or the business plan.
Third, work on personal projects where I can push myself as much (or as little) as I want. At least then, I’ll have no one else to blame if I don’t reach that next level.