Honest question from someone completely oblivious to AMP. What problem was AMP trying to solve? "Make websites load faster" is a buzzword-flag to me, and it's not really explained in the wikipedia article [1]
From a technical perspective, AMP had two, intertwined goals: 1) allow third parties to safely rehost your page, so that they could provide a seamless preloading experience—fetch & render the page in the background, and display it to the user immediately when they click a link. This massively improved the time it took to load search results on mobile web, since it moves the request out of the critical path and allows Google's CDN to serve your assets. 2) Provide a front end framework that focused on performance and UX, forcing developers to get rid of layout shifts, weird scroll effects, and other things that made mobile web browsing a nightmare. This framework allowed for a limited subset of HTML and CSS, but no custom JS, allowing it to enforce these rules for all rehosted pages.
> This massively improved the time it took to load search results on mobile web, since it moves the request out of the critical path and allows Google's CDN to serve your assets
Kind of, some of the time. In practice, that massive amount of render-blocking JavaScript made it slower - I noticed this on a daily basis using the web on the subway here in DC. The Washington Post loaded consistently faster without AMP, but the big win was the long tail where you could read content on normal pages but AMP was either blank until you reloaded, or took 5-10 seconds longer because once the AMP JS loaded it then had to fetch all of the resources it’d blocked behind a lazy-loader.
> Provide a front end framework that focused on performance and UX
And this is huge.
Non-technical users that don't care about the shady things Google did involving AMP probably think AMP is a godsend, if they even know AMP is even a thing.
AMP pages load incredibly fast, are incredibly responsive, and are far less annoying. Your typical end user will likely prefer AMP.
Thing is...we don't need AMP to get those features. But somewhere along the last 10 years, web developers lost the plot and now seem to think a static blog needs to serve several megabytes of JavaScript. They think they need to implement smooth scrolling in code, when every browser already does it natively.
AMP pages have been far more annoying in my experience. It breaks the standard web controls (ie no tap on the top to scroll to top), breaks copying links, and locks you into the google ecosystem at the user's expense.
IMO the issues with controls are worth the tradeoff. The alternative ends up being annoying sites like arstechnica (non-AMP) which relocates content while you're reading it.
> Thing is...we don't need AMP to get those features.
I addressed this in another comment thread (https://news.ycombinator.com/item?id=29269423), but I disagree. The fundamental problem is one of incentives—individual companies don't have the leverage to fight back against ad companies and advertisers that want to implement bad user experiences and slow loading JS. Google's adoption of AMP forces publishers and ad networks fall into line, by enforcing limits on floating ads, popover, interstitials, custom JS, etc. Is this self-interested on Google's part? Maybe. But it's hard to argue that it's not ultimately better for the consumer.
That's not my experience. Every time I try reading a long article on an AMP page, the experience basically crashes. Text rendering stops and you're just scrolling through a blank white pages.
It tries to be too clever with its rendering. And it fails almost every time.
AMP solves a social problem for newspaper owners. They are all evil, venal people incapable of hiring for or motivating technical staff to make the right choice for users. This is why your average local newspaper or TV station site downloads 100MB of crap, fires 10000 timers per second, and needs 10-60s to render on your phone. AMP puts these jerks in a straightjacket while also trying to ensure they still get paid.
Theoretically there's a marketplace where better/faster news sites would be preferred by readers, but in actual fact all the news outlets are owned by the same guy.
> This is why your average local newspaper or TV station site downloads 100MB of crap, fires 10000 timers per second, and needs 10-60s to render on your phone
No, the reason for that, almost all of the time, is ads. It's true that local news rarely hires talented developers (they don't have the money) but even if they did they'd still be at the mercy of shitty ad code written by shitty ad providers. One of which is Google! So they generously solved the problem they created by setting up a new walled garden.
AMP solves a social problem for newspaper owners. They are all evil, venal people incapable of hiring for or motivating technical staff to make the right choice for users.
Don't forget how they sit on top of piles of money bags twirling their mustaches, taking lollypops from children, and cackling "Ha ha ha ha ha!" while looking down on the plebs below. Don't forget that!