I recently interviewed O’Reilly author Neal Ford (Functional Thinking, The Productive Programmer) on the subject of polyglot programming. In 2006, Neal wrote a blog post which resurrected the term, suggesting that as modern applications become more complex, it is important for developers to leverage knowledge of multiple languages and use the right tool for the job. In the interview, we discuss the benefits and challenges of polyglot programming, how it has evolved in recent years, and the impact it’s had on software development.
Some key highlights in our conversation include:
- What is polyglot programming? [Discussed at 0:15]
- What are some of the benefits? [Discussed at 1:39]
- How polyglot programming has affected software development in recent years [Discussed at 4:25]
- Downsides to polyglot programming? What are the trade-offs? [Discussed at 6:22]
- Best practices when starting out in polyglot programming [Discussed at 8:58]
- Resources for keeping up on trends and new technologies [Discussed at 12:48]
So, what exactly is polyglot programming? Beyond being something incredibly difficult to say many times in a row, polyglot programming is the use of different programming languages, frameworks, services and databases for developing individual applications. Whether you’re developing a multilingual web application at work, or trying to win a presidential campaign, the ability to have a working knowledge of more than one language is becoming more of a necessity.
Listen to it here:
In the coming weeks, I’ll be looking more at the disruptive and innovative effects of polyglot programming within the industry, and I’m interested to hear your thoughts. Do you consider yourself a polyglot programmer? What languages and frameworks are you using? What benefits and challenges have you found?