dont-put-your-dreams-on-hold

Becoming a Programming Expert Is Within Your Reach

I have always really enjoyed building things.

I had a dad who built all sorts of things out of wood. That was his medium when not working on his day job. He built gazebos and greenhouses and decks. He also put things together without instructions.

He got places without asking for directions (before GPS). He would charge off into the woods in search of a stream to fish. He would get into his airplane, take off, get to where he was going, land. All of this was done effortlessly.  He has always acted as though he knew how to do things. He was an expert at everything!

Two Kinds of Expert

Jeweler using a blowtorch while he works on a ring
Jeweler using a blowtorch while he works on a ring

As a dad myself I now know that from time to time he was either “winging it” or had toiled enough at a task way ahead of time to make the task now seem effortless. And much of his success in the now was based on previous successes and failures of past experiences. But ultimately he had told himself that he would figure it out. He had faith in himself to solider on and get through it. But from my point of view looking from the outside in he was an expert at everything he did. I was always amazed.

Over night success is achieved through years of hard work and practice.

To be honest I think there are really two forms of perceived expert in the world. There is the guy that is a deep dive technical genius in their world. They have seen everything. They have done everything. There is no stone unturned. They have forgotten more then you will ever learn. They can answer any question asked.

Then there is the person that isn’t afraid to say “I don’t know.”

They have seen some things. They have gotten their hands dirty from time to time. They have failed at least as much as they have succeeded. They know someone with the right answer, or they can produce the answer through searching and reading. They can eventually answer any question asked.

Different Types of Expert Produce Different Results

Now let’s talk about how valuable these two folks are to me, you, our industry, and our society.

madscThe first person may eventually solve cancer. Or cure world hunger. Or resolve global warming. That would be valuable. But perhaps they learned game changing things along the way to solving one of these world issues – but didn’t actually solve anything? And they didn’t share any of their findings while on their journey. Then died. Their activities unrecorded. Their knowledge lost. Not very valuable.

Take the other person. They have been here and there but not everywhere.  They have done some things. While learning they are also actively sharing their findings. Over time they amass a great deal of knowledge – almost comparable to the guy that knows everything.

Also, as they are putting who they are and where they are out in front of the world for all to see – they are continuously being pushed to be better. They correct any wrong assumptions they have made along the way. They are not working in a vacuum.  Instead they get feedback every step of the way.

Perhaps they solve one of those world issues. Perhaps they don’t. Perhaps instead they contribute to someone else who can tackle the world issue.  But in my mind the guy that is more valuable is the one that gave to the community without seeking anything in return. The person that contributed to the story potentially for someone else in their industry learn from.

Becoming An Expert

As a kid I was inspired by my father to tackle problems head on. Get shit done. No one could stop me but me.

html3As a result of that whatever I was interested in at the time, I was pushing in new ways. Learning all that I could. Never enough to be a truly deep technical expert to the experts of the world, but always enough to be more expert than the majority of the next guys.

One day a customer at Fry’s (while I worked as a technical representative for HP at Fry’s) showed me HTML. It was a very low bar but amazing. He opened notepad and just started hammering out some characters.  With each iteration he would flip to a browser and show me a web page. Back to code. Back to a web page. He was building something out of nothing. How cool was that!? I have no idea if that guy was an expert or not, but to me he was the only person I knew that could type out all sorts of gibberish and make something structured and usable.

Every expert was once a beginner.

I have seen people that knew nothing about a topic quickly come up to speed on something and immediately grab the title of expert.  Being an expert can at times be a context-oriented label.  You can be an expert at something in your peer group. You can be an expert at something in your office. You can be an expert at something in the city you are in. Or you can be an expert at something in your industry. Those are all levels of expert.

Then you can further slice those definitions of expert by vertical slices in our world of technology. You may be an expert at building distributed systems using C# and NServiceBus on MSMQ. You are the expert in this space. However, in a room of Java programmers, you might be reduced to being an expert at the theory of distributed systems but a total n00b at the any of the technology tools they may use.

Apply this to any band of people. People live in groups. Programmers have peer groups, coworkers, city of residence, city where they work, regional groupings, industry groupings, industry sub-groupings, and global groupings.

And programmers have a huge variety of technical options across all of those people groupings. This means there is a very low bar for you to become an expert at certain things in certain circles.  Being an expert at something, which will ultimately help you achieve your career goals, is mathematically accessible to anyone who is willing to put in the work.

All the so-called ‘secrets of success’ will not work unless you do.

So then how do you become expert enough in your area of interest? START!

There is no reason to not be thought of as an expert by someone in a meaningful way. There are so many sites on the internet dedicated to people posting their questions in a given subject matter. For programmers that site might be as simple as StackOverflow. Find a topic that you love, subscribe to the appropriate tag for your topic, and start answering questions. This will force you to do research. And you will quickly find that you are an expert to several people.

Another way is to start a blog. This may be seen as a bit more difficult as there is some technical know how required to set up a blog – even a free one hosted somewhere. Also, this usually requires some creativity on your part to keep coming up with topics to write about. And some research for each thing you want to write about so that you sound enough like an expert for people to want to read what you say.

blog1But the key to either of these methods for becoming an expert is to do it with a regular cadence. Practice answering peoples questions. Or practice observing the world in ways that produce topics for you to write about. Ultimately both of these will force you to get better at doing what you do.

Another slightly more difficult thing to do is to write a small book. Pick a topic that is somewhat in your wheelhouse already.  Then learn enough about that topic to get a high level of understanding about the topic to piece together a table of contents that is three to four levels deep.

Then start researching each of those topics enough to form thoughts on each of the topics. Publish this book in real-time as you add content to it. Give the first few rounds away for free to get feedback quickly. Evolve over time. The key here is that you will start as a new guy. And finish with a published book on the topic. And since you researched all the content in the book you are now an expert in two ways: 1) you likely know more than most because you went wide and deep on the topic and 2) you are now a published author which brings a certain level of professionalism.

The key here is pick something. Scratch a little more than the surface on your topic. Give back to the community. They will criticize you for your efforts. And you will learn by fire. And eventually pop out the other side as an expert in some circles.

The secret here that nobody will ever tell you, but I will.  I have met a lot of industry experts. The only difference between them and you is that they did some work to get where they are. They actively chose to learn something vs. watching the latest TV series. They had a plan to be better than the next guy. And then they did it.

Follow through, commitment, dedication, stick to it and get shit done. In our world, this is the recipe to becoming expert enough in something.

Here is a whole site dedicated to being “Expert Enough”.  You will find a similar theme being mentioned there.

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Andrew Siemer

Chief Architect at Clear Measure. Farmer at Friendly Pastures. Software consultant at Siemer for Hire. Random dude at AndrewSiemer.com. Author of 3 books published by Packt Publishing. Self publishing author of two books in progress at LeanPub. All around programmer dude.