Jack of All Trades…Master of Development?
September, 2nd 2010The following article is a repost of one I wrote for my personal site last February. With all the SXSW panel ideas about the designers and coding and the general ongoing debate about it that happens every year, I figured I’d added it on over to The Nerdary archive as well:
If designers should code, should coders design?
How closely are these two practices intertwined? Let’s examine the other direction. As a developer:
- Are you proficient in Photoshop?
- How about Illustrator?
- Fireworks/ImageReady/Acorn/Painter/etc?
- Familiar with Grid Systems?
- Do you keep up with the latest design trends?
- Do you understand typography, horizontal/vertical rhythm what about scale?
- Do you understand color theory?
- Are you comfortable in a design critique? Do you know how to critique your own work? What about someone else’s work?
- Would a designer want to play Layer Tennis with you?
Are these the skills that make you a designer? I have a degree in web design, I studied typography in school, I even, at one time, loved Quark. But at the same time I was loving my Database Structures and Coldfusion classes. Seven years ago: I knew a little bit about a lot. I was constantly receiving constructive criticism in school and at a design internship that I was spreading myself too thin. I was told that I had to choose a speciality. I chose Front-end development. My focus on design took a back seat, and while I certainly know the Adobe shortcuts to hide/show rulers and grids, I would not call myself a designer.
So how do you define being a designer? The questions above? Having that special something? Something else? Is being a designer different then knowing how to design? And what, if any of these, should a developer be expected to have?
Speaking of trying to figure definitions, how exactly is the “code” in “designers should code” being defined here?
Let’s get this straight(er)… as there is a big difference as knowing that rounded corners are easier in CSS3 vs. being able to code proficiently for IE and optimizing sites to the max. As a designer:
- Are you proficient in HTML/XHTML?
- How about CSS?
- How well-versed in the W3C technical specifications and guidelines are you?
- Do you keep up-to-date with topics like HTML5?
- Are you saddened about the loss of XHTML2?
- How deep does your knowledge of JavaScript go?
- Are you comfortable debugging your code?
- What does accessibility mean to you?
- Do you not understand why people make all the fuss about IE6? (Because once your past hasLayout, it’s all cake?)
- If you were halfway finished with coding/styling a site, would a developer have no qualms about having to take over your code base? (Minus the expected minimum getting familiar time)
Dan Mall once said:
“I think designers should know ABOUT code (preferably with experience), rather than knowing HOW TO code.”
There are lots of great advantages to having this knowledge in your tool belt. From knowing the limits of the browser, to pushing the limits of the browser and rocking the newest neat tricks. And on the opposite side, there are natural concerns about anyone who does not specialize in development, being put in the position of writing production code for a client, as well as unrealistic pressures put on a designer job description that already has a lot of responsibilities.
Is the line drawn at Front-end development?
Why not CMS knowledge? An example to ponder: if you are using the CMS, ExpressionEngine, strictly out of the box, means being constrained to a very specific markup for pagination. Customization options off the table, the design for this pagination is limited. Is it the designers job to know EE well enough to know that? Or is the developers job to inform them of this constraint?
Is the bar set different for web designers vs print/web designers?
How much does ones job description play into the topic here? As a designer working for an agency, if you’re job description includes both print and web functions, does that mean you have the same expectancies as a designer who focuses solely on designing for the web? Is your view on this matter the same as your companies or managers view?
Should Information Architects design? Should Developers wireframe? Should Project Managers program? Should Designers make sales? Should Client Relations Directors know how to run payroll? Should Directors write copy?
Is it a double standard to not extend this idea to all practices? Are some disciplines exempt from knowing others? Is it enough to be knowledgeable or should you be proficient enough in all aspects that you could be a one-person shop? Iron-man web design, if you will (I went a long way to get to my first sports reference). Should your Project Manager share the same amount of love for Dojo that your programmer does?
One of the things I love the most about working at Happy Cog, is the cross-pollination of practices. At any time, anyone in the office will be on QA of a project, or the whole office will be involved in a Sitemap review. Everyone knows some degree of what everyone else does. Not only does that open up the office to lots of different points of views and varying ideas, but it also creates a mutual respect for your co-workers, knowing that every job takes a high skill level and every person LOVES what they practice.
This also means that while everyone you work with can be great at what they do, everyone can also help each other be even greater. A Project Manager can pinpoint gaps and timeline issues when they know that it take xx amount of time to code templates. A Back-end developer can identify Sitemap gaps based on CMS requirements. An Information Architect can spot a source ordering discrepancy between code and the planned hierarchy. A Front-end developer can suggest a link in a design become a popup for users with JavaScript enabled. A designer can plan deliveries and help the Project Manager to make sure the client sees the creative at the appropriate time. Et cetera, et cetera.
But where do you find the time (and the budget) for all this knowledge?
Someone once brought up the need to have the passion to learn these things. I whole-heartedly agree. I love the internets, even though sometime it acts up and times out on me. I would love to become an expert in everything web (minus those silly social media titles) and wish I had all the time in the world to do so. But how much can you fit in between a full time job, hobbies, a personal/family life as well as personal web projects? Should your full time job carve out a certain amount of hours per day/week/month for you to read the Popular PM-ing Today FTW RSS feed? Or should you do that in your free time between extra work and having a relationship and eating? How do you fit it all in? And where does it fall in your priority list?
Who cares? Why are we discussing this again?
Well, with all the rage/questions/exclamations that surround this topic, doesn’t that answer the question? If a topic is still arousing people, and people are still learning from it, I say, have at it! At least I’m not blogging about the Phillies.
What’s a scattered blog post without a conclusion?
In an ideal world, who wouldn’t want to be able to do everything? Based on the amount of blog posts about this topic and about balancing work/life priorities - I’m hesitant to say its realistic to be the best at everything/multiple things. In my experience, I find it best to conquer things one at a time. Sure, some have dependencies on others, and thats where having a knowledge of something as opposed to an expertise in it differs. I spent a large part of the beginning of my career getting comfortable in Front-end code, and while there are ALWAYS new things to learn, I waited till I was at a point of proficiency in that work till I started tackling Back-end development again. And while I’m no Mr. Hout, the ability to work within a CMS like ExpressionEngine for example, has eased the meeting of Front-end and Back-end at this office ten-fold. We can work together simultaneously and I am aware of constraints and awesomeness of the CMS.
So I say, be rad at other things as well - as it can most likely only help your primary discipline. But be the raddest at your chosen discipline first, don’t neglect your own practice to spread yourself thin with other ones. And hopefully you are lucky enough to be surrounded by those same kind of awesome people in the areas you don’t know as well. An offense and defense will get you a whole lot further then only 11 men on the field - even if you have Hank Baskett on special teams. Who’s up for Squash?



