Before you read this post, I first want you to figure out which position you’re in: the developer who is explaining or the developer who is learning?
It’s not a trick question. But I would be interested to hear feedback from both sides.
It’s been a year and a half since I began training as a developer. It took me around a year of that to realise how I learn best. In fact, there were a few months in the middle where I really wasn’t sure coding was for me.
You see, when you start coding you generally start with the basics. The real basic stuff. The “hello world” and the animal objects.
Variety of teaching methods
My first point is that there are so many teaching styles out there. And not all of them will work for you.
Sometimes you’ll get a teacher who really breaks it down to the point that once they show you the bigger picture you’re so confused about all the small bits and pieces you’re already lost.
On the other hand you could also get a teacher who repeats “the dog class inherits from the animal class” over and over until you just nod numbly. Similarly I have found that many developers who have been in the industry for many years will use a lot of jargon in their explanations.
Come to think of it, I only realised this myself when a senior developer asked me if I knew what a namespace in c# was. I remember he said “it’s ok if you don’t know”. Despite having used c# for a few months and being fairly confident with the basics, it dawned on me that I’d never realised I didn’t know what a namespace was.
Or… And this is the one I despised until I actually got hired… You could have the teacher who will listen to your question. Then always respond with “google it”.
Theory is useless until you get practical
In my personal experience, it wasn’t until I started on projects that I realised I couldn’t understand the theory until I was putting it into practice. Let’s be honest, how many of us will be building a database for a zoo or pet shop in our day to day lives?
Think of it like driving a car. Or riding a bike for those non drivers out there. Someone can explain the logic behind something, instruct you on how to do it step by step. But it’ll still feel confusing and alien until we actually do it. It’s the same with coding. I love writing notes on notes while watching tutorials but I quickly realised I wasn’t absorbing any of it.
In a sea of resources I had to find which were right for me
When I wasn’t in class I had to start relying on teaching myself. I had access to a website called PluralSight which is a subscription website of online courses. In addition to this I checked out Udemy courses and YouTube videos.
Similar to the variety of teachers I’ve had in my career, these tutorials could very massively. The main frustration was that when you’re watching a tutorial you can’t get real time answers to issues. The second frustration was the length.
This was the point of my career where I realised I cannot cope with a 15 hour code along.
Instead I moved on to blog posts. It’s probably personal preference, but I find that reading a tutorial actually works better for me than listening/watching one. I also get the added bonus of being able to search for the relevant section quicker than skipping sections of a video.
Learning how to google
Do you remember before when I mentioned the “google it” teacher? Well there’s a good reason I struggled with that answer if I questioned anything.
Firstly, I’m not a fan of admitting I don’t know something so when I finally admit defeat… I really need help.
But secondly, when I first started coding I didn’t know what to google. It sounds silly now, but when you get an error in your code, it’s never as simple as “you misspelled this word here” or “you put a semi colon instead of an equals sign”.
Most of the time it’s a big block of read text which makes little to no sense.
And it probably took me several months to realise that most of it was useless anyway.
So when someone told me to “google it” I had no idea what I was googling.
Once I got over that hurdle, I realised that you need to start getting specific. You usually need to state the language you’re using, what the error says, then find a response that actually makes sense to you (though I spent a lot of time copying and pasting and hoping for the best to begin with… I was always way off).