DEV Community

Cover image for Write clean code and avoid the distractions of emerging technology

Write clean code and avoid the distractions of emerging technology

Ben Halpern on January 14, 2018

I see a lot of newer and intermediate software developers proclaiming a big interest in an array of emerging fields. AI, ML, you have it. For bette...
Collapse
 
jfrankcarr profile image
Frank Carr

Please send this out to recruiters and hiring managers who have come to demand highly specific skill sets to even get your foot in the door.

Collapse
 
shalvah profile image
Shalvah • Edited

Can I like this post twice?

This is exactly the principle I try to practice too. Every day, there's so much buzz about AI, ML, PWAs, Web Assembly, Bitcoin, blockchain, and now something called quantum computing. Every new thing is heralded as the "future of software development". These are very wonderful technologies, but they used to overwhelm me, until I realized it's best to be focused. One step at a time. Choose a path and grow in it, while merely observing others.

I just have to be careful so it doesn't just end up as me refusing to leave my comfort zone.

Collapse
 
ben profile image
Ben Halpern

Can I like this post twice?

There's the heart and the unicorn, so yes. πŸ™‚

Choose a path and grow in it, while merely observing others.

This is big. I read a lot of dev.to posts on areas I don't do any work in, and this is just right for me. If I get involved myself I have lots of cues for where to look, but I don't overwhelm myself by getting involved in every new thing. And it's especially troubling for newbies to think they need to based on FOMO and other (very natural) insecurities.

I just have to be careful so it doesn't just end up as be refusing to leave my comfort zone.

I find the way this goes is that I get this way from time to time, but break out of it naturally and ultimately the right things find me at the right time.

This post was inspired by observations of some newer developers getting spun around about all the emerging stuff and feel like they have to learn it all before being ready to contribute to the kinds of problems they'll have to face for the rest of their careers. This applies to everyone, but new devs: Slow down and get productive with the old stuff. It ain't going away any time soon and when it does come, you'll see a lot of familiar patterns.

Collapse
 
ijebusoma profile image
Vanessa Osuka

Yupp! Spot on

Collapse
 
alysivji profile image
Aly Sivji

Perfectly said!

Might I share a link to my review of Code Complete. It's the best book I read last year. Steve McConnell taught me many timeless lessons about programming.

Collapse
 
weejavadude profile image
Ron L

Timeless book along with the progmatic progammer and clean code. Have to check out you review

Collapse
 
josheriff profile image
Jose

I was introduced to the "squirrel problem" a year ago, and wrote about it on medium.

But YOU, YOU explain it so much better.

THANKS

Collapse
 
jadjare profile image
jadjare

Excellent post, well said. Knowing the fundamentals gives you confidence that you can always pick up the next big thing even if you skip the current trend.

Collapse
 
evanoman profile image
Evan Oman

Hands down the best Dev.to post I've read (and I've read some good ones).

Collapse
 
ben profile image
Ben Halpern

Damn, thanks Evan!

Collapse
 
sathish profile image
Sathish • Edited

A perfect article for me. Thank you Ben. You deserve more than a πŸ’“. I'm gonna circulate this to my friends.

Collapse
 
t4rzsan profile image
Jakob Christensen

Well put.

The same goes for other tech-stuff. Maybe there is a new camera out with a lot of new fancy features but your old camera is still the same and will always be as wonderful as when you bought it.

OOP was great when you learned it. It is still the same.

Collapse
 
stefandorresteijn profile image
Stefan Dorresteijn

I think this entirely depends on your job title.

If you're just an engineer, don't fall for every trend. Don't even look at every trend until they're big enough to have impact on your work. When the trend is young, documentation will suck and the tech might be useless. When the trend grows, support grows, documentation becomes better and the tech will have time to prove itself.

If you're a CTO, look at every trend, evaluate them and implement them if necessary. You don't necessarily have to care about the future of these tech projects because you're moving quickly enough to phase them in/out at the right time. If a new language, framework or concept allows me to build my MVP or new functionality a tad quicker or more efficiently, I apply it (after a little due diligence.) This does require a relatively modular approach. All our functionality runs off their own applications so I could use 12 different languages and still be fine. Just don't require that skillset in future hires (yet), because they're not going to know it yet.

Collapse
 
asynccrazy profile image
Sumant H Natkar

Really good article. I can relate it due to the fact, that I spent most of my last year trying to learn Angular+Typescript+ES 6+Webpack. But it just became too overwhelming for me after a point of time.

After that I switched to Azure which I am actually working on, and it added value to my existing work.

Collapse
 
hydroweaver profile image
Karan

If you're listening for every signal, you are going to fry your brain and learn very few things at all.

So true! πŸ˜₯

Collapse
 
letsbsocial1 profile image
Maria Campbell

Agree. Focus on what you want to accomplish is my approach. But do be aware of what is "emerging" around you. Great and inspirational post Ben! Thanks for sharing.

Collapse
 
mkgungor profile image
Murat Gungor

Very well said
Thanks

Collapse
 
fullstacksniper profile image
Falola Tele

Wow..awesome post thanks

Collapse
 
ewoks profile image
Beeblebrox

The issue is that #FOMO is sometimes so strong and difficult to resist... :(
anyone with practical tips how to go around this?