Thoughts on Proficiency

When I was about thirteen, we had, as part of our English curriculum at school, a class on writing telegrams. The idea was to teach us how to write in concise form, with as much legibility as possible.

At that time, I was already somewhat good at the English language and started off the lesson with some gusto. The first task was to write a telegram about a house on sale. (Why? I dunno.)

The ask was to describe the house, throw in a price, and get away with the least number of words as possible.

Most of my colleagues wrote the following phrase –

Three bedroom one bath STOP

Where as I, thinking I’m smarter than the rest, wrote –

Three bedroom bath STOP

Now, in my mind, this was perfectly acceptable, but my teacher was quick to point out that there is a lack of clarity as to whether my house has three bedrooms each with a bath attached, or in fact, three weird rooms with a bathroom built into them. It was embarrassing in the moment, but a great lesson for me.

There’s a famous quote, which since I’ve forgotten, I’ll paraphrase here. It goes something like, “if you want to change something, you have to master its basics first.”

The gist of it remains with me to this day. When, nowadays, I see people using English in every shape and form, bending it to their will, I notice this trend more and more – people who are proficient at the language are able to bend it better, so that they do something innovative and fresh, yet are easily able to get their point across. On the other hand, people who are yet learning the nuances of the language are also using all kinds of shortcuts and short forms because of the restrictions put on us by messaging systems and twitter. But these latter people are often not able to get their message across clearly.

This is not to fault people for whom English is a second language. I recently saw a meme that said that if you see someone speaking broken English, have more respect for them, because it means they know some other language as their first language. Chances are, you who are judging them will not have the exposure and mental agility of knowing a second or third language.

Regardless, when people stick to the basics, they are able to make leaps and bounds of progress to build upon. This is true for pretty much every system/language/process in the world.

Have you ever come across a badly written passage by a neural network and it’s very easy to tell that it’s computer generated? What made you realize it’s not written by a person? There would be some basic level language mistakes made by the software which you’d pick up immediately. This gives people working on NLP a clear direction – make your algorithm better at the basics of the language, and teach it fifth standard level coursework instead of Shakespeare.

Recently, I was writing some code in JS. Whenever I’m writing quick getaway code, I opt for a simple for loop. But this one time, something irked me. Writing the same code over and over again is good muscle memory, and it frees up mental space to think about ways to improve one’s process (cue hat tip to Atomic Habits by James Clear, which I heard recently as an audiobook during a road trip). I started looking at map, which is a function I’ve gazed at before, but never bothered with. As it turns out, map fit perfectly in my code, as I wanted to apply the same function on every item in the array. So I replaced the for loop with map, and from then on, I’ve started looking at other things, like filter, to further remove the for loop from my code.

I’ve probably written hundreds of for loops over the years, across many languages and projects I’ve worked on. But it took that umpteenth for loop in JavaScript to get me to a point where I was comfortable with replacing it with something better. If I was a Software Engineer by education, I might have known about, and used map and filter all these years.

But since I came to programming as a tool, I first went through years of the basics, repeating them, partly in a fog of ignorance, till I was aware of my own abilities, and hankering to change things for the better.

There’s a flip side to this – I hate reading documentation. I rather jump into learning by doing. This is not just true for programming. I hate looking into English grammar. I can never tell you about what is a pronoun, what’s a participle, or what is the correct spelling of a complex word. But that doesn’t stop me from using English in my own writing, thinking, and blogging.

When I talk about focusing on the basics, I’m not talking about the grammar and structure of whatever it is you’re learning. I’m talking about the every day basics of doing. Focus on those, and once you’ve mastered those, you’ll be able to soar.

What do you think?

This site uses Akismet to reduce spam. Learn how your comment data is processed.