Last month, Google announced Accelerated Mobile Pages, or AMP for short. A friend of mine who works at the Big G told me about it, but after reading the press release I still had no clue what it was or how it could help “speed up the web”. The non-technical definition is:
a new open framework built entirely out of existing web technologies, which allows websites to build light-weight webpages.
So apparently it’s fast. But what is it?
Turns out... it’s a lot like Bootstrap, re-booted.
How Bootstrap changed the web
Bootstrap made huge waves as being the first widely-adopted web framework that provided responsive design out of the box. No special tools were required. No special programming languages needed to be learned (it’s all just HTML/CSS/JavaScript). And best of all, it’s compatible with nearly every browser. Instant, easy, responsive design.
But while responsive design provides great design for the mobile web, it doesn't address performance.
Introducing AMP
AMP seeks to aid in design, but is mostly focused on performance. And how does it address performance: no custom JavaScript. As a web developer, you might cringe at that statement. As a user, you’ll be overjoyed.
It appears to be a dead simple framework — essentially a boilerplate HTML file with a single JavaScript file. This JavaScript file essentially does two things:
- Provides extended HTML attributes such as lightboxes, popups, and other things we normally rely on JavaScript to do.
- Disallows all other JavaScript.
Same ___ , Different ___ .
I’ll let you fill in the blanks. Essentially AMP is the same type of front-end framework that has become the norm. Whether it’s Bootstrap, HTML5 Boilerplate, or one of the many others that have become popular in the past few years.
AMP provides a clean, simple way to add features to HTML while reducing the amount of custom code and overhead previously required to obtain these extensions. All while providing a guide for how to design your web pages.
Essentially, this is Google’s subtle way of telling everyone their code is crap, and giving them a way to avoid writing it. Insulting as that may be, I’m ok with it. After all, the only good code is less code.