Comments
I see this issue being discussed more and more lately. I actually had been thinking about writing a similar article due to my own run-ins with people wanting a master of all trades. I’ve seen people that can design, style, and backend program. However, it’s incredibly rare that they are proficient at all three. They exist, but they’re still rare (and expensive).
I see a lot of the web industry trying to hire people who are masters across the board, and while they may find someone who claims to be one of those, I’m willing to bet they’re not nearly as excellent as someone who has mastered one discipline while openly admitting that while they have skills in the others, they aren’t wizards. I’ve recently had to review a variety of people who claimed to have everything mastered and they were honestly terrible with at least one of their stated skill sets. I think companies trying to save money by finding one person to do everything are doing themselves a serious disservice.
The best work I’ve seen has always been collaborative.
Posted at 11:56 AM on September 02, 2010
Well said, Brian!
“The best work I’ve seen has always been collaborative.”
For real! I also find it to be the most fun! There’s only so much you can learn from yourself!! Unless your Kenny.
Posted at 02:10 PM on September 02, 2010
I think it’s a basic requirement that designers of any stripe have an understanding of the underpinnings of what they are designing. Web designers should have a basic understanding of front-end web development, just as industrial designers should have a basic understanding of relevant materials and engineering principles. Without that kind of understanding, are you even designing in the true sense of the word, or just playing with aesthetics?
What shouldn’t be an expectation is that any and all web designers should be able to flawlessly execute a website from concept to completion. It’s a sentiment that’s becoming pervasive, and the result seems to be a lot of aspiring designers either avoiding web all together, or spreading themselves too thin to be great at design or development.
Part of the problem (problem probably isn’t the right word here) is that there are folks out there who are great at both, so other designers feel like they have to compete with that. It’s all about setting realistic personal boundaries. Personally, back-end development is where I draw the line.
Having said all of that, I work at a multi-disciplinary firm, and while my focus is on web design, front-end development, and EE integration, I regularly work on a lot of print and packaging projects. I thrive on working in varied disciplines, and feel that I’m a better designer for it. My web design is informed by a print sensibility, and concepts like usability and information design have crept into my print work.
At the end of the day, as you mentioned, you simply have to follow your passions.
Posted at 08:14 PM on September 02, 2010
I’m one of those people who submitted a panel along these lines, so I could totally talk about this for hours on end. (I won’t right now, I promise!)
One of the reasons this question comes up so much is because of the passionate folks that we tend to find in our industry. I think a lot of us wrestle with an honest desire to do it all ourselves and be internet-making super heroes. We know it’s completely unrealistic but we still kind of want to try.
Personally, I think that’s better than actually knowing it all. If you’re passionate about what you do and genuinely interested in how the other parts work, you’ll do better work. Especially when you have some awesome like-minded folks to collaborate with.
I used to think the idea of specializing was bad. But that’s because I had the crazy idea that specializing meant you stopped caring about all the other disciplines/specialties that go into what we do. I was totally wrong.
Oh, and I’ll add to Brian’s point a little - the work I’ve most enjoyed doing has been collaborative.
Posted at 09:10 PM on September 02, 2010
I tend to agree with the previous comments. You should “know about” the other roles, but you’re not going to have real impact if you try to do them all.
Less informed clients will always expect the unrealistic. For instance, a real estate company that decides they want to do their own stuff in-house. These are the people placing the ridiculous ads looking for someone “proficient in all Adobe programs, HTML, CSS, JavaScript, PHP, etc., etc., etc.”
Clients with less budget who are easier to please are the low-hanging fruit. They’ll usually be happy with ONE good designer/developer. Plus the occasional dev person for the harder stuff. Bigger clients with deeper pockets will have the high-impact projects that require a team.
There are exceptions, of course. But, in my experience, those ridiculous expectations have most to do with budgets and a general lack of education about what each of us do.
Posted at 03:51 PM on September 13, 2010
I recently thought up the analogy of working on a project with PM’s and front-end devs and back-end devs (that’s me) and designers being similar to being in a band:
I’m a bassist and my main responsibility is to play bass. But we’ll end up with a better overall result if I can communicate ideas to my bandmates in a way that they can translate into notes on their instruments. In order to communicate my ideas to other members of the band, I need to know something about the other instruments.
At the very least I need to be able to use terminology they understand and suggest things that are possible to play on their instruments. e.g., “I think a complimentary color scheme would be a better approach.” That’s one level of inter-disciplinary knowledge.
The next level is to be able to play simple parts on instruments that are not yours, record a sketch of something - showing is better than telling. e.g. “I think we can improve the UI of the Widget Detail page. I did this mockup of the UI in Balsamiq. What do you think?” This is the next level of inter-disciplinary knowledge and makes you even more valuable to the team IMO.
Extra rare are people who are top-notch in multiple disciplines. They seem to be quite few and far between and I think they generally come from the harder technical disciplines: I’ve seen C# developers who really know html/css or are really good at project management, but I’ve never seen someone who had a background in graphic design who could do really good domain modelling.
But that could be my development-centric point of view…
Posted at 03:15 PM on March 04, 2011
Great post, glad I stumbled across it.
The whole concept of roles and specialities is an issue that any one-man-band, so-called “jack of all trades” trying to make the transition to small agency will run into. Personally, one of the hardest (and biggest shocks) I found when making this transition, was that, being pretty proficient in all areas of handling web projects, scaling the business using the same model was near impossible. This was due to the fact that, like someone said above, finding someone who could do everything I could do to the same standard was impossible (or incredibly expensive). That means you have to hire two or more people where before you handled everything yourself. That means your costs didn’t just double, they tripled or more.
I think this is one of the reasons so many one-man-band developers find it incredibly hard to scale their businesses. If you’re currently an all singing all dancing Project Managing, sales handling, SEO’ing, copywriting, designing, jquery-ing, php-ing jack of all trades charging highly competitive rates to SMEs, you may well need to hire five people just to make the jump from sole-trader to small agency. And that means the prices you charge have to take a big hike which just makes the whole transition incredibly tough as a business model.
On the subject of cross-over skills between disciplines; certainly the more-so-the-better, and I would certainly say that a project manager or director of a small agency should have good skills and knowledge of several subjects to be able to effectively communicate goals and keep standards high. (If you don’t, how do you know you’re hiring someone as good as or preferably better than you at that particular skill-set?)
I can’t say I’ve found the secret to success with any of this yet mind you!
Posted at 04:04 AM on April 04, 2011
I so agree with the proponents of collaboration. I’m a web/software developer with deep code experience, but my design abilities are limited to simple and tolerably pleasing pages. It’s been hard to find clients with the budget to spend on custom programming who don’t need a more sophisticated design. I recently joined a local collective ... we have graphic designers, web developers, copywriters, photographers, a videographer, project managers, social media experts, a business strategist and a marketing campaign strategist. We’re all free-lancers; sometimes we work solo and other times we collaborate.
It’s the BEST thing that’s ever happened to my business. I am learning so much and going deeper, working on more interesting projects, making more money and having more fun. :) If you live in an area where there are other pros, you might consider putting together something similar. Corvallis has 50k population and a university, so it wasn’t hard to find a good group. http://www.madcollective.com/ if you’re interested.
Posted at 05:32 PM on May 12, 2011
Post a Comment