Beware the new shiny
Prefer boring over novel or clever.
It was the first principle my team and I agreed to awhile back, and the first one I shared with you a few newsletter editions ago.
This is one of the biggest mindset shifts from individual contributor to manager, the mindset shift on what code is actually useful for.
When you’re in code all day every day, code is your world, your palette, your canvas. And even the best artist feels the urge to play around with new techniques and mediums sometimes, so you get an itch to try something new and novel.
This is fun! I’ve thrown a PLIBMTTBHGATY meetup myself in the olden days.
But when you manage engineers - and hire engineers! - you have a different set of values you need to keep aligned.
Code isn’t there just to be code and to keep yourself entertained.
Each time you introduce a new programming language or some new overarching pattern or technique, you will need to find and/or train new engineers on that.
And finding engineers already skilled in the new shiny is not only difficult, but those engineers are likely to be the ones that are really attracted to the new shiny and will soon go hunting for another. This can be good or ill depending on the type of team culture you’re building or maintaining.
You’ll need to spend cycles training your existing team on this new shiny.
You’ll find there’s a dearth of documentation and Stack Overflows and Google results for the bugs and weirdness you’ll soon uncover.
New programming languages and techniques tickle the fancy of software engineers but will drive business and engineering managers crazy.
Polyglot environments require training, documentation, and eventually standards and committees to approve new languages.
New languages require you to build things that are already built in all the well-trod and boring languages. You end up writing your own logger - another principle for another time.
It’s a lot of overhead.
And when you’re at a small startup with a small team, you’re like an overbooked flight - no overhead space.
=====
This week on the blog was a piece on the relationship many software engineers have with deadlines and the minefield engineering managers need to walk through to get their teams aligned with them.
That post, like many of my newsletters and blog posts, comes from talks with engineering leaders around Central Indiana.
We grab coffee or lunch, talk about our work and find ourselves circling around a topic or problem for a bit.
When we’re done, I ask them if it’s OK if I write about it and then get to writing, weaving bits of their story into the narrative, but in a (hopefully) non-identifiable way.
I love this workflow!
It aligns super well with my goal to help as many people as I can, and I also find the writing comes more easily because I’ve had to think through a specific situation with another human being instead of wrestling with a blank page.
So, if you’re reading this, and we haven’t grabbed a lunch, or a coffee, or a beer or even a Zoom lately, go claim a time and make it happen.
No sales stuff. If you want to buy regular coaching, you can find it here, but I’m not in the regular business of pitch-slapping folks.
=====
It’s hot af here in the Midwest this week.
And, while I’m not a native Hoosier, I believe it’s officially “It’s hot, and you need a pool” weather.
Grab a Pina Colada (or, #protip, its better cousin, a Painkiller) and go for a dip if you can.
Or post up in front of the air conditioner.
You do you.