If anyone’s struggling with coding, or just learning something difficult, this post might give you some sort of weird hope.
I can code in a few languages and I have studied computer science, so why when people tell me I’m an awesome developer, do I have the feeling they’re wrong? I usually will respond with something like:
“I’m not great, I’ve just been sat here doing it for longer… you could do it too”.
Funnily enough, those that tell me I’m good are never actually the developers.
A part in Julie Zhuo’s article on “The Imposter Syndrome” resonated with me — the bit where she writes how everyone in her class were discussing how a programming assignment took them just a few hours, and Julie then writes:
"Twenty hours. That was how long the assignment took me.
I’m not great at this, you think. Do I really belong here?”
That was exactly how it was for me. I’m surprisingly bad at maths and programming never came easy compared to my course mates — I was constantly studying that year with no social life, tormented by “hello world”
and system.out.println()
(the very basics of Java), not to mention bonus Pythagoras questions. I thought I was done with maths at high school, and that programming was meant to be drawing shapes on a screen (not typing into a black and white terminal!).
"I just needed to learn code because I loved all the amazing things coding made possible."
There were plenty of times when I felt it wasn’t for me, but I just needed to learn it because I loved all the amazing things that coding made possible — from building my own products and games to playing with effects and animations.
In fact, thinking back to my first programming job, I’ll always remember my lead developer telling me how I was unlike the usual opinionated developer. He just said how it was good that I didn’t care about the code like most others, which is something I never quite understood. I had no qualms with coding the way I was being told, because I literally did not care. That’s when I realised the back end stuff was not for me, and I quit that job to freelance and try my hand at designing and building my own products, where my passion was.
"Code was just the medium with which I could create great user experiences."
Code was just the medium with which I could create great user experiences — it was never about the actual code. I’m not saying it isn’t important, but I couldn’t care less about indentation, how the project is structured, or if we use camel case or not — as long as it allowed me to build something interactive that could engage end users.
Besides, as time goes by you pick up on how to structure the code, but it’s more of a necessity than something I would honestly care about. The same goes with all the frameworks out there, it doesn’t matter whether it’s React, Angular, Backbone, Polymer or anything else that comes out. You don’t need to learn them all, just know about them, and choose the one that fits your need.
Even though I studied computer science, I’ve still found that hard work can only get you so far with coding — eventually you hit a ceiling where natural ability for logic and maths may limit you technically as an engineer, but at least not creatively.
"Having a degree in something may mean you can do it, but not always that you’re the best at it."
The same principle can probably be applied to all disciplines. Having a degree in something may mean you can do it, but not always that you’re the best at it and vice-versa. This may discourage some when it comes to programming, but I’d say anyone can code to a good enough level if they really want to learn, and also have a reason and motivation to do it.
"To come up with an idea, design it, and then build it into a real product was my reason to learn."
To be able to come up with an idea, design and sketch it out, and then actually build it into a real product was my reason to learn how to code.