
Standardizing lessons learned from AMP - adewale
https://amphtml.wordpress.com/2018/03/08/standardizing-lessons-learned-from-amp/
======
jashkenas
Just for kicks, folks, let's collect all of the adjectives, adverbs and
qualifiers used in this post to describe ~AMP:

    
    
        * a leading format
        * consistently excellent
        * invest strongly in ...
        * well-lit
        * user-first
        * instant-loading
        * tightly-integrated
        * highly-optimized
        * great
        * well-lit
        * great
        * well documented
        * easily deployable
        * validatable
        * opinionated about user-first principles
        * fast development
        * constant adjustment
        * more important than ever before
        * invest strongly in ...
        * engaging storytelling experiences
        * pushing the boundaries
        * deep integrations
        * well under way
        * super excited
        * instant-loading
        * well-lit
        * great
        * continue to invest heavily in ...
        * continue to innovate on ...
        * incredibly excited
        * can't wait
    

I'm imagining a Dilbert cartoon, where this list is a cheatsheet of things you
can say about your project to get approval from your pointy-haired boss...

~~~
mattigames
Text editors should have a feature to warn about a high number of
qualifies/adverbs: "you are using to many qualifiers and adverbs, you may look
biased to your readers, it may be a good idea to remove or rethink some of
them."

~~~
mattferderer
I suggest everyone use one of many popular & excellent tools to check your
professional articles for excessive & unnecessary words & long or hard to read
sentences, for example here are some amazingly free tools I really enjoy:

