I haven’t done any writing for a little while (officially, since the first Saturday of the month, and even then my hour’s writing time courtesy of the Swindon Freewriters was actually spent plotting charts…), but I do have another creative outlet at the moment that I want to talk about: coding.
Yes, I’m a nerd*.
But I mostly learned simply by fiddling. Most web editors have a WISYWIG (what you see is what you get, aka. plain view), but also have a code button. I simply started changing things; I looked through the code, and began to recognise the format. That’s a <p> paragraph, oh ok…and that’s a <table>, and there’s a <a href “www.writingandcoe.co.uk”> link…so that’s the <h1> title, and then if I go into the CSS I can see that the <h1> is bold and larger size and ooh look, I can turn it colour:blue; – and it goes blue! Whee! So what happens if I change that…ah. Um. Ctrl+Z? Ummm, nope. Ok. Restore saved version and try again!
I admit, I love coding. I absolutely love the feeling of getting something working. I get the same high as I get from writing when I write code and it does what I want. I get ridiculously happy in the moments when I’ve spent an hour trying to figure out what’s wrong, and I work it out. I love being able to make a change and see it happen. I love the languages, the formats, the structure and the ability to explore and experiment, the fact it changes with every iteration of the language. I really admire the W3, and that fact that so much of the languages and the whole coding and formalities are crowd-based and anyone can chip in, anyone can understand. Coming from someone who is very disillusioned by politics due to the lack of ability to participate***, who felt that so much of life is the preserve of people with something I didn’t – one way or another – have, the fact that you can simply learn coding yourself and understand it well enough to be able to understand and participate in this amazing community is still a constant surprise to me.
I also love the teaching and learning process. I love that there is always more to learn: I will never be good enough, and that’s amazing. There will always be better ways of doing things, and everyone I speak to helps me with my understanding. On the flip side, I was recently absolutely floored by the realisation that I have suddenly got good enough that I can help other people, and that I am that person I have been looking up to for the past few years. Last week, a colleague brought across several pages – and I could see the errors, and see where it had gone wrong, and point her at how to fix them.
And that’s probably the most important thing in coding for me. It’s a sharing experience, and it’s a learning experience. I won’t fix my colleague’s errors for her: I’ll point out the problem, and point her at how to fix them; I’ll be there for when she needs help; I’ll happily show her how I would fix it – but she needs to know what the issue was and what the solution was for next time, and so I won’t just make it all better. If the people who taught me had just fixed my errors, I wouldn’t know what to do when I saw them again.
So for the past three weeks, I’ve been coding for three days a week(…ok, four-and-a-half. Don’t tell my two-days-a-week-boss). I have done coding before, fairly obviously, and I’ve coded several sites from scratch. But the fact I am getting paid to do this, and the fact that it is all I am doing – sitting blissfully in the corner of the office with my headphones in, tapping away – is still astonishing to me.
So there you go! I haven’t been writing novels, but I have been making things change colour and resize and display what they’re meant to instead of error messages. It’s just as creative, in its own way!
* I was told this in some astonishment by a colleague. I just looked at her and said “I am ridiculously happy because my menu goes bold when I click on a page. Of course I am a nerd!”
**I may have opinions about things.