It was a reminder of the risks when too much of the internet relies on a single service. Amazon gives customers the option of storing their data in different “availability regions” around the world, and within those regions, it has multiple data centers in case something goes wrong. But last year’s outage knocked out S3 in the entire northern Virginia region. Customers could, of course, use other regions, or other clouds, as backups, but that involves extra work, including possibly managing accounts with multiple cloud providers.
A San Francisco-based startup called Netlify wants to make it easier to avoid these sorts of outages by automatically distributing its customers’ content to multiple cloud computing providers. Users don’t need accounts with Amazon, Microsoft Azure, Rackspace, or any other cloud company—Netlify maintains relationships with those services. You just sign up for Netlify, and it handles the rest.
You can think of the company’s core service as a cross between traditional web hosting providers and content delivery networks, like Akamai, that cache content on servers around the world to speed up websites and apps. Netlify already has attracted some big tech names as customers, often to host websites related to open source projects. For example, Google uses Netlify for the website for its infrastructure management tool Kubernetes, and Facebook uses the service for its programming framework React. But Netlify founders Christian Bach and Mathias Biilmann don’t want to just be intermediaries in cloud hosting. They want to fundamentally change how web applications are built and put Netlify at the center.
Traditionally, web applications have run mostly on servers. The applications run their code in the cloud, or in a company’s own data center, assemble a web page based on the results, and send the result to your browser. But as browsers have grown more sophisticated, web developers have begun shifting computing workloads to the browser. Today, browser-based apps like Google Docs or Facebook feel like desktop applications. Netlify aims to make it easier to build, publish, and maintain these types of sites.
Back to the Static Future
Markus Seyfferth, COO of Smashing Media, was converted to Netlify’s vision when he saw Biilman speak at a conference in 2016. Smashing Media, which publishes the web design and development publication Smashing Magazine and organizes the Smashing Conference, was looking to change the way it managed its roughly 3,200-page website.
Since its inception in 2006, Smashing Magazine had been powered by WordPress, the content management system that runs about 32 percent of the web, according to technology survey outfit W3Techs; some e-commerce tools to handle sales of books and conference tickets; and a third application for managing its job listing site. Relying on three different systems was unwieldy, and the company’s servers struggled to handle the load, so Seyfferth was looking for a new approach.
When you write or edit a blog post in WordPress or similar applications, the software stores your content in a database. When someone visits your site, the server runs WordPress to pull the latest version from the database, along with any comments that have been posted, and assembles it into a page that it sends to the browser. Building pages on the fly like this ensure that users always see the most recent version of a page, but it’s slower than serving prebuilt “static” pages that have been generated in advance. And when lots of people are trying to visit a site at the same time, servers can get bogged down trying to build pages on the fly for each visitor, which can lead to outages. That leads companies to buy more servers than they typically need.
Nevertheless, servers can still be overloaded at times. “When we had a new product on the shop, it needed only a couple hundred orders in one hour and the shop would go down,” Seyfferth says.
WordPress and similar applications try to make things faster and more efficient by “caching” content to reduce how often the software has to query the database, but it’s still not as fast as serving static content.
Static content is also more secure. Using WordPress or similar content managers exposes at least two “attack surfaces” for hackers—the server itself, as well as the content management system. By removing the content management layer and simply serving static content, the overall “attack surface” shrinks, meaning hackers have fewer ways to exploit software.
The security and performance advantages of static websites have made them increasingly popular with software developers in recent years, first for personal blogs and now for the websites for popular open source projects.
In a way, these static sites are a throwback to the early days of the web, when practically all content was static. Web developers updated pages manually and uploaded prebuilt pages to web servers. But the rise of blogs and other interactive websites in the early 2000s popularized server-side applications that made it possible for nontechnical users to add or edit content, without special software. The same software also allowed readers to add comments or contribute content directly to a site.
At Smashing Media, Seyfferth didn’t initially think static was an option. The company needed interactive features to accept comments, process credit cards, and allow users to post job listings. So Netlify built several new features into its platform to make a primarily static approach more viable for Smashing Media.
The Glue in the Cloud
Biilmann, a native of Denmark, spotted the trend back to static sites while running a content management startup in San Francisco and started a predecessor to Netlify called Bit Balloon in 2013. He invited Bach (his best friend from childhood, who was working as an executive at a creative services agency in Denmark) to join him in 2015, and Netlify was born.
Initially, the company focused on hosting static sites. Netlify quickly attracted high-profile open source users, but Biilman and Bach wanted it to be more than just another web hosting firm; they sought to make static sites viable for interactive websites.
Open source programming frameworks have made it easier to build sophisticated applications in the browser. And there’s a growing ecosystem of services like Stripe for payments; Auth0 for user authentication; and Amazon Lambda for running small chunks of custom code that make it possible to outsource many interactive features to the cloud. But these types of services can be hard to use with static sites because some sort of server-side application is often needed to act as a middleman between the cloud and the browser.
Biilmann and Bach want Netlify to be that middleman, or as they put it, the “glue” between disparate cloud computing services. For example, they built an e-commerce feature for Smashing Media, now available to all Netlify customers, that integrates with Stripe. It also offers tools for managing code that runs on Lambda.
Smashing Media switched to Netlify about a year ago, and Seyfferth says it’s been a success. It’s much cheaper and more stable than traditional web application hosting. “Now the site pretty much always stays up no matter how many users,” he adds. “We’d never want to look back to what we were using before.”
There are still some downsides. WordPress makes it easy for nontechnical users to add, edit, and manage content. Static site software tends to be less sophisticated and harder to use. Netlify is trying to address that with its own open source, a static content-management interface called Netlify CMS. But it’s still rough. Seyfferth says for many publications, it makes more sense to stick with WordPress for now because Netlify can still be challenging for some users.
While Netlify is a developer darling today, it’s possible that major cloud providers could replicate some of its features. Google already offers a service called Firebase Hosting that offers some similar functionality.
For now, though, Bach and Biilmann say they’re just focused on making their serverless vision practical for more companies. The more people who come around to this new approach, the more opportunities there are not just for Netlify, but for the entire developing ecosystem.