An Attempt at Outlining the Many Factors Influencing Developer Experience

Post from September 6, 2022 (↻ October 18, 2022), filed under (feed).

When looking at DX naively, it can seem that it depends on only one factor. Alex Russell recently pointed at this problem when ranting about improving the developer experience of the JavaScript ecosystem by “retiring this language.” But here and elsewhere, is DX only DX(x) (really: DX = ƒ(x))?

No, it’s not. Of course it’s not. Developer experience—Developer Experience—depends on many factors. Here’s a quick attempt at sketching just what factors, each of which can tip the scale. I’m breaking these down into extrinsic and intrinsic factors, because it seems indefensible to assert that an experience only depended on external circumstances. The experience of someone who’s highly motivated is different from someone who’s sliding off the chair.

I’m using the term “product” to denote what the developer would make an experience with. This can indeed be a product, like a tool or service an engineer would use or implement, but also a specification or even a language.

Extrinsic Factors

[I’ve reworked this section, playing with the rough general areas of (technical) quality, usability, and community. Please share your thoughts!]

Quality

Usability

Community

Intrinsic Factors

❧ Recall the theory: Any of these factors changes the developer experience.

And recall the premise: This is a quick shot at DX factors, to fend off the idea we can fix it by changing one single thing. We can’t—we probably need to fix more factors. And then it may still be broken by another. Developer Experience needs to be approached holistically—for it’s much more complex than just DX = ƒ(x).

Many thanks to Thomas Steiner and Francesco Sciuti for reviewing and sharing feedback on this post.

As they near the northern marches of the kingdom, a change in the weather adds to their discomfort and increases Gawain’s bitterness.

Figure: Not a good knighthood experience. (Copyright King Features Syndicate, Inc., distr. Bulls.)

Toot or tweet about this?

About Me

Jens Oliver Meiert, on September 30, 2021.

I’m Jens, and I’m an engineering lead and author. I’ve worked as a technical lead for Google, I’m close to W3C and WHATWG, and I write and review books for O’Reilly. I love trying things, sometimes including philosophy, art, and adventure. Here on meiert.com I share some of my views and experiences.

If you have a question or suggestion about what I write, please leave a comment (if available) or a message. Thank you!