Every day for the past week I have come to a point where I’ve had to accept that I would not be able to do any more programming that day. Either because it was getting late or because my brain was fried. Every day I have, with great regret, closed down Visual Studio and Unity3D and tried my best to put my current task out of my head. Every day it has been nearly impossible. I have never been so in love with a job – and I’m not even getting paid for this one.
This shouldn’t be a surprise to me. This should have happened years ago. If there is one aspie tendency in me I have never questioned, it’s a penchant for logical, systematic reasoning. As much as I am driven by emotion, and as much as I geek out on relationships, I even approach my feelings systematically. No wonder I’ve taken to programming.
But it was a long time coming. Programming isn’t something you can do just a bit of, now and then, like repotting plants. Working on a bigger project entails building a whole virtual world in your mind and holding it there. I can’t quite describe the feeling; it’s like … a miniature glass castle. Parts blur and obscure other parts, and it’s fragile and sharp to the touch. You need to hold it gently, and you need to be able to twist and turn it, and look into each room and see how they connect.
It’s an entirely different mode of thinking, and while it makes perfect sense and comes easily enough to me, it’s not something I can just slip in and out of at the drop of a hat. (By the way, this isn’t something particular to me. Interruptions significantly lower productivity of programmers.)
If you’ve read my post about how my brain works, you’ve no doubt made the connection: It’s very, very hard to become a programmer when you can’t focus.
A Slow Awakening
In truth, I first started on this path twenty years ago, when I was 13 and had just discovered the wonderful world of the internet. I learned HTML from a tutorial I found and built website upon website. A few years later I started looking into CSS and then … and then nothing. I thought I was supposed to be a biologist, then I became a beekeeper.
There’s definitely a big part gender-related conditioning here. From the complete lack of role models to the problem of how, as a girl, I was taught to avoid failure, it’s no wonder that programming never even occurred to me as a career path until just a few years ago. But at that point it hit me like a brick in the face: Beekeeping had taught me that I love working with my hands, making things, creating a product I’m proud of. And what better way to combine this with my love for technology and logic than to become a software developer?
So I started studying .NET development((Why not Java? It was a bit of a toss-up, actually. In the end I went for .NET because I knew there were more competition for the Java programme, and because the majority of programmers among my acquaintances were .NET developers. Now, I absolutely adore C#, but I’m sure I’ll learn Java soon enough.)) at a vocational school, and it was immediately obvious that this was My Thing. It wasn’t just that I’m a quick learner; so much of it just seemed to make intuitive sense to me.
The problem was that my brain still couldn’t cope. The moment a task wasn’t interesting enough for hyperfocus to overcome my anxiousness and inattentiveness, I couldn’t do the work. And it is with programming as with all other skills: If you don’t do the work, you won’t learn. Sure, basic syntax I picked up in a matter of weeks, and I had no trouble with the logic – but to understand the intricacies of the .NET framework you need to actually build stuff with it.
On top of this, I came to realise that I really don’t do well in a classroom environment. It is probably the absolute worst place for me to learn anything at all, regardless of how interested I am in the subject. So, for a year or so, I gave up. On my studies, on myself, on everything. On my dreams of becoming a programmer.
And then, two things changed. Firstly, I finally got the help I needed to get out of my anxiety-induced paralysis, and to manage my attention disorder.
Secondly, I started hanging out with game developers. And this is vital.
The Right Connections
Originally when I started looking at programming as a profession, I had been turned off the games industry because of reports of over-worked, underpaid programmers. I heard that you were expected to put up with worse deals than any other developers purely for the opportunity to work with something you are passionate about. And, frankly, after many years of just about getting by and frequently having to ask my parents for money, I thought I wanted a nice cushy job in a safer sort of business.
But as I got to know some game developers, I realised a few things: Game development is full of my kind of people, meaning that I might actually enjoy the company of my colleagues. And, on top of that, I remembered that need to be interested in the product I’m making to be truly happy.
Sure, I could do probably do well enough working on some obscure back-end part of the internal systems of some insurance company. But that is a far cry from the devout fervour with which I am currently throwing myself into VR game development.
I was never very good at doing things just to do them, which is what most learning techniques seem to be about. And back when I was constantly worrying about doing things well rather than doing them at all, I was too scared to even try to start my own projects.
But the stars have aligned: I finally don’t hate myself. I can focus. I have tasks that interest me. At 30+, I’ve finally found my calling, and to hell with anyone who thinks I can’t make it because of my background, my gender or anything else that’s atypical.
There are awesome times ahead.