Trends in the latest Technology Radar
ThoughtWorks's latest "Technology Radar" focuses on mobile, accessible analytics, simple architectures, reproducible environments, and data persistence done right.
Consumer interactions will be primarily through mobile platforms in the future and this is one of the drivers of the "Technology Radar" recommendations. Another trend is how reliable cloud computing platforms will enable accessible analytics. The need for architects to create simple architectures through interchangeable best of breed technologies is also highlighted. Emphasis is put on encouraging teams to create reproducible environments to reap the benefits of visibility, traceability, scalability, and reliability at their finger tips. Software Engineers are encouraged in the "Technology Radar" to use NoSql databases to easily model domains in the data persistence done right trend.
Technologies recommended for adoption align strongly with the prevalence of mobile platforms in consumer hands:
"Mobile first embraces this trend by designing user interfaces and server interactions that target mobile devices in the first instance."
Back end systems are embracing graph database technologies that can easily represent complex distributed domains (e.g. mobile usage):
"Graph databases store information as arbitrarily interconnected nodes linked by named relations, rather than as tables and joins."
Additionally, back end systems will capture as much data as possible to perform advanced analytics at massive scale on low cost computing cloud resources:
"Now, using a spectrum of new technologies like NoSQL, data harvesters, MapReduce frameworks, and clusters of shared-nothing commodity servers, we have the power necessary to make truly effective use of these techniques [machine learning, semantic analysis, text mining, quantitative analytics]."
On the other hand there are technologies that have been put on hold that would make for brittle continuous delivery pipelines otherwise:
"Web browser automation tools like Selenium have encouraged widespread automated testing through the browser. While these tests continue to have their place in a test portfolio, most teams find that executing the bulk of tests through the browser creates a slow and fragile test suite."
[ All quotes above were taken directly from the ThoughtWorks "Technology Radar." ]
A portion of the recommendations directly reinforce DevOps best practices. Automated deployment and Infrastructure as code in combination with configuration management tools, e.g. Chef or Puppet, allow for efficient management of large server farms. Immutable servers become especially important with large server farms that are automatically scaled (e.g. AWS Auto Scaling). Continuous integration in the cloud is ready for trials on projects that have identified potential benefits and are prepared to manage the risk (e.g. security, vendor conventions, tech stack availability). AtTask leveraged the cloud for CI and their solution has reduced their acceptance testing from three days to minutes.
The "Technology Radar" intends to influence decision making through recommendations about what should be adopted and what should be held at bay. The recommendations in the "Technology Radar" follow the same format as their previous radar and are similar to the recommendations produced by Gartner's research of technology along the Hype Cycle.
- Sections
- Enterprise Architecture
- Operations & Infrastructure
- Architecture & Design
- Development
- Topics
- Database
- Agile Techniques
- Testing
- Gartner
- Big Data
- Automation
- IT Service Management
- Devops
- Research
- Automated testing
- NoSQL
- Infrastructure
- MapReduce
- Continuous Delivery
- Graph Database
- Data Analysis
- Chef
- Machine Learning
- Data Analytics
- Cloud Computing
- Mobile
- Continuous Integration
- Agile
- Puppet
- Selenium
Seriously?
by
Jean-Jacques Dubray
Thanks for the comment. Here is some follow-up information.
by
Aslan Brooke
-Aslan
Re: Thanks for the comment. Here is some follow-up information.
by
marc prades
It's not a silver bullet, but works very well and allows fullstack javascript development. Doesnt seem to have "dynamic" map reduce views though (?) unlike couchdb. NeoJS is powerfull and neat but a bit more complicated to learn and deploy(imho).
Re: Thanks for the comment. Here is some follow-up information.
by
marc prades
Re: Seriously?
by
Erik Doernenburg
Re: Seriously?
by
Aslan Brooke
Re: Seriously?
by
Jean-Jacques Dubray
I am not quite sure I understand your rationale. There is clearly a category called "Graph Databases" (en.wikipedia.org/wiki/Graph_database) but MongoDB is not part of that category. It seems to me that you are comparing Apples and Oranges and you are recommending to just eat one kind of Apple. Are you saying that Graph Databases are the leading category of NOSql databases? and regardless of what you are trying to achieve you should first look at a Graph Database?
From my perspective that casts a big shadow on your overall analysis.
Re: Seriously?
by
Erik Doernenburg
maybe I didn't explain this all too well. Let me try again. Of course, there are different types of databases, including relational databases, graph databases, document databases, key/value databases, column-family databases etc. We were quite aware of this, after all Martin Fowler and Pramod Sadalage, who recently wrote a nice book on NoSQL databases, are part of the group that creates the radar.
We think that graph databases are quite distinct from the other types. So, I agree, it does not make sense to try to compare a graph database with a database of a different type. Among all the graph databases, though, we see see Neo4J as the clear front-runner. Therefore we recommend that people adopt Neo4J if they need a graph database. We do not want to imply that people should always use a graph database, though.
If people want to explore NoSQL databases but don't need a graph database then we recommend that they trial one of the three other databases we have listed. MongoDB and Couchbase are generally considered document databases and Riak a key/value database. The usage scenarios for these databases (non-relational, non-graph databases) do overlap. Certain problems may be solved either by a key/value database or by a document database. In fact, even the definitions and the actual implementations overlap to a degree. So, because it's not clear when to adopt which, we felt it was a better suggestion to trial the three most promising databases in this sector.
Over the past years we have used NoSQL databases on many projects. Because of that experience we did want to go beyond talking about database types in general and decided to name the databases we have made positive experiences with. In hindsight it becomes obvious that we should have explained clearer the distinction that exists in our thinking between graph and non-graph databases.
Educational Content
Concurrency in Clojure
Stuart Halloway May 17, 2013
Confessions of an Agile Addict
Ole Friis Østergaard May 16, 2013
Web Development: You're Doing It Wrong
Stefan Tilkov May 16, 2013
Programming The Feynman Way
Ben Evans May 15, 2013





Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think