Simon Willison’s Weblog

What are good ways to develop software architectures using multiple languages?

My answer to What are good ways to develop software architectures using multiple languages? on Quora

There are a bunch of options for communicating between different languages, but these days the simplest is definitely JSON—it maps directly to common data structures in PHP, Python, Ruby and so on. Treat it as your common interchange format and you can’t go far wrong. It’s very easy to build simple internal web services on top of JSON.

If you’re making sensible use of databases, there’s no reason not to have different languages talking to the same database—though this can get messy if your data model frequently changes.