As a Gartner analyst, I have the opportunity to interact with many enterprise architecture teams looking to improve their approach to architecture governance. The one software development trend I am seeing grow without an accompanying architecture viewpoint is the rise of polygotism.
In any software development lifecycle, time to develop software is a dominant factor for time to market where increasing nimbleness and agility is now an important success metric. Polyglotism is an approach where different parts of software are written in different languages. You may write a mobile application Objective C and expose business functionality in a service-oriented approach where the services themselves could be written in JRuby. Some of those services may even embed algorithms written in clojure, C++ or even an embedded calculation engine provided by a third party.
Polyglotism requires different approaches to solution architecture, software development and even potentially DevOps when compared to single language architectures. Some shops have used polyglot approaches as a risk management approach for managing required vs available skills and hence goes beyond architecture concerns.
If you have experience with polyglot approaches to solution architecture and have thoughts around any of the following, please do not hesitate to leave a comment.
- Managing polygot architectures without incurring excessive technical debt
- How do EAs and PMOs work together to both enable as well as erect guard rails around polyglot approaches.
- What languages and/or architecture patterns work best in a polyglot and which ones to avoid.
Comments or opinions expressed on this blog are those of the individual contributors only, and do not necessarily represent the views of Gartner, Inc. or its management. Readers may copy and redistribute blog postings on other blogs, or otherwise for private, non-commercial or journalistic purposes, with attribution to Gartner. This content may not be used for any other purposes in any other formats or media. The content on this blog is provided on an "as-is" basis. Gartner shall not be liable for any damages whatsoever arising out of the content or use of this blog.