Our Thoughts on the Technology and Trends That Are Shaping the Future
Total Page:16
File Type:pdf, Size:1020Kb
TECHNOLOGY RADAR VOL.18 Our thoughts on the technology and trends that are shaping the future thoughtworks.com/radar #TWTechRadar CONTRIBUTORS The Technology Radar is prepared by the ThoughtWorks Technology Advisory Board, comprised of: Rebecca Parsons (CTO) | Martin Fowler (Chief Scientist) | Bharani Subramaniam | Camilla Crispim | Erik Doernenburg Evan Bottcher | Fausto de la Torre | Hao Xu | Ian Cartwright | James Lewis Jonny LeRoy | Ketan Padegaonkar | Lakshminarasimhan Sudarshan | Marco Valtas | Mike Mason Neal Ford | Rachel Laycock | Scott Shaw | Shangqi Liu | Zhamak Dehghani This edition of the ThoughtWorks Technology Radar based on a meeting of the Technology Advisory Board, which met in Sydney in March 2018 WHAT’S NEW? Highlighted themes in this edition: BROWSER BULKS UP, SERVER TRUST TEAMS BUT VERIFY SLIMS DOWN Security remains of paramount concern for virtually all The browser continues to expand its capabilities as a software development. But we see a shift in the traditional deployment target for application logic. As platforms take “lock everything down globally” approach to a more care of more cross-cutting concerns and nonfunctional nuanced, localized approach. Many systems now manage requirements, we see a trend toward reduced complexity trust within smaller domains and use modern mechanisms in back-end logic. The introduction of WebAssembly to create transitive trust between disparate systems. The opens up new language options to create logic for web philosophy has shifted from “never trust anything” outside applications and pushes processing closer to the metal of the domain and “never verify anything” inside the domain (and the GPU). Web Bluetooth enables browsers to handle to “trust teams but verify” everywhere — that is to say, functionality formerly reserved for native applications, assume well-intentioned interactions with other parts of and we increasingly see open standards such as CSS Grid the system but verify trust at the local level. This enables Layout and CSS Modules supplanting custom libraries. The teams to enjoy high degrees of control over their own search for better user experiences encourages the trend infrastructure, equipment, and application stacks, leading toward pushing functionality into the browser, and many to high visibility and, when necessary, high guardrails for back-end services become thinner and less complex as access. Tools such as Scout2 and techniques such as a result. Display and interaction logic resides in the client, BeyondCorp reflect this maturing perspective on trust. We platforms or sidecars handle cross-functional concerns, welcome this shift toward localized autonomy, especially and the back-end services can focus on core domain logic. when tools and automation can ensure equal or better compliance. CREEPING CLOUD COMPLEXITY While AWS continues to race ahead with a dizzying array of things EVOLVE new services, we increasingly see Google Cloud Platform The Internet of Things (IoT) ecosystem continues to (GCP) and Microsoft Azure mature as viable alternatives. evolve at a steady and strong pace and includes critical Abstraction layers such as Kubernetes and practices success factors such as security and maturing engineering such as continuous delivery and infrastructure as code practices. We see growth across the entire IoT ecosystem, facilitate the transition between clouds by supporting from on-device operating systems to connectivity easier evolutionary change. But cloud strategies necessarily standards and most strongly in cloud-based device become more complex with the advent of Polycloud (which management and data processing. We see maturity in allows organizations to pick and choose multiple providers tools and frameworks that support good engineering based on differentiated capabilities) and growing regulatory practices such as continuous delivery, deployment, and and privacy concerns. For example, many EU countries a host of other necessities for eventual widespread use. now legally mandate data locality, making the jurisdiction In addition to the main cloud providers — including of data storage and the underlying host policies a new Google IoT Core, AWS IoT, and Microsoft Azure IoT Hub — dimension of differentiation for cloud evaluators. The range companies such as Alibaba and Aliyun are also investing of options for compute environments is also increasing, heavily in IoT PaaS solutions. Our EMQ and Mongoose with AWS Fargate offering containers as a service (CaaS) as OS blips provide a glimpse of the mainstream capabilities an intriguing middle ground between functions as a service of today’s IoT ecosystem and illustrate that things are and managing longer-lived clusters. While cloud resources evolving nicely indeed. continue to mature within organizations, an inevitable creeping complexity always accompanies building real solutions with these new pieces. © ThoughtWorks, Inc. All Rights Reserved. TECHNOLOGY RADAR | 3 ABOUT THE RADAR ThoughtWorkers are passionate about technology. The Radar captures the output of the Technology We build it, research it, test it, open source it, write Advisory Board’s discussions in a format that provides about it, and constantly aim to improve it — for value to a wide range of stakeholders, from developers everyone. Our mission is to champion software to CTOs. The content is intended as a concise summary. excellence and revolutionize IT. We create and share the ThoughtWorks Technology Radar in support We encourage you to explore these technologies for of that mission. The ThoughtWorks Technology more detail. The Radar is graphical in nature, grouping Advisory Board, a group of senior technology leaders items into techniques, tools, platforms, and languages & in ThoughtWorks, creates the Radar. They meet frameworks. When Radar items could appear in multiple regularly to discuss the global technology strategy quadrants, we chose the one that seemed most for ThoughtWorks and the technology trends that appropriate. We further group these items in four rings significantly impact our industry. to reflect our current position on them. For more background on the Radar, see thoughtworks.com/radar/faq RADAR AT A GLANCE 1 ADOPT 2 TRIAL We feel strongly that Worth pursuing. It is the industry should be important to understand how adopting these items. to build up this capability. We use them when Enterprises should try this appropriate on our technology on a project that projects. can handle the risk. 1 2 3 4 HOLD ASSESS TRIAL ADOPT ADOPT TRIAL ASSESS HOLD 3 ASSESS 4 HOLD Worth exploring with the Proceed with caution. goal of understanding how it will affect your enterprise. 96 108 NEW OR CHANGED Items that are new or have had significant changes since the last Radar are NO CHANGE represented as triangles, while items that have not changed are represented as circles Our Radar is forward looking. To make room for new items, we fade items that haven’t moved recently, which isn’t a reflection on their value but rather our limited Radar real estate. © ThoughtWorks, Inc. All Rights Reserved. TECHNOLOGY RADAR | 4 THE RADAR TECHNIQUES ADOPT 1. Lightweight Architecture Decision Records TRIAL 24 66 2. Applying product management to internal platforms 3. Architectural fitness function 21 4. Autonomous bubble pattern 22 5. Chaos Engineering 68 6. Domain-scoped events NEW 67 69 7. Hosted identity management as a service NEW 20 70 8. Micro frontends 18 19 9. Pipelines for infrastructure as code 71 10. Polycloud 17 72 ASSESS 9 11. BeyondCorp NEW 53 73 12. Embedded mobile mocks NEW 7 10 54 57 23 16 56 13. Ethereum for decentralized applications 52 15 55 14. Event streaming as the source of truth 8 74 15. GraphQL for server side resource aggregation NEW 75 16. Infrastructure configuration scanner NEW 58 17. Jupyter for automated testing NEW 14 18. Log level per request NEW 6 59 76 19. Security Chaos Engineering NEW 60 20. Service mesh 5 13 21. Sidecars for endpoint security 77 22. The three Rs of security 4 61 HOLD 12 62 63 78 23. Generic cloud usage NEW 3 1 24. Recreating ESB antipatterns with Kafka 64 11 2 79 PLATFORMS 65 HOLD ASSESS TRIAL ADOPT ADOPT TRIAL ASSESS HOLD ADOPT 25. .NET Core 35 27 82 104 26. Kubernetes 25 87 36 81 TRIAL 26 103 27. Azure 80 102 28. Contentful NEW 37 28 29. EMQ NEW 30. Flood IO 101 38 86 31. GKE 29 32. Google Cloud Platform 100 33. Keycloak 31 34. WeChat 39 84 30 99 ASSESS 40 35. AWS Fargate NEW 33 98 36. Azure Service Fabric 85 41 37. Azure Stack NEW 38. Cloud Spanner 97 42 34 96 39. Corda 43 32 40. Cosmos DB 83 95 41. Godot NEW 42. Interledger NEW 93 94 43. Language Server Protocol 44 44. LoRaWAN 51 45 45. Mongoose OS NEW 46 47 90 46. Netlify 48 50 47. TensorFlow Serving 92 88 89 48. TICK Stack NEW 49 91 49. Web Bluetooth NEW 50. Windows Containers HOLD New or changed 51. Overambitious API gateways No change © ThoughtWorks, Inc. All Rights Reserved. TECHNOLOGY RADAR | 5 THE RADAR TOOLS ADOPT TRIAL 24 66 52. Appium Test Distribution NEW 53. BackstopJS NEW 21 54. Buildkite 22 55. CircleCI 68 56. CVXPY NEW 67 69 57. gopass 20 58. Headless Chrome for front-end test 70 18 19 59. Helm NEW 71 60. Jupyter 61. Kong API Gateway 17 72 62. kops 9 63. Patroni NEW 53 73 64. WireMock NEW 10 54 7 56 57 65. Yarn 23 16 52 15 55 8 74 ASSESS 66. Apex 75 58 67. ArchUnit NEW 14 68. cfn_nag NEW 6 59 76 69. Conduit NEW 70. Cypress 60 5 71. Dependabot NEW 13 77 72. Flow 4 61 73. Headless Firefox NEW 74. nsp NEW 12 62 63 78 75. Parcel NEW 3 1 76. Scout2 NEW 77. Sentry NEW 64 78. Sonobuoy 11 2 65 79 79. Swashbuckle for .NET Core NEW HOLD ASSESS TRIAL ADOPT ADOPT TRIAL ASSESS HOLD HOLD 35 27 82 104 25 87 LANGUAGES & FRAMEWORKS 36 81 26 103 ADOPT 80 80.