Web App: [http://beta.hemingwayapp.com/](http://beta.hemingwayapp.com/)

VS Code Extension:
[https://marketplace.visualstudio.com/items?itemName=travisth...](https://marketplace.visualstudio.com/items?itemName=travisthetechie.write-
good-linter) (This uses open source libraries you can utilize to create your
own version if you don't use VS Code)

------
dfabulich
I wrote a blog post about these proposals a couple of weeks ago and a nice HN
thread formed around it.
[https://news.ycombinator.com/item?id=16424445](https://news.ycombinator.com/item?id=16424445)

But as I said in my post, the problem with posts like today's AMP blog post is
that they're too full of jargon to be comprehensible to a general audience.
The Web Packaging standard is really cool, but today's blog post just linked
out to a ton of web standards without defining them or explaining how they'll
work in the future.

If you've got your head deep in AMP's community, this post is quite
meaningful, but to everyone else, and especially to the huge community of
developers who hate AMP, it reads like Greek.

It reflects a core problem with AMP's developer outreach strategy: a refusal
to accept and acknowledge criticism. There are overwhelmingly more AMP
detractors than AMP promoters, and the detractors have good arguments,
arguments that the AMP team even kinda sorta accepts (which is why they're
trying to push through these browser standards, to address the bugs).

But you'll never hear AMP technical leaders like Malte Ubl or Paul Bakaus
saying, "Yes, we accept that criticism, and the problems with AMP _are_ really
serious, and here's what we're doing to fix this. In the meanwhile, for many
sites the tradeoff is worth it anyway."

The top thread in the HN thread was not _whether_ the AMP brand was toxic but
_why_ the AMP brand is toxic. I think that if the AMP team had somebody
focused on telling AMP's story, humbly and honestly, with a focus on the web
developer community on HN, Reddit, Smashing, etc. it could have really helped.

Now, I think it's too late. The new Web Packaging thing shouldn't be called
"AMP." The new "AMP for email" thing shouldn't be called AMP, either, because
everybody knows that AMP sucks, and there's really no way to claw your way
back from that.

~~~
wmf
_telling AMP 's story, humbly and honestly_

What would that look like? "We have a gun to your head"? There are some very
uncomfortable truths here about Google's near-monopoly on Web traffic.

~~~
dfabulich
If you want the details, I did write a blog post about this.
[https://redfin.engineering/how-to-fix-googles-amp-without-
sl...](https://redfin.engineering/how-to-fix-googles-amp-without-slowing-it-
down-522bc5e1e11d)

tl;dr: iframes cause all of AMP's problems, but they provide unbeatable
performance, thanks to prerendering. Prerendering is faster than
[http://motherfuckingwebsite.com](http://motherfuckingwebsite.com). The Web
Packaging standard will allow Google to prerender sites in search results
without AMP, and without violating users' privacy.

But here's the point: most people think that Google _wants_ to host nytimes
articles on google.com, to seize control of the web's traffic. They don't.
They've done a bunch of work to get _out_ of that business while preserving
the performance benefits of prerendering, but nobody knows that, because they
talk about it in bizarre technical jargon like today's OP AMP blog post.

~~~
x0x0
Why should we trust a monopolist that -- and this is totes a coincidence! --
is pushing a standard that breaks all urls to point to them? This is the next
attempt after google plus or whatever their stupid social network is/was.
They're basically terrified of facebook and, instead of supporting the
internet, they're trying to become fb. But in your browser.

Pretending google didn't _want_ to steal all urls requires actively ignoring
the last 10 years of google's corporate decisions.

~~~
dfabulich
I'm not telling you to _trust_ them. I'm certainly not telling you to use AMP.

I'm just saying, they've done a lot of work on this Web Packaging thing, and
it's a pretty good replacement for AMP. You should check it out.

It's hard to see why they'd do all of that work of replacing AMP if your
theory is right and they just loooved stealing those URLs.

~~~
x0x0
Because

1 - they got caught with their hands in the cookie jar

2 - the internet isn't quite as dumb as google hoped

3 - thank god for the EU & Margrethe Vestager. Maybe we can talk her into
adding a zero.

ps -- that status, as near as I can tell, of the amp url fix is vaporware.
Deployed yet? Nope. So let's wait to get all triumphant until their supposed
solution is deployed. [https://www.androidpolice.com/2018/01/09/google-
finally-fixi...](https://www.androidpolice.com/2018/01/09/google-finally-
fixing-urls-amp-pages/)

~~~
madeofpalk
How so?

The user experience they wanted to achieve (provide an Apple News and Facebook
Instant Articles experience on the web) was not technically possible. They
added the hacks and workarounds that is AMP + AMP Cache + News carousel
prerendering to Google to create something competitive.

Now they're working with the standards bodies to remove the need for the hacks
they've developed. Web Packaging (for loading and verifying a bundled website
- this is the preloading part) and iFrame Promotion (for 'promoting' an iFrame
to the root browsing context - this is the 'clicking the search result and
having the resulting page display instantly' part) is really cool and it'll be
great to have this available to everyone without the downsides that Google's
current solution has (URL fucking)

~~~
x0x0
Weird how the technical compromises they just _had_ to make work out, well,
wildly to their advantage. Better not piss off google or they break all links
to your site!

------
Ajedi32
So, this is pretty much everything the HN crowd was asking for, right? Pull
AMP apart into a bunch of web standards and switch Google search to promote
any content which follows those standards rather than AMP content
specifically?

Why are all the top comments so negative?

~~~
xab9
Probably because AMP should not have existed in the first place :) We already
have everything we need to make fast and performant pages - we can't do it,
because of marketing and trackers and spying and shit though: not
technological factors, but human factors.

~~~
Ajedi32
And yet, AMP has succeeded at getting publishers to deliver fast and
performant pages where other efforts did not.

I dispute the idea that technological factors are not at play here. AMP's
preloading and automatic CDN caching system have a pretty big impact on load
times, and its technically-enforced restrictions on what sort of performance-
impacting content publishers are allowed to include in their pages seems to do
a pretty good job of ensuring pages do not become bloated.

~~~
ocdtrekkie
The fact that Google Search is a monopoly is not a technological factor.
Google gives preference to AMP sites on Google Search, therefore publishers
must implement AMP.

I actually have a lot less issue with AMP as a technological solution, as I do
with the Google's "our way or the highway" treatment of the Internet. Google
uses both it's search monopoly and it's browser monopoly (and often, both at
the same time) to force the entire world to do whatever Google wants them to.

Sometimes you might perceive the result to be "good", but that doesn't justify
the behavior. That's why another technical implementation change blog doesn't
improve anyone's mood about the whole thing: Because Malte Ubl is still
pretending he's on #teamweb and not #teamgoogle.

~~~
Ajedi32
Fair point, but that problem (at least as far as AMP is concerned) is exactly
the one this blog post is addressing: Google is planning to stop pushing AMP
specifically in its search results and instead push a set of open web
standards which achieve the same technical goals.

~~~
beokop
Even so, I’m tired of jumping through hoops to adhere to bullshit standards
that make life hard without any actual benefit. We have HTML and CSS, why do
we need AMP? How does my personal webpage benefit from HTTPS? Why did they
enforce mandatory HTTPS across the entire .dev TLD in WebKit, breaking my
local test env, when it’s only used by a few internal projects at Google?

They seem to have a vested interest in making web development harder than it
needs to be.

~~~
agentdrtran
> We have HTML and CSS, why do we need AMP?

Do you even know what AMP is?

~~~
beokop
Poor phrasing on my part. I meant that fast websites can already be built
without adhering to the AMP standard.

------
tyingq
_”we now feel ready to take the next step and work to support more instant-
loading content not based on AMP technology in areas of Google Search designed
for this, like the Top Stories carousel”_

Seems encouraging. Any step away from a walled garden is good.

------
xab9
I wish one day marketing, print designers and useless business architects
would just step back and let me build a damn page.

No trackers, no spying, no fancy multilayered parallax video scrollers, no
animated video carousels, no fucking ads, no taboola shit, no related
clickbait articles, no tag cloud sidebar, no ooh-so-shiny bleeding edge web
frameworks that has a lifecycle of a single year (megabytes of minified
angular), no isomorphic shit, just a plain site with the relevant information
and minimal styling.

~~~
beokop
We chose to use PHP for our site redesign after using React, Elm and Jekyll in
other projects. It’s really liberating. No spending days setting up a
build/deploy process. Gets out of your way unless you actually need it.
Everything including the kitchen sink included. Pre-installed on all Macs. Our
designer can code and deploy changes by himself.

I used to hate PHP. Then I tried the alternatives.

~~~
xab9
It's not the framework, it's the people (and their whoring greed mixed with
dilettantism). I love vue, I'm okay with A5 and react. I usually do node
stuff, but php is okay nowdays, symphony is a good thing too.

------
falcolas
From the point of view of a user concerned with Google's influence, this seems
like a good move.

From the point of view of a SRE who would have to help configure a server side
implementation of web packaging, having yet another http request/response type
to build and maintain seems like a bloody nightmare. And OCSP with the
signature when Chrome themselves have disabled its use? It also requires
custom behavior from the client, all-but-guaranteeing it won't be broadly
honored.

And ultimately, I'm confused about how this replaces, or supplements AMP.

~~~
reaperducer
> And OCSP with the signature when Chrome themselves have disabled its use?

It's not the first (or probably last) time that Big G's said "Do as we say,
not as we do."

Heck, the blog post is hosted on WordPress instead of Google's own Blogger.

~~~
Ajedi32
Chrome hasn't disabled OCSP. It just only enforces it when you're doing OCSP
stapling with must-staple. Firefox did the same:
[https://bugzilla.mozilla.org/show_bug.cgi?id=1366100](https://bugzilla.mozilla.org/show_bug.cgi?id=1366100)

------
justinph
Lots of talk and no code or proposals, in so far as I can tell.

The thing that makes the web slow isn't web standards, but too many ads and
too much tracking code. If only there were a company that controlled a lot of
the ads and tracking code on the web...

~~~
Ajedi32
> no code or proposals

What are you talking about? They linked like half a dozen concrete proposals
in the post itself! Even provided a dashboard so you can easily track all of
them:
[https://github.com/ampproject/amphtml/blob/master/contributi...](https://github.com/ampproject/amphtml/blob/master/contributing/web-
standards-related-to-amp.md)

------
walterbell
Repost:

There's an IETF proposal for certificate-signed web content (Web Packages)
which can be rendered offline. The browser address bar will no longer show the
URL of the web server (e.g. Google AMP), it will show the authenticated origin
of the Web Package.

2017 IETF proposal by Google: [https://tools.ietf.org/html/draft-yasskin-
webpackage-use-cas...](https://tools.ietf.org/html/draft-yasskin-webpackage-
use-cases-00)

2018 Chrome demo at AMP event:
[https://youtube.com/watch?&t=9m03s&v=pr5cIRruBsc](https://youtube.com/watch?&t=9m03s&v=pr5cIRruBsc)

There may be overlap in goals with W3C Web Publications, which is working to
converge EPUB and Web:
[https://w3c.github.io/wpub/](https://w3c.github.io/wpub/)

------
skybrian
I'm wondering what happens if web packaging really takes off. Could mirror
sites basically do what ipfs does, but without inventing a new protocol? Or do
Cloudflare and other content networks already do everything website owners
want?

------
dmitriid
A lot if big words disguised as good intentions.

There’s nothing fast, instant, or open about AMP.

The latest article debunking those myths: [https://ferdychristant.com/amp-the-
missing-controversy-3b424...](https://ferdychristant.com/amp-the-missing-
controversy-3b424031047)

Google’s fully opaque process around AMP for email (yes, it’s a thing):
[https://github.com/ampproject/amphtml/issues/13597](https://github.com/ampproject/amphtml/issues/13597)
and
[https://github.com/ampproject/amphtml/issues/13600](https://github.com/ampproject/amphtml/issues/13600)

~~~
ocdtrekkie
The fact that Malte is still trying to call the AMP project "well-lit" is
really what throws a lot of question on this blog post. AMP is not a "well-
lit" project.

Why not hand AMP itself over to standards groups as well as all of the other
things mentioned here? What about the proprietary GMail implementation of
AMP4Email? Or the fact that none of the justifications for AMP given in this
(or The Verge interview[0]) hold up as reasons for AMP4Email.

[0] [https://www.theverge.com/2018/3/8/17095078/google-amp-
accele...](https://www.theverge.com/2018/3/8/17095078/google-amp-accelerated-
mobile-page-announcement-standard-web-packaging-urls)

~~~
Ajedi32
> AMP is not a "well-lit" project.

How so? As the blog post points out, the whole thing is open-source with
almost all discussion surrounding the project happening out in the open on
their GitHub repo. You might not agree with the direction the project is
going, but I'd say it's about as well-lit as any open source project can be.

~~~
pathseeker
Posting some discussions in the open doesn't make it well-lit. There are many
projects following this path where the real decisions are made in private
meetings by people in the controlling companies. Open washing is not open
source.

~~~
ocdtrekkie
Indeed, while discussing AMP4Email, it seemed that, despite being a proposal
in the AMP Project, all decisions for it's implementation were already made
(and committed to) by the Gmail team, it had already been "reviewed" by a
security team (although any such security protections are limited to Gmail's
own internal protections, other implementers are on their own), and there
seemed to be no opportunity for the greater email community to comment before
these things were decided.

Having it up on GitHub after that doesn't really mean much. This is the same
for Android and Chrome, of course.

------
test6554
I'm uncertain they learned the right lessons.

------
tootie
Is anyone out there doing anything with AMP besides Google? It seems like it
could be super useful for aggregator sites like Reddit. Or HN for that matter.
Like a heavyweight version of OpenGraph meta tags.

~~~
tyingq
The reddit AMP pages you land on from Google searches are particularly
irritating. You aren’t logged in when you go to them, and various UI
expectations are broken. Web packaging could help here since it would remove
the google url, allowing cookies/sessions to function again.

~~~
Ajedi32
Web Packaging (at least on its own) wouldn't help with that, since the whole
point of that standard is to allow content to be prefetched from a CDN (like
AMP pages currently are), and CDNs can't cache content that's user-specific.

What _would_ work is serving the main content immediately, then using JS to
fetch user-specific stuff after the page load.

~~~
beokop
... and we’re back to optimizing for fast delivery of the page that loads your
page.

------
Animats
Are you allowed to put Google ads and tags in an iframe yet, so they don't
hold up the page load?

~~~
wmf
Aren't they already async?
[https://support.google.com/adsense/answer/3221666?hl=en](https://support.google.com/adsense/answer/3221666?hl=en)

~~~
tatersolid
Async still prevents the DOMcontentloaded event from firing, and if you can’t
sandbox JS into an iframe you’re screwed security-wise if the linked source
gets owned or turns evil.

------
andrewn32
Haven't tried this myself but came across this interesting AMP workaround:
[https://www.goinflow.com/amp-mobile-pagespeed-
score/](https://www.goinflow.com/amp-mobile-pagespeed-score/)

~~~
drsim
No technical detail, just a lead gen page. Am I missing something?

~~~
vanadium
I'm glad I wasn't the only one wondering, "Ok, where's the technique here
beyond just adding AMP markup in a conventional page?"

Still not entirely convinced what's supposed to work about this method.

