47 comments

[ 2.9 ms ] story [ 87.0 ms ] thread
I don't agree with you. I'm a developer and I can't design.

After designing many frontends I have come to this conclusion. I'm just not good at it. It takes me ages to get anything done, I have very little original ideas of how to make a page more functional, or even pretty. I can recognise a good design, but I just can't seem to produce it no matter how hard I try, or how long I try for.

Also, doing frontend design just seems to make me miserable. Much happier coding the backend where I'm good and paying a frontend person who does good work there.

Yup, same here. I can sometimes recognise good design when I see it, but I also know that my idea of good is not the same as the majority.

Frankly, I'm best off with the infrastructure/back-end side of things, and letting people who have a good eye do the design.

> It takes me ages to get anything done

... and then people tell me "you probably haven't considered it yet, but you should spend some time working on the design of the site". Argh! I wish I were better at it though.

Have you tried having a read of The Non-designers Design Book?

While it won't make you a master designer, it will give you some basics. Notably CRAP (Contrast, Repetition, Alignment, Proximity) and the basics of colour theory and typography.

I found it to be an extremely easy read with good exercises for people like me who are somewhat aesthetically challenged.

What about front end coding? Putting design into js/html/css? Is that also a domain of a backend developer or designer? I am just asking because I am really not sure.
Great post; really resonates with me.

I've come to realise that it's a linguistic thing.

"I can't do that" vs "I can't do that yet"

Personally, I've always hated sysadmin and as a designer I can rely on Heroku for everything I'd conceivably need at the moment. I've dipped my toes into setting up VPSs in the past but I always get frustrated and give up. It's definitely not my thing. but I hate the idea of not getting the gist of how things work even more than I might not enjoy doing them.

So this weekend I learnt the basics of Linux sysadmin & setting up a box with Nginx & Passenger and all that jazz. Now, in my own ethical system, I'm happy to ignore it again for the next few months/years and going back to Heroku (which I enjoy using). Is that really weird?

Not weird at all. For starters, this gives you the tools to think about what could be wrong, when stuff goes wrong. Or at least a vague idea of where to start looking.

The more of these 'entry points' you get the easier it gets for others, whose specialty you know a bit of, to communicate with you.

Bonus points if you have a 'relative difficulty' idea for most of those entry points.

Exactly, how dare they suggest I'm not a surgeon. I'm off to buy a scalpel and put out a few craigslist ads. In a week we'll see who's got a new job title !
"Have you tried our website and open heart surgery package, good sir? You get a website professionally designed and developed while we open up your chest and unclog your arteries all done by our resident genius developer/designer/surgeon, Ben Howdle for just $599"
"A 'designer' and a 'developer' are made of the same stuff, all that separates them is the label they place upon themselves."

I'm also made of the same stuff as heart surgeons. Want to get under my knife? Didn't think so.

I'm all for expanding one's skill set. Please say 'yes' to learning new things. That doesn't mean you get to be good at what you started last week, or even last year.

(comment deleted)
We do a great disservice to others by not appreciating their craft.

I wonder if the author would feel as accomplished in his primary craft if someone who used a bit of jQuery for the first time went and declared that they were now a JavaScript developer?

After 10,000 hours of practise a master craftsmen knows he still has a lot to learn. The problem with job title inflation like this is that it bloats the already large crowd of people who do not have the humbleness of a master craftsman and claim to be more than they are.

I realise defeating negative thought is important, but the process of becoming something is possibly more important than using a claim to be something (to overcome such negative thought).

Exactly my reaction.

I specifically call myself a developer and say "I can design but I am not a designer" because I am not as good as the pros at it. I have respect for those who are better than I am.

Put another way; I can change my brakes, oil, spark plugs, and other basic maintenance items on my car. But I'm not a mechanic. I can't rebuild a transmission.

Ditto here. I'm a software engineer who is capable of improving or tweaking a design as the project requirements change, but I can't do the entire process from conceptualization to visual design. I'm sure with enough practice I could, but to get good enough to say that I'm a designer I'd have to neglect development. And I, quite honestly, like development better.
I felt the author's post was less about taking credit from designers and more about appreciating how much value you add by learning the basics of the jobs which intersect your own.

