This sponsored post is produced in association with New Relic.
To the uninitiated, software code of any kind just seems like a semi-coherent string of letters. In the programming world, however, each individual language, from Python to PHP, has its own individual nuances — different languages that all can be efficient in different ways, much like different human languages express the same concepts in slightly different ways.
Python for example, might be highly forgiving in the syntax department but lacks speed. Ruby on Rails might be a more powerful and expressive, but may not be as readable as Python. For the skilled developer, the problem often lay in selecting just the right one to fit the project at hand.
That’s because most of the time, the software that developers work with allows them to deal in only one language.
However, New Relic, an application and web monitoring software that helps companies parse the 1s and 0s streaming into their databases, has taken a leap. New Relic’s software platform features multi-lingual support so that a developer doesn’t need to stick to just one type of code in this project.
Now, when it comes to mastering human languages, picking up more than one is generally regarded as an advantage. However, just because a polyglot doesn’t always switch in and out of languages from sentence to sentence when trying to communicate, the advantages of polyglot programming, a term first coined by ThoughtWorks software architect Neal Ford, is a debatable subject among programmers.
On the one hand, this flexibility has its advantages: it allows developers to combine the strengths of different languages, selecting the best of each to interact and work together in a single project. The trend of polyglot programming first rose in popularity around a decade ago when two popular languages, Java and .NET, first allowed for language interoperability.
Meanwhile, the latest wave of polyglot programming rose from the re-emergence of Java-based languages like Scala and Groovy. Indeed, many New Relic clients have already taken advantage of this built-in flexibility.
Ticketfly, a ticket-purchasing application and website, used a combination of two database programming languages, Java and Grails, within a framework called Scala. This cross-lingual project allowed Ticketfly’s development team to effectively assess the performance of their app and monitor both front-end ticket purchasing transactions as well as the back-end event management system, according to a New Relic case study.
Meanwhile, software packages like SlickEdit also promote cross-platform, multi-language coding. The program supports coding in 64 languages from HTML to SQL, and aims to help developers meet the demands of aggressive deadlines.
Rosetta code is another project that seems to promote multi-lingual understanding in coding. The community project proposes to reproduce the same type of functionality using different languages to help coders decide which language is the “best for the job”.
However, despite the growing number of resources, the cons of programming in multiple languages can be daunting. The idea of programming using multiple core, back-end languages like Java and Scrala may sound romantic to some programmers, but it comes with plenty of logistical costs: For one thing, it would be difficult to systematically modify and adjust code written in multiple languages, considering their variance in syntax. Also, using multiple languages in a project might simply be hard to navigate for anyone other than the developer who coded it.
The advantages and complications of being a polyglot programmer resembles the situation of being a polyglot speaker of human languages — at least for now. The possibilities that come with the flexibility of using multiple coding languages can also add complexity to the programming world.
Sponsored posts are content that has been produced by a company that is either paying for the post or has a business relationship with VentureBeat, and they’re always clearly marked. The content of news stories produced by our editorial team is never influenced by advertisers or sponsors in any way. For more information, contact firstname.lastname@example.org.