In a move that promises to significantly reduce the amount of tooling surrounding the development of applications, Red Hat, Microsoft and Codenvy announced today at the DevNation 2016 conference a joint project through which programming languages can be integrated across multiple code editors and integrated development environments (IDEs).
The Language Server Protocol is an open source project that defines a JSON-based data exchange protocol for language servers. Hosted on GitHub and licensed under creative commons and MIT licenses, the protocol enables developers to access intelligent programming language assistants – such as find by symbol, syntax analysis, code completion, go to definition, outlining and refactoring – within whatever editor or IDE they choose.
Codenvy CEO Tyler Jewell says the Language Server Protocol project is an outgrowth of an alliance between Microsoft and Red Hat that, among other things, led to an open source Eclipse Che project that makes it simpler for developers using multiple IDEs in the cloud. According to Jewell, vendors such as Microsoft no longer view programming languages and the tools associated with them as a way to lock IT organizations into their platforms. In the age of the cloud, it’s now relatively simple to make use of application programming interfaces (APIs) to access data anywhere it resides.
The primary benefit of the Language Server Project is that it will make it possible for IT organizations to standardize on one set of tools regardless of the number of programming languages they need to support. While the number of those programming languages was once fairly limited, Jewell notes, today there are at least 30 mainstream programming languages with more being created each passing day. As a result, many IT organizations now routinely find themselves building composite applications using a wide range of programming languages.
It may take a while for both programmers and the IT organizations they work for to get used to this new world order of application development. But the days when choosing a programming language was a strategic decision are coming to a close. Now developers are not only expected to be able to master multiple programming languages, but the IT organization as a whole is becoming a lot more comfortable swapping them in and out based on the aims of the application rather than the programming language passion of any individual developer.