►
Description
On our July 24 call, Justin Maier and Victor Rortvedt demoed The Gathering, a decentralized, incentivized contact sharing tool for in-person gatherings of communities of affinity. Learn more at: https://github.com/JustMaier/gathering
Learn more about the monthly calls of the IPFS Local Offline Collaboration Special Interest Group: https://github.com/ipfs/local-offline-collab/issues?utf8=%E2%9C%93&q=+is%3Aissue+label%3A%22%F0%9F%93%9E+Monthly+Call%22+
B
Not
super
offline
I
tested
pure
base
and
it
actually
does
work
offline,
which
is
sort
of
neat,
but
like
the
it,
it
coordinates
to
other
nodes
in
a
web
browser
using
a
WebSocket
server.
So
if
you're
offline,
you
can't
talk
to
that
so
that
you
need
to
figure
out
some
way
of
actually
talking
peer-to-peer
but
yeah
gotcha.
A
C
C
E
So
I'm
working
all
night,
confessing
web
browsers,
more
or
less
and
related
to
local
offline
is
my
current
work
on
running,
embedded,
Giuseppe,
FS
inside
of
brain
browser,
and
what
I
want
to
happen
is
for
people
in
like
conferences
or
like
remote
places
as
long
they
have
a
shared
Wi-Fi
or
something
similar
for
those
two
web
browsers.
People
should
be
basically
able
to
open
web
UI
or
add
stuff
to
ipfs,
and
those
two
web
browsers
should
be
able
to
exchange
data
with
each
other.
E
F
So
I've
mentioned
this
a
couple
times,
but
like
I,
as
like
a
user
and
growing
up
in
the
place
that
I
did
I
kind
of
got
really
frustrated
at
a
lot
of
things
that
we
depended
on
not
working
or
like
really
appreciated.
The
value
of
having
this
vast
searchable
network
to
learn
from
so
I
find
that
really
important
and
I
get
a
little
frustrated
at
how
fragile
and
like
hard
to
work
with
some
of
that
stuff
is
so
I
work
on,
go
ipfs
and
try
to
make
it
matter
less.
F
G
Yeah,
hello,
I'm,
Janice
research
at
protocol
labs
I'm
only
on
the
content,
routing
and
DHT
issues,
I'm
also
or
at
least
incoming
on
academic
background,
and
have
very
long-standing
interest
in
offline
communication.
So
what
has
been
traditionally
called
in
the
past,
at
least
in
academic
circles?
Delay-Tolerant
networking
I
think
yeah,
we've
written
our
first
papers
about
10
years
ago,
or
something
so
and
since
then,
we've
been
developing
protocols
and
mechanisms
to
connect
devices
or
flying
propagate
content
from
HB,
possibly
using
some
relays,
and
things
like
that
yeah.
G
G
A
One
is:
we
want
to
give
Justin
a
Victor,
a
chance
to
show
us
the
gathering
which
is
working
its
way
towards
fully
offline,
but
is
definitely
in
this
concept
of
this,
like
local
collaboration
idea
and
on
its
way
there
technically
and
the
other
is
just
an
opportunity
for
anyone
who's
on
this
call
who
was
at
either
a
pesky
ordy
web,
can't
just
share
anything
they
found
out
about
their
any
of
these
conversations
that
are
in
this
offline,
the
web
space.
That
seemed
interesting.
A
D
So
this
is
Victor
I.
Think
I
was
going
to
just
give
a
very
brief
overview
of
sort
of
what
our
intentions
were
with
this
and
sort
of
how
we
ideated
and
got
to
where
we
were
with
the
gathering
at
ipfs
camp
and
what
we
sort
of
ideally
want
to
see,
with
the
hope
that
some
of
the
folks
on
this
call
are
some
of
the
right
people.
D
Very
centralized
specific
meet
space
event,
and
this
is
kind
of
coming
from
the
sort
of
background
that
I
didn't
come
to
ipfs
or
even
Denver,
with
it
with
a
full
technical
background.
I
was
a
lawyer
for
a
long
time
and
I've
sort
of
come
into
this
space
via
blockchain,
and
so
the
first
things
that
appeal
to
me
are
the
things
that
are
more
kind
of
consumer
friendly,
and
so
you
know
one
of
the
things.
D
Utilization,
and
so
we
were
thinking,
be
neat
to
have
this
idea
of
customizing
existing
sort
of
profile,
information
that
you
have
and
sort
of
sharing
different
slices
of
yourself
that
we're
very
customized
to
the
types
of
people
that
you
were
meeting
and
the
thing
that
kind
of
brought
you
together,
and
so
we
were
always
thinking
about
a
couple
of
use.
Cases
for
this
that
are
beyond
you
know,
specific
tech
conferences
and
ipfs
meetups.
D
In
this
kind
of
thing,
we
think
about
things
like
college
orientations
where
kids
are
first
meeting
each
other
and
are
trying
to
find
their
their
sort
of
peer
group.
We
think
about
moments
like
you
know,
absolutely
like,
like
professional
gatherings
and
this
kind
of
thing,
and
we
were
just
trying
to
think
of
something
that
would
enhance
those
experiences
without
without
sort
of
overriding
them,
and
so
we
came
up
with
this
idea
of
an
incentivized
contact
swapping
protocol.
So
you
insert
the
information
that
you
want
to
share
with
people
that
you
meet
at
a
particular
gathering.
D
D
You
know
shrink
that
gap
of
lost
potential
not
get
rid
of
it,
but
really
just
reduce
it
and
and
encourage
people
to
make
more
and
deeper
connections
with
the
people
that
they're
you
know
most
aligned
with
and
so
the
way
that
this
happens
in
the
app
is.
You
essentially
have
blockchain,
based
trophies
that
are
incentivizing
matchmaking
behavior,
where
you're
allowed
to
make
recommendations
that
so-and-so
meet
so-and-so
and
if
those
two
people
do
meet,
the
matchmaker
is
rewarded
in
the
system
and
trophies
are
minted
on
a
blockchain
to
show
off
as
badges
of
community
good
behavior.
D
And
one
of
the
neat
things
about
this
is
that
you
can
start
to
calculate
average
degrees
of
separation
of
all
the
other
members
within
a
particular
gathering.
We're
calling
that
the
Kevin
Bacon
score,
that
each
person
has
a
Kevin
Bacon
score
and
then
the
whole
gathering
has
a
Kevin
Bacon
score,
and
so
you
can
kind
of
look
at
look
at
sort
of
how
tightly
knit
a
community
is
based
on
the
number
of
people
that
are
in
there
and
how
many
connections
they're
making
in
recommendations
etc.
D
So
with
that
kind
of
ambition,
we
wanted
to
build
something
using
ipfs
a
little
bit
of
blockchain
and
then
right
now
and
Justin
will
talk
a
bit
more
about
where
we
are
technically
we're
using
WebSockets
and
we're
using
a
signaling
server,
and
we
have
had
to
rely
on.
You
know
persistent
online
connection
at
ipfs
camp.
However,
the
goal
is
to
get
to
using
technologies
that
allow
folks
to
do
this.
C
Thanks
for
that,
intro
I
think
that
covers
it.
Yeah
Victor
and
I
met
back
it
at
youth
Denver,
and
it
was
at
a
team-building
thing.
People
are
basically
saying
the
things
that
they
were
interested
in,
so
they
could
find
other
people
to
work
with
at
the
hackathon
and
it
was
like
well,
of
course,
this
thing
needs
to
exist.
We're
all
here,
there's
like
200
people
here
trying
to
do
this
exact
thing.
Obviously
we
need
a
tool
that
can
help
us
do
this,
because
otherwise,
how
are
we
gonna
get
organized
and
find
each
other?
C
So
when
I
heard
him
talk
about
making
games
for
the
meatspace
like
like
The
Gathering
I
was
like
oh
well.
This
is
a
this
is
given.
This
needs
to
exist,
and
so
it's
been
a
work
of
love
and
we
were
asked
to
present
a
lightning
talk
on
it
for
ipfs
camp,
and
so
we
had
to
hurry
and
get
it
ready
and
get
it
into
a
state.
Where
could
semi
work?
And
it
was
a
whole
learning
process
as
well,
which
not
to
talk
about
at
the
end
of
this.
C
So,
like
you
talked
about
there's
a
bunch
of
different
slices
that
we
have
of
ourselves
the
things
that
we
care
about,
that
we
go
to
conferences
and
and
there's
people
around
us
that
care
about
those
things
as
well.
But
it's
hard
to
even
know
that
they're
interested
in
those
things
like
you
might
be
having
a
conversation
about
you
know
you
web
and
not
know
that
they're
also
interested
in
decentralized,
IP
or
decentralized
finance,
or
something
like
that
or
even
something
way
distant
from
the
centralization.
C
If
you
have
a
phone,
you
can
scan
this
QR
code
or
you
can
just
go
to
this
URL
right
here
on
your
computer
and
what's
inside
of
that
code
and
inside
of
this
little
shortcut
link
is
a
orbit
DB
address,
which
is
what
you'll
use
to
basically
get
the
data
for
the
database
that
we're
all
sharing
as
part
of
the
gathering
and
then
a
member
ID,
which
is
what
you're
going
to
use
to
connect
with
me.
So
I've
already
joined
the
gathering
you're
going
to
send
a
connect
request
to
me
and
then
a
pure
ID.
C
So
it's
going
to
be
the
idea
of
a
device
that
you'll
then
connect
to
to
basically
download
the
that
you
need
and
help
bootstrap
the
connections
to
the
other
peers
within
the
gathering.
So
you
guys
all
have
a
chance
to
get
that
I'm
gonna
switch
to
a
screen.
So
we
can
do
a
little
live
demo
here
about
how
this
thing
works.
C
All
right.
So
if
you
need
to
get
in
yeah
gather
a
Oh,
G,
th,
RI,
o
/
demo,
and
then
inside
of
here.
Hey,
look
at
that.
There's
all
you
guys
so
awesome
and
it's
live
updating,
so
you
guys
are
in
there
already.
Some
of
you
probably
already
experienced
this
at
ipfs
camp,
so
I'm
gonna
go
ahead
and
confirm
these
and
you
guys
will
be
getting
connect,
requests
up
in
your
little
plus
thing
there.
They
should
be
from
tactic
and
netted
until
I
change,
my
name
here.
C
So
let
me
change
this
and
you
guys
can
all
walk
you
through
how
this
is
all
working,
they're
put
a
picture
in
there
and
let's
put
my
email
and
okay
cool
and
then
I'll
add
some
affinities.
So
affinities
are
kind
of
like
those
slices
that
I
was
talking
about.
So
you
might
say
some
things
that
you
care
about.
So
you
know
we're
all
here
because
of
IP
FS
or
offline,
and
you
can
select
different
colors
here
as
well,
and
the
reason
for
the
colors
was
eventually
we'd
like
to
be
able
to.
C
You
know
expose
those
colors
more
easily
on
this
list
here.
So
you
can
easily
see
the
interest
that
people
have
rather
than
having
to
click
in
there
and
see
so,
as
you
can
see,
you
can
have
some
some
scoring
elements
here
that
Victor
was
talking
about.
So
this
is
like
a
scoreboard
up
here
and
it
shows
you
your
position
in
a
person
in
first
place.
So
right
now,
I'm
in
first
for
MVP
MVP
is
just
the
total
number
of
points
you
get
certain
amount
of
points
for
connecting
with
somebody.
C
You
get
a
certain
amount
of
points
for
recommending
somebody.
You
get
more
points
when
somebody
accepts
a
recommendation
so
on
and
so
forth.
So
what
I
can
do
here,
for
example,
is
I
can
go
into
Jim's
profile
here
and
click
send
recommendation
and
I
can
say:
hey
Jim,
you
know
you
should
talk
with
a
victor
and
what
that's
gonna
do.
Is
it's
gonna?
Send
Jim
he'll
see
a
little
thing
up
here
that
says.
C
Oh,
you
got
a
red
matte
recommendation
to
meet
Victor
so
now
the
hope
is
that
Jim
will
go
and
talk
to
a
victor
and
then
Victor
like
hey.
My
codename
is
such-and-such
I'll
type
in
Victor's,
codename
there
and
hit
connect
and
then
they'll
be
connected.
So
the
cool
thing
about
this
is
because
it's
Jim
by
the
way
did
you
get.
D
D
C
That's
right,
so
it's
not
sharing
the
contact
info.
It's
supposed
to
basically
say
hey.
You
should
go
talk
to
this
person
in
real
life
right
and
so
they'll
need
to
go
and
figure
out
how
to
meet
up
with
that
person.
It
will
include
their
public
info,
so
it'll
have
a
jim's
picture
and
his
name
and
if
he
had
put
in
an
organization
it
would
have
that
as
well,
and
that
would
help
hopefully
help
Jim
or
Victor
find
each
other.
C
D
There's
one
quick
thing
Justin
to
add
here
is
that
code
names
are
generated
randomly
for
each
gathering
and
they're
important
that
they
be
kept
secret
and
that
they're,
your
neat
unique.
So
you
don't
want
to
use
like
a
Twitter
handle
or
a
name
that
you
commonly
go
by
as
your
code
name,
because,
presumably
then
anybody
who
knew
that
about
you
could
just
kind
of
connect
with
you
at
any
gathering.
D
C
Right,
so,
if
we
look
in
here,
I
can
show
you
a
little
bit
about
how
this
is
working,
so
you
can
see
all
of
our
connected
devices
here,
so
we're
all
connected
to
each
other.
Sharing
this
it
uses
orbit
DB,
which
basically
uses
pub/sub
to
synch
up
information
about
the
current
head
of
an
append-only
log.
So
anytime
anybody
takes
any
action,
it's
adding
an
items
that
log
which
then
gets
converted
into
a
data
structure.
C
So
let
me
show
you
what
that
data
structure
looks
like
and
then
I'll
show
you
what
that
log
looks
like
as
well.
It's
like
this
might
not
be
the
latest
version
of
this
page.
There
we
go
so
there's
this
append-only
log,
so
you
can
see
anytime.
Somebody
takes
action,
it's
it's
writing
an
entry
here
and
so,
for
example,
Oh
looks
like
Dominic
just
wrote
another
something
to
the
log.
C
He
updated
his
member
profile
here
so
there's
his
name,
the
CID
for
his
avatar
and
then
his
pure
ID,
and
then
you've
got
the
public
info,
which
is
you
know
his
code
name
in
his
public
key
and
then
you
have
the
private
info,
which
is
encrypted,
which
I'll
explain
how
that
gets
decrypted
so
that
I
can
then
view
his
information.
So
now,
if
I
look
inside
of
here,
I
would
see
you
know
Dominic's
private
stuff,
all
right.
So
let
me
jump
back
here
to
the
little
presentation
here
and
I
can
show
you
how
that's
working.
C
So
you
have
that
append-only
log
that
we
looked
at
and
inside
of
that
append-only
log
it
gets.
It
gets
used
to
reduce
that
log
back
to
a
data
structure
that
then
gets
used
within
the
app.
So,
for
example-
and
this
is
simplified-
there's
some
other
data
structures
in
there
there's
a
there's,
the
members
and
inside
of
the
members.
There
are
me
and
Victor
and
were
ordered
by
our
member
ID,
and
we
have
our
public
influent.
Our
private
info,
like
you,
saw
there
with
dominic
and
then
inside
of
a
connection.
C
People
can
add
themselves
to
your
connections.
So
if
Victor
wanted
to
connect
with
me,
if
he
sent
me
a
connect
request,
he'd
be
adding
his
member
ID
to
my
connections
list
and
inside
of
there
there's
a
little
status
thing.
So
I
can
reject
her.
I
can
accept
Victor's,
connect
request
and
then,
when
he
sends
me
that
connect
request
he's
also
sending
me
the
key
to
unlock
private
info
encrypted
with
my
public
key,
which
only
I
cannot
decrypt,
because
I've
got
my
private
key
here
on
my
device.
So
that's
how
that
gathering
DB
basically
works
offline.
C
G
C
Yeah
we'll
get
to
that.
Okay,
that's
a
great
question
and
and
yeah
we'll
get
there.
Let's
see
I'll
talk
about
this
gathering
snapshot
thing
later.
That
was
one
of
the
things
we
learned
at
my
PFS
camp,
so
I'm
gonna
keep
moving
here.
So
here's
how
it
works
right
now,
like
Jim,
talked
about
in
his
intro.
C
There,
decentralized
sort
of
browsers
have
to
use
WebSockets
right
now
to
to
communicate
with
the
ipfs
network,
there's
not
a
way
for
them
to
directly
connect
with
each
other
unless
they
manually
swap
signaling
info
for
WebRTC
connections,
which
is
kind
of
unfeasible,
it's
a
little
bit
more
feasible
when
you
start
to
do
it
in
person,
but
it's
a
such
a
large
amount
of
data.
It's
still
kind
of
a
pain,
there's
been
experiments
about
doing
it
with
you
know,
scanning
QR
codes
at
the
same
time
to
swap
the
info,
but
nothing's
great.
C
Yet
so
this
kind
of
how
things
are
working
right
now.
What
that
means
is
that
if
there
was
a
disconnect-
and
they
couldn't
connect
to
this
WebSocket
relay
the
thing
that's
acting
like
that
p2p
relay-
they
wouldn't
be
able
to
share
data
with
each
other,
so
kind
of
decentralized.
More
like
it's,
not
what
we
thought
we
could
do
is
you
could
theoretically
create
like
an
app
that
goes
on
somebody's
phone
and
they
could
be
the
the
gathering
organizer
and
what
that
could
do
is
they
could?
C
So
that
way
they
could
still
be
within
their
own
little
network
operating
inside
of
a
cave
whatever
without
having
to
be
connected
to
the
wider
Internet,
and
it
should
technically
work
as
far
as
seeing
this
something
that
works
like
that.
I
haven't
seen
anything
that
quite
works
like
that,
but
I
think
that
it
could
work.
So
maybe
we'll
work
on
something
like
that
eventually,
ideally,
how
it
would
work
is
something
like
this,
where
all
the
devices
can
just
communicate
with
each
other
through
WebRTC
and
signaling
magic,
which
doesn't
quite
exist
yet
or
with
Bluetooth.
C
C
G
C
Let's
come
back
to
this,
then
all
right,
so
some
things
that
we'd
like
to
see
I'm
going
to
come
back
to
this
too
I
want
to
talk
about
the
lesson:
Private
Eye
PFS
camp
first.
So
one
of
the
things
that
we
learned
really
early
on
is
that
the
public
ipfs
relays
and
swarms
available
for
WebSockets
and
web
RTC
are
really
slow,
they're
full
of
a
lot
of
dead
nodes,
and
it
makes
it
really
hard
for
peers
to
find
each
other.
C
So
when
we
went
to
camp,
we
tried
to
on
board
the
first
few
people
and
they
couldn't
find
the
database
and
they
couldn't
find
the
other
peers,
because
there
was
just
too
many
dead
nodes
out
there
that
they
couldn't.
It
would
essentially
timeout
before
they
could
make
the
connection.
So
we
switched
to
a
private
signaling
server
and
it
was
way
faster.
C
The
next
thing
is
bad
Wi-Fi
ruins
parties,
so
at
ipfs
camp
the
Wi-Fi
was
getting
hammered
because
there
was
so
many
people
using
it
doing
a
ton
of
different
things,
and
so
it
was
just
really
slow.
So,
even
though
it
could
work
offline,
onboarding
people
was
really
slow
because
they'd
be
downloading
a
ton
of
different
dag
entries
for
this
op
log.
That
was
eventually
a
thousand
records
law,
which
kind
of
leads
to
this
next
thing
is
CR.
Dt
op
logs
are
have
a
ton
of
overhead.
C
If
you're
doing
small
operations,
it's
almost
like
a
10x
or
100x
overhead,
just
because
of
the
extra
information
that
needs
to
be
included
to
basically
verify
who
did
it
and
at
what
time
they
made
that
operation.
So,
for
example,
at
the
end
of
ipfs
camp,
the
the
OP
log
was
30
megabytes
for
a
almost
200
kilobyte
data
set,
which
is
pretty
crazy,
there's
probably
much
better
ways
to
do
that.
I
think
deltas
have
have
looked
interesting,
it's
more
to
look
into
there.
C
Another
thing
we
learned
is
to
always
use
a
buddy,
and
what
I
mean
by
that
is,
is
when
you're
onboarding
somebody
they're
going
to
be
scanning
the
QR
code
on
your
phone
and
your
your
phone
is
on,
so
they
should
be
able
to
connect
directly
to
your
phone
and
get
that
data
from
you
and
so
back
when
I
talked
about
the
snapshots.
One
thing
that
we
learned
is
that
you
don't
have
to
wait
for
the
whole
op
log
to
download.
C
But
this
allows
them
to
basically
onboard
immediately
and
then
start
having
fun
inside
the
gathering
without
having
to
wait
five
minutes
for
the
list
of
everything
that
everybody's
done
to
download
last
thing
was:
if
you
don't
have
debug
info
inside
of
the
thing
or
some
way
to
get
to
the
bug
information,
it's
gonna
be
really
hard
to
figure
out.
What's
going
on
since
there's,
not
so
with
centralized
systems,
it's
it's
easier
to
kind
of
debug
what's
happening,
because
because
you
can
track
everything,
you
can
see
all
the
requests
coming
in,
but
with
decentralized
systems.
C
There
is
no
back
end.
It's
all
within
that
front,
end
app,
and
so
it's
really
helpful
to
have
some
loading
info
and
some
debug
info
in
there.
That
can
help
you
kind
of
see
how
things
are
working,
so
that
was
it
for
ipfs
camp.
Lessons
last
thing,
I'd
like
to
talk
about
before
we
go
into
questions
and
potential
solutions.
Is
things
that
we'd
like
to
see.
C
Essentially
what
they're
doing
there
is
they're
making
it
so
that
you
can
browse
ipfs
content
inside
of
essentially
a
browser
that
has
ipfs
embedded
it's
kind
of
crazy,
so
that
would
be
really
cool,
because
if
you
did
that,
then
you
could
make
it
so
that
people
could
pull
that
content
from
your
device
without
having
gone
to
that
web
page.
But
so
it
starts
to
get
into
that
solution.
That
I
thought
would
be
awesome,
which
is
you
know,
I
I,
come
to
this
event
there
offline,
but
this
person
has
the
gathering
on
their
phone.
C
I
can
then
get
the
gathering
from
their
phone
and
use
it
on
myself.
So
that
starts
to
help
with
that.
The
next
thing
is
built-in
peer
discovery
on
mobile
devices.
Web
browsers
right
now.
As
far
as
I
know,
the
best
way
to
do
that
is
through
signaling
and
relays.
It'd
be
really
cool.
If
we
had
the
ability
to
use
like
mdns
within
local
networks
to
be
able
to
have
devices
find
each
other
I'd
be
cool
and
then
detaching
users
from
devices
what
I
mean
by
that
is
is
sure
you
know.
C
What
I
mean
by
that
is?
Is
we
build
a
lot
of
front-end
frameworks?
We
build
a
lot
of
tools
with
front-end
frameworks
like
react
and
they
base
things
on
components
and
it
would
be
really
cool
if
we
could
start
to
make
reusable
components
that
you
could
then
use
to
basically
compose
applications
out
of
those
components
and
what
I
mean
by
that
is
is
if
we
could
make
it
so,
for
example,
in
the
gathering
I
could
expose.
You
know
this
little
component
here.
C
That
is
me
and
make
it
so
that
that's
usable
in
other
apps
that
that
would
be
cool,
because
then
we
could
allow
people
to
start
to
put
together
their
own
apps
essentially
or
we
reuse,
datasets
and
components
from
other
apps.
So
I
could
take
this
and
put
it
inside
of
a
decentralized,
Twitter
or
I
could
take
my
Instagram
feed
and
put
it
inside
of
a
inside
of
the
gathering
or
something
like
that.
So
definitely
interested
in
seeing
something
like
that.
G
G
E
C
Yeah
I
mean
what
I
was
thinking
here
is,
for
example,
I
know
that
you
have
the
ability
to
tether
devices
to
your
phone.
So
if
I
turn
on
my
my
personal
hotspot
here,
I
don't
know
if
you
guys
can
see
that,
then
what
it
does
is
it
essentially
connects
us
up,
creates
a
Wi-Fi
network
that
devices
can
connect
to.
C
So
the
thought
is
is
doing
that,
even
if
my
phone's
not
connected
to
the
Internet,
it's
creating
a
network
that
the
other
devices
can
connect
to
so
essentially
doing
what
you
were
saying:
Yanis,
creating
an
ability
for
other
devices
to
connect
directly
to
the
device.
That
would
then
be
kind
of
like
the
facilitator
for
the
gathering
all
right.
It
seems
like
a
pretty
good
stopgap
for
the
limitations
that
we
have
currently.
G
Okay,
yeah,
so
bluetooth
is
kind
of
restricted
in
some
of
these
cases.
But
what
we've
we're
doing
these
that
we're
we're
using
a
combination
of
Bluetooth
and
Wi-Fi
direct
so
that
one
of
them
does
the
service
discovery
and
the
other
one
is
actually
connecting
and
transferring
data
but
I,
say
I
mean
I
can
dig
through.
G
But
the
other
thing
is
that
I've
seen
recently
from
some
colleagues
of
what
they
did
these.
Actually
they
didn't
do
this
on
the
mobile
phone,
but
what
they
did
is
they
show
you
have
some
raspberry
pie
or
something
which
is
in
the
same
area,
and
this
is
effectively
doing
the
web
server
and
you
run
what
you
want
to
run
as
an
instant
web
or
progressive
web
app
or
whatever
it's
called.
G
C
Yeah
well,
it's
interesting
too,
because
it's
not
unfeasible
for
somebody.
That's
going
to
initiate
the
gathering
to
have
some
kind
of
app
on
their
phone
to
start
that,
but
what
it
allows
is
it
makes
it
so
that
not
everybody
has
to
have
the
app
instead,
just
one
person
has
to
have
it
and
the
rest
can
just
use
a
browser
which
right
is
is
fine,
because
then
they
don't
have
to
download
an
app
which
is
kind
of
what
we're
wanting
to
solve.
C
If
you
guys
have
any
questions,
I
actually
have
some
questions
for
you
guys,
then
something
that
I've
been
spending
a
lot
of
time.
Looking
into
is
more
efficient
ways
to
store
the
data
that
we
use
here,
like
I,
talked
about
there's
quite
a
bit
of
overhead
with
the
OP
log
approach
and,
and
it
kind
of
forces
it
to
not
scale
very
well.
C
We
want
to
be
able
to
support
a
gathering
where
there's
a
thousand
people
and
they're
making
connections
with
you
know
ten
fifteen
other
people
at
this
at
the
event
and
right
now
it
just
really
wouldn't
work
very
well.
That
would
result
in
you
know:
60
70,
80,
megabytes
of
data,
which
I
think
technically
you
can't
even
do
in
indexdb
on
mobile
device.
I
think
they
kind
of
limit
you
to
like
50.
C
So
what
that
means
is
that
it's
kind
of
constrained
to
small
gatherings
now,
which
is
not
where
we
want
to
be
so
I
know
that
Jim
spent
a
lot
of
time
working
on
on
peer
base
and
Delta
C
Rd
T's.
What
would
you
recommend
is
maybe
a
better
way
to
keep
peers
in
sync,
knowing
that
they're
going
to
be
on
and
off
during
the
duration
of
this
collaborative
thing,
yeah.
B
B
It's
it's
going
to
store
most
of
it
in
JavaScript,
but
then
it'll
in
store
like
these
interested
blobs
in
but
it
does,
it
does
use
a
binary
encoding,
so
it
might
actually
be
a
little
bit
less
space
than
or
tbh
I
have
to
compare,
also
also
at
ipfs
camp.
There
is
Viktor
Khristenko
and
he's
working
on.
Something
called
replicated
object,
notation
and
that's.
His
thing
is
like
really
compressing
down
the
data
they
get
stored
into
this
few
bits
as
possible
and
that's
a
really
interesting
project,
but
it's
very
much
research
stage,
so
cool.
C
D
C
A
E
Something
that
comes
up
related
to
bluetooth
is
Bertie,
had
a
lot
of.
They
had
a
stand
during
science,
fair,
showing
Bluetooth
transport
and
they
plan
to
open
source.
It
I
believe
at
some
point.
So
it's
something
to
look
at
or
look
forward,
because
that
would
be
a
way
of
solving
local
discovery
and
also.
C
Did
you
guys
have
a
chance
to
play
the
interspace
tag,
interplanetary
tag
that
the
textile
guys
had
put
together,
so
they
were
using
a
textile
thread
to
essentially
play
tag.
So
what
it
would
do
is
you'd
hide,
it'd,
never
get
tagged,
I've
participated,
but
I
did
never
get
tagged
and
I
was
never
it.
So
I,
don't
know
exactly
how
it
works.
F
That
was
super
cool
I
liked
Jerome's
project
about
basically
when
he
goes
to
conferences
and
stuff
like
that.
He
wanted
a
way
to
play
with
this
cat,
so
he
came
up
with
this
way
of
like
using
lib
peer-to-peer
to
control
a
laser
and
a
camera
at
home.
So
while
he's
away
you
know
he
can
connect
them,
just
peer-to-peer
do
that
and
then
he
was
talking
about
well,
since
it's
already
peer-to-peer.
Why
don't
we
just
like
aggregate
these
things?
F
A
A
A
A
E
Am
really
bad
at
multitasking,
but
I
pass
the
link
to
the
tweet
with
some
details
about
the
blood
of
transport.
In
case
you
want
to
fall.
That's
coming
back
to
the
problem
of
local
discovery
in
web
browser.
That's
something
very
close
to
my
problem.
That's
like
a
my
problem
space
and
we
had
some
improvements
related
to
IP
and
s
that
sort
of
introduced
concept
of
something
like
ipfs
beacon
for
local
networks.
So.
E
Things
like
gathering
copy,
but
when
we
saw
we
try
to
make
them
work
in
venues
which
had
very
tricky
situation
of
upstream
internet
connection,
which
we
usually
do.
We
run
like
a
local
like
we
run
local
signaling
server
basic
and
the
idea
is
to
make
it
less
explicit
and
make
it
sort
of
like
a
and
ambient
service.
So
right
now
you
can
run
things
like
NTP
server.
You
have.
You
can
have
the
DNS
server
on
your
local
network.
E
You
can
have
mass
storage
and
those
some
of
those
things
like
Mass
Storage
can
announce
itself
on
a
local
network
using
a
DNS
when
it
effectively
gets
something
that
local
host
name.
So
it's
like
a
very
rough
idea,
but
that
the
idea
was
to
sort
of
have
a
prepackaged
a
service
that
could
run
that
you
can
run
in
your
local
network
or
network
of
a
conference
of
insiders.
E
So
then
web
browser
nodes
can
just
check
if
there's
anything
there
and
you
get
like
this,
like
rube
Goldberg's,
a
machine
like
scheme
of
a
local
discovery,
so
the
web
browser
node
can
just
check.
If
there's
like
a
local
beacon
that
it
can
access
any
fits
there,
it
it
would
expose
like
HTTP
service
right.
So
the
note
in
web
browser
could
just
ask
it
for
stuff.
Make
API
calls,
and
we
have
like
concepts
of.
E
E
B
This
there's
another
aspect
of
this
where
I'm
thinking
of
not
exactly
offline,
but
you
have
multiple
users
in
one
physical
locations
and
there's
one
around
a
moon
but
they're
actually
on
different
networks.
They
might
be
on
their
cell
phones,
so
it's
like,
maybe
they're
all
connected
to
the
Internet.
But
how
do
they
find
each
other
like
if
they
all
like
Rhonda?
They
all
talk
to
the
same
server
and
say
maybe
the
Geo
and
saying
you're
something
new
GPS.
Then
they
can
find
each
other
I
don't
know
so
it's
like.
E
I
think
it's
like
a
more
generalized
if
we
think
about
more
generous
problem
of
like
local
discovery.
Local
discovery
might
may
mean
local
network,
but
also
like
geofencing
and
I
sort
of
remembered.
Another
discussion
I
had
with
some
folks,
are
during
her
ipfs
camp
about
like
local
discovery
by
something
like
the
physical
proximity,
mainly
in
the
same
room.
So
I'm,
not
sure
if
you
are
familiar
Google
has
this
product
called
chromecast.
E
You
plug
this
small
pen
drive
like
thingy
to
HDMI
port
TV,
and
it
you
can
just
cast
videos
there
and
it's
actually
interesting,
because
if
you
are
on
the
same
network,
then
it
pops
up
on
your
Android
phone.
Oh
there's
a
screen,
you
can
cast
your
videos
too.
However,
it
also
works
and
you
are
not
on
the
same
network
and
that's
interesting
right
how
it
works.
So
I
did
some
spelunking
can
turns
out
day
10.
E
So
that's
like
a
splash
screen
for
chromecast.
It's
basically
like
a
HDMI
screen,
so
it's
provides
audio
and
video.
So
there's
like
a
code
on
the
screen
displayed
in
you
are
in
case
you
want
to
manually
pair
with
it.
I
did
not
enter
in
the
code
and
it
still
showed
on
the
list
right,
so
there's
must
be
something
else.
So
this
thing
that's
something
else
thing
is
audio.
What
is
happening
in
our
at
least
it
was
in
past.
The
chromecast
was
playing
very
I.
E
E
Honestly,
I
dig
deeper
on
that,
like
rabbit
Hall
of
companies,
just
putting
sounds
and
turns
out
when
you
got
like
assistants
like
Alexa
or
like
Google
home
or
those
things
like
that,
and
when
you
have
like
commercials
in
the
TV
about
those
products.
People
there
are
speaking
those
key
words,
but
those
key
words
do
not
trigger
you're
right.
C
E
F
Worked
on
a
project
that
did
that
for
a
little
bit
where
they
were
transmitting
sound,
a
data
over
sound-
and
this
was
a
while
ago,
but
I-
remember
one
of
the
problems
with
it
was
a
lot
of
like
a
lot
of
data
trained
it
in
the
transfer
like
there
was
so
much
noise
and,
like
you
needed
so
much
parity
and
all
the
stuff
to
reconstruct
the
data.
That
was
the
primary
concern.
I,
don't
know
how
things
have
evolved
since
then,
but
apparently
it's
good
enough
for
Google.
Do.
C
F
If
I
don't
know
how
that
would
work
in
browsers,
but
like
at
the
OS
level,
we
were
trying
to
think
of
like
how
do
we
get
ipfs
on
a
machine
that
doesn't
have
ipfs
already
and
it
was
like,
send
it
over
SMB
and
then
use
the
share
name
to
bootstrap.
Essentially,
and
it
was,
it
was
just
a
weird
thing:
never
went
further
than
that.
A
G
Right,
yes,
so
you
have
to
be
very
brief:
I
don't
have
slides
with
me
right
now,
Aries.
So
what
we've
done
these?
We
have
built
a
library
which,
effectively
and
and
a
very
simple
application
on
top
of
it,
we're
effectively
devices
connect
individually
from
one
device
to
the
other,
irrespective
of
the
network,
and
they
share.
They
can
share
files
between
them.
G
So,
as
I
said
before
the
way
we
do,
that
is,
we
use
both
Bluetooth
Low
Energy,
mainly
for
service
discovery,
but
then
the
data
is
transferred
over
Wi-Fi
direct
because
that's
higher
throughput
connections
and
yeah.
The
current
implementation
is
that's.
You
know
effectively
nodes
advertise
what
they
have
through
a
through
bloom
filter,
the
other
devices
see
and
they
compared
what
they
have.
And
that's
how
they
realize
whether
they
actually
they're
missing,
something
that
has
been
published
elsewhere
and
they
connect
to
get
the
new
content.
So
devices
do
not
connect
randomly.
G
They
just
connect
homely
when
they
see
that
you
know,
one
of
them
has
got
something
that
others
don't
and
that's
how
comes
in
can
propagate
actually
through
devices
when
they
polic
80s
and
yeah.
We've
got
pretty
stable,
Android
application
for
that
can
be
used
for
many
we've
stress
tested
that
for
large
files
have
to
event.
If
you
convert
megabytes,
something
like
that
and
it's
quite
stable.
G
A
That
sounds
very
cool.
We
will
look
forward
to
a
demo
on
one
of
our
upcoming
calls.
So
just
so
everyone
is
aware
we
did
this
call
at
the
not
our
normal
week
of
the
month
this
month.
The
next
one
should
be
August
21st
its
next
time,
we'll
see
each
other,
so
the
third
Wednesday
in
August
same
time,
I'll
start
a
new
issue
in
the
repo.
So
it's
a
ipfs
slash
local
offline
collab
is
the
repo.
A
So
if
you
want
to
watch
that
repo
to
make
sure
that
you
see
those
notifications
when
they
come
up
and
I
usually
take
people
who
might
want
to
attend
and
say
a
little
something
about
what
we'll
be
talking
about
and
the
agenda
duck
that
we've
been
looking
at
together,
as
always
there
for
you
to
add
agenda
items
to
and
on
that
on,
the
note
side
of
that
I
would
love
it
occasionally.
I
will
miss
a
few
words
or
don't
when
the
words
that
fly
by
me
aren't
ones.
A
I
understand
I,
take
worse
notes,
so
if
any
of
you
have
time
to
pop
in
there
right
now
and
fix
up
the
notes,
I
just
took
for
this
call.
That
would
be
awesome,
but
it
was
great
to
see
everyone.
Thank
you
Justin
and
Victor
for
sharing
the
gathering.
So
it
was
really
cool
to
see
kind
of
more
under
the
hood
than
we
had
time
to
necessarily
at
ipfx
camp,
so
very
cool
and
we
hope
to
see
everybody
next
month.
Yep.