Why don't you introduce yourself?
I wasn't around computers as a kid, and got into programming by accident when I was in my late 20s. I have a degree in molecular biology and biochemisty, but I've never used it for anything. I got such intense satisfaction from dabbling in programming that I ended up diving into that instead.
I'm completely self-taught, and secretly wish I could go and get a CS degree. Until about four years ago, I wasn't really aware of the larger community around programming. After I started learning Ruby, I began going to conferences and meetups. That expanded my world a great deal, and I now feel like I know people all over the world.
What's your career's journey been, thus far?
In my first real job I was actually hired as a potato (you can use them for anything). I did some automation, some testing and a lot of troubleshooting. About three months in, my boss realised that I had gone beyond just fixing bugs, so I was upgraded to developer. I stayed with that company for almost three years, and went from knowing terrifyingly little to being obsessed with automated testing and refactoring. All of this was in PHP.
About 10 months ago I accidentally launched a prototype of a site on practising programming (opens in new tab). I made it for fun, and within three months it had a thousand users. It's open source, and over 200 people have contributed to the prototype. That's been more exciting than any job I've ever had.
Are great designers and developers born great?
Is it all down to the DNA? I think that people's genes can give them a small boost in certain cases, but greatness comes from a lot of really hard, painful work. People who are accused of being born great have often done an immense amount of unglamorous, tedious practising while nobody was watching – because before someone is great, why would anyone watch them?
Sucking at stuff doesn't feel very good, and as a result many people avoid doing things that they're not good at if they can help it. That will prevent them from getting better at it, and so it can feel like magic when other people are truly excellent at something.
And what is the key to achieving greatness?
I wish I knew! My best guess is a combination of edge, practice and grit. There's a sweet spot between your comfort zone and your panic zone where you are right at the edge of your current ability, and I think learning occurs there.
Grit is described by Angela Duckworth as "perseverance and passion for long-term goals", which sounds lofty, but in practice it boils down to just buckling down and doing the thing. It's not really about motivation, it's about getting on with it, which is rarely anything to get excited about.
What's your favourite lifehack?
Currently, it's TinyHabits (opens in new tab) by BJ Fogg, PhD, from Stanford University. He suggests that you can easily create new habits by using a specific anchor in your life that is already automatic, and then follow it with a tiny, tiny action that later will grow into the real habit.
'I will take one deep breath' is a great action. 'I will run for 30 seconds' is a terrible action, because then you have to time yourself. 'I will do 20 push-ups' is even worse if you're not exercising at all, because it's too big. He stresses the importance of making the action so small that you have no mental resistance to performing it. The important thing is the automation, not the action.
Words: Martin Cooper