I have been sitting on the theme of this post for a while, but I stumbled across two great articles recently that convey my point quite brilliantly. I’ll talk about their ideas, and then cover it off with a few opinions of my own.
Firstly, while browsing General Assembly’s site, I came across On Learning to Code, pt. 1 by Mattan Griffel, a strategy guy from New York City:
When I first quit my job to start my own company, all I had was an idea. The goal at that point was to find someone with a technical background to actually execute my idea. I suspect that many of you are in similar situations. There’s something you should know: it’s never going to happen.
…
Please don’t want to wait around trying to find that perfect technical co-founder. If that’s your goal, then you’re bound to fail as an entrepreneur. Entrepreneurs don’t look for people who are able to execute for them. They improvise and make things happen in spite of being under-equipped.
…
Very quickly, society is becoming divided into two groups: those that understand how to code and therefore manipulate the very structure of the world around them, and those that don’t – those whose lives are being designed and directed by those that do know how to code.
(He subsequently turned it into a Slideshare deck, which is well worth a browse.)
Secondly, Spencer Fry–founder of Carbonmade–wrote a great piece on his blog, From Business Guy to Programmer:
While being a successful Business Guy can be tremendously important for the company, and has more impact than many developers and designers acknowledge, there are times when you cannot contribute to the product as much as you’d like. In the meantime, the makers seldom have a free moment, as a product can always be improved. A new design tweak here. A refactor of code there. The Business Guy is left with an internal struggle: wanting to do all they can do for the company but knowing deep down inside that pulling out a code editor or Photoshop would often be the most helpful thing they could do — and realizing they can’t do it.
…
It’s at those times when an hour in code or design is what’s needed that I’ve wished I hadn’t stopped programming so that I could fire up a code editor and hack away. It’s that feeling of always wanting to contribute to the most critical part of the company at any given time that has returned me to programming.
Spencer’s article touches on my reason for wanting to learn development. I go into this in more detail in a blog post I wrote for Offscreen magazine. 10 years ago, some friends and I wanted to create a website when the idea of a “startup” was barely known, and in fact was a time when people barely used the internet. We knew no programmers or designers, yet I relished the challenge to learn something during my down-time doing my psychology. (Spencer–who switched to psychology from computer science–is right: you get a lot of free time if you do a psychology degree: I would recommend doing and liberal arts-based programme to any aspiring hacker for that reason alone…).
The feeling of being able to execute an idea through to a finished project is enormously satisfying. I admire designers who are also proficient screen printers, or fashion designed who cut their own cloth; who conceive an idea, creates the product (and perhaps even sell) within the remit of her own skillset. It’s really exciting to see a product come into being by yourself.
Of course, it won’t be perfect. I’m not a great developer nor a great designer, and luckily I’m not a perfectionist (at least not when I’m doing client work). That doesn’t matter - it’s the doing that counts. And if the product or idea is a winner, that’s when you bring in a team of experts to help polish it into something great. But because you were the person pulling the initial pieces together, you have more context and knowledge to sell your idea and get people to believe in it, and subsequently, you.
In my mind you need two things to become a nerd. Time, and an idea. That’s all: no specific knowledge or expertise. I didn’t know nor was taught about development or design when I started.
People who complain they don’t have time are paradoxically procrastinating. If it’s something you want, you’ll find the time to do it. Get up an hour earlier, or go to bed an hour later. Hack away or read about hacking away during your lunchbreak.
Then comes the idea. It needs to be simple, but it needs to be something you want to see (something you find useful or which entertains you). It also needs to be something that excites you, since with excitement comes will. If you’re not excited about something, you’ll get bored and give up pretty quickly.
You may need a bit of a kickstart. I’m thrilled that General Assembly has set up in London, and they have a super range of talks and courses to get you started. In fact you might decide to do a full front-end development course with my genius pal Rik Lomas. There are equivalent courses in New York, and I’m certain you can find courses in other cities.
If not, then seek out a nerdy community who will inspire and motivate. If you’re a designer, I wouldn’t choose to attend the nearest Ruby Hacker Group, but increasingly there are groups of folk who span creative and code. In London, check out Dalston Digital; in New York, check out N.Y.P.D who I believe occasionally have meet-ups. Everyone at both is super friendly. If they’re not, tell me and I’ll kick their ass.
Conferences are great too, and are as bountiful as biscuits these days. Brooklyn Beta is an especially good one, who this year are running Brooklyn Beta Summer Camp: an amazing opportunity to get involved with a super crowd of people. $25,000 is a great motivator to learn how to develop while executing your idea.
However you start you’ll get immense satisfaction, even if you find it daunting. Give it a try, it’s fun being a nerd.