From workhorse to colt

HuffPost plumps for Scala and MongoDB in ‘real-time’ newsroom search

Chris Mayer

Sick of their bloated PHP/MySQL stack, the Huffington Post developer team have migrated to a modern alternative for their editorial needs.

News aggregator-cum-blog website The Huffington Post has ditched its eight-year old PHP/MySQL stack in favour of more modern technologies, namely Scala and MongoDB.

John Pavley, CTO of HuffPost, explained more about the project codenamed Athena in a technical blogpost, as the company looked to move towards “a modernized codebase.”

“Eight years is a long time for an Internet application to live,” he explained. “Since HuffPost MT was forked from the original Movable Type the technological landscape has changed. Entire technology paradigms have fallen in and out of favor with the digerati.”

PHP, MySQL and vanilla JavaScript were all shunned by the new “battle hardened” development team, with Pavley explaining that “the workhorses of Internet applications” were “no longer yearlings.”

Even with Facebook’s miracle work with PHP, the Athena team decided to incorporate a newer, more scalable language at the heart of the Huffington Post. Despite its relative infancy, the selection of Scala (and its web framework Play) for “its simpler, more robust and more useable code” is a big coup for parent company Typesafe.

The Huffington Post aren’t the first news site to pick the JVM language in their stack, with the Guardian having moved to Scala from Java in 2011.

“Scala is a relatively young programming language with several modern ideas built into its design,” Pavley revealed. “Scala was built on top of the environment of the older and well tested language Java. So Scala gets the benefits of Java’s performance and stability.”

In MySQL’s place comes the document database MongoDB, selected for its native flexibility, which Pavley says will help “keep pace” with evolving new stories

“For Athena the team wanted to make it super easy to model the complex documents that news stories have become in the 21st century,” Pavley continued.

The post goes on to explain why AngularJS was selected “to tame JavaScript and HTML” for the front end. The result of this heady mix of modern technologies is a collaborative beta content delivery platform that allows editors to craft articles together. You can see a brief view of Athena in the soundless video below.


Inline Feedbacks
View all comments