Technological Inflation

Posted on 2015-12-09

A discussion on Twitter stirred up my neurons, and I felt this is a good time to put in writing things I’ve been discussing with people in corridors for a long while.

Say hello to technological inflation

Whether we like it or not, it is in my opinion we are in an age of technological inflation.

We can’t recruit easily

Having a fresh memory of trying to recruit just 4 years ago and that of today, the experience is so different that it’s really hard to grasp. It is much harder to recruit today, because we can’t make good from bad.

The amount of shallow experience and skillset out there is astonishing, and worse — it is acceptable because companies are rushing out to try and blitz-recruit just to strengthen their lines or get better valuation.

In big companies, HR presses hard to get that painfully needed signoff, because , if you were to be a mid-level manager, how do you explain to high level management that 100% of people you interview fail?

In small companies and startups, new recruits are being swapped

out in an unpleasant frequency (to both sides) after those companies realize

they didn’t do a good job clearing out the minefield of hype

and buzzwords and _awesomeness_ from those candidates’ CVs.

We can’t make our case properly

As engineers and architects, we feel that every choice should be reasoned about and proven to be the right one; or the smart one. And for a lot of cases, if not all, this line of thought is justified. As the saying goes, “we are the choices we make” — I believe this is true for every product we build, and specifically for the sum of technical choices we make.

Due to that, we must understand that the Paradox of choice overwhelms engineers as well.

For example, within the Ruby community (or any such stable community, and defining what is a stable community is a subject for another post entirely) you pretty much are safe with most of the choices you make.

However, in a typical front-end community, you are so completely lost; and after you made your (by all means correct) choice, chances are

it will be the wrong one after six months. If you are just picking up a front-end stack, do you start out with Angular? but Angular 2.0 is killing 1.x…, how about React? would that be a smarter move? but Angular has plenty of talent out there already…; and that never ends.

The most painful part is, that in our micro cosmos — hype fuels the paradox of choice, And that is destructive. It becomes a vicious feedback cycle. Not only you don’t know what to choose, you also may end up choosing something that is half-baked, bad quality, or unreliable in the long run.

And then it gets worse. Even when you know what’s right, you are peer pressured into that moment’s hype; and everyone keeps parroting the same agenda. Sounds familiar?

Behavioral economics applied to tech

I suspect even the tech community exhibits some of the behavioral economics patterns like any other community.

Here’s one to think about: Open source is ‘free’, and ‘free’ makes people do irrational things I love open source, and I am personally fueled by doing open source (for reasons mentioned below). But let’s ask this for a moment:

  • Do we make the same judgement when adopting an open-source product as we do a product which we paid a license for?
  • Do we judge it under the same constraints?

The answer is — probably not. But now that we know how we behave, we can counter it (seriously, that book is great). And we can judge open-source products with the same pair of glasses as any other product, with a healthy engineering approach (more on that in the end).

Funny thing is, that I wouldn’t even think about that back in 98' when I built my first open source project; as a person who comes from a modest home

with limited resources, my motivation was that I wanted to be able to help out others like me.

But 17 years of doing open source later, open source becomes almost an industry, it’s a whole different beast where the concepts of altruism and freedom are no longer the sole substance that structure it.

As any rich ecosystem it is exploding with options, some of them are completely awesome, and some of them are not.

Sadly, the practice of decision making and making rational choices, didn’t get that kind of love. In such a vibrant environment, sometimes,

we are overwhelmed, pressured, and pushed into a direction which doesn’t match our intuition.

There is hope

Technological inflation, is where our sense of value and the act of judging value becomes useless. Everything is awesome.

Luckily this is how engineers resolve this:

  • Measure twice cut once. Every tool, and every product, should prove itself to your problem domain.
  • Time proven over _just released_. All products need time to mature; no matter what they say. If people are counting on your product, give a serious thought before adopting edge.
  • Some things are just the same but in different packaging. Learn to identify those and stick to patterns and techniques, not tools and frameworks.
  • Test all the f__king time (or really, make a best effort). Prefer platforms that let you do that more easily. Once you have that in place, switching always costs less.
  • Listen to your gut, and test your gut every so often. If you have solid and good experience with a product or a tool, that must amount to something.

The end

In some point in time, you get to a stage where you start seeing history repeating itself.

You see it everywhere. You just don’t bother mentioning it anymore or writing about it. You conserve energy, smile in acknowledgement, point people gently at the right direction, and keep on going. And naturally these are the voices that don’t get heard as much, sans the occasional blogpost (you’re reading it).

If you smiled and acknowledged this, welcome to being old. And wise. And sometimes grumpy. Embrace it :)

Thanks @kensodev for the inspiration and @ketacode for making the first post about it, you guys rock!