Thoughts on Thoughtworks vol 31
By bob on
Thoughtworks Technology Radar is part of my regular reading to stay on top on the latest tools, techniques, platforms, languages and frameworks. The latest issue, volume 31, came out three months ago, so maybe "stay on top of things" doesn't apply here. Maybe I can get this post up before vol 32 comes out.
The subjects of the document and their "rating" of adopt/trial/assess/hold are the opinions of the group publishing it, so this post is my opinions about their opinions. Opinions all the way down, the kind of quality you won't get from an LLM.
Techniques
1. 1% canary (adopt)
Are they trolling Crowdstrike here? Because the Big Outage was a few months ago, and their very first "adopt"-rated technique here is to do 1% canary roll-outs. Even if it's not intentional, I find this hilarious.
3. Continuous deployment (adopt)
We're just now adopting this in 2024?
4. RAG (adopt)
"How to make LLMs less bad."
6. Fine-tuning models, 7. Function calling LLMs, 8. LLM as a judge (trial)
"How to make LLMs more bad."
9. Passkeys (trial)
I'll be the first one celebrating if we ever replace passwords, but passkeys don't seem like they're there yet. That might just be my perspective as a user that puts everything in Bitwarden, but I don't see how they're really solving any problems since every site I have a passkey for still requires me to sign in with a regular password before saving a passkey. And then I just add the passkey to Bitwarden.
10-14 even more gen AI stuff
skim, skim, skim...
15. GraphQL for data products
This was almost something new until they threw in LLMs again at the end.
16. LLM-powered- are you kidding me
just stop
Platforms
Hopefully there's something other than LLMs in here.
Nothing is listed under "adopt" and then, yep, back to a bunch of LLM stuff. I give up. Moving on.
Tools
Ok let's find some non-LLM tools.
42. Bruno (adopt)
Finally! This is why I read the tech radar. I've used Postman for API testing before, but Bruno looks slick. I'll have to try it out the next time I have some APIs that need poking.
43. K9s (adopt)
Yes, please. I consider k9s to be indispensable when working with k8s clusters, along with kubectx and kubens. If you're only using kubectl
, you don't know what you're missing or how much time you're wasting.
44. SOPS (adopt)
I had to read this through a few times to try to understand what I would actually use SOPS for. It looks like it is used to encrypt sensitive values (keys, passwords) in text files so they can be checked in to source control. Encryption and decryption is handled via a service like AWS KMS, so you have to have appropriate access to decrypt the values before using them. This probably makes some CI use cases easier where you have a bunch of different secrets and don't want to put each one in an environment variable or fetch individually from Vault or whatever. At the end of the day, you still have to run "sops decrypt" and get the plain values back out before doing anything with them.
50. Devbox (trial)
Getting a working dev environment up and running is a very real problem that Devbox is trying to solve. Docker and Nix both make similar promises, and it seems like Devbox is Nix-based, but can also export to Docker? I'd have to actually try this out to see, but it seems like it could be really useful.
71. uv (assess)
Python package management still needs help.
72. Warp, 73. Zed
We have to put AI assistants in terminals and text editors now, apparently.
Languages and Frameworks
The number of items listed with "LLM" in the name is already giving me hives.
76. Testcontainers (adopt)
If you've written any automated tests that require a database or some other service, you've probably done something to start the dependent service(s) up in a Docker container alongside your tests so they run. Testcontainers does that, but as a library that you can just call in your tests. Neat.
95. Flutter for Web (assess)
I've played around with Flutter for making mobile apps, and they've had a web export for a while. The web version now uses WASM, giving it much better performance.
103. shadcn (assess)
shadcn is a component library that you copy-and-paste from instead of import. It's an interesting approach, and gives you complete control over the components once you copy them. It's probably not possible to copy them directly into a Fresh project without some work, but since you "own" the code, it might be possible to adapt them.