Slow Tech is Good Tech

29th May '245 of your Earth minutes

This morning, I watched a video advertising a course aimed at developers. One of the first sentiments proclaimed is that of feeling left behind, that tech is moving too fast to keep up.

I think we're probably one of only a few industries globally that have this problem. I don't see baristas learning how to use every kind of coffee machine, or carpenters buying and using all the different types of wood saw.

I don't see how they could.

I'm sure those industries don't move anywhere near as fast as tech, so it may be a bit of an unfair comparison, but that has led me to a really interesting axiom:

After 20 years in tech, I've learned that slow tech is good tech.

I'm happier when I'm not trying to be on the bleeding edge.

Avoid the shiny

I realised over time that I have been quite a lot more dismissive of "the new shiny" than a lot of other devs.

In the back of my mind I was always kinda worried that I was being left behind because I wasn't learning X or getting experience with Y.

But I've learned over the years that it truly doesn't matter. Why?

Most importantly: users won't notice.

Second: many companies don't have the capacity or desire to be on the bleeding edge.

Finally: my brain still works, I can learn new things any time, when I really need to.

And I learn faster now anyway.

Avoid comparison

It's led me to believe that "falling behind" is a made-up concept designed to sell you stuff you probably don't need. 🌶️

Or maybe it's just human nature, similar to "keeping up with the Jones's".

We're competitive, we compare ourselves to others very quickly.

It's a bad habit though.

I'm here to tell you that it's not just ok to fall (a little bit) behind, it can even be A Good Thing™.

I've been falling behind for my entire career. 😂

I'm probably more behind now than I've ever been.

But I'm also doing better now - in many ways - than I ever have.

Some examples

Laravel

I didn't use Laravel until a couple years after its first release.

When I picked up v4.2 it was using Composer and had started the transition to Symfony components.

It had DI and all sorts of other goodies that earlier versions lacked.

Build tools

I never used Bower/Gulp/Grunt/Yarn; I settled on NPM after the war was over.

I haven't switched to Bun (and probably won't).

I barely touched Webpack thanks to Laravel Mix.

I use Vite, but also hardly use it directly, thanks to Laravel's first-party Vite plugin.

I waited so long on all of this stuff that when I actually needed it, the choices were easy.

Sure, I wasn't there at the front lines; I didn't invent React. I didn't build Vite. I didn't write the Laravel plugin.

But then, I didn't need to, I wasn't building the frontend to the biggest online social network ever or a toolchain for other developers.

Typescript and JS frameworks

I looked at Typescript once.

You can just write plain JavaScript and get the same results.

I slept on Coffeescript, Backbone, Angular, React, Vue, Svelte etc.

Though I've used some of them briefly during my time, I never went deep on any of them.

I stuck with jQuery for a long time because it worked and I knew how to build things rapidly with it.

Importantly, I know the value of these other tools and when to use them.

That hasn't stopped me being able to work on teams that use them heavily.

But I've learned that it probably won't need to be me that's the person who's working day-in, day-out with them. And I'm ok with that.

I use Alpine and Livewire now, as they were built to work with the tools I know and love using, each with a small footprint and easy to learn.

They're more than enough for my needs—and many of my clients!

And you know what? Some of my clients still use jQuery. 🤷‍♂️

The Web Platform

I love seeing the latest features in HTML, CSS & JS.

I'll play with them, but very rarely deploy them.

It usually takes some time before new features are available on ALL browsers and devices.

And even then, billions of potential users are still running older versions.

Yes, it still tickles my curiosity learning new things.

It's intellectually satisfying.

And, yes, proficiency in multiple tools can make you a more valuable asset. 💰

I'm not saying "you should not...", I'm just saying "you don't need to".

What I keep up with

The only things that have been really important for me to stay up to date on are the core technologies I use: PHP & Laravel.

I make it a point to keep my apps up to date with close to the latest releases - mainly for security and performance reasons, but also so I can use the latest and greatest features. 😛

But I rarely upgrade apps in production to the very latest versions as soon as they're available... I always leave it a few weeks.

In that way, my work is not dictated by someone else's release schedule!

That's not to say I don't keep abreast of what's coming in future releases of those tools; they're core to the service I provide and the tools I build, so I would be remiss not to.

Being aware of what's coming is the priority there. But I don't have to have hands-on experience with everything.

Testing early ("beta") releases against existing code is a useful exercise from time to time, but not always required.

So basically I only need to regularly monitor two technologies. Easily done with a reasonably well-curated Twitter or a couple of RSS feeds.

Sure, I keep my finger on the pulse of all the other tech I use, glancing occasionally out the corner of my eye and paying attention when the sources I am more focused on mention them

But by keeping it simple, I can focus on delivering the most value rather than spinning my wheels on all of the superfluous things adjacent to the.

Everything else can wait.

Don't try to learn and keep up to date with everything; pick your battles!

#notadesigner • #sometimesitworks

All content licensed CC BY-SA 4.0  •  Code highlighting by Torchlight