Entrepreneur
Article
By Andrew McDermott

How to Become a Better Developer by Coding Less

By Andrew McDermott

Impostor in disguise

Developers are frauds.

At least that’s how it feels. Many developers feel it. The inadequacy, the feelings of failure. That somehow, you’re not as talented as those around you.

The feeling that you’re an impostor.

Over and over we hear from talented developers who aren’t able to shake the feeling that they’re frauds. Talentless hacks who simply can’t measure up. Almost as if it’s a dirty secret they’re doing their best to cover up.

“Don’t let ‘them’ figure out you don’t deserve to be here.”

The Burden of “You Don’t Deserve It”

It’s a heavy load most of us carry. The fear, doubt and despair that drives you to dot your i’s and cross your t’s. Most of us struggling with impostor syndrome carry that burden most of our lives.

Pundits tell us that impostor syndrome is a sign of greatness.

But it feels like a lie.

Some of us swallow that lie, we’re able to function, to continue on in our careers. Recent studies suggest 70 percent of us have impostor syndrome. We’re all slowly being crushed by the weight of it all.

Here’s the thing. Impostor syndrome isn’t automatically a sign of greatness. It’s a sign of something deeper.

Impostor Syndrome Isn’t a Sign of Greatness

It’s a sign of malnutrition.

It’s a sign your needs — creative, intellectual, psychological — aren’t being met.

How do I know?

Anyone who’s truly achieved mastery in any subject area knows there are gaps in their knowledge. They know enough to see where they are and how far they have to go.

They’re well fed — creatively, intellectually, psychologically.

They analyze these gaps, testing them, exploring them. They seek to understand the limits placed on them. They learn from those around them, drawing on the skill of others to learn and grow.

Here’s the part that’s frustrating.

This is a skill most developers aren’t taught. That’s unfortunate because these are the skills they need to overcome impostor syndrome.

Their Career is Frustrating Because They Don’t Have a System

Tools like Stack Overflow and Codepen.io are helpful tools, but they’re also a double-edged sword. Most of us, instead of absorbing the tips these sites share, simply copy and paste.

Sometimes it’s necessary.

Sometimes you’re in a situation where you have to do what you can to get a project done.

But impostor syndrome is still there.

Can you see it?

These people haven’t done anything wrong.

The vast majority of developers work hard, they’re supportive of the community and they’re loyal.

But they don’t have a system.

Have You Ever Had Developer’s Block?

It goes like this. You decide you want to build something. You sit down, fire up your IDE and then… nothing. You sit there and you can’t concentrate.

You’re trying but nothing’s coming.

Sound familiar?

Read articles on developer’s block and they’ll share tips like: Push it out of the way, scratch an itch or just get it working. Those ideas can work but often times they’re hit or miss.

They don’t address the source of the problem.

Greatness, whether it’s beautiful code or a practical piece of code, isn’t innate. Greatness comes from structure.

A-list movie stars, public speakers, soldiers, athletes, you name it. Their success is engineered.

What does that have to do with developers and impostor syndrome?

All-Stars Follow a System

Here’s the interesting thing about people performing at the highest levels. They don’t rely on what they think they can do, how they feel or what others say about them.

They think about the outcome they want, then working backwards, they create a system that helps them get there.

It’s the system that’s so special.

This isn’t a system you use simply to create something. It’s not a process you use to actually do the work, you probably have that already.

It’s a system that helps you learn.

The system they use helps them take in dramatically large amounts of wisdom, knowledge and understanding. The raw ingredients you need to develop creativity and expertise.

For most developers, this isn’t even on their radar. Not because they’re ignorant or dumb but because they weren’t told. It’s this missing system that creates impostor syndrome and developer’s block. When this problem hits, most developers follow conventional advice, they power through. They continue coding.

But the solution is actually the opposite.

You Become a Better Developer by Coding Less

Sounds crazy.

“How does doing less work help me?”

Because you’re starving. Struggling with impostor syndrome at times? Feel like you’re running into developers block or feeling that you’re just not as good as everyone else? You’re creatively and intellectually malnourished.

I know how it sounds.

Let’s pretend for a moment.

Imagine you’re asked to run a marathon. You’re given a sponsor, professional grade equipment, the finished coaches and trainers, etc. If you win the race your sponsor promises to give you $300,000, tax free. Sounds doable right?

Here’s the catch.

