Have you ever wondered if the framework you’re willing to pick for your next project is mature enough? Maybe it’s your boss trying to convince you that this particular language you’d like to use is just something new and shouldn’t be used for a production app?
Maybe you’re simply curious what has popped out for the past year in the technologies, or languages area that might be interesting to check?
Those are exactly that kind of problems for which I want to propose the solution.
Some companies, mostly for themselves, based on the global adoption rate of specific technologies within the company projects started to create something called Technology radars.
Those radars provide more or less the same kind of content with similar visualization types.
The goal is very clear: to provide guidance on the state of different tools, languages, and frameworks for people that cannot judge it on the basis of internet content, which used to be very subjective.
Let’s bring up here some examples so that we’re clear about the format.
ThoughtWorks technology radar is the most popular I guess and probably one of the first that appeared on the internet, which have gained real popularity very quickly. There’s a nice write-up about this idea and details in the blog post of Neal Ford (which I recommend you to follow) so I won’t be repeating that stuff here. It speaks by the way about the possibility to create your own technology radar as they released the source code on GitHub repo, which is interesting topic itself 🙂
ThoughtWorks, by the way, is a very interesting software consulting company, which is probably the reason why its technology radar gained the popularity that fast. I know them because of Martin Flower, who was my inspiration and mentor throughout my studies on object-oriented development principles and design patterns. He’s also the author of one of the best books on enterprise applications architecture I’ve ever seen and also a refactoring catalog, which I referred to my blog post about refactoring.
The radar idea is quite simple. There are 4 quadrants which separate the different areas of interest and 4 rings which describe the current state of the elements within this area. The report is produced every half a year. The rings classification is as follows:
You hold off for now with the technology classified there due to the fact of being something completely new or having problems.
Assess ring means that it’s a good option to learn about. Meaning, that it’s not mature enough to recommend for enterprise production projects, but it’s worth investing time to learn about how it works and what could it be used for.
Trial is the next ring that says that it’s worth starting some project and check what’s it like to work with it on a daily basis for some projects. This gives you the unique opportunity to really know the details of the framework (as opposed to just reading about it, or having a proof-of-concept-like experience where the bits and bobs aren’t so important.
This ring describes the elements that have been proven to be worth using in production projects and since it’s ThoughtWorks radar, it means they use it when it fits the problem that they need to solve. This is a kind of strong recommendation for the given framework/tool/language.
There are many other radars that are often built on top of the ThoughtWorks idea or/and the open source library to generate the interactive radar, like Zalando, Indix, Kollegorna (interesting design). There’s even a plugin for Confluence to build such radar by yourself.
It’s worth knowing what’s going on in the technology area. That’s very good some companies spend time and based on their expertise do suggest some classification.
I am using ThoughtWorks radar every time I want to get such opinion on a framework or language, for me it’s really very good and if you’re not sure and have to pick one, I think it could be really something worth checking.
Advent of Blog
This is my nineteenth post in the series of Advent of Blog 2017. I will be publishing one post per day as I mentioned in the first post of the series.