►
Description
In this May 2022 IPFS implementations workshop, we heard a number of first-hand accounts from builders & thinkers working on and with IPFS, taking stock of the current implementation story, and imagining what’s possible through shared effort on a protocol with such broad applicability.
A
Welcome
to
the
ipfs
implementations
workshop,
I'm
b5
on
the
internet.
I've
been
a
member
of
the
ipfs
community
for
a
number
of
years
and
really
excited
to
talk
with
all
of
you
about
ipfs
today.
A
So
when
we're
talking
about
implementations,
I'm
noodling
on
this
a
little
bit
before
we
had
the
workshop,
and
I
I
think,
there's
been
a
fun
framework
to
sort
of
use
as
a
method
of
approaching
the
question
of
what
an
implementation
is,
I
think
we
can
kind
of
break
it
down
along
three
characteristics
that
are
always
present.
When
we're
talking
about
an
implementation,
we
can
think
about
languages,
platforms
and
use
cases
and
some
of
these
terms
a
little
bit
sort
of
vague
and
kind
of
on
purpose.
I
think
languages
is
pretty
clear.
A
We're
talking
about
the
classic
programming
languages,
go
javascript
haskell,
you
name
it.
We
talk
about
platforms,
that's
where
we
can
get
a
little
more
blurry.
We
can
think
of
a
browser
as
a
platform.
You
can
think
about
the
command
line
as
a
platform,
but
you
can
also
sort
of
drop
that
down
a
level
and
think
about
a
specific
browser
engine
as
a
platform.
We
could
think
about
webkit
or
a
gecko
or
any
or
servo.
Whatever
browser
platform
you
can
think
of.
A
That,
too
could
be
thought
of
as
a
platform
when
we
get
to
use
cases.
This
is
sort
of
the
space
between
applications
and
intended
uses
for
a
protocol,
and
I
think,
that's
intentionally
large
and
potentially
sort
of
vague.
We
want
to
allow
people
to
explore
that
space
in
a
lot
of
ways,
but
I
think
this
framework
is
really
useful
for
thinking
about
an
implementation,
because
it
gives
a
sufficiently
broad
definition
to
fit
a
lot
of
different
things.
When
we
say
the
word
implementation,
we
can
start
with
a
classic
example:
js
ipfs.
A
The
same
thing
can
apply
to
a
more
discreet
project
like
happy
loon
kapiloon
is
an
experimental
user
agent
to
me.
That's
a
platform
that
aims
to
give
you
what
you
deserve:
privacy
and
control
and
freedom
from
constraints.
In
my
mind,
that's
the
use
case
and
I
happen
to
know
that
capylon
has
written
rust,
which
is
obviously
a
language,
but
I
think
that's
a
really
useful
framework
for
understanding
how
we
think
about
the
sort
of
day-to-day
operations
of
an
implementation,
and
we
will
be
talking
about
that
a
bunch
today.
A
But
in
addition
to
the
sort
of
step-by-step
implementations
conversation,
we
have
a
broader
sort
of
macro
level
conversation,
and
for
that
I
think,
that's
why.
Events
like
this
are
really
exciting.
It's
a
chance
to
sort
of
step
back
and
say:
hey
what
are
we
really
doing
here
and
I'm
going
to
take
a
risk
and
try
and
do
comedy
in
a
room
with
no
sort
of
reactionary
space
on
the
internet,
we'll
see
how
this
goes
but
to
sort
of
set
this
tone
for
today.
A
I
want
to
tell
you
a
story,
and
this
is
a
true
story,
and
it
starts
in
1983
on
the
mit
campus
in
1983,
from
a
bunch
of
folks
from
mit
received
a
50
million
dollar
grant.
That
is
a
large
grant.
That
is
145
million
dollars.
If
you
live
in
2022,
it's
a
lot
of
money
that
grant
came
from
two
or
organizations
the
digital
equipment,
company
or
dec
and
ibm,
and
then
this
grant
was
in
the
form
of
both
hardware
and
actual
funds,
and
it
was
for
a
project
called
project.
A
Athena
and
the
goal
of
project
of
keynote
was
to
bring
computers
to
disciplines
beyond
computer
science,
which
sounds
a
little
bit
sort
of
wild
to
our
today
years,
but
like
at
this
point,
computers
were
really
only
used
in
the
computer
science
department
at
mit.
Nobody
else
had
really
sort
of
played
with
them.
So
if
you
were
a
social
science
student,
you
didn't
use
a
computer,
and
this
project
was
a
massive
undertaking
to
try
and
change
that
the
thing
that
they
ended
up
making
were
rooms
that
looked
like
this.
A
In
kind
of
they
can
project,
athena
can
kind
of
lay
claim
to
inventing
the
computer
lab
and
along
the
way,
there
are
a
number
of
challenges
to
inventing
the
computer
labs.
Specifically,
you
have
these
two
donation
sources.
You
have
ibm
and
digital
dec,
both
contributing
pieces
to
this
platform,
but
mit
as
a
as
a
faculty
and
an
educational
institution
wanted
a
uniform
experience
for
the
students.
They
didn't
want
everybody
to
have
to
learn
the
ibm
platform
and
the
dec
platform
at
the
same
time,
and
so
there's
a
real
like.
A
A
So
the
general
framework
that
we're
aiming
for
here
was
any
student
can
go
up
to
any
terminal,
be
it
ibm
or
dec
and
access
their
own
files
and
be
able
to
sort
of
have
a
uniform
experience.
But
there's
one
problem
with
that
approach
at
the
time.
How
do
you
deal
with
the
display
right?
You
want
to
use
the
display
and
the
input
from
the
keyboard,
and
you
want
to
be
sending
that
over
a
network
connection
to
a
remote
access
machine
but
like
actually
driving
the
display
was
a
thing
that
hadn't
really
been
conquered.
A
Yet
there
are
other
implementations,
but
nothing
that
was
available
to
mit
that
they
could
license,
and
so,
like
all
good
things,
this
there's
a
message
just
sent
on
a
message
board
and
I'm
actually
going
to
break
the
rule
of
speakers
and
just
read
this
to
you
out
loud,
because
this
happened
in
1983
and
I
think
it's
just
a
lovely
piece
of
history.
I've
spent
the
last
couple
of
weeks
writing
a
window
system
for
the
vs100.
A
I
stole
a
fair
amount
of
code
from
w,
which
is
a
prior
window
system,
surrounded
it
with
an
asynchronous
rather
than
synchronous
code
and
called
it
x.
Overall
performance
seems
to
be
about
twice
that
of
w.
The
code
seems
fairly
solid
at
this
point,
although
there
are
still
some
divisions,
as
we
fix
up
we're
using
that
we're
using
x,
everybody
should
switch.
This
is
going
to
be
awesome.
It's
not
the
ultimate
window
system,
but
I
believe
it's
a
good
starting
point
and
at
this
point,
there's
an
interface
and
wait
a
second
hold
on.
A
If
we
can
apply
our
framework,
we
can
see
there's
a
mention
of
languages,
platforms
and
use
cases.
There
are
applications
that
people
are
trying
to
use
and
people
are
still
begging
for
documentation.
A
The
bottom
paragraph
does
kind
of
date.
This
thing
anyone
interested
in
seeing
a
demo
should
come
by
this
room.
To
call
me
on
this
thing:
first,
anybody
who
wants
to
code
can
come
by
with
a
tape
which
I
think
is
just
lovely.
I
want
to
go
visit
people
with
a
tape
to
get
source
code.
I
think
today's
a
little
different,
but
aside
from
that,
this
kind
of
looks
like
a
conversation
that
happens
today
and
I
think
in
a
lot
of
ways.
A
This
is
setting
the
groundwork
of
culture
as
we
experience
it
nowadays,
but
what
came
out
of
that
ended
up?
Be
calling
the
end
ended
up
being
called
the
x
window
system.
Logo
came
later
and
yes,
that's
emacs,
and
this
was
the
mechanism
for
writing
a
platform
neutral
abstraction
for
doing
displays
over
dec
and
ibm
machines,
and
this
project
goes
well.
A
It
is
really
popular
really
early
at
this
point.
Everybody
starts
using
it
inside
of
mit
and
demand
for
it
grows
beyond
the
bounds
of
mit
people.
Inside
of
labs
are
using
it,
and
the
software
itself
is
gaining
popularity
and
to
the
point
that
in
1985
people
get
excited
a
number
of
implementations
get
written.
A
We
get
one
for
the
ibm,
rtbs
pc,
the
dec
workstations,
hp,
workstations,
apollo,
workstations,
sun
workstations,
the
ibm
personal
computer
gets
an
implementation,
and
all
of
this
is
because
of
a
thing
that
was
brand
new
to
this
project,
which
we
now
understand
is
the
mit
license
and
yeah.
This
project
is
actually
kind
of
one
of
the
precursors
to
open
source,
and
I
think
you
know
if
we
take
a
very
objective,
look
at
what
that
looked
like
at
the
time.
It
was
a
really
exciting
time
for
the
x-window
project.
They
had
funding
in
a
use
case.
A
They
got
some
code
to
work,
they
got
a
number
of
implementations
and
they
reached
a
degree
of
incumbency
in
1985.
It's
like
a
really
exciting
position
to
be
in
for
any
technology,
and
so
maybe
that's
the
lesson
right.
Open
source
is
great,
more
implementations
better.
At
the
end,
we
should
just
stop.
There
might
even
bother
with
the
workshop,
and
I
think
this
is
the
point
that
I'm
trying
to
make
with
this
story.
A
This
story
is
halfway
finished
where
this
goes
from.
Here
is
a
really
exciting
sort
of
series
of
harrowing
decisions
that
are
of
increasing
risk,
based
on
really
smart
guidance
from
a
number
of
folks
working
on
the
x-window
project
in
1986.
The
dec
western
digital
laboratory.
Steps
in
these
folks
are
basically
the
a
team
of
software
at
the
time
where
they
were
a
and
a
team,
depending
on
how
you
think
about
it,
but
they're
really
fantastic.
A
They
jump
in
chat
and
say
like
hey,
we
want
to
rewrite
x
because
we
want
to
take
it
from
version
10
to
11..
We
think
we
can
make
it
a
little
more
neutral
sounds
great.
People
from
mit
are
like
all
right
sure,
but
you
got
to
keep
the
license
the
way
it
is
and
we're
going
to
do
this
out
in
the
open.
And
surprisingly,
this
phenomenal
software
team
is
like
yeah.
A
Why
don't
we
just
do
this
in
a
way
where
we
can
just
have
conversations
out
in
the
open
about
the
design
of
the
api
and
mit
says,
yeah
sure,
let's
do
it.
Flame
emojis,
x,
version
11
comes
out
and
as
as
much
as
things
were
great
before
at
this
point,
things
really
start
to
take
off.
It
goes
to
the
next
level
in
every
sense
of
the
word,
more
than
nine
hardware,
vendors
start
building
on
top
of
this
system.
A
The
x
window
system
achieves
a
degree
of
popularity
where
it
is
not
just
the
incumbent
thing.
It
is
the
thing
to
build
commercial
products
on
top
of
it
is
still
licensed
under
the
mit
license.
Mit
is
still
the
steward
of
this
project.
A
It's
so
scary
to
mit
at
this
point
that
they
actually
have
like
what
we,
I
think,
would
now
look
back
on
it
as
a
moment
of
weakness
and
they
say
hey.
We
want
to
go
give
this
this
license
to
a
vendor,
because
this
is
just
too
hot
to
handle
for
us
and
in
one
of
the
most
incredible
terms
of
governance,
I
can
think
of
all
of
the
vendors
come
back
and
say
nell.
A
Actually,
this
is
better
if
a
neutral
party
controls
the
actual
project,
which
I
think
is
just
like
an
amazing
moment
in
the
history
of
open
source
after
that,
more
than
1200
at
one
point
more
than
1200
employees
are
working
on
ddc
on
x,
implementations
at
dec,
1200
people
grinding
on
the
x
window
system.
Like
imagine
that,
from
back
in
the
day
at
this
point
it's
2022
the
x
window
system
still
exists.
I
checked
the
releases
page
on
may
5th.
Where
is
it
no
may
3rd?
There
was
an
update
to
the
lib.
A
A
The
way
in
which
that
precedent
setting
is
incredible-
and
I
think
that's
what
I
want
to
remind
us
of
as
we
go
into
today's
workshop-
is
if
we
overlay
this
sort
of
as
a
template
onto
our
ecosystem
and
think
about
ipfs.
I
think
we're
here.
I
think
we're
at
a
point
where
you
know
we
ipves
had
funding.
We
had
a
working
implementation.
We
have
multiple
implementations,
it's
fair
to
say
that
ipfs
is
the
method
of
addressing
off-chaining
data
in
web
web
3.
A
This
we
don't
really
need
to
be
told
that
what
it
felt
like
to
be
sort
of
like
the
first
people
in
open
source,
because
it's
that
scary
feeling
that
we
have
today
when
we
think
about
advancing
such
an
incredibly
important
project
like
ipfs,
and
what
I'm
here
to
tell
you
is
we're
gathered
today
to
sort
of
try
and
understand
where
this
could
go,
and
this
could
go
in
a
totally
exciting
and
big
light
way.
The
best
days
of
ipfs
in
so
many
ways
could
be
ahead
of
us,
and
I
think
that's
what's
exciting.
A
There's
really
you
know.
We
do
have
two
frameworks
that
I
think
I'd
like
us
to
keep
in
mind.
As
we
look
at
today's
talks,
we
have
both
the
micro,
which
is
sounds
kind
of,
like
I
don't
know
like
it,
makes
micro
sound
like
it's
less
than
the
macro.
I
don't
believe
that
at
all,
I
think
the
micro
is
just
the
way
that
we
walk
our
way
through
history.
A
I
hope
that
we
can
stay
centered
and
think
big
and
remember
that
we're
all
here
to
really
advance
incredible
and
exciting
technology
so
that
we
have
a
pretty
solid
schedule
lined
up
for
you
today.
All
the
hitters
are
here.
Okay,
a
lot
of
the
hitters
are
here
I
I
would
actually
love
you
even
more
folks
to
be
joined
in
this
workshop,
but
these
are
the
folks
that
could
join
today.
Thank
you
so
much
and
thank
you
for
joining.