You can’t eat food or drink water. Nothing for 20 days before the race and nothing for 20 days after.

Still doable?

No.

Developers are running a marathon without “food.”

Yeah, we have Stack Overflow, CodePen and lots of other sites we can reference and learn from. We reference these sites all the time, we use these sites to find what we need.

There’s no way we’re malnourished.

Here’s the thing. If you walk into a restaurant, order some take out and put it on your plate, are you full?

No.

If you want to be full, to feel satisfied, you have to actually eat it! Groundbreaking I know.

It’s no different for you.

Developers are expected to create miracles on a daily basis. You’re expected to just make “it” work. But you need inspiration, practical know-how and education to make that happen.

Not just details you’ve read about, but a consistent stream of fresh ideas you’ve taken in. Ideas you’ve experimented, tested and tinkered with.

Why?

Because you can’t give what you don’t have.

If you don’t have the nourishment you need, you don’t have the nourishment you need to create. Which means it shows in your work.

If you’ve looked at your old code and felt embarrassed you know what I’m talking about.

Well-Fed Developers Always Have More to Give

What if you’re malnourished? Is there anything you can do to become a well-fed developer? How are elite developers able to consistently, automatically create beautiful code and amazing apps?

They create a list of places to “eat.”

Obviously this list isn’t comprehensive.

It isn’t meant to be. It’s simply meant to get things started. Use this list, modify it or build your own. Follow influential developers, spend time lurking around on these sites.

On Facebook or LinkedIn?

Find and follow the people, groups, apps and projects that interest you. Developers tend to feel guilty for browsing instead of working. Ignore the little voice in your head. As you browse through other developer’s work, take mental notes.

  • Anything jump out at you?
  • What kind of tips and techniques do you like?
  • Can you explain why if you had to? Think about your answer.

As you’ll see in a moment this is indispensable.

You’ll need a service to save and bookmark the things that appeal to you. I use Pocket to bookmark anything and everything I find. It’s fast, simple and easy.

Here’s the part that takes a bit of discipline.

I tag anything I find using the same set or type of tags (e.g. PHP, classes, function, etc.) This is important because it enables me to quickly find the resources and details I’m looking for later.

Once I have the initial set of classification tags (e.g. PHP, function, classes) I use descriptive tags (e.g. class_parents) to clarify what I’m dealing with.

As your personal library grows it becomes more difficult to find what you’re looking for if you neglect to use tags.

You’re ready. It’s time to…

Choose the Items You Want to Steal

Am I suggesting you go steal someone’s work illegally? No. Am I asking you to share, post or use someone else’s work commercially without permission? Absolutely not.

I’m suggesting you copy their work privately, to learn.

Why?

Because everything is a remix.

Kirby Ferguson, a New York filmmaker, created the series everything is a remix where he shows that all “original” material builds off of or remixes material that came before it.

Nothing is new.

It’s all just an iteration of someone else’s work. As people, everything we create — movies, gadgets, games — are all based on and influenced by other people’s work. Kirby discovered that legendary creators used a really simple formula to consistently crank out amazing things.

Copy, transform, combine.

This is how you deal with developer’s block and impostor syndrome. All of our accomplishments, our favorite stories, amazing apps, technological advances, they’re built on the backs of those who came before us.

They’re just remixes of other people’s work.

Legendary producers in every industry use this simple, but easy-to-miss formula.

Transform What You Steal

Take in someone else’s code. Copy their ideas. Mix and match it with another idea you’ve copied. Combine your transformations again and again, merging them together until you create something completely “new.”

Here’s the secret.

Doing this is how you “eat.” Doing this successfully makes the learning, the details, a part of you. Do this enough and you start to absorb the little things that can’t be taught. Which limits can be bent, which ones can be broken.

Copy, transform, combine.

This system makes impostor syndrome and developer’s block a thing of the past. As long as you use this system and you continue to be a student, you’ll find ideas are everywhere.

You’ll become the developer you’ve always wanted to be, all because you followed a system.

Ignore this system and your skills begin to fade away.

The amount of time it takes for you to lose a skill is proportional to the amount of time it took you to acquire that skill. The more consistent you are with your system, the deeper your developmental roots and the harder your skills are to lose.

Starvation Leads to Impostor Syndrome…

And developer’s block. As a developer, you’ve experienced it at one point or another. This time it’s different. You understand the cause — you won’t be stuck in a rut forever.

You have a system.