A good designer is expected to advertise their ability to write CSS and Javascript why shouldn't one expect and acknowledge the same from a good full-stack developer. Just as the JS-able designer may not be able to re-write GMail in Ember.js so the developer won't be able to necessarily create beauty but that doesn't mean the skills aren't important or as relevant in a resume.

Honest questions: what's to stop that person from calling themselves a JavaScript developer? Why shouldn't he/she? What in the words "JavaScript Developer" imply professional ability?

It's hard for me to imagine how this person learning a little jQuery, and calling themselves a developer, somehow saturates what master craftsmen of JS/jQuery do.

1) They won't be stealing contract jobs from the master craftsmen, as a quick look at each person's portfolio would reveal who the better developer is.

2) They won't be stealing full-time work from the master craftsmen, as the phone interviews and in-person would quickly whittle away the new developer.

I agree. I'm a great designer. I design my own UIs all the time. The only problem is that everyone else hates them...
"Be confident enough in your own adaptiveness and aptitude to realise that you could learn almost anything in a very small amount of time, if you really wanted to."

I don't know about that. I guess "know how to do something" and "do something that actually useful" aren't quite the same.

This article actually makes me angry, because this kind of attitude is why I have to deal with such on amount of clueless hacks, who call themselves something they are not. Sure, if it's between you and your mom, you can call yourself whatever you like. But if I pay you to do something, and you say you are that thing, but all you did so far is read a "... for dummies" book and plan to learn on the job - paid by me, that gets my blood boiling. I'm all for personal growth, and I've switched careers a number of times in my life, but I came prepared with long years of study each time, and at least some experience. And I was always open about it. So, please, if you follow this guy's advice, at least make sure to be open about your _level_ of being a developer or whatever.
My thoughts exactly.

I've worked with far too many freelancers that claim to know something in order to get business, only to then realise that what I'd paid for was hacked together; the kind of work that I wouldn't hire if this freelancer had come in for a full-time role.

This advice works, but only in certain jobs/situations. If you're an internal developer then this is an entirely reasonable thing to do, but more often than not some poor person is going to have to go through your awful code. It's this attitude that adds countless hours of fixes onto a system several years down the line.

This might be off topic but I feel that it is much easier for a designer to learn coding than for a developer to learn design. Anyone shares this feeling?
The things I see all the time are "learn to program" tutorials that go through in a very formulaic way and explain programing. I haven't seen any such things for design (and would love to).
I think we've just not done a good enough job of providing resources to teach people design.

Notable exceptions like http://hackdesign.org/ excluded, It's either 'go to uni for 3 years' or 'figure it out yourself'

Ditto. Unfortunately, the type of people who have the skills worth teaching are often not the ones doing the teaching.

Being primarily non-designers who don't know any better, HN users are often quick to upvote posts regarding design and take these people up on their offers, despite the fact that -- as many of these posts are by people who are merely trying to get their name out there -- they could be doing themselves a disservice by listening to someone who is just trying to promote themselves rather than promote good design practices.

This post sort of makes a good point but also somewhat insinuates that you can spend a week on something like D3.js or design and then call yourself, "X" it is good to learn new things and never confine ourselves to what skills we think we should know, but I feel it's somewhat of a smack in the face to others who spend hours, days, weeks, months and years perfect their craft only to find themselves working with others who feel as though they're entitled to call themselves the same. Just because you learn the basics of something doesn't make you an expert nor give you the right to a title of said skill. I know the basics of car maintenance and repair, does that give me the right to put, "Developer and Car Mechanic" in the title of my website or resume just because I hustled the knowledge of basic engine maintenance and repair?

Is Johnny who's been designing websites for 2 weeks now truly able to call himself a designer when Michael who's been designing websites for 12 years is also a designer? It doesn't feel fair that anyone can label themselves based on only little amounts of experience. I guess "Johnny - Developer and Junior Designer" doesn't have the same ring to it, "Johnny - Developer and Designer" has.

You might be able to learn how to increment a counter, set a timer and master if statements and functions in Javascript in about a week, but you'll never truly learn anything in a week, you're just scratching the surface you don't know about all of the methods the String object has, you don't know about closures, global variables, xmlHttpRequests, prototypes and dealing with arrays. There's a difference between learning something and actually learning something well. Sort of like those, "Build a blog in 20 minutes" tutorials most languages love to perpetuate when describing how easy their language or framework is.

