We’ve all heard about the 10,000 hours it takes to get good at something. Maybe it’s 10k blog posts or 10k lines of code for you. The point is that you aren’t great till you’ve been doing it a long time and produced a bunch of terrible work.
A great article takes this idea of sucking at the beginning in writing and gives us permission to suck. Of course you’re not good, you’re learning.
I’m not sure that we extend this ‘beginner grace’ to new programmers though.
Becoming a ‘Blogger’
Being a ‘learning’ blogger is pretty accepted you just put your content out there and people read it (well if you’re lucky they read it). Really the first people to read your blog are probably your Mom and a few friends. That’s hardly a critical audience.
You’re starting and you suck and they know it and that’s alright.
You know what? My second blog post sucks, too; and the third. In fact, I have tons of sucky blog posts. Even today, I have a pile of documents full of sucky writing that will never see the light of day, and I’ll be adding to it tomorrow with more half-baked suckery.
There is a difference when you start putting code out there though. It’s unlikely that your Mom or Dad is a programmer. Your friends probably have no idea what you’re talking about as you try to discuss Object Oriented development versus Procedural Programming.
The first place you are putting some code out in the public is probably a forum, or on Github. The people looking at it are often experienced programmers. Many have done their 10k lines of bad code. This is hardly a non-critical audience and they are unlikely to remember that they sucked once.
My First Online Discussion about Code
Many years ago now I was a fledgling programmer who didn’t know how much I didn’t know. I had plugged in to a local Ruby programming club. Talking with one of the fellow members the topic of script ordering and optimization came up.
With my new found knowledge I took a look at WordPress only to find that most scripts were being loaded at the top of the page. Just like you, I was aghast and set about trying to figure out how to load scripts in the footer.
Naturally I asked in some forums where I felt a bit safe, and what happened? Well I got ‘blasted’ by a recognized member of the WordPress community for worrying about premature optimization. I was ‘wasting my time’.
In all honesty I felt like a total idiot and really was unsure if I wanted to stay with this coding thing. Heck it didn’t feel good to be told I was an idiot. I already knew I was a beginner, I knew there were lots of things I didn’t know.
I only stuck around with WordPress because people like @andrea_r found me and encouraged me to stick with it.
Giving some more grace
Some of the most arrogant people I’ve met are programmers. To be a good programmer you need to have a certain level of confidence in what you do. A tentative programmer won’t ever really solve issues, they’ll just beat around them a bunch.
Without confidence we would just talk about coding and building software, but never have any results. It’s confidence that takes you from talking to actually writing code.
We need to remember to temper that confidence with a realization that when we started, we sucked. We need to extend that grace (read permission to suck) to those we encounter that are beginners.
No that doesn’t mean we don’t correct bad code, but we need to be careful of the tone we use. It’s so easy to read the wrong tone in to online conversation.
But I’m just being honest or I’m just being me you say. Well go be ‘honest’ and ‘you’ and a jerk somewhere else. Almost every time I encounter those statments it really just seems to be a justification for poor behaviour. 2 year olds feel entitled to act poorly without regard for anyone else’s feelings as well, and you are probably just acting like a 2 year old.
I know that if grace wasn’t extended to me as I learned, I wouldn’t be building stuff with WordPress today. Maybe I would be programming, maybe I’d be cutting lawns, but I wouldn’t be in the WordPress community.
Let’s not chase our next potential stars away.