A system that enables you to create the things you want. The same amazing work you always do. The look and feel is different, but the result is the same.

Legendary.

When it feels like everyone else is doing a better job than you, you copy, transform and combine. You look around. You see all of the beautiful and amazing things you’ve created and you realize…

You’re no fraud. You’re the developer you’ve always wanted to be.

  • Rj Haughton

    That was amazing, thank you for that read. I find myself with my best friends, we are all in our 20’s but I own a startup and have one partner same as my other friend and yet they are way better and smarter. I always rely on them without figuring it out for myself and it sucks. But at the same time I hate not learning. I am being a hypocrite to my own feelings. I guess I gotta “eat” lol. Thanks again man. Really aspiring. I’ll be talking to you again.

    Rj

    • Awesome! You’re welcome RJ. You’re kind of eating in a way. You’re learning from your friends, right? I do my best to avoid falling into a rut where I beat myself up. Don’t let yourself fall into that trap! Don’t give up. You’ve got this.

  • Awesome read!!

    I always feel like an imposter and try to learn new techniques from alot of the sources mentioned. One of things I try to do is deliberately use something I find that I like. I read an article on David.walsh blog about essential JavaScript functions. One really stuck out to me and have since used it on a couple of projects. It felt very satisfying and I walked away feeling a little “fuller”. I now know why :)

    • Nice! Glad you got some good things out of this Rob.

      I see what you did there with feeling “full.” It seems like you have an intuitive understanding of copy, transform, combine. Just keep doing what you’re doing. You’re on the right track! :)

  • Ross Z-Trigger Clutterbuck

    Interesting. My personal feelings of inadequacy come from everybody around me obsessed with using other people’s code rather than writing their own. My employment prospects are grim because I’ve been writing my own code for 20 years, rather than relying on jQuery, MooTools, Angular, React and whatever unnecessary fad is fashionable at the time.

    And yet my peers say “how can you call yourself a professional if you don’t use jQuery?”. So am I somehow inadequate because I write my own code and enjoy the experience of problem solving, rather than letting some monolithic framework do it all for me?

    • That sounds brutal Ross. :/ I see what you mean about the obsession with other people’s code. Being a purist is a very good thing in the right environment. That doesn’t make you inadequate, just different.

      I ran into a vaguely similar problem early on in my career. This changed for the better when I discovered other people who were just like me. You can carve your own path.

  • Charles Muzonzini

    Great article! Nice that yoy also use Pocket to save bookmarks to build a programming knowledge-base. I use classification tags as you described. Please may you clarify the part about using descriptive tags:

    “Once I have the initial set of classification tags (e.g. PHP, function, classes) I use descriptive tags (e.g. class_parents) to clarify what I’m dealing with.”

    • Thanks @charlesmuzonzini:disqus! I love Pocket. Let me clarify what I mean about tags.

      Classification tags tell me what something is
      Descriptive tags tell me what something does

      I add anything else I can think of after that.

      Hope that helps.

  • Ann Smith

    Can people really get by in the tech world with such lack of confidence? Sorry, but it must be the “bro-culture”, that’s all I can think. Today I followed a Sitepoint link to an author who is otherwise busy getting a Masters in Philosophy, has strong writing and marketing skills, and apparantly good coding skills too? Yes, people can wear many hats but there is a lack of transparency about the way people ‘market’ themselves.

    • The links I shared throughout the article are from talented developers with established careers. It’s funny that you mention “bro culture” as the imposter syndrome was discovered by two women. What’s also interesting is the fact that their research shows women are especially prone to imposter syndrome.

      Maybe it isn’t about gender and transparency and more about incomplete comparisons (e.g. comparing yourself to someone else when you don’t have all the info).

      What do you think @disqus_GVZB4qHZPc:disqus?

      • Ann Smith

        Comparing oneself to others without a larger context surely contributes to irrational feelings of inadequacy. ‘Getting away from oneself’ or stepping away from the code, as you suggest, is an answer that holds true for all professions, not just tech. Lack of confidence as a human trait is an understandable and common mental state, to me feeling a fraud is more specific, and in my opinion is a troubling reflection of our transparent and image-obsessed culture.

        • @disqus_GVZB4qHZPc:disqus what you’re saying makes sense. I agree stepping away holds true for all professions. Thanks for clarifying your thoughts.

Recommended
Sponsors
Get the latest in Entrepreneur, once a week, for free.