As for the statement that developers can design, I disagree. It has always bugged me when I see a business advertising for a designer and developer, you can't truly do both at once and do them well, it's merely a way for businesses to skimp on hiring two great people instead of one mediocre at best (if you specialise in $200 websites then maybe it's fine). In my opinion you're either a designer or you're a developer. I'm a developer and I've been trying to design my own sites for my ambitious personal ideas for about 3 years now, but I lack the knowledge of grids, colours, typography, ideal reading lengths, line heights and all of the other advanced aspects a designer faces. If I were to call myself a designer, I would feel like I'm insulting the actual designers that I work with and respect. Most of the designers I work with know a little CSS and HTML but they don't call themselves developers because they know that knowing the basics of something isn't enough to be good or even mediocre at it.

Would you trust a car mechanic who decides he's going to give hairdressing a go? We all use different parts of our brains, we have our own likes and interests and these are what make us great at what we decide to do. People become mechanics because they have an interest in engines and getting their hands dirty, they have a thirst for mechanical knowledge just like developers are mostly people who grew up taking things apart just to see how they worked, endlessly reading other peoples code and the desire to solve complex issues with a text editor and a keyboard.

I'm all for learning new things, but pretending to be something you're not is something I do not advocate. Now if you'll excuse me, I've got an oil change and haircut appointment to attend to...

Sure, be a developer AND designer, even though you may suck at design.

Some can't design, even if they do they have wasted so much time doing something which someone else can do, especially if you are on a team, or for a simple idea isn't the mantra "outsource outsource outsource"?

Polymaths often make lasting contributions to world knowledge. It is narrow-minded to say that you don't want to learn something because of some pre-determined notion that you might not be good at that thing. Of course, saying (or suggesting) that you are proficient in something when you know that you are not is not fair. I am a programmer, but I am also an amateur designer and an accomplished artist. I am also a wannabe mathematician and one day I will write about my own accomplishments if nobody else does ;)
To head off the comments that are already starting to appear: Correct, you can't become an expert at most things in a week and probably misrepresentative to advertise yourself as an expert if you aren't.

That's very different from approaching life with a growth mindset.

Maybe the title shouldn't be "Oh, I'm not a ..." but "Oh, I can never be a ...".

You've inspired me to learn designing (I did take a look at your dribbble shots :) pretty good for a web dev).
This is garbage. I say I am not a designer because my design work isn't of a high enough standard to be professionally acceptable and because it is a waste of my time, and thus my employers money, when I do so. Specialization is a key part of an efficient economy.
One exception to this might be that we dont want to do the thing we might not know. I tell people i'm not a designer, because i really dont want to learn it.
100% this. I spent the first 12 years of my career not writing a single line of production JavaScript or CSS. I did it on the side for my own purposes, but never professionally. Why? I didn't want to. (I still don't really want to, but I like the job I'm at more than I like writing JUST server side code.)

So am I a front end developer? No. Will I be in a week, month, year? No. Why, I DON'T WANT TO BE. Can I use js to manipulate the DOM? Yes. Have I used Backbone.js and Angular and others? Yes. But I will only mention that technology in passing, to show "Hey look, I learn new things"

I often agonise of this, especially on a CV. e.g. I know how to use (say) a certain programming language a lot better than people I know actually being paid to use said programming language as their full-time job. On the other hand, I know my knowledge is really quite limited and no where approaching an experienced developer--certainly at present I could code up a smaller project or a prototype, but probably no more than that. So what could I say on a CV/resume without being misleading, but also without underselling myself in a job market where the people you're competing against are quite happy to exaggerate or outright fabricate?
I personally don't put years of experience in technologies on my résumé. Just add a section for projects and list those smallish projects and what languages you used.

As you do more independent projects with given language it becomes more impressive even if it were only 6 months of experience. If you get an interview and anyone asks how long you've been using the language be honest, but don't offer that until they ask. They may not care.

Neither metric really captures proficiency accurately. Not sure if that's possible.

Years of experience is difficult to measure. If I have a node.js build script that I update occasionally, do I have one year of node.js experience after working on the project for a year?

A pure front-end developer will know Javascript much better than a back-end dev who started using it at the same time.

I also spent 3 years working with MySQL before actually learning to use joins or grouping.

Doing several independent project instead of a large one only makes it more impressive, but doesn't indicate greater skill.

Sometimes I wonder if I should add small half-baked projects to my portfolio. I may only have worked on them for two days, but they would make me look super prolific. Do you think that's a good idea?

I'm not saying it does capture proficiency accurately, I'm saying it's better marketing.

Marketing isn't about painting an objective picture, your interviewers will be critical enough to balance it out. Don't do their job for them.

One thing that you can truthfully write (and that I have seen many others write) is "Have completed projects using ..."

It is accurate and conveys a certain flexibility and curiosity to the reader, assuming they are putting any thought into reading it.

I'd be much more interested in Medium as a blogging platform, if they instated a ban on memes in posts.

Hard to take someone seriously when they use the modern equivalent of lolcats to make a point.

I enjoy the levity and am fit to do it myself. Is your aversion to it about personal taste or is there something else to it?
Not even Beyonce hates meme's as much as you.
Design is a tough one.

So I took 12 years of piano as a kid. Love playing the piano, although I only play once a week or so, and only play fun songs for an hour or two when I do play.

I do not consider myself playing the piano. I think of it more like "playing at the piano" I understand what a tough art form it is, I am not engaged in structured learning or skill-honing. I am playing. It is a piano. That's about it.

Design, to me, is like that. I have built between 20-40 websites. I love typography. I've laid out a newspaper front page. I've taken all sorts of pictures and love photography. I've even taken pictures for the covers of small regional magazines.

But I still don't call myself a designer.

I think the reason is that, as I learned to play the piano, I learned how to practice -- how to create a mental image of where I wanted my art to go and how to reach it. (Even I spend zero time doing that any more) I understand the art form. With design? Beats the heck outta me. Design is beyond my ken. I've bought all kinds of books on design, I've done many things people would consider design, yet I feel I know as little now (or less) than when I started.

So whether you call yourself a designer or not, beats me what kind of criteria you use. I'm designer in the same way I'm a piano player. It's there, I do it, and I enjoy it. But with design I just don't know enough to know if there's more to it than that, though.

(comment deleted)

    Recruiter: Do you have any experience with SQL?
    Schmuck: No. I have no SQL.
    Recruiter: Then put "NoSQL" on your resume.
In all seriousness, I actually agree-- to a point-- with the OP. Employers tend toward a denial mentality. "You can't <X>, because you're not a real <X>." Employees tend toward aspirational claims, at least according to employer suspicion (Theory X). However, many workers (especially programmers) shoot themselves in the foot by buying into this "not a real <X>" nonsense that their bosses shoot at them as an excuse not to think too hard or take employee development seriously. They start to believe in their bosses' negative, limiting opinions of them and get a slave mentality. As an awake person, I say: Fuck That Shit.

You have to be honest, though, especially with yourself. I will certainly describe myself as a "machine learning guy" (I'm averse to the word "expert") on a job interview, but I also know that there is a lot that I have yet to learn. It's at a few months that you get the right to present yourself as "an X guy" on a job interview because everyone does it, and if you grade-deflate yourself you do the world no good, but if you actually believe that you're as knowledgeable as a real expert at that point, then you're delusional.

If you want to call yourself "professional designer" after your app nets you $2.97 (your parents and your grandma) then go ahead, because your bosses-- this is why they are your bosses-- have been using that kind of self-inflation since they were 15 (to pwn girls, while you were studying computers). Just recognize that, in reality, you have a long way to go and there's a lot out there that you haven't learned yet. And if it interests you, then go and learn it.

Really? I know quite a bit about von Neumann algebras (unital weak operator topology closed *-subalgebras of the algebra of bounded operators on arbitrary Hilbert space). It takes about 5-8 years of hard study before you can even begin to understand what this definition actually means.

So, come up to speed in a week please.

Maybe one situation where this is a good idea is when the current "designer" is even worse than you are. In that case you add value through your design skills and you're the lead designer in a designer-free company.

Obviously that only works if you know the company isn't actively looking for a real designer, in which case your work will disappoint.

The text on this page is barely readable in Windows/Chrome.