How to Become a Better Developer by Coding LessBy Andrew McDermott
More from this author
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”
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?
- A Nissan developer was busted for copying and pasting code from Stack Overflow.
- A Quora user asks if they’re a bad programmer because they search through Stack Overflow instead of figuring out problems on their own (hint: this makes him a good programmer).
- Developers asking if it’s bad that they copy and paste other people’s code.
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.
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
“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.
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?
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.
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.”
- Stack Overflow (obviously)
- CodPen(for front-end)
- XDA-Developers (for mobile)
- GitHub via Google’s site search operator and SourceForge.net
- And of course, SitePoint
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.
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.
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.
- 1 6 Things to Know Before Launching Mobile Apps on the App Store
- 2 Three Keys to Being a Productive Software Engineer
- 3 Is It Possible to Write and Run PHP Code on an iPad?
- 4 7 Deep Work Tips That Will Dramatically Boost Your Productivity
- 5 Quick Intro: PhpCompatibility for PHPCS - Are You PHP7 Ready?