is a blog about design, technology and culture written by Khoi Vinh, and has been more or less continuously published since December 2000 in New York City. Khoi is currently Principal Designer at Adobe. Previously, Khoi was co-founder and CEO of Mixel (acquired in 2013), Design Director of The New York Times Online, and co-founder of the design studio Behavior, LLC. He is the author of “How They Got There: Interviews with Digital Designers About Their Careers”and “Ordering Disorder: Grid Principles for Web Design,” and was named one of Fast Company’s “fifty most influential designers in America.” Khoi lives in Crown Heights, Brooklyn with his wife and three children.
For visual designers working on the Web, clearing this knowledge hurdle — transforming oneself from someone who renders ideas into someone who enables them, makes all the difference. Programming is an immensely valuable complement to design. Given the benefit of natural talent, or the abundance of free time that’s part and parcel of being young and relatively free of commitments, many designers get to do what I can’t — take out the time to learn new technology simply because they’ve decided to do so.
I fantasize about an extended vacation someplace away from my current obligations, with nothing but peace and quiet, lots of free time and a towering stack of O’Reilly books. The freedom to focus exclusively on learning how to do something tangible and competent with PHP, MySQL, Python, Ruby on Rails, et cetera seems like gold to me, a chance to really do something powerful with my modest design skills. I’d go running in the morning, and work well into the night, wasting not a minute on distractions and getting super-fucking smarter every single day.
Boy, Interrupted
For years, I’ve been nursing this daydream, and I even made a few attempts at doing something about it, trying my hand preliminarily at various kinds of client-side programming. But when I started Behavior with my partners, I more or less signed away any chance to take that kind of time out in the foreseeable future. It’s not just that building a business requires a lot of time; it also requires spending that time wisely, doing the things that you’re good at — visual design, sales and paying bills, in my case — while letting other, more qualified people handle the things you wish you could be doing yourself. The upside is that you have a wonderful company, and the downside is you have only about three-quarters of the fun you might otherwise. It’s a bittersweet bargain.
To be fair, I could give up a hell of a lot of Web surfing, television, baseball and movies, and by doing so reclaim a nontrivial amount of time that might let me get a handle on the basics of programming. Procrastination and laziness account for why I haven’t, but I think I’m reaching a point where I can’t allow that to happen anymore. My Lionel Richie-noggin’ is generating too many fun ideas with genuine revenue potential, and the tactic of trying to recruit able-brained technologist friends to help me even build a prototype of my concepts is too difficult. I need learn how to program.
There are quite a few people in boats of identical manufacture if painted differently. I’ve checked out LAMP books from the library of the university I was attending (for math and physics) before I realized that I wasn’t going to be able to balance a (quickly growing) family and these academic goals. I thought that I could at least pick up enough technical acumen so as to be able to get an interesting job doing something other than advertising research. Still, that would’ve required investing time I couldn’t justify pulling from other endeavors, so I even went so far as to stop tweaking my pitifully simple blog.
I also used to lament this situation for myself. I’ve finally accepted the fact that I’m pretty good at my planting ideas in the heads of others for actual implementation. But that still doesn’t stop me from *wanting* to do it all myself.
Anyway, I’m still pushing to get the days extended to 36 hours! 🙂
mike g
I agree completely. The “do everything myself” syndrome is pretty heavy sometimes. Also, just want to say: That Lionel Richie graphic made me guffaw very loudly. Too funny.
Hrm…..here I am with no ideas but my flash/actionscripting guru friend, jon, and myself, the lone ranger of PHP, MYSQL, and ROR, have plenty of programming ability between us.
…..maybe we should implement your ideas?
Geoff
If I didn’t know how to write programs, I think my head would implode.
I have a skateboarding video where Mark Johnson describes Rodney Mullen as being “tormented by ideas.” It sounds like you have the same problem!
I’m also more than a little interested in any programming needs you might have – I majored in CS and I’ve taught myself a few languages, so maybe I could help out. You have my contact information 🙂
I found that when I broke my leg, and tore most of my knee ligaments at the same time I had rather a lot of time on my hands, which has been well invested, firstly in CSS and secondly in PHP + MySQL. Best thing I ever did, being rendered immobile.
well, i’m with walker on this one. my design skills and ideas for wicked apps are minimal but my programming skills are sky rocketing. i’d be willing to team up as well. you know how to contact me.
Some advice: start with little inconsequential hacks and build them up. Only take on projects initially that can be completed in an evening. The best part of web hacking is the instant gratification, which makes it all the better for on-the-side learning.
Same problem here. Luckily I quit my soul-sucking corporate job, and for the last few months I’ve been living off of my savings and actually writing the god-damn code I’ve been dying to write for two years. It’s wonderfully satisfying, and I’ve teamed up with a full-time programmer, which has helped a lot. The only problem is that I’m starting to wonder when I’m going to get payed next.
Well, having gone this way I can only say – it is true, and no, subcontracting does not cut it.
It just such a pleasure to free yourself from all the “problems” these “nice developers” have when they say “it will be too difficult” (I had to deal with underpaid developers on small teams).
Truncate a paragraph so that it looks nice? Too difficult. Show nice URLS? My framework does not allow this, too difficult. Make this drag ever-so-smooth? Too difficult.
Finally I said to myself “this cannot go further, though shall learn” – I decided to do everything myself and free the “tired developers” of the “problems” that I create. Took me a year to work PHP out to reasonable level (and now ditching it in favor or ROR) – but now I say to myself and my clients that I am making a website top to bottom, inside out and that I personally and intimately know that feature X will make it there. More than that – when I set to draw a comp or make a sketch I am able to foresee how I am going to implement it (and very often it makes my projects much more exciting).
Sometimes it’s difficult but it does give you an immense degree of creative freedom – just like a designer can grasp HTML he can grasp Ruby (and Rails), you just have to start. It’s no more difficult than applied typography, I assure you.
I’d be delighted to collaborate with anyone here, and I need to seriously find a way to take up those who have offered their help here. One factor is time; I have to find the time to sit down and do some planning. Another factor (one that should be less of an issue than I’ve made it) is geography. I feel like I need to sit down and talk to a technologist face-to-face at the outset of a project, to be able to gauge whether the idea is feasible and the technologist really gets it. But I know lots of great products have been developed remotely. Anyway, thanks!
Steven S.
Since you can put your ideas into words I don’t see how geography is a problem. A good comp and your word explaining how things work is all anyone really needs. I’ve basicly taken this last year off and taught myself programming. I learned flash, css, and coldfusion. I don’t know if those are the best but they are helpful in making my visions come to life. I really feel akin to Dan in wondering when all of this hard work is going to come back to me in the form of pay. Hang in there Dan It will come back around. I also really got a lot of encouragement from your this artical. I agree that once you decide on what product you are going to offer its hard to justify researhing and developing a new one as lone as what you have works. Maybe you are going to be stuck making comps, doing sales, and paying bills. Maybe you don’t really want to do the hard work of learning something new. With the life you have set up I doubt even a broken leg would help. Many designers come to see there roll in the bigger picture as valuable and accept it. Maybe you can too.
It all starts with an idea. If you don’t have that, you don’t have anything. The rest will just fall into place as it already has (tons of people offering their skills at a global collaboration). That’s awesome. 🙂
Stephane
I always wanted to learn to program a web design application. A couple of years ago I got laid-off from my job and took my time to learn to program Objective C. Having no real knowledge of programming before, it took me a while to understand anything but I got around and did program my app and I still use it everyday in my job. I also wanted to leand PHP, etc.
Now I know that It’s better if somebody else do the programming, I’ll do the design/xhtml/css, it’s enough to keep me occupied 😉
I realize you’ve got the brand-new company to worry about now, but yours are the reasons that brought me to Google; thousands of engineers chomping at the bit to implement your ideas.
Amen! That makes two of us.
There are quite a few people in boats of identical manufacture if painted differently. I’ve checked out LAMP books from the library of the university I was attending (for math and physics) before I realized that I wasn’t going to be able to balance a (quickly growing) family and these academic goals. I thought that I could at least pick up enough technical acumen so as to be able to get an interesting job doing something other than advertising research. Still, that would’ve required investing time I couldn’t justify pulling from other endeavors, so I even went so far as to stop tweaking my pitifully simple blog.
I also used to lament this situation for myself. I’ve finally accepted the fact that I’m pretty good at my planting ideas in the heads of others for actual implementation. But that still doesn’t stop me from *wanting* to do it all myself.
Anyway, I’m still pushing to get the days extended to 36 hours! 🙂
I agree completely. The “do everything myself” syndrome is pretty heavy sometimes. Also, just want to say: That Lionel Richie graphic made me guffaw very loudly. Too funny.
Hrm…..here I am with no ideas but my flash/actionscripting guru friend, jon, and myself, the lone ranger of PHP, MYSQL, and ROR, have plenty of programming ability between us.
…..maybe we should implement your ideas?
If I didn’t know how to write programs, I think my head would implode.
I have a skateboarding video where Mark Johnson describes Rodney Mullen as being “tormented by ideas.” It sounds like you have the same problem!
I’m also more than a little interested in any programming needs you might have – I majored in CS and I’ve taught myself a few languages, so maybe I could help out. You have my contact information 🙂
I found that when I broke my leg, and tore most of my knee ligaments at the same time I had rather a lot of time on my hands, which has been well invested, firstly in CSS and secondly in PHP + MySQL. Best thing I ever did, being rendered immobile.
well, i’m with walker on this one. my design skills and ideas for wicked apps are minimal but my programming skills are sky rocketing. i’d be willing to team up as well. you know how to contact me.
Some advice: start with little inconsequential hacks and build them up. Only take on projects initially that can be completed in an evening. The best part of web hacking is the instant gratification, which makes it all the better for on-the-side learning.
Same problem here. Luckily I quit my soul-sucking corporate job, and for the last few months I’ve been living off of my savings and actually writing the god-damn code I’ve been dying to write for two years. It’s wonderfully satisfying, and I’ve teamed up with a full-time programmer, which has helped a lot. The only problem is that I’m starting to wonder when I’m going to get payed next.
Well, having gone this way I can only say – it is true, and no, subcontracting does not cut it.
It just such a pleasure to free yourself from all the “problems” these “nice developers” have when they say “it will be too difficult” (I had to deal with underpaid developers on small teams).
Truncate a paragraph so that it looks nice? Too difficult. Show nice URLS? My framework does not allow this, too difficult. Make this drag ever-so-smooth? Too difficult.
Finally I said to myself “this cannot go further, though shall learn” – I decided to do everything myself and free the “tired developers” of the “problems” that I create. Took me a year to work PHP out to reasonable level (and now ditching it in favor or ROR) – but now I say to myself and my clients that I am making a website top to bottom, inside out and that I personally and intimately know that feature X will make it there. More than that – when I set to draw a comp or make a sketch I am able to foresee how I am going to implement it (and very often it makes my projects much more exciting).
Sometimes it’s difficult but it does give you an immense degree of creative freedom – just like a designer can grasp HTML he can grasp Ruby (and Rails), you just have to start. It’s no more difficult than applied typography, I assure you.
Why don’t you ask your girlfriend to teach you how to program? She’s been waiting for you to ask.
just the two of us…
I’d be delighted to collaborate with anyone here, and I need to seriously find a way to take up those who have offered their help here. One factor is time; I have to find the time to sit down and do some planning. Another factor (one that should be less of an issue than I’ve made it) is geography. I feel like I need to sit down and talk to a technologist face-to-face at the outset of a project, to be able to gauge whether the idea is feasible and the technologist really gets it. But I know lots of great products have been developed remotely. Anyway, thanks!
Since you can put your ideas into words I don’t see how geography is a problem. A good comp and your word explaining how things work is all anyone really needs. I’ve basicly taken this last year off and taught myself programming. I learned flash, css, and coldfusion. I don’t know if those are the best but they are helpful in making my visions come to life. I really feel akin to Dan in wondering when all of this hard work is going to come back to me in the form of pay. Hang in there Dan It will come back around. I also really got a lot of encouragement from your this artical. I agree that once you decide on what product you are going to offer its hard to justify researhing and developing a new one as lone as what you have works. Maybe you are going to be stuck making comps, doing sales, and paying bills. Maybe you don’t really want to do the hard work of learning something new. With the life you have set up I doubt even a broken leg would help. Many designers come to see there roll in the bigger picture as valuable and accept it. Maybe you can too.
It all starts with an idea. If you don’t have that, you don’t have anything. The rest will just fall into place as it already has (tons of people offering their skills at a global collaboration). That’s awesome. 🙂
I always wanted to learn to program a web design application. A couple of years ago I got laid-off from my job and took my time to learn to program Objective C. Having no real knowledge of programming before, it took me a while to understand anything but I got around and did program my app and I still use it everyday in my job. I also wanted to leand PHP, etc.
Now I know that It’s better if somebody else do the programming, I’ll do the design/xhtml/css, it’s enough to keep me occupied 😉
I realize you’ve got the brand-new company to worry about now, but yours are the reasons that brought me to Google; thousands of engineers chomping at the bit to implement your ideas.