I need to go to Australia.
Can I go with you?
Yeah.
DAMON LINDELOF: There was something about Australia
that was always calling to us as storytellers.
Something religious and weird.
There's something kind of mythical about Australia.
At some point, we started to seed into
the second season of the show the idea of Australia.
Kevin Garvey, Sr. says "I'm going to Australia,"
and then occasionally when people are watching television
we hear about things that are happening in Australia.
REPORTER: The man, identified as David Bur--
(TELEVISION TURNS OFF)
-Where are you? -I'm in Perth.
-Australia, huh? Long trip. -Yes, it is.
His reason for going to Australia
is purely just to be with Nora.
It's Nora who wants to go to Texas,
and it's Nora who wants to go to Australia.
Nora's identified as a victim, and as someone who's suffered the most.
And she hasn't quite let it go.
And there's a little flicker of something inside of her
that thinks, "What if?"
TOM PERROTTA: Where the characters started is a place of real pain.
They have this constant desire to escape that pain.
But that pain is inside of them,
so, "Oh, here it is in Texas."
And so there's one other place to go,
and Australia's about as far away as you can go
from where we started.
I'm... (SIGHS) seeking enlightenment.
LINDELOF: Australia is both primal and ancient,
but also kind of post-apocalyptic.
(THUNDER RUMBLES)
JUSTIN THEROUX: Damon likes Australia for it's ancient qualities.
It's one of those very old, spiritual places.
So I think it created a kind of a playground for him.
LINDELOF: There was something about the indigenous aboriginal community and religion
that went back millennia that was really appealing to us.
We love the idea that you can go on walkabout,
and really, "What is the measure of a man or a woman?"
(FIRE CRACKLING)
What are you doing?
Preventing the apocalypse.
(SNIFFS) What are you doing?
Just when you think you know what an episode of The Leftovers
looks like, if you shoot it in a different place
it just unlocks an entirely new exciting energy,
because it's unexplored.
It's a place you haven't been before.
And so, I think the opportunity to make the show feel...
similar thematically,
but visually, you're opening up an entirely new world,
and Australia just provided us
with a tremendous amount of new looks.
Down Under was the best place to go
for a series ender.
For more infomation >> The Leftovers: Season 3: Welcome to Australia (HBO) - Duration: 2:45.-------------------------------------------
The Leftovers: Character Spotlight: Kevin Garvey, Sr. (HBO) - Duration: 2:04.
KEVIN GARVEY, SR: On the seventh-year anniversary of The Sudden Departure,
I believe the rains will come,
and with them...
a great flood.
When we first meet Kevin Garvey, Sr.,
he is in a mental institution because he hears voices.
They said they sent or are sending...
somebody to help you.
TOM PERROTTA: He's the first person who's trying to bring Kevin Jr.
into this world of spiritual warfare.
We're in the fucking game now.
Where did you go, Dad?
When we see Sr. in season two, he is basically completely
and totally sane.
Your voices went away?
No, sir. I just started doing what they told me to.
SCOTT GLENN: I've been listening to voices,
and they've told me to come to Australia.
The rains will come. I have to sing to make it stop.
GLENN: The Indigenous people of Australia have far and away
and easily the oldest continuing culture on the planet.
-You want my song? -It's the last one.
GLENN: What I'm doing is learning all of the song lines,
walking them myself.
DAMON LINDELOF: That sounds like it's the craziest thing in the world,
but... what if it's not?
I am not a part of Kevin Jr.'s story.
He's a part of mine.
GLENN: When the world goes through a major trauma,
that's usually when new religions spring up.
LINDELOF: Most belief systems start with
someone who most of society
is saying, "That person is insane."
Only over time did they gain some sort
of prophetic relevance.
You're building a boat.
Uh-huh.
For the flood.
LINDELOF: Watching someone who appears to be relatively sane
saying crazy things is really interesting
and captivating storytelling.
And when you have an actor like Scott Glenn
performing it, it's pretty entertaining to watch.
-You can't stop me, asshole! -(THUNDER RUMBLES)
-------------------------------------------
The Leftovers: Season 3 Episode 4: Preview (HBO) - Duration: 0:36.
NORA DURST: Kevin, what's wrong?
You can tell me anything.
No, I can't.
Just tell me exactly what you think you saw.
I don't think I saw anything! Hey!
KEVIN GARVEY: I don't understand what's happening.
-So it's a sting operation? -Right.
I'm gonna find them and I'm gonna destroy them.
NORA: Wait!
Is this real?
I didn't know how to handle you talking to a dead person.
Oh, Jesus. Is it happening again?
-------------------------------------------
Father, son charged in connection with deadly hit-and-run - Duration: 1:59.
SEMINOLE COUNTY TEENAGER TWO
WEEKS AGO.
THANKS FOR WATCHING.
I'M ADRIAN WHITSETT.
FATHER AND SON ARE FACING
CHARGES, THE FATHER JUST BOUNDED
OUT -- BONDED OUT.
ROBERT LOWE REPORTS HE IS
ACCUSED OF HELPING HIS SON AVOID
AN ARREST IN THIS CASE.
ROBERT: AT THE SPOT WHERE
CHRISTOPHER JOHNSON JUNIOR DIED,
THIS ROADSIDE MEMORIAL CONTINUES
TO GROW.
SEMINOLE COUNTY DETECTIVES SAY
THIS IS ALSO THE SPOT WHERE THE
16-YEAR-OLD STRUCK SOMEONE FOR A
DRUG BETS.
BUT SOMETHING ELSE HAPPENED, AND
THE 22-YEAR-OLD STROHAKER RAN
OVER JOHNSON WITH A VAN, AND
THEN RAN AWAY ON FOOT.
JOHNSON DIED AT THE HOSPITAL
AFTER RESCUERS MOVED THE VAN
FROM OFF THE HAGERTY HIGH SCHOOL
SOPHOMORE.
FOR TWO WEEKS, JOHNSON'S FAMILY
MADE IMPASSIONED PLEAS.
WHOEVER THIS PERSON IS, THIS
YOUNG MAN IS, YOU NEED TO COME
FORTH.
I DON'T CARE WHAT THE SITUATION
IS.
ROBERT: BUT DETECTIVES SAY THEY
HAD TO ACTIVELY SEARCH FOR
STROHAKER. THE
STATE ATTORNEY'S OFFICE HELPED
WITH AN ARREST WARRANT FOR
FELONY MURDER.
IT WENT OUT THURSDAY.
THE SHERIFF'S OFFICE SAYS HE
AVOIDED CONTACT WITH LAW
ENFORCEMENT UNTIL SATURDAY NIGHT
WHEN STROHAKER AND HIS DAD WERE
LOCATED DURING A TRAFFIC STOP IN
ALTAMONTE SPRINGS.
OFFICERS FOUND DRUGS AND
ARRESTED ROBERT STROHAKER ON
POSSESSION AND ACCESSORY AFTER
THE FACT CHARGES.
HIS SON, BOOKED ON A MURDER
CHARGE AND LEAVING THE SCENE OF
A DEADLY CRASH AND POSSESSION OF
MARIJUAN
ADRIAN TONIGHT NELSON STROHAKER
REMAINS BEHIND BARS AT THE
SEMINOLE COUNTY JAIL.
AS FOR HIS FATHER, YOU SAID HE
POSTED A $3700 BAIL.
I SPOKE WITH THE FAMILY.
THEY TELL ME THEY ARE AWARE OF
-------------------------------------------
Top 5 Popular Tanks | Overused tanks | Diep.io - Duration: 11:24.
top 5 popular tanks diep.io
-------------------------------------------
3 Thìa Này Mỗi Ngày Da Xần Xùi Đen Nhẻm Cũng Trắng Hồng Không Tì Vết U40 Cũng Trẻ Như Gái 20 - Duration: 9:38.
-------------------------------------------
Third Jeremiah Morrow Bridge demolition unsuccessful - Duration: 1:40.
>> THANK YOU FOR CALLING
ON-STAR.
HOW CAN I HELP YOU?
>> YES, I'M ON I 71 NORTH HEADED
TO CLEVELAND.
PLEASE REROUTE ME.
THERE'S A BRIDGE BEING BLOWN UP
OR SOMETHING.
RICHARD: THE THIRD FAILED
ATTEMPT TO IMPLODE THE JEREMIAH
MORROW BRIDGE CREATED A MIX OF
U-TURNS, DETOURS, AND DELAYS.
AFTER TWO ATTEMPTS WITH MORE
THAN 35 POUNDS OF EXPLOSSIVES
-- EXPLOSIVE FAILED TO
COMPLETELY BRING DOWN THE 2500
FOOT BRIDGE LAST WEEK, THIS
MORNING'S UNSUCCESSFUL
DEMOLITION ATTEMPT LEFT MANY
TURNED AROUND AND SPANS OF THE
BRIDGE STILL STANDING.
IN A STATEMENT, ODOT PRESS
SECRETARY MATT BRUNNING SAID
CREWS WILL NOW "MANUALLY
DISMANTLE THE REMAINING SECTION
OF THE OLD JEREMIAH MORROW
BRIDGE TO REMOVE IT."
HIGHWAY TRAFFIC WITH SHUTDOWN
AND THE TOWARD FOR ABOUT TWO
HOURS FOR THIS SECOND EFFORT TO
BRING DOWN THE BRIDGE.
-- D TOWARD -- DETOURED FOR
ABOUT TWO HOURS FOR THIS SECOND
EFFORT TO BRING DOWN THE BRIDGE.
>> I WAS FOLLOWING THAT SEMI
OVER THERE, AND I SEEN THAT HE
COME UP OVER HERE, AND I THOUGHT
I COULD GET BACK ON 71 THIS WAY.
BUT I SEE YOU CAN'T DO THAT.
>> I'M TRYING TO GET HOME AND
ALL OF A SUDDEN THIS HAPPENED.
RICHARD: THIS FAILED THIRD
IMPLOSION EFFORT CAUSING NOT
ONLY DELAYS AND QUESTIONS FOR
CONSTRUCTION CREWS AND
ENGINEERS, BUT LEAVING MOTORISTS
UNCERTAIN AS WELL.
>> WHERE ARE YOU?
>> 71 NORTH TO CLEVELAND.
I'M OUTSIDE OF -- WHERE AM I?
RICHARD: FOR THOSE MOTORISTS AND
ODOT, THESE ATTEMPTS TO BRING
DOWN THIS BRIDGE HAVE CREATED A
LOT MORE DETOURS AND DELAYS THAN
THEY PLANED.
-------------------------------------------
The National for April 30, 2017 - Duration: 1:00:04.
-------------------------------------------
ПЕЧЕНЬЕ «ПЕСОЧНОЕ С ОРЕХАМИ» - Duration: 5:10.
-------------------------------------------
Antthony "Pleats Please" Overlay Top and Pant Set - Duration: 4:15.
-------------------------------------------
Transformers The Last Knight - Optimus Voyager Takara, Optimus MP-04 and Film Photo Filtered - Duration: 10:07.
Before starting this video I want to tell you 2 very important things
The first is to subscribe to this good channel and activate the bell
To be one of the first subscribers to see my videos
And the second thing is to go through my game channel "ArtgalRandomGames"
And reach the goal of the 10 subscribers or more and unlock the first video-game that already publishes
But it's private
So subscribe and in turn activate the bell :P
thank you
What's up friends! Today I bring you a new video on the optimus prime class voyager of Takara tomy of TF5 TLK
and a figure that we have been waiting for many collectors of the films as the new "OPTIMUS PRIME MASTERPIECE MOVIEW 04"
First let's start with the optimus prime class voyager
As for the box I did not like it much because everything is in black and white
But that's not what matters, what matters is the figure that is very good
As many already know Takara does magic with the figures making them an improvement of painting
We see that it no longer has colors that are not according to the film
The sword is painted a purple color and is no longer orange
The shield is painted completely blue
It has more paint in the thighs than the previous voyager did not have
And the feet are already painted red in this part
The chest was painted flames that he needed the Hasbro voyager
Small comparison
On another side the vehicle mode does not change much but has a little more detail
The wheels are painted a silver color as it should have been
Paint blue flames on the doors like the model of the original truck
They painted the smoke escape gray
And that is the only thing that changes the vehicle mode and forget something let me know in the comments
Yesterday we were shown 2 things filtered the first is the box of sqweeks
and the other is an official photo of optimus from Instragram
First let's talk about the sqweeks box
They showed us only 3 photos, from different angles the box in front, back and side
In the front we see the conceptual art, the figure itself, his gun,
an arm prosthesis and his car or trailer or whatever you want to call it
To the side they show us another conceptual art, above we see that it says autobot sqweeks and autobot amigo
The funny thing is that they did not translate that phrase as with the others
In the back of the box we see that the companion of wave will be drift
Will have 3 alternate modes, it will be transformed into 19 steps
His first mode is the motorcycle, the second is the robot and his car or trailer
will be transformed into a toolbox and his third mode will be a kind of attack mode that will have missiles in the back
And as for the picture of optimus prime is continuation of the scene of the firts trailer,
since we see that he has purple eyes and an angry look
And the blade that has on the left arm which makes us know and confirm more
That the scene that optimus attacks bumblebee with its blade will not be eliminated when it appears
But hopefully this scene if this in the movie does not like other scenes of TF4 that we have seen and were eliminated
Now if the most important "The new Masterpiece Optimus Prime"
As many already have to know the past 27 of April showed in an expocision
the new masterpiece optimus prime that is very very good
Among its most outstanding characteristics is
The battlemask interchangeable head to the face like the TF4 AD-31 takara as you see
Only seen in a picture of the box
Many compare it with the HFTD optimus voyager
Because it has the matrix of leadership in the chest
Apparently have 5 individual articulated fingers
His armaments will be only 3
Which are his two mythical swords of the first trilogy
And its cannon which resembles the prime buster
As for the robot mode we see is very different to the leader class of 2009
We see parts of the front of the truck in the chest and in the arms something that the leader class did not have
And will have very good application of paint throughout the body and especially in the vehicle mode
And for comparison someone tried to put their leader class and compare it with the MPM photos
And many thought that the photo was only adjusted so that they look the same size
But a few hours later we are confirmed a hero without a cape
who shared his photos of the purchase of the leader with MPM
And we see that they are almost the same size .... almost
The notorious difference of the leader with the MPM
The most remarkable are the lateral wheels of the thighs
That this time they are already well haunted, not like the leader who are one over another
No longer has the ladder of the truck in the feet and this time they removed it
As for the part of the back we see the notorious difference
We see it flatter, thinner, the arms will no longer have the panels of the truck but now are part of the robot
The back many complain because in the exhibition looked very bad,
it is obvious in the expos always they transform badly
We already have many cases of this
But then we are well transformed and we see that he will be much better than the leader
The only bad thing is the gas containers but it is the least
So the swords are put into vehicle mode
We see that in cannon has a pole that is placed in the part where if they put the trailers
And the swords are placed on the sides of the cannon
A new feature of this new MPM that smoke leaks are retractable and lowered
To be more similar to the CGI model
One thing not many noticed was
That this time the headlights of the truck will be those same and will not be modeled as in the leader class
And to finish ... if I would recommend this Masterpiece more than the leader?
... would not have a good argument
Since we have only been shown in photos, we have not seen their rank of posablidad
But what if it is true is that it is more similar to the CGI model, the leader class also but ...
This one has more points in favor has articulated fingers,
smoke exhausts are retractile and better painting
-------------------------------------------
Pocket Mirror - Part 1 - A GIRL WILL DIE IF SHE FORGET THIS ITEM! LITERALLY!!! - Duration: 21:14.
Hello everybody! Whitemouse is in the house!
And welcome to the world of Pocket Mirror
If you like my Fausts Alptrum's "Let's Play" series
I'm sure you will like this series as well
the 2 game have many similarities
from the art, of course...wow, just look at this!!!
woo!!
and also, the horror part, of course
but the most notable thing is
the puzzles
from the reviews I see in rpgmaker.net
then it is also quite difficult so
you guys will have many chances
to enjoy my suffering moments
when trying to solve them
so now! let's go!!!
ooo...she opened her eyes
that's so cool
let go of what?
wow...very big eyes
maybe a bit too big
oh. what...
ok, I don't think I can get the item that
is mentioned in the title so soon
a girl can't live without this
now...
anything else?
maybe...
no, ok, let's go out
ok
so...I have no memory?
yes, and no name either
so, is this the thing
that I should not let go?
the window please
and I can't get out...
maybe...
no reflecton?
seriously??
ok...what is going on here
oh, something is shining
behind
or in front? ok, behind me
ok, my eye
my eyes are big and red
i'm vampire?
who just knocked?
of course there's no one here
come on...
what is this? a music box?
oh, this is a save location
ok, then let's save first
down here huh
ok...
what is this?
egliette?
I can't read this out
a doll?
nah...I haven't checked it out so, I don't know
nodding??
this wasn't here before
hmm...a green line
wait wha???
and it laughs
ok
get out now please
see you never doll!!
wow...ok
you know, playing these games
will make you hate dolls
sooner or later, you will
ok, now, the room to the right
a purple color
but...ahhh, ok
no timer so I guess I can take my time then
paper...what's this?
something? I can't read that out
oh god...
what have I gotten myself into here
oh, and now the pen moves
we?
not me, right?
please! I don't want to go with you
ok...then...what...the...
what was that sound?
where is the orb? where is the marble?
oh!
what the hell???
ok, I just accidentally..
check, but, what?
oh wait!! no!!!! don't don't don't!!!
I just hit Enter by instinct!!
help!! stuck!
no, I didn't...I thought I can just
reach inside and get the marble
and...maybe...
ok, at least it's not red paint (fausts alptraum reference)
wait, that's worse!
oh god...
what is this...
and now, a blue light shining on this door
2 roses...on something like...eye?
yeah, those are closed eyes
I can't interact with them
what is this?
oh! thank you, at least I got some light
Jesus...
what is painted over?
ok, I can check these
how can I calmly answer this after all that?
it's...
blue?
I wonder what will happen if I answer by the other 3
ok, can I check this side?
I can
nothing else though, ok
now...
ok
ayyy! the red room, shine again
you know what, I have a feeling I should save the game first
after all, I expect some red paint here
it's pitch black in here
why?
omg...
what is this??
maybe this is a mistake
what's on this side?
what is this?
Jesus Christ!!
(groaning)
wowowow...okokok
woo!
so...what's here?
no idea what this means
maybe I shouldn't have...but that means...
any marble here? because I need
2 more
footprint
more like blood print
marble please
no?
ok, at least nothing changes outside
but I need 2 more marbles
maybe...
am I at the top of some tower?
blue...lavender
then...yellow?
ok!
on here, must be here
and the last one
here?
window, must be here
ok, here?
no...
and I can't enter the rooms
what?
jesus...disgusting
ok, i got this
I know...Yeah!!!
wait..."it's too bright" already
and I have to go up again?
ok
ok
wait what???
what??
huh??
oh!! the mirror!!
I shouldn't let go of the mirror
I see...I must
go back and take it with me
ok ok
no, I don't want to go into that room again so...
wait what??
so I have to enter that room
in order for the marble to show up
this game is screwed up, so screwed up
ok, let's make this quick
ah...I don't know but I should do the same things again
in order for the marble to show up
and...finally
read this
ok
now, the marble is here! Yes!
now, I must never
ever leave the pocket mirror behind
so, I got thrown in here by my mother
and she
say I
am not allowed to let go of the pocket mirror
otherwise, she will kill me
best mother ever!!
a library...
who is that?
oh, just a doll
why...
the eye...
ok...
can I go back? no I can't
a book
a diary
I want to know too
the doll just go through the mirror
it seems
how many...how long did I
spend my time
indoor...please
it seems I can't check anything here
well
into the mirror
water?
wow!! wait! wha...
where am I now?
oh! thank you
at least it's not dark and scary
but it's light and creepy
but I just go through it
I can't go back
I can't
a grand hall...ok! A save location
well, I guess that's enogh for the first episode so
thank you everyone so much for watching!
If you like the video, smash the like button down there and subscribe for more!!
Hope to see you again in the next video
Whitemouse's out!
-------------------------------------------
(H:) arm.ony - Duration: 4:28.
-------------------------------------------
Cocoa PD officer injured in hit-and-run, police say - Duration: 2:24.
-------------------------------------------
Antthony "Living in the City" Top and Pant Set - Duration: 3:46.
-------------------------------------------
Antthony "Pleats Please" Pleated Jacket and Tank Set - Duration: 2:55.
-------------------------------------------
Supercharging page load 100 Days of Google Dev (10/100) - Duration: 11:04.
JAKE ARCHIBALD: Hello, I'm Jake, and I
work in Developer Relations.
This means I live in constant fear
that my developer skills are going to rot
and fall off, because I spend too much time doing stuff
like this rather than building actual real stuff.
This is why when someone in Dev Rel builds a thing,
we won't shut up about it.
It's our proof to the world that we still got it.
We're still cool.
We're still one of you, a developer.
And on that note, look what I made.
It's a little responsive web app that
lets you search for and read Wikipedia articles.
Now I know what you're thinking.
Hasn't this already been created before by Wikipedia?
Well, yes, shut up.
Forget about that.
That's not the point.
I want to talk about performance.
First up, let's immerse ourselves
in the current load time.
Ready, setty, go.
That wasn't so fun.
That was the load time of one of the articles
on a 3G connection.
It's important to watch the 3G load times,
because even though we have 4G now, those users
are on 3G or worse a lot of the time,
a quarter of the time in the US, half the time
in large parts of Europe.
So here's our problem.
We saw 2.7 seconds of nothing and a further 2.1 seconds
of basic interface without meaningful content,
just a toolbar and a spinner.
Even on 5 megabit, we're waiting over two seconds for content.
As users of the web, we know this kind of load time
is a bad experience, but that bad experience directly
impacts download conversions, donation conversions,
and outright revenue.
And there are some studies that you
can throw at the money people to convince them that performance
really does matter.
I'm going to show you how you can slash the load
time of something like this, and we'll
add in some cool new features along the way as well.
So here's the markup, roughly.
It's got CSS, JavaScript, and nothing else.
I'm relying on JavaScript for all my rendering,
which is kind of bad.
So don't do that.
Our initial render is pretty static.
So let's do it without JavaScript.
So we'll add some markup in for the title bar
and mark the JavaScript as async.
Now it won't block rendering, and it will execute
whenever it finishes loading.
Doing this knocks around half a second off our first render
time on 3G.
And the bigger your JavaScript is,
the bigger gains you'll see with this fix.
But we're not done.
We need to prioritize our CSS.
We can't render until all of our CSS is downloaded,
but we only actually need a tiny fraction of it
for the first render.
So we'll do this.
We'll inline the bits for the first render
and then load the rest asynchronously using
JavaScript.
The Filament Group created loadCSS to do just that.
It's a tiny script that you can inline in your page.
So that's what we'll do.
We'll hide our article element so we don't get
a flash of unstyled content.
We'll load our CSS, and once it's ready,
we'll show the article.
This is a huge win for slower connections.
Only 1.4 second of blank screen on 3G,
that's a huge improvement.
And the bigger your CSS is, the bigger gains
you'll see with this fix.
Now, I realize there's been a lot of code and graphs so far,
and that actually goes against the guidance we've
had for creating these videos.
So to address the balance, here are
some pictures I took at a zoo.
[MUSIC PLAYING]
Welcome back.
So we're down to 1.4 second on 3G, but all we've improved
is the time to this, not the actual content.
Let's fix that.
Our bottleneck is once again our JavaScript.
You see, the browser makes a request.
It gets back a page, and that page
tells the browser to go fetch some JavaScript and CSS.
And then that JavaScript tells the browser
to request the article data, which
we get from Wikipedia's API plus a few alterations.
You see the problem?
We've made two back and forths before we even think
about downloading the content.
This is super inefficient and a big problem
with JavaScript-rendered sites, particularly those
created with frameworks as the JavaScript
tends to be pretty big.
Instead, let's render the page on the server.
So the request goes out, we compile the content
on the server, and send back plain HTML.
So how much quicker is that?
It is worse.
Can we cut?
[MUSIC PLAYING]
OK, OK, I figured it out.
Wikipedia is a bit of a bottleneck.
Our API request to them takes around 900 milliseconds.
Probably because Wikipedia contains five billion articles
covering quantum physics, the rule of threes,
and they're being access thousands of times a second.
But you might run into the same problem
with many third-party APIs, maybe even certain database
requests on your own server.
So our server gets the request, it goes off to Wikipedia,
takes that 900 millisecond hit, and only then
does it send stuff back to the client.
In the meantime, the user's left looking at a blank screen.
But there's a better way.
We fix this by streaming the response using chunked encoding
or multiple data frames if you're speaking HTTP/2.
This allows us to start sending the HTML
before we have the whole content.
So we respond immediately with our header and toolbar.
That gets is this fast first render
and lets the browser know about the JavaScript and extra CSS.
Then as we get content back from Wikipedia,
we can transform it and send it on to the browser.
This is quite easy with a no-js or golang backend.
With no-js, I can just call write whenever
I have something worth sending, or I can pipe a stream
to the response.
There's also the Dust.js templating language.
I don't much care for the syntax,
but it supports streaming.
It'll output as much as it can until it
encounters a template value that's
either a promise or a stream.
And then it'll wait for that promise
to fulfill or pipe the stream.
And the result-- we fixed our first render time
and massively improved the content rendering time.
Let's look at that side by side with the first
JavaScript-driven iteration.
We'll set them off at the same time,
and you can see the difference.
We are now web performance winners.
[MUSIC PLAYING]
But wait, what about the second load with our populated cache?
Currently cache load times are not
dissimilar to normal load times.
Our bottlenecks are making a request
to the server and the server getting data from Wikipedia,
and that's the best case.
We cannot rely on the browser cache for performance.
Stuff falls out of the browser cache all the time,
or we as developers invalidate it by making code changes,
because that's our job.
Also, there's a connection type we haven't catered for.
No, not offline, this.
I call it Lie-Fi.
Offline?
Offline is OK.
At least it's honest.
Can I fetch this?
No.
Can I go here?
No.
Can I do this?
No.
Lie-Fi is like offline, but it trolls you
by pretending to be online.
It'll attempt to make a connection for minutes
and still fail.
Let's fix this.
Let's take control of the cache and page loads
using Service Worker.
Now I'm not going to dive into the ServiceWorker API.
There's an HTML5 Rocks article for that.
But here's the concept.
During the first server-rendered load,
we register for a ServiceWorker.
Then it gets everything it needs from the network
to render a page-- the CSS, JavaScript, and basic page
shell.
Then it puts them in a cache.
Now, unlike the standard browser cache,
items aren't automatically removed from this one.
For the next page load, we're going
to go back to rendering on the client,
but this time, it's supercharged by the ServiceWorker.
The browser requests an article, and the ServiceWorker
responds with the HTML, CSS, and JavaScript,
and this is super fast as it doesn't
require the network at all.
The connection type doesn't even matter.
It's all from a local cache.
Now the page asks for article content.
This delay made our client render slow before,
but the ServiceWorker preempted this request along
with the initial page, and it's already on its way.
This absolutely slashes our first render time
to almost instant, but our content render time kind of
suffers.
Remember the problem we saw with our first server render?
Well, we've kind of just recreated that on the client.
Our JavaScript pulls down the full Wikipedia article
before it puts it on the page.
We're losing time here, because we've got some content,
but we're not showing any of it to the user.
Over the next year, you'll see a new API learn to fix all this--
the Streaming API.
Parts of it are landing in Canary already
so we can make some use of it.
Here I fetched the article, but instead
of getting the full text, I get a screen reader
and start siphoning off the content as it arrives.
I write the result once when I have to first 9K,
and then I write again once I have to rest.
Writing it to your HTML twice like this is kind of hacky,
but as streaming APIs land in the browser,
we'll get access to the proper streaming HTML parser.
But even this hacky solution has improved things.
We've retained the quick first render,
but now our content render is much better.
But now that we have a ServiceWorker,
we can make even greater use of it.
The final step-- if we've got ServiceWorker caching assets,
why not let it cache articles?
You could cache articles automatically,
but I'm going let--
[DING]
--the user decide.
With a full cached article, the content load time
drops into under a half a second.
Not only that, it's that fast on Wi-Fi, it's that fast offline,
and it's that fast on Lie-Fi.
We don't leave users with old content either.
When the user looks at a cached article,
we can then go to the network in the background
and look for updates.
If we find some, we can just update the content on the page.
[DING]
When swapping content on the page,
we need to ensure it's not disruptive to the user.
Wikipedia changes are usually small so it isn't particularly
risky here, but we could detect bigger changes in content
and instead show a notification inviting the user
to click something in order to see the updates.
These are the things that make the difference between a web
app and a great web app-- get to first render before JavaScript,
render with minimal inline CSS, render
on the server with response streaming,
leverage the ServiceWorker for caching your content shell,
and even use it for offline first content.
This is how we make the web fast.
You can check out the Wikipedia demo on GitHub,
and if you're interested in other smart uses
of ServiceWorker, check out the offline cookbook,
SVGOMG, Trained to thrill, and the Google I/O website.
And next time someone from Dev Rel
shows you something they've made, give them a hug
and tell them they're a true developer just like you.
Seriously, we need this.
[MUSIC PLAYING]
Không có nhận xét nào:
Đăng nhận xét