BlogsMetaHTML5 Web Platform Adoption

HTML5 Web Platform Adoption

HTML5 Web Platform Adoption

4
posts
2010–2011

Meta's adoption of HTML5 features has evolved to include a unified mobile web experience (m.facebook.com) that dynamically adapts to thousands of devices using a framework powered by XHP, Javelin, and WURFL. This enables the use of modern CSS3 and HTML5 APIs like local caching and history management for high-end devices, while providing a functional experience for feature phones. The framework allows engineers to build features once and have them render correctly across diverse devices, simplifying development. This evolution also includes research into HTML5 for game development, with the creation of JSGameBench to benchmark sprite performance across browsers and identify areas for improvement in rendering techniques, mobile abstractions, networking, and prediction/synchronization for synchronous games. The goal is to foster a dialog around building high-performance 2D and isometric games using HTML5, leveraging technologies like the canvas element and DOM manipulation, and to encourage browser developers to improve hardware acceleration and address cross-browser inconsistencies.

2011

One Mobile Site to Serve Thousands of Phones

3/31/2011

Introduced a unified mobile web framework for m.facebook.com, replacing separate sites for feature phones and touch devices. Leveraged XHP, Javelin, and WURFL to dynamically serve device-appropriate experiences, enabling the use of modern CSS3 and HTML5 features like local caching and history management on capable devices, and ensuring basic functionality on others. This unified approach allows for single-feature development across all mobile devices.

HTML5 Games 0.1: Speedy Sprites

1/26/2011

Introduced JSGameBench, a benchmark suite focused on HTML5 game performance, specifically sprite rendering. The benchmark measures the number of sprites drawn at 30fps against a background with both axis-aligned and rotated sprites. It also outlines next steps for JSGameBench development, including mobile abstractions, networking, prediction and synchronization, and full reference engines. Additionally, it provides feedback to browser developers on areas for improvement, such as mobile auto-rotate control, hardware compositing, accelerated matrix/transform properties, and cross-browser consistency.

2010

Crowdsourcing Mobile Device Capabilities

10/18/2010

Introduced a crowdsourcing mechanism to augment the WURFL mobile device database. Developed point estimation algorithms to derive device capability statistics from noisy user input, iteratively refining device groups to improve accuracy. Evaluated algorithm parameters using a combination of small-scale ground truth data and large-scale crowd-sourced data, minimizing false positives. Contributed enhanced WURFL data back to the community.

Using HTML5 Today

10/12/2010

This post details Meta's early adoption of several HTML5 features, including a custom HTML5 video player, the Geolocation API for Places, the History API for improved AJAX navigation, and experimentation with Web Storage and WebSockets. It highlights specific engineering implementations and their benefits, such as improved user experience, bandwidth savings, and more stable real-time applications.