X

Twitter tweaks service to be faster, snappier

The microblogging site rolls out new improvements including getting rid of the hashbang (#!) in URLs and loading pages five times faster.

Dara Kerr Former senior reporter
Dara Kerr was a senior reporter for CNET covering the on-demand economy and tech culture. She grew up in Colorado, went to school in New York City and can never remember how to pronounce gif.
Dara Kerr
2 min read
Twitter engineer Dan Webb tweeting the end of the hashbang. Screenshot by Dara Kerr/CNET

Twitter announced today that its Web site is getting new enhancements geared toward being "optimized for speed." Besides getting rid of the hashbang (#!) in URLs, the social network is also focusing on reducing the "time to first Tweet" and ensuring only what's necessary will load with each Web page.

"To improve the twitter.com experience for everyone, we've been working to take back control of our front-end performance by moving the rendering to the server," Twitter engineering manager Dan Webb wrote in a blog post. "This has allowed us to drop our initial page load times to 1/5th of what they were previously and reduce differences in performance across browsers."

It's been nearly two years since Twitter rolled out speed enhancements to its Web site. For its major redesign in 2010, the microblogging service introduced new Web application architecture, but, Webb wrote, "It lacked support for various optimizations available only on the server."

To solve this problem Twitter engineers are focusing on three specific components aiming to get the Website running as fast as possible and to develop new features in the future.

Here's some of what Webb wrote in the blog post:

No more #!

The first thing that you might notice is that permalink URLs are now simpler: they no longer use the hashbang (#!). While hashbang-style URLs have a handful of limitations, our primary reason for this change is to improve initial page-load performance.

Reducing time to first tweet

Before starting any of this work we added instrumentation to find the performance pain points and identify which categories of users we could serve better. The most important metric we used was "time to first Tweet". This is a measurement we took from a sample of users, (using the Navigation Timing API) of the amount of time it takes from navigation (clicking the link) to viewing the first Tweet on each page's timeline. The metric gives us a good idea of how snappy the site feels.

Loading only what we need

Now that we're delivering page content faster, the next step is to ensure that our JavaScript is loaded and the application is interactive as soon as possible. To do that, we need to minimize the amount of JavaScript we use: smaller payload over the wire, fewer lines of code to parse, faster to execute. To make sure we only download the JavaScript necessary for the page to work, we needed to get a firm grip on our dependencies.

Starting this week, the Tweet permalink page will display the new re-architected makeover and the rest of the new framework will be rolled out on the site in the next few weeks.