►
From YouTube: YUI Open Roundtable for June 27th, 2013
Description
YUI Open Roundtable for June 27th, 2013
A
A
A
So
all
of
the
performance
tests
that
have
been
written
it
seems
like
that
benchmark
is
test
for
the
last
couple
years
inside
of
the
library
but
they've
always
been
referencing
the
resourcing
the
benchmark,
JS
file
from
lions,
one
of
ryans
servers
and
then
rocket
up
in
some
other
places
too.
So
we've
never
really
had
a
centralized
place
for
that.
So
we
figured
it
kind
of
made
sense
just
to
go
ahead
and
bring
it
into
the
sorcery,
so
I've
gone
through
and
actually
updated.
All
of
the
benchmark.
A
J/S
tests
out
there
that
we
have
in
the
library
and
to
point
to
our
local
path,
so
yeah
anybody
out
there
wants
to
start
writing
some
performance
benchmarking
test.
That's
quickly
becoming
a
high
priority
and
making
sure
that
the
library
is
getting
faster
and
faster,
especially
in
the
core.
Underlying
infrastructure
components
such
as
yeah
attributed
base,
which
satya
has
been
doing
a
bunch
of
work
with
lately,
so
I
think,
starting
in
what
was
that
when
we
had
our
yui
after
hours,
everything
I
was
previewing
the
through
nine
release.
B
Little
question
regarding
bench
watcher:
is
there
a
good
way,
because
I
don't
think
jay
is
perf
is
good
for
this?
Is
there
a
good
way
for
me
to
simulate
our
benchmark
event,
like
firing
of
events
like
for
for
some
of
my
for,
like,
for
example,
I
was
looking
to
this
pointer,
polyfill
stuff,
and
I
wanted
to
compare
if
we
use
to
polyfill
like
like
and
comparing
like
the
firing
of
events
versus
you
know,
just
using
like
a
Yui
synthetic
event
versus
just
using
a
generate
generic
Dom
event.
What
are
the
differences
in
performance
there?
B
What
like?
How
do
you
recommend
that
I
test
them
in
that
should
I?
Just
use
like
like
I,
have
to
simulate
like
clicks
or
something
like
that
is
that
the
benchmark
tests
can
help
you
with
yeah.
A
I
mean
benchmark,
jess
is
really
just
all.
It
does,
is
take
an
input
function
in
instrumented
and
then
I.
It
executed
a
crap
ton
of
times,
and
then
you
also
setup
and
teardown
functions
to
in
between
each
cycle
but
yeah.
All
it
does
is
just
measure
the
time
that
it
takes
for
a
specific
bit
of
JavaScript
to
complete
executing
so
yeah
I.
Guess,
in
your
specific
use
case
I
get.
I
think
I
have
to
see
the
code
a
little
bit
more
to
give.
B
Okay,
I'm
just
wondering
like
so
if
I'm
testing,
let's
say
like
I
would
have
just
like
I,
would
either
have
to
simulate
a
click
event.
So
let's
say
I
have
three
functions.
That
I
want
to
like
I
want
to
compare
the
performance
of
like
three
different
functions.
B
One
is,
let's
say:
they're
not
really
functions
that
are
event
subscriptions,
so
one
is,
let's
say:
I
subscribe
to
like
a
what
a
node
a
Yui
node
and
have
like
you
know
a
click
event,
and
one
is
let's
say:
I
have
just
a
generic
Dom
node
with
like
a
mouse
or
a
mouse
down
event
or
something
like
a
detached
attack
like
add
event
listener
something
and
then
let's
say
I
will
pointer.
Polyfill
event
subscription
I
want
to
basically
compared
to
see
like
over,
like
a
period
of
one
second
or
five
seconds.
A
B
A
So
you
can
certainly
measure
the
callback
firing
rate
but
actually
going
through,
and
it
there's
probably
going
to
be
some
way
to
test
that
because
one
of
the
things
that
you
run
into
and
if
you're
trying
to
simulate
all
the
clicks
is
the
the.
A
C
Yeah,
so
so,
how
would
I
measure
the
callback
flying
right?
There
is?
All
you
would
do
is
really
just
say:
here's.
C
A
D
D
B
A
Benchmark
juice
com,
so
I'll
probably
go
into
a
little
bit
more
detail
in
this
in
a
future
hangouts
or
get
a
little
bit
more
mature
with
some
of
the
tools
that
we've
been
working
on,
but
yeah
anyways,
just
a
I
mean
this
is
really
just
kind
of
showing
how
benchmark
Jas
is
set
up.
It
works
so,
basically
all
you're
doing.
Is
you
create
your
in
this
example?
Here
it's
showing.
C
A
So
the
general
idea
is
that
you
create
a
sweet.
You
can
also
just
run
it
without
a
sweet,
but
it's
tits
most
typically
used
at
least
within
the
context
of
multiple
tests
in
the
suite,
and
they
don't
necessarily
have
to
be
comparative
functions.
It
can
be
completely
arbitrary
on
related
functions.
In
this
example,
it's
comparing
testing
of
the
regular
or
I
guess
yeah,
finding
the
index.
Well,
I!
Guess
these
aren't
ya.
A
These
aren't
two
related
once
testing
the
regular
expression,
the
other
ones
measuring
the
firing
rate
of
index,
and
then
the
third
one
is
checking
for
a
string
match
which
one
and
three
seems
so
similar.
But
two
is
different,
so
it
was
yeah.
All
you
do.
Is
you
just
name
your
name,
your
test
and
then
you
pass
in
and
whatever
callback
function
is
in
there
there's
a
lot
of
different
ways.
You
can
kind
of
construct
your
benchmark,
jazz
testing
sweets.
This
is
just
one
way,
but
so
in
kilo.
A
In
your
case,
what
you
can
here's
essentially
another
way
of
doing
it
if
I
should
be
able
to
learn
your
large?
This
enlarge
this
code
here.
So
if
you
have
a
function
called
this
dot
foo
in
here,
yeah
it'll
just
see
how
many
times
it
can
execute
this
top
foo
and
then
there's
the
setup
and
teardown
function,
so
that
will
do
for
each
each
cycle
through
so.
B
A
B
A
A
second
that's:
what
benchmark
jeaious
actually
measures
it.
It
does
the
iterative
testing
on
how
many
times
is
specific.
A
snippet
of
JavaScript
can
execute
inside
of
one
second,
sometimes
that
the
time
might
be
half
a
second
to
derive
the
result
other
times
it
might
be
five
seconds,
but
the
end
result
is
it
gives
you
a
measurement
and
hurts
occurrences
per
second.
So,
let's
yes,
yeah
Jasper
actually
is
its
front
end
for
benchmark
chaos,
so
it
uses
benchmark
a
under
the
hood,
so
yeah.
B
A
B
A
A
We
have
a
course
benchmark
jas
face
testing,
but
there's
also
other
types
of
testing
like
frames
per
second
and
score:
that's
not
something
that
you
can
use
benchmark
gs4,
because
that's
measuring
the
frame
rate
of
an
animation
and
where
hurts
doesn't
quite
make
any
sense
in
that.
Well,
yeah.
There's
no
easy
way
to
adapt
that
testing.
A
You
are
still
going
two
frames
per
second,
which
is
per
second
base
testing,
but
yeah,
but
that
is
something
you
can
ever
oughtta
me,
but
I
don't
know,
but
you're
not
doing
your
only
measuring
one
occurrence
of
you
don't
want
to
see
how
many
what's
the
best
way
to
freeze
it.
It's
not
like
stress,
testing
you're,
not
seeing
you're,
not
cramming
it
in
there
to
see
how
many
times
you
can
do
it
for
a
second
you're,
just
executing
it
in
animation
and
seeing
what
it
does.
A
So
in
that
case,
basically,
I
have
a
test
here
that
yeah
this
I
think
this
value
test,
yeah
so
scroll
in
the
air.
Sorry
next
frame,
basically
every
time
a
frame
occurs
that
I'm
pumping
the
Frank
app
a
friend
counter
by
one
and
then
just
doing
a
little
map
at
the
end,
to
figure
out
the
frame
rate
so
yeah,
her
friends
course
I
agree
so
yeah.
D
A
A
B
A
D
A
A
Goes
that's
a
pretty
good
way
to
go
about
that
at
least
detecting
that
Jamie
yeah
yeah?
No,
that's
interesting
and.
A
That
has
some
kind
of
graphs
and
metrics
and
all
of
this
stuff
that
you
can
look
at
to
see.
Is
this
faster
than
the
last
version?
Is
it
even
slower
than
the
last
version?
Is
it
maybe
not
even
the
last
version?
Maybe
it's
five
versions
ago,
every
time
every
new
release
you're
getting
two
percent
slower,
so
you're,
probably
not
going
to
not
going
to
be
flagged
for
having
a
two
percent
slow
down
between
releases,
but
a
ten
percent
slow
down
between
five
releases.
That's
a
sign
that
something
in
your
development.
It's
good!
A
D
A
Our
environment,
so
it's
I,
certainly
wouldn't
you're
going
to
get
wildly
different
results
on
a
in
a
CI
environment.
On
a
low-power
virtual
machine
you're
going
to
get
much
lower
results,
then
you
would
get
on
a
macbook
pro,
so
you
can't
necessarily
look
at
it
as
you
can't
do
comparative
metrics
between
your
pin
down
macbook
pro
vs,
a
cheapo
virtual
machine.
What
you
can
do
is
look
at
the
results
over
the
last
like
three
or
four
versions
on
that
same
machine,
so
comparing
in
our
case
running
1,
test
against
393
10
and
3
11.
A
E
A
So,
there's
a
lot
of
considerations
there
yeah,
namely
like
all
the
different
fluctuations
you
can
have
in
in
the
state
of
your
machine,
at
the
exact
time
that
that
those
tests
that
those
tests
are
run,
that
kind
of
a
serious
impact
on.
If
I
don't
know,
I'm
trying
to
think
of
an
example
of
winds,
stuff
like
this
can
occur,
I
mean
I,
certainly
wouldn't
look
at
the
state
of
a
virtual
machine
as
being
consistent
and
reliable.
All
the
time
you're
going
to
have
some
fluctuations
there
so
setting
the
specific
threshold
to
flag
it.
A
If
there's
a
five
percent
slow
down,
that's
just
begging
for
a
lot
of
false
positives,
because
you
run
it
the
next
time
then
you're
thinking
to
get
three
percent
slow,
that
two
percent
slow
down
maybe
run
it
some
other
time.
When
there's
some
others.
A
You
were
going
to
get
twenty
percent
so
that
so
yeah
I
think
that's
just
going
to
be
kind
of
one
of
the
things
to
look
at.
Is
we
get
more
and
more
experience
with
this
stuff?
Is
how
do
we
minimize
those
variances
and
develop
a
method
of
getting
consistent
results
and
then
yeah?
We
can't
actually
look
at
setting
up
the
setting
of
failures
flagged
by
slowdowns
in
code,
but
yeah.
A
D
A
A
So
yeah
it
was
benchmark.
Jan
sits
down
in
the
library,
so
yeah
12
positive
recently
what
he
saw
that
that
landed.
He
would
wrote
a
whole
bunch
of
performance
tests
for
promises.
So
you
could
take
a
look
at
the
full
request
that
he
know
if
it's
merge
champions
but
yeah
there
was.
You
take
a
little
more
requests
that
he
submitted
and
see
how
quick
and
easy
it
is
to
write
performance
tests
and
just
off
of
running
that
he
was
said.
A
A
Speed
in
chrome,
I,
like
twenty
five
percent
or
something
so
just
kind
of
getting
us
as
developers
aware
and
exposed
to
the
idea,
performance
testing
and
at
least
in
in
a
CIA
type
environment,
just
getting
it
into
our
workflow
I
think
will
really
to
help
make
the
performance
of
the
library
is
a
whole
bunch,
more
visible,
which
will
hopefully
cause
it
to
speed
up
a
bit
so
yeah
I
think
that's
the
end
of
the
benchmarking
tangent
so
tell
oh
I
think
we
were
talking
about
pointers,
stuff.
B
Yeah,
well
just
something
that
I've
been
exploring
for
well
since
I've,
been
back
from
vacation
is
so
chrome
is
moved
to
blink
and
Microsoft
has
been
helping.
A
blink
team
implement
ups,
put
the
pointers,
API
spec,
which
which
ie10
has
but
WebKit
and
blink
don't
have
yet
so
it
seems
which
is
really
good
because
without
pointers,
it's
kind
of
a
pain
to
have
normalized
input.
Events
across
desktop
and
touch
so
one
right
now,
I'm
finishing
up
some
of
the
duel
listener
stuff,
but
also
looking
forward
to
seeing.
B
If
pointers
are
expected
to
blended
browser.
Sometime
soon,
it
would
be
useful
to
see
to
have
pointers
some
sort
of
polyfill
or
something
similar
that
you
could
have
pointer.
Events
in
Yui
in
pointer
events,
for
those
who
don't
know
is
basically
an
event
which
basically
lets
you
do
something
like
no
don't
know:
Don,
pointer
down,
pointer
up,
pointer,
move,
pointer,
cancel,
etc,
and
those
events
work
on
both
touch.
So
when
you,
when
you
touch
with
a
finger,
that'll
work
and
they're,
also
work
when
you
do
it
with
a
mouse.
B
I
think
the
event
spec
has
some
sort
of
a
definition
for
court.
B
Like
course
versus
like
fine
like
how
what
kind
of
fun
event
type
but
there's
like
ten
mouse
touch,
something
like
that,
so
yeah
so
I've
been
looking
so
one
of
the
things
to
figure
out,
if,
if
it
makes
sense
to
have
pointer
events,
why
you
guys
to
figure
out
like
how
much
performance
hit
that
is
one
of
the
problems
is
that
the
existing
pointer
for
poly
that
are
out
there,
for
example,
polymer
is
one
of
them
there's
another
one
called
han
ji
written
by
Microsoft.
B
These
quality
polyfills
are
all
the
none
of
them:
support
old,
IES,
they're,
all
IE
9
plus.
So
I
think,
like
I'm,
not
sure
how
that
works,
but
it
seems
like
if
it's
I
9
plus
I
like,
we
can't
use
the
polyfill
or
so
I
wasn't
gonna
use
the
polyfill,
but
at
least
I
have
to
go
in
there
and
figure
out
what
what
it
would
need
to
do.
What
I
would
need
to
do
to
make
it
work
in
old
IE
as
well
before
I.
Do
that
I
wanted
to
figure
out
distant
from
performance
perspective?
B
How
much
of
a
hit
is
it
to
have
a
pointer,
poly
fill
up
because
there's
right
now,
if
you're
using
generic
Yui
events,
those
are
already
fired
slower
than
generic
Dom
events
right,
like
just
without
any
white
with
just
vanilla
JavaScript.
So
if
we
have
another
layer
of
polyfill
on
top,
it
would
probably
slow
it
down
even
more.
B
E
B
So
possibly
yes,
I
was
talking
to
side,
yet
in
fact
would
be
I
should
prolly
just
talked
to
said.
You
know
about
this
he's
away
right
now,
but
he
was
telling
me
how
the
event
the
event
moved.
Module
specifically,
which
has
the
synthetic
events
gesture
moved
start
gesture.
Moving
gesture
move
n
were
meant
to
be
this
sort
of
generic
event.
That
kind
of
this
pointers
sort
of
style
event,
but
if
everyone's
converging
on
a
pointer
spec,
then
we
should
probably
replace
or
think
about
moving.
E
B
Main
issue
with
the
gesture
modules
right
now
is
that
they
don't
have
any
notion
of
mouse
vs
like
if
it
right
now
it
works
is
if
it
looks
deceive
on
touch
start.
The
on
touchstart
property
is
on
the
window
and
if
it
is,
it
assumes
you're
on
a
touch
enabled
device
and
unless
you
just
use
it
just
slip,
let's
use
touch
events.
Oh
and
mouse
events,
don't
work
anymore.
So
that's
one
of
the
things
that
has
been
on
my
plate
for
a
long
time,
but
I
haven't
got
around
to
it.
B
Why
I
kind
of
have
it
working
on
a
branch
but
having
sent
a
pull
request?
And
yet
the
point
respect
is
like
you
know
it
like
works,
it
it
kind
of
works
everywhere,
and
so
it
might
be
a
case
of
just
making.
We
don't
want
it.
We
don't
want
to
have
pointer
events
unless
I,
don't
I
think
we
adhere
to
the
spec,
because
then
we're
in
this,
like
that,
our
promises
adhere
to
the
promise
is
a
plus
back.
So
if
we
have
a
point,
if
you're
calling
them
pointer
something,
then
they
should
adhere
to
respect.
B
Otherwise
we
shouldn't
call
them
pointer,
that's
how
I
feel
about
it,
please
just
for
just
so.
We
don't
confuse
people
so
I,
don't
know
if
it's
worth
going
all
the
way
and
if
we're
going
to
respect,
then
we
should
probably
leverage
some
polyfill
that
exists,
because
the
spec
is
a
bit
more
than
just
you
know,
Mouse
and
touch
it
has
some
stuff
around
like
touch
action,
properties
and
there's,
but
there's
a
bit
more
there
in
the
spec,
so
anyways
SS
isn't
something
I've
been
thinking
about
and
working
on,
and
I
have
till
Monday
to
finish.
A
B
The
reason
they
had
it
is
because
the
win
8
like
the
win
8
develop
environment,
treats
web
like
apps
written
in
web
technology.
The
same
as
you
know,
like
native,
like
apps,
run,
made
in
with
visual
studio
and
using
like
native
languages.
So
as
a
result,
they
probably
saw
that
it's
really
hard
to
make
an
app
which
appears
the
mouse
and
touch
you
have
separate
listeners
right,
which
is
what
the
chrome
guys
were
saying
for
a
while
and
but
it
seems
like
now,
they're
backtracking
little
bit
and
declined
adopting
pointers.
It
is
not.
A
B
A
A
B
A
A
long
time
coming,
I,
remember
like
two
or
three
years
ago,
seeing
a
panel
of
Google
and
Microsoft
and
some
other
w3c
reps
and
they're
all
discussing
the
the
pros
and
cons
and
essentially
a
gaming
inside
of
a
web
browser,
and
everybody
was
like
yeah.
What
GL
is
awesome,
it's
really
cool
and
then
Microsoft
was
a
little
bit
shy
on
it.
Most
people
just
think
it's
because
it's
a
it's
a
competitor
to
direct
x
or
it
can
theoretically
be,
but
obviously
there's
going
to
be
a
long
time
before
we
get
an
xbox.
B
B
B
B
A
Yeah,
that's
good
stuff
yeah.
So
last
week,
myself
Eugene
and
a
couple
other
members
of
Yui
and
mojito
worth
velocity,
so
yeah
the
velocity
conference,
it's
in
Ohio
Lee
organized
conference,
but
it's
in
Santa,
clear
to
the
santa
clara
convention
center
over
here.
So
this
is
my
second
time
attending
really
informative.
Awesome
talks.
It's
probably
well
I
love
James
kept
mostly
just
for
the
the
people
in
the
attendees
and
kind
of
the
community.
That's
built
out
of
that.
It
turns
just
like
raw
education
factor.
D
Stood
out
to
you,
I
just
realized
that
a
lot
of
talks
were
around
wrong.
You
know
like
see.
A
A
And
I
think
it
was
bored
by
choice
that
I
avoided
some
of
those
yeah.
It
just
seemed
like
they
were
going
along
set
some
of
the
more
interesting
talks
that
that
were
velocity
but
yeah,
I,
guess
I
should
follow
up
and
check
out
some
of
the
videos,
so
I
took
a
whole
bunch
of
notes
and
writing
a
blog
post
right
now.
That
will
kind
of
recap.
A
Although
the
key
learning
points
of
the
talkin
to
let
closed
until
the
post
lands,
you
can
look
at
what
gist
github
com,
/,
Eric
and
then
you'll
find
it's
like
second
of
their
down.
You'll
find
just
this
big
gigantic
thing
of
notes
from
from
the
conference,
so
man
I'm
trying
to
thinking
any
of
the
highlights
that,
were
there
yeah
there
was
a
really
awesome.
A
One
really
awesome
talk
about
mobile
performance
and
essentially
making
your
mobile
web
applications
feel
as
native
as
possible,
and
all
these
various
tricks
and
stuff
that
you
can
do
and
technologies
that
you
can
leverage
to
make
that
happen.
So
yeah,
that's
it's
based
in
it
was.
It
was
based
off
of
his
experience
as
a
building.
Is
it
ft
com
I.
A
Website,
if
you
open
that
up
in
an
iOS
device,
it's
just
so
smooth
feels
awesome,
and
so
there
was
that
talk,
I,
think
Aria,
yeah
I
believe
this
is
the
name
of
the
end
of
a
fan
of
Janice
and
Escrima.
I
had
a
good
talk
that
basically
just
demonstrated
all
these
different
tools.
They
both
he's
built
in
that
he
also
uses
as
well
and
Nicholas.
A
A
really
cool
talk
about
it
was
just
kind
of
a
sobering
talk.
If
we
can't
use
JavaScript
for
everything
I
we
have
to
use,
we
should
be
using
HTML
and
CSS
for
the
things
that
it
was
meant
for,
and
so
it
just
kind
of
was
looking
at.
How
excited
developers
are
these
days
and
how
everybody
is
starting
to
do
more
and
more
and
more
stuff
in
JavaScript,
and
we
probably
should
actually
think
twice
about
doing
some
of
the
stuff
there
so
yeah
it.
A
A
One
thing
you're
here,
so
any
oh
I
totally
forgot
at
the
beginning.
We
have
a
new
face.
So
would
you
care
to
introduce
yourself
hey.
E
E
A
A
Yeah
follow
the
instructions
on
the
wiki,
so
yeah.
We
just
need
to
do
some
better
documentation
about
how
we
use
grunts
now
so
I
believe
what
this
guy
is
looking
for
is
back
getting
the
CDN
like
filled,
and
for
that,
whenever
we
do
a
build
to
go
to
the
CDM,
we
just
type
grunt
what
dash
release
equals
and
then
the
version
number
and
hit
enter
boom.
It
goes
through
and
compile
or
not
compiles,
but
yeah
builds
the
library
in
all.
A
A
The
correct
documentation,
but
beyond
that
I
think
that's
that's
about
it!
For
this
week
we
will
be
off
next
week.
It's
a
what
is
that
the
fourth
of
July
yeah
the
week
from
today
is
the
fourth
of
July.
So
for
those
of
you
not
based
out
of
United's,
it's
that
is
a
national
holiday.
So
that
would
be
me.
Oh,
my
Tilo
will
be
on
hang
out
cuz,
nothing,
it
himself.
You.