Geek Culture
Published in

Geek Culture

Moving the Goalposts

…to make sure you’ll never become an expert!

Archive footage

As if it’s not bad enough that business requirements are generally kludgy, software developers have a tendency to make life as difficult as possible for themselves. Yes, I’m talking about the ever-changing landscape of software development, with a plethora of new programming languages, frameworks, libraries, and what have you. How many ways are there to skin proverbial cat? Let’s find out.

Maximum Requirements

Image from

If you spent any time at all searching for a developer job, you’ve seen an example of an all-encompassing job description. All the buzzwords are there: They want a front-end developer, with experience with .NET, Java, Python, Ruby on Rails, all of the front-end frameworks, including jQuery.

That’s the real problem: by reading a JD, one should have a clear idea of what the position is all about. After reading these “catch-all” JDs, one can’t help by wonder what are they building over there?!

Frameworks Cacophony

It seems that every developer and their grandma out there is releasing a framework/library these days. That’s especially true in Frond End development, where I — unfortunately — live. What’s all this noise about? Why don’t we — developers — concentrate our efforts on creating a stable platform that everybody’s going to use? It seems that instead of going deep (into a field), we are going ever wide, with no end in sight.

There’s a term for that, and it’s called “Digital Prospecting”.

Need for Stability

In order to become an expert in any given field, the field needs to remain stable long enough so one can conquer it. If the goalposts are moving too often, one’s chance of becoming an expert is diminishing with every move. As soon as you gain some knowledge and expertise in any given domain, well — things change, often dramatically.

Herd Mentality

We, as developers, praise ourselves to be fairly intelligent. That may be true on an individual level, but as a group, we behave as any other herd.

Image from

By doing so, we only shoot ourselves in the proverbial foot.

The Elusive Expertise

So, how can you possibly become an expert in a given field, when all of the above is conspiring against it? One for sure can’t follow all of that.

  • Learn about core programming principles, don’t worry too much about the newest hype/fads. If they’re worth it, they’ll become mainstream.
  • Focus on algorithms and data structures. Everything else is just noise.
  • Understand that as a developer, you’re just labor for hire. You have no say in the project, you’re not a stakeholder.
  • Businesses by and large don’t care what stacks we use. For them, it’s all about deadlines and finished projects. Why don’t we, as devs, make our lives easier and be a bit more focused?
  • Sofware development is a great field, but the way it’s implemented is just chaotic. Find your niche, don’t try to conquer everything.
Image from



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store

“The only person you can’t learn from is yourself” — Anonymous