Curated Content December 2023

A few pieces of content I thought were worthwhile in the month of December.

Red ornaments on snow and pine, illuminated by lights and trees.
Photo by Stephan H. / Unsplash

2023 was a great year for me both personally and professionally, and I haven't shared enough of it. I'm hoping it's been similarly great for folks reading here.

We've got some good content to round out the year, both technical and non-technical.

Articles

Semantic Versioning is a terrible mistake

Semantic Versioning is a terrible mistake
When I first heard about Semantic Versioning, or SemVer, I thought it was one of those ideas that’s so obviously right that we were all going to benefit from someone having just codified it a…

While I don't necessarily fully agree with the author, I have felt the pain of breaking user-land changes in your libraries, and the pain of maintenance and upgrading.

The idea of never breaking user-land seems interesting, though I'm not sure if what you give up for it is entirely worth it, I'd be interested in attempting to develop software in such an ecosystem.

That said, it resonates enough in various software engineering ecosystems that I think businesses aren't looking at the maintenance costs properly, as it relates to dependencies in the ecosystem.

Build, Buy, or Borrow

This one is an interesting article on the different contexts and rationales that could make sense for a company to acquire another company, versus building a competitive product themselves, or partnering with the organization.

The most interesting highlight for me was the following:

An incumbent has a dangerous kind of information advantage: if they know where to look, they'll see cracks in their model before the challenger knows what's going on. Every big contract renewal is an opportunity for customers to consider their options, and the relative value of those options informs their own negotiating posture.2 So when a challenger product starts really working well, and is a few quarters away from winning some big deals, the owner of whatever product is being challenged will know it’s coming.

This ought to allow them to all but guarantee they maintain dominance, but seems not to pan out as often as you'd expect.

The future of Rails test data management

The future of Rails test data management
A year ago, I created one of the most ambitious, creative, and potentially impactful libraries of my career… and I never told anyone about it. Here’s why

I haven't given the solution Justin Searls proposes here a shot, but I have lived through some of the problems with test factories, and refactoring test suites in order to speed them up, even after parallelizing them (both in Rails and other languages).

Because of that, and the fact that he seems to be a talented software engineer, I think his proposed solutions are worth considering in order to ensure your tests stay fast.

While I'm no longer in Ruby/Rails actively, I'd be interested in seeing how this can be applied to Elixir codebases.

Study: Why a spritz of water before grinding coffee yields less waste, tastier espresso

Study: Why a spritz of water before grinding coffee yields less waste, tastier espresso
“It turns out you can’t cut corners if you want to achieve excellence.”

Not tech related at all, but I recently got an espresso machine that I've been loving, and this is an interesting combination of intuition leading folks to perform certain behaviors and then experimentation and data gathering to back it up.

A great read if you want a quick tip for improving your espresso game.

Books

Hidden Potential - Adam Grant

Adam provides highlights of interesting research, compelling stories, and why you ought to adopt a growth mindset as a manager.

This comes up, and brings up research and stories around, hiring, coaching, and managing individuals in your organization.

Especially if you're at an organization that can't or for any variety of reasons doesn't want to hire folks from, or in a similar fashion to, big tech a world of opportunity awaits you if you look for Hidden Potential.

Conf Talks

No conf talks this month.

Podcasts

No podcasts this month.

Microposts

"The evidence is staggering: From 2020 to 2022, companies with full flexibility led their peers by a remarkable 16% in revenue growth, adjusted for industry differences. And the trend wasn’t confined to the tech world–non-tech companies with flexible policies still boasted a 13% growth advantage.  Companies that follow hybrid models, which blend remote and office work, are also showing their prowess, outpacing fully in-office companies by a growth margin of 3%."

I've yet to see data on return to office (RTO) mandates I find compelling. Most of it shapes up like from this post above from @sleepyfox.

(This is further corroborated in my mind by places like Amazon rolling out RTO without citing meaningful data, despite being one of the most data intensive tech companies on the planet.)

Where is the content talking about contemporary software development issues? Like "How to migrate away from GraphQL?", "Maintaining software that was written by a team twice this size", "HTML and CSS for React Engineers", etc?

A bit of fun for you to round out this year's curated content. I expect that while few of the posts we see over the next year are going to be quite this on the nose, I'm guessing we're going to see a number of these are going to be extremely relevant for many software organizations and to make great conf talks.