►
From YouTube: JS Core 2019-Q2 OKRs
Description
@alanshaw gives an update on 2019-Q2 OKRs for the js-ipfs team.
https://docs.google.com/spreadsheets/d/1YSeyWqXh3ImanRrTkYQHHkCofiORn68bYqM_KTLBlsA/edit#gid=1681757723
https://github.com/ipfs/js-ipfs
A
Hello
friends
here
are
the
gayest
core.
Ok
ours
for
quarter
to
first
up
ipfs
courses
are
engaging
and
interesting.
So
what
we're
going
to
do
is
create
a
couple
of
courses
for
the
upcoming
ipfs
camp,
we're
going
to
do
a
core
course
and
an
elective
course
which
we
are
yet
to
decide
what
the
content
on,
but
we're
gonna
create
those
two
and
they're
going
to
be
awesome.
So,
second
up
we're
going
to
build
some
features
that
will
provide
the
best
ipfs
experience
at
ipfs
camp,
so
number
one.
A
The
DHT
is
landed
in
Jess,
IP
FSN
and
they
will,
by
default
in
the
browser
and
nodejs.
So
without
the
DHD
we
have
limited
ability
to
find
content
in
the
p2p
networks,
so
any
hopes
of
us
saving
bandwidth
for
like
getting
content
quickly
from
peers.
Close
of
us
are
severely
hampered,
so
we
need
that
implemented
and
it's
kind
of
crucial
to
having
a
really
good
IVFs
experience.
A
A
A
Next
up,
IP
at
NS
resolution
is
assisted
by
dns
for
speed,
so
IP
NS
need
to
be
fast
needs
to
be
fast
for
package
managers
to
be
able
to
figure
out
what
the
latest
version
of
the
repository
is.
The
DNS
hack
for
IP
NS
resolution
will
provide
a
fast
and
reliable,
centralized
method,
with
a
fallback
to
the
decentralized
method
that
we're
currently
using.
So
so
that
would
be
cool
and
it
will
be
much
faster
and
it
will
be
awesome.
A
Next
up
base
42
encoded
peer
ids
can
be
used
with
IP
NS.
This
is
cool.
It's
needed
to
allow
both
mutable
content
on
the
gateway
without
security
issues
on
the
public
gateway
than
the
condo
project
gateway,
and
it's
also
needed.
If
we
are
going
to
transition
from
page
58
to
face
50
to
see
IDs,
we
we
we
kind
of,
want
to
send
the
message
that
everything
is
going
to
be
based
voted
to
in
the
future.
So,
let's
support
them
with
I
pianist
openness
resolve
can
resolve
IP
NS
rip
names.
A
I
mean
that
me
kind
of
makes
sense
and
currently
I've
been
that
ipfs
resolve.
It
can't
currently
resolve
I
pianist
names
and
it's
required
for
package
managers,
so
they
can
figure
out
the
latest
version
of
registry,
which
I've
already
said
and
yeah.
So
next
up
core
api's
are
affected
to
use.
Async,
iterators
and
async
await,
and
at
least
three-quarters
of
the
Reapers
in
scope
have
a
proposal
or
pull
request.
So
this
is
an
ongoing
endeavor
to
which
will
affect
kind
of
performance,
maintainability,
developer
experience.
A
A
A
Hopefully
so
we've
got
a
GC
strategy
exists
to
serve
the
needs
of
the
preload
nodes,
so
currently
in
a
preload
nodes,
have
the
concept
G
seed
every
hour
or
so,
which
is
which
is
fine,
but
it's
bad
news,
if
you
add
your
quantity'
ipfs,
just
on
the
cusp
of
it
being
deseed,
so
a
more
appropriate
GC
strategy
might
be
to
just
remove
the
see
IDs
that
are
older,
that
were
added
more
than
an
hour
ago.
Perhaps
so.
A
Okay,
next
up
is
perf
benchmarking
site
hooked
up
to
CI
we've
got,
we've
got
a
performance
benchmarking
website
already
there.
It
needs
a
bit
of
fixing
up,
but
if
we're
going
to
be
able
to
measure
our
performance
over
time,
we
need
some
visibility.
We
need
to
actually
need
that
to
be
hooked
into
CI
so
that
we
can
see
when
we
make
when
we
make
changes,
whether
or
not
they're
affecting
our
performance.
So
this
is
just
a
kind
of
simple
one.
There
next
IVFs
replaces
the
current
go.
A
Ivfs
preload
nodes,
okay,
so
this
is
about
JSI,
PFS,
dogfooding
itself
and
so
like
as
a
stepping
stone
to
getting
JJ's
IVFs
working
as
a
gateway
node.
It
should
serve
itself
in
production
and
be
one
of
the
public
preload
nodes,
and
then
it
should
be
using
this
new
GC
strategy
that
we
implement
so
that
we
get
a
really
good
experience
for
people
using
the
preload
nodes.
A
Okay,
next
objective,
adding
and
updating
a
package
monitored
data
is
easy
and
convenient.
Okay,
so
first
up
first
key.
A
result
for
that
is
to
is
a
sink
for.
Ipfs
exists
to
make
mirroring
package
manager'
data
with
ipfs
of
work,
so
at
the
moment,
mirroring
package
manager,
data
with
ipfs
is
impossible.
Fuses
to
slow
file
store,
cannot
be
updated
and
doesn't
exist
in
J's
IVFs
and
like
Rhian
porting.
Everything
just
simply
takes
too
long
and
and
requires
double
the
disk
space.
You
have
to
have
it
in
disk,
as
well
as
in
your
IP
FS
repo.
A
So
so
that's
not
good.
We
need
something.
We
need
either
a
tool
that
is
asking
for
ipfs
or
or
ipfs
mounted,
as
a
filesystem
with
them
MF
s.
So
this
is
the
this
is
the
key
result
to
get
that
working,
so
the
package
managers
can
actually
add
staff
and
update
the
things
to
IP.
First
next,
up
an
experimental,
UNIX
FS
implementation
exists
in
Jes
IVFs
to
allow
permissions
or
metadata
to
be
stored
with
files.
A
So
this
one
is
like
us
needing
last
modified
time
and
file
permissions
like
whether
they
are
executable
or
not
to
be
persisted.
When
we
add
data
to
when
package
managers
add
data
to
their
repos
so
yeah,
this
is
just
that
requirement
and
that
will
either
be
using
the
existing
UNIX
FS
system
using
the
metadata
that
I
know
is
already
there
or
or
implementing
or
helping
implement
that
or
at
least
having
an
experimental
implementation
of.
A
A
It
takes
a
long
time
take
too
long
and
it's
a
bottleneck,
and
so
it's
currently
disabled
in
npm
on
ipfs
and
that's
okay,
because
GC
doesn't
exist
yet
so
what
we
need
to
do
is
refactor
the
existing
pinning
code
make
it
faster
so
make
it
not
a
bottleneck
when
adding
files,
because
we're
going
to
be
doing
a
whole
lot
of
that
when
package
managers
are
using
JFS,
alright
next
so
research
and
create
a
proof
concept
for
collecting
improved
networking
introspection,
metrics
around
size
and
activity.
So
this
is
fairly
fairly
simple
and
and
needed
for
ipfs.
A
In
general,
so
that
we
can
figure
out
like
who
is
using
IP
of
asana,
and
why
and
how
many
people
and
what
kind
of
what
kind
of
coverage
do
we
have,
and
there
is
also
the
elephant
in
the
room
that
package
managers
will
still
want
metrics
on
whether
whether
their
repos
are
being
used
even
when
they've
switched
to
a
distributed
system.
So
we
need
some
way
of
collecting
that
information
cool
all
right.
Next
objective
experience
is
tailored
in
different
environments
for
optimum
performance.
Hooray.
A
Yes,
we
did
this
okay,
so
performance
profiles
exist
for
desktop
browser,
server,
mobile
and
in
test
cool
okay.
So
if
we're
gonna
run
Jaz
IVFs
nodes
in
production,
we
need
a
server
profile
that
will
configure
JSI
PFS
to
operate
appropriately
in
say,
like
a
data
center
or
aware
over,
and
if
we're
going
to
be
adding
a
profile
for
that,
then
we
may
as
well
have
a
number
of
profiles
for
for
places
where
j
sake
FS
is
likely
to
be
used.
A
Next
up,
a
repo
migration
tool
exists
that
and
and
Jase
IVFs
can
automatically
upgrade
old
own
repos
cool.
So
this
is
necessary
to
get
J's
IVFs
into
production.
We
still
need
to
be
able
to
upgrade
our
repos
if,
if
they're
and
their
layout
changes
or
whatever,
we
need
to
be
able
to
migrate,
our
data.
A
It
will
also
be
necessary
when
migrating
the
block
store
to
use
multi
hashes
and
instead
of
using
C
IDs
for
keys,
as
we
do
now
cool.
So
that's
that
one
and
next
up
port
Robin
Jas,
who
all
use
the
J's
version.
If
it's
now
available
cool
yes,
so
this
is
basically
so
Robin
in
Jace.
Ivfs
at
the
moment
is,
is
a
native
module
and
there's
no
browser
equivalent.
A
So
it's
just
not
included
in
the
browser
bundle,
so
you
can't
use
it
in
the
browser
and
we
should
be
able
to
use
it
in
the
browser
if
just
those
advanced
chunking
capabilities
need
to
be
available
in
the
browser
as
well,
so
that
people
can
do
everything
they
want
to
do
in
the
browser
as
well
as
in
node
or
wherever
that,
wherever
the
hell
they
are
anyway.
So
that
is
I
hope
you
like
them.
It's
very
exciting.
There's
a
lot
to
do
so.
I'm
gonna
leave
you
now
and
get
on
with
the
ok
ours.