
If you want to be in the software business, you’d better learn a second language.
Some of the most agile and robust programming in New England’s tech sector is now done in alternatives to status quo programming languages. Sun Microsystems Inc.’s Java and variations of 30-year-old C still dominate surveys of popular code languages, but adventurous developers are experimenting with relatively obscure languages, and getting powerful results.
Many coders believe Ruby on Rails may be poised to make a dent in Java’s dominance on the front end of web applications. For powerful back-end processes, a handful of developers are turning to Erlang. Developed in the 1980s by the communications company Ericsson, this programming language has developer communities buzzing.
“This is what geeks do. They discover something and then someone becomes a fanatic for it,” said Will Koffel, CTO at Sermo Inc. The Cambridge software company uses component-based Ruby on top of the Rails framework to quickly write and test rich new capabilities in its collaborative application for physicians.
By 2007, Erlang was already backing up major online applications such as Facebook.com’s chat function. But Basho Technologies Inc. COO Antony Falco worried the nascent Cambridge sales force automation developer wouldn’t find anyone to write the code.
“We had the opposite effect,” said CTO Justin Sheehy. “When I told potential hires we were using Erlang, that got our best candidates excited.”
Erlang can easily break large data-crunching tasks into several concurrent processes, which interact via messages. This attribute is very similar to Google Inc.’s much-touted MapReduce programming model, Sheehy said.
As a result, rather than dedicating a server to a single application, each machine runs a replica of every application in play, Sheehy said. Data never gets caught in bottlenecks. To add computing power, they just add another machine. If a component fails, it goes offline without affecting the network.
Both Ruby and Erlang are also multi-paradigm languages, meaning they allow developers to tailor programming approaches to the task at hand.
The ability to change tactics has become vital, said headhunter Brigid Siegel, a partner at Framingham-based Polachi. Agile scrum methodology, in which developer teams constantly re-examine each other’s work, has taken hold. “Are you a scrum master?” is a question often asked of top development managers, she said.
Engineers who can manage development in Microsoft Corp.’s C# language are in particularly high demand, Siegel said. The high-level language developed in 2000 for Microsoft’s .Net environment is well suited for complex back-end tasks, she said.
For the next generation of developers, C# and Ruby will likely be just part of a coding toolkit that will include many new languages, said Gus Weber, a Microsoft .Net evangelist who works with colleges and universities in the Northeast region.
“Students over the last 10 years have gone from being focused on being an expert in solely one language, whether that be Java or C++, or Pascal in the earlier years, to being much more experimental,” he said. “They’re much more adaptable to using the tool that meets the need head on.”







Print
Email
Print Edition Stories





Comments (2)
Please Login/Register to post comments.