►
From YouTube: Containerized IDEs, and other Local As Code techniques
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
Hi
welcome
to
this
webinar
on
containerized
ides.
My
name
is
jan
van
bruggen
and
I'm
developer
relations
lead
at
itopia,
I'm
going
to
be
talking
about
containerized
ides
among
other
local
as
code
techniques.
Localized
code
is
not
a
common
phrase.
It's
something
that
I've
made
up.
I
think
it
makes
sense.
You
don't
have
to
copy
me
on
it.
Configures
code
is
a
big
thing
in
the
software
development
industry
these
days
and
we
seem
to
have
as
code
for
everything
else
monitoring
as
code
data
as
code
permissions
as
code.
A
So
this
is
just
about
coding
in
general,
this
is
very
high
level.
This
isn't
specific
to
anything
about
kubernetes
or
any
specific
programming
language
like
that
coding
in
general
is
just
text
editing
with
a
little
bit
of
running
apps
as
well
running
executables.
You
need
to
be
able
to
do
all
of
that
in
your
local
environment.
You've
got
a
device.
You've
got
some
software
running
on
it.
A
You've
got
an
ide
installed,
clis
compilers,
a
lot
of
different
things,
go
into
setting
up
your
local
coding
environment
and
that's
one
reason
that
developers
are
so
picky
about
their
local
coding.
Environment
is
because
they
need
to
make
sure
that
it's
just
right
so
that
they
can
be
productive
as
well.
I'm
going
to
define
the
term
project,
maybe
a
little
unnecessary
here,
but
just
so
that
we
are
talking
about
the
same
terms.
A
A
You
need
the
source
code
for
the
project
source
code
that
other
people
and
yourself
have
already
written.
You
can
get
that
by
just
get
cloning.
It
great
one,
lighter
command,
you're
up
and
running
for
that,
but
you
also
need
third
party
libraries.
So
if
you're
using
a
language
like
javascript
you're,
going
to
need
your
javascript
libraries
python
you're
going
to
need
python
libraries
java,
you
can
get
these
things
very
easily.
A
This
is
a
solved
problem,
there's
tools
like
npm,
pip,
maven,
cargo
for
the
rust
ecosystem,
and
you
just
use
the
config
file
that
comes
with
the
code
base
and
you
run
the
one
liner
and
you're
off
to
the
races,
things
that
are
usually
not
version
controlled
but
necessary
to
code
on
a
project.
Are
things
like
the
packages
on
your
operating
system?
So
a
project
may
assume
that
you
have
curl
installed
on
your
system.
It
may
assume
that
you
have
the
correct
version
of
node
installed
on
your
system.
A
A
So
it's
a
really
tricky
situation
when
you
need
these
operating
system
level
packages
in
order
to
do
local
development,
but
those
aren't
npm
installable
those
aren't
pip
installable,
they
are
maven
installable.
They
aren't
cargo
buildable
you're
going
to
need
more
than
just
what
comes
with
the
language
ecosystems
package
manager.
Here.
A
As
for
your
operating
system,
that
is
also
very
much
assumed
that
you've
already
set
it
up
and
for
most
developers
that's
the
case.
You
have
a
macbook
that
you've
completely
configured
that
you're
super
comfortable
with
and
can
work
on
a
lot
of
different
projects
great.
But
what?
If
you're
running
a
chromebook
you?
There
are
some
projects
that
you
just
can't
develop
on
a
chromebook
effectively
and
there
may
be
discrepancies
between
team
members,
so
you
may
have
some
team
members
that
are
on
macs
and
some
team
members
that
are
on
windows.
A
This
leads
to
a
discrepancy
between
what
I
call
localist
code
and
what
I
call
local
as
documentation.
So
localist
code
are
tools
and
dependencies
that
you
need
and
voila
they're
there
for
you
just
right
out
of
the
code
base.
There's
some
config
files
and
you
run
some
commands
and
you've
got
them
things
that
are
local
as
documentation.
You
need
to
read
guides.
You
need
to
read
step
by
step.
A
You
need
to
do
it
manually
and
do
it
imperatively
yourself,
which
causes
a
lot
of
problems.
This
can
cause
drift
between
different
team
members.
This
can
cause
bugs
to
come
up
where
you
develop
on
one
machine
and
it
works
there,
but
it
doesn't
work
once
it
goes
to
another
machine
or
it
doesn't
work
in
production.
A
A
So
the
goal
here,
the
point
of
this
entire
webinar,
is
that
whether
you're
an
open
source
project
or
an
enterprise
team
you're
going
to
reduce
project
or
onboarding
time
by
automating
those
project,
setup,
steps
and
project
onboarding
time
can
be.
You
know,
having
short
time
versus
a
long
time,
can
be
the
difference
between
having
a
lot
of
open
source
contributors.
If
they
can
come
by,
they
can
clone
the
code
base
and
immediately
write
effective
high
quality
code
that
they
can
push
up
in
a
pull
request.
A
You're
going
to
get
a
lot
more
high
quality,
pull
requests
and
you're
just
going
to
get
a
lot
more
pull
requests
in
general,
because
people
will
feel
more
welcome
to
contribute
there
and
on
an
enterprise
team,
onboarding,
off-boarding,
employee,
churn
contractors.
These
can
be
things
that
make
or
break
the
ability
of
a
team
to
ship
features.
A
So
let's
get
started
automating
these
steps
with
a
bunch
of
different
cool
tools
that
you
may
or
may
not
have
heard
of,
and
there's
an
extra
layer
here
that
I
have
hidden
from
view
that
I'm
going
to
bring
back
later
once
it
becomes
more
relevant.
I
don't
want
to
derail
too
much
now,
so
I'll
have
a
little
secret
for
later.
A
The
first
one
is
operating
system
packages
to
have
them
configured
as
code
is
very
tricky,
especially
when
developers
are
on
different
operating
systems.
So
you
may
have
some
developers
on
windows,
some
developers
on
mac,
some
developers
on
linux,
and
how
are
you
going
to
configure
the
same
packages
across
all
those
operating
systems?
That's
one
of
the
reasons
that
traditionally
it
isn't
done.
Another
reason
is
that
these
are
often
system-wide
system
level
packages
that
will
go
across
all
the
projects
that
someone's
working
on.
A
So
if
project
a
installs,
some
operating
system
package,
project
b
is
also
going
to
get
it,
and
that
is
not
always
good.
Sometimes
you
can
get
away
with
it,
but
sometimes
it
causes
big
problems.
So
a
simple
example
is
node
versions.
If
you
have
node
12
on
project
a
and
then
you
upgrade
your
version
of
node
to
project
to
node
16
for
project,
a
project
b
might
still
be
expecting
it
to
be
on
12,
and
that's
why
you
need
something
like
node
version
manager.
A
You
need
all
these
work
around
tools
for
each
individual
package
to
make
sure
that
they're
versioned
per
project
and
that
can
get
really
messy
when
you
have
to
do
it
on
a
per
package
level.
So
it
would
be
much
nicer
if
we
could
do
it
at
a
high
level,
but
unfortunately
a
lot
of
package
managers.
I'd
say
most
of
them
almost
all
of
them
don't
come
with
declarative,
config
files.
So
if
you're
on
mac
and
you're
using
something
like
homebrew
there's
not
like
a
dot
homebrew
file
for
this
project,
you
can't
just
say
hey.
A
I
want
to
have
these
packages
available
on
mac
right
now
and
then
later
throw
them
away.
You
don't
have
that
ephemeral
config
and
you
don't
have
that
declarative,
config
and
same
thing
on
windows.
There
are
a
few
different
package
managers,
I'm
not
super
familiar
with
them,
but
I
know
there's
chocolaty
and
I
know
there's
wind
get.
I
don't
think
that
they
have
declarative
config
files
and
I'm
almost
certain
that
they
don't
have
ephemeral
environments
that
you
can
hop
into
like
temporary
shells
or
something
like
that.
A
Luckily,
there
is
a
very
cool
tool
called
nyx
and
if
you
haven't
heard
of
it,
it
is
growing
in
popularity.
It
is
a
package
manager
for
linux
and
for
mac
os,
unfortunately
not
for
windows.
So
if
windows
is
a
requirement
for
your
team,
this
in
particular
isn't
going
to
work
for
you,
but
I'll
have
another
solution
for
you
later,
but
nix
is
basically
a
cross-operating
system
package
manager
that
is
very
aggressive
about
version
pinning,
and
it
has
you
know
down
to
the
nitty-gritty
details.
A
If
you
have
a
set
of
nyx
packages
installed
for
just
project,
a
those
won't
bleed
over
to
project
b,
and
so
this
command
nix.
Shell
is
something
that
you
can
use
with
a
dot,
nix
config
file
to
say
right
now,
I
want
to
hop
into
a
bash
shell,
an
interactive
bash
shell,
where
I
have
these
specific
packages
installed
these
specific
versions
of
these
specific
packages
installed
and
then,
when
I
switch
projects
to
go,
work
on
project
b.
A
All
of
that
evaporates
because
it's
all
sim
linked
it's
all
installed
outside
of
your
project
directory
and
outside
of
your
operating
system's
root
directories
that
you
would
normally
expect
to
see
these
packages
installed.
It's
instead
installed
in
the
root
nics
directory,
and
then
everything
is
sim
linked
into
this
temporary
ephemeral
interactive
shell
session.
A
A
I've
never
contributed
to
a
programming
language
before
and
I've
never
worked
on
a
rust
project
before,
but
it
was
really
easy
to
contribute
to
this
because
they
had
everything
defined
in
a
next
shell
file,
and
so
I
didn't
need
to
install
rust.
I
didn't
need
to
know
how
to
install
all
of
these
compilers
and
tools
to
compile
this
programming
language.
Instead,
I
just
ran
nick's
shell.
A
Once
I
had
get
cloned
the
project
repo
and
everything
was
just
installed
for
me
and
everything
worked.
I
ran
like
the
test
command,
the
the
build,
the
local
dev
build
command
and
all
of
the
tests
ran
fine
on
the
first
try,
and
I
was
just
stunned
that
I
didn't
need
to
install
compilers.
I
didn't
need
to
install
all
these
things
manually
because
it
was
all
done
automatically
for
me,
so
I
highly
recommend
nicks.
A
Unfortunately,
they
don't
have
support
for
windows
yet,
but
for
most
projects.
I
think
that
this
is
going
to
be
a
huge
value.
Add
because
you
are
going
to
reduce
a
lot
of
your
readme
steps
of
make
sure
you
have
this
installed,
make
sure
you
have
that
installed
and
you
can
keep
up
with
it
as
well,
because
if
you
just
do
a
git
pull
the
next
time,
you
do
next
shell,
it's
going
to
do
the
diffing
to
make
sure
that
it
gets
the
right
things
installed
for
you
in
that
environment.
So
you
never
get
behind.
A
Okay,
the
next
level
is
the
operating
system,
and
this
is,
I
don't
want
to
say,
controversial,
but
it's.
This
is
like
a
huge
decision
point
whether
you
want
to
containerize
or
not
having
an
operating
system
be
defined,
for
a
project
can
be
both
liberating
and
restrictive,
and
by
liberating
I
mean
if
your
project
sets
up
your
operating
system
for
you
and
we'll
get
to
how
it
does
that
in
a
second.
But
if
you
had
a
little
operating
system
just
for
this
one
project.
A
A
A
It
can
also
be
restrictive
because,
even
though
it
gives
you
all
of
that
stuff
out
of
the
box-
and
it
gives
you
like
an
environment
in
minutes,
it's
an
environment,
that's
not
the
same
one
that
you're
used
to
working
in.
It's
not
going
to
be
a
you
know
a
little
mini
mac
os
system
for
this
project,
or
it's
not
going
to
be.
You
know,
oh
it's
just
like
your
desktop,
but
cloned
and
then
minified.
A
I
feel
like
I'm,
I'm
burying
the
lead
with
how
this
is
going
to
happen,
how
this
is
going
to
work,
but
if
you
have
a
mini
operating
system
just
for
this
one
project
running
ides
out
of
that
operating
system
can
be
frustrating
and
you
need
a
specific
planned
way
of
connecting
two
guise
that
are
inside
of
there.
So
be
warned
if
you
want
to
just
set
up
nicks
for
your
project.
I
think
it's
great
by
itself.
A
It
would
set
up
a
guest
operating
system
on
your
device
and
your
device's
operating
system,
whether
that's
mac,
os
or
linux
or
windows,
would
act
as
the
host
operating
system,
and
this
means
that
that
little
mini
operating
system
in
the
container
can
be
completely
defined
of
what
is
you
know
what
version
of
the
os
it
is?
What
packages
are
installed
inside
of
it?
It's
great.
A
Slightly,
unfortunately,
because
that
means
that
things
can
drift
still
so,
for
example,
if
you
do
a
docker
build
on
a
docker
file
today
and
then
do
the
same
docker
build
command
on
the
same
docker
file
a
week
later,
you
could
get
different
results
because
you
don't
have
all
of
your
third-party
dependencies
exactly
pinned
down
instead,
something
like
nick's
os
would
do
that
for
you,
and
I
recommend
this
to
anyone
who
wants
to
get
their
hands
dirty
and
is
curious
about
completely
declarative
operating
systems.
A
A
It's
you
know
impossible
to
expect
that
every
application
and
every
configuration
could
be
supported,
but
you
can
have
a
productive
working
machine
on
nixos
and
I'm
actually
considering
setting
up
nyx
os
on
one
of
my
personal
laptops
to
give
it
a
spin
in
my
daily
life,
but
I'm
going
to
go
ahead
and
rule
it
out
for
this
conversation
because
it
is
not
accessible
or
popular.
It
is
not
going
to
have
integrations
with
other
tools.
A
There's
not
going
to
be.
You
know,
cloud
hosting
providers
for
your
next
os
desktops,
that's
just
not
going
to
happen
and
accessibility
wise,
not
everyone
is
going
to
want
to
edit
a
obscure
obtuse
config
file
for
their
operating
system.
This
is
definitely
for
a
certain
type
of
developer
and
for
them
it
is
the
greatest
thing
they've
ever
seen,
but
for
everyone
else,
it's
a
little
bit
smelly
and
we
want
to
stay
away
from
it
and
just
stay
in
the
world
of
containers,
even
though
they
can
drift
a
little
bit
and
they're
imperatively
defined.
A
They
work
well
enough
for
our
purposes,
so
we're
going
to
stick
with
containerization
as
the
solution
here,
and
I
just
want
to
be
clear
that
these
are
orthogonal
solutions.
You
could
containerize
a
nyx
os
environment.
You
could
do
both
because
they're
taking
different
approaches
to
solving
the
same
problem.
You
could
layer
them
on
top
of
each
other,
there's
pros
and
cons,
but
just
wanted
to
put
that
out
there.
So,
let's
go
with
containerization.
A
Let's
say
that
for
this
specific
project,
we're
going
to
spin
up
a
dev
container
for
everything
that
you
need
to
have
installed,
it's
going
to
be
ubuntu,
let's
say,
and
it's
going
to
have
this
specific
version
of
python
pre-installed
in
it
it's
going
to
be
python.
310,
it's
going
to
be
like
the
latest
and
greatest
it's
going
to
come
pre-installed.
So
you
don't
need
to
deal
with
installing
that
python
step.
It's
also
going
to
have
pip
completely
configured.
A
A
Oh,
I
forgot
to
to
show
something
I
just
wanted
to
to
show
that
the
number
of
nyx
packages
that
are
out
there
is
wild,
there's
380
000
commits
in
this
repo,
and
it
just
blows
me
away
how
many
how
many
packages
they
have
in
here.
So
I
just
wanted
to
mention
that,
but
even
though
nyx
has
all
those
packages,
your
docker
file
can
install
those
packages
for
you,
imperatively
and
cache
and
pin
those
layers
of
those
images
for
you
that
can
all
be
done
by
docker.
So
nyx
becomes
optional
at
that
point.
A
If
you're
taking
the
dive,
taking
the
plunge
into
doing
a
containerization
approach
to
your
development
environment,
that
can
take
care
of
a
lot
of
the
operating
system
packages
as
well
again,
you
can
layer
them,
but
you
don't
have
to
it's
optional.
At
this
point
before
I
get
into
filling
in
these
question
marks
of
how
to
run
an
ide
out
of
a
containerized
operating
system,
I
want
to
come
back
to
that
thing.
A
I
alluded
to
at
the
beginning,
which
is
that
there's
an
extra
layer
here
when
you're
going
to
be
setting
up
a
whole
operating
system
for
people
and
take
them
out
of
their
element.
It's
going
to
be
very
uncomfortable
if
they
like
using
fish
shell
and
you
make
them
use
bash
they're,
going
to
be
uncomfortable
if
they
like
to
have
certain
shell,
aliases
and
autocompletes,
and
certain
color
themes
they're
going
to
be
a
little
uncomfortable
in
this
new
operating
system,
which
is
why
personalization
also
matters
here.
A
So,
even
though
we're
plopping
people
taking
our
developers
and
putting
them
into
this
new
project
specific
operating
system,
you
can
still
personalize
it
to
fit
your
needs.
You
can
still
have
it
have
the
same
color
themes
and
shell
aliases
and
environment
variables
that
you're
used
to
having,
because
you
can
use
dot
files
for
that.
This
is
something
that
I
don't
see
as
very
popular,
but
I
don't
know
why
it
isn't,
because
the
tooling
is
very
mature
tools
like
chamois,
which
is
a
dot
file
manager,
can
do
a
lot
for
you.
A
It
can
manage
these.
These
dot
files
and
install
them
on
different
systems,
decide
hey
you're
on
linux
right
now,
I'm
going
to
install
it
in
these
directories.
Oh
you're,
on
mac!
Now
I'm
going
to
install
it
in
these
directories
and
compared
to
a
lot
of
other
dot
file
managers.
It
seems
to
have
a
strong
feature
set.
I
mean
I
guess
this
comparison
table
is
biased
because
it's
on
shame,
wise
known
website
but
seems
legitimate.
It
seems
like
it
is
the
the
best
in
class
dot
file
manager.
A
So
I
recommend
using
this
I
enjoy
using
it.
It's
very
simple
one:
liner
command
to
get
all
of
your
bashrc
files
and
ide
preferences
and
fonts
and
color
themes
and
stuff
like
that
installed
on
any
system
you
go
to.
So,
if
you're
hopping
around
you
could
you
know,
go
to
a
library,
pc
and
set
up
the
exact
environment
that
you
wanted
to.
I
don't
think
that
anyone
goes
to
the
library
to
do
enterprise
software
development
these
days,
but
it
doesn't
really
matter.
A
You
could
go
to
any
machine
you
want
and
it
would
look
and
feel
like
your
home
development
machine
if
you
put
your
dot
files
into
a
manager
like
this,
so
that
was
a
quick
aside
on
personalization
so
now
back
to
ways
to
containerize
the
operating
system.
The
easiest
way
to
do
this
is
a
way
that
I
enjoyed
doing
a
few
years
ago
when
it
came
out
which
is
using
an
ide
with
guest
os
support
to
use
docker
desktop
for
guest
operating
systems
locally.
So
this
is
entire,
entirely
offline,
entirely
local
effectively.
A
What
you'd
use
is
something
like
vs
code,
remote
development,
which
is
a
plugin
for
visual
studio
code,
a
popular
ide
that
allows
you
to
have
a
second
operating
system
that
the
back
end
of
the
ide
is
running
out
of,
which
means
that
all
of
the
terminal
sessions
are
running
out
of
that
second
operating
system.
All
of
the
code
is
being
edited
and
stored
in
that
second
operating
system.
So
you
don't
need
to
install
the
dependencies
locally
anymore
and
this
definition
of
local
kind
of
gets
blurred.
A
At
this
point,
it's
only
going
to
get
more
blurred
later
on,
but
the
idea
is
that
you
don't
need
to
let's
say
you're
running
a
macbook
and
you
need
to
install
rust
in
order
to
do
rust
development.
You
in
this
case
would
not
actually
need
to
have
rust
installed
anywhere
on
your
mac.
You
could
install
rust
instead
in
the
ubuntu-based
container,
or
I
guess
for
for
this
use
case-
you
wouldn't
need
it
to
be
a
graphical
distribution
like
ubuntu.
A
It
could
be
something
really
lightweight
like
alpine
or
arch
or
something
you
would
just
need
to
install
rust
in
there
and
then
have
vs
code
do
all
of
the
gui
stuff
for
you.
You
would
need
to
have
visual
studio
code
installed
on
your
mac,
but
you
wouldn't
need
to
have
the
tools
for
your
project
installed
on
your
mac,
so
you
could
version
a
docker
file
with
your
project
code
base
and
then
have
visual
studio
code,
pick
up
that
docker
file
and
run
that
docker
image
locally
on
docker
desktop
for
you.
A
A
A
scaling
issue
that
this
has
is
that
you're
making
all
of
your
developers
install
docker,
desktop
on
their
machines
and
run
these
docker
machines
locally,
and
that
can
be
problematic
for
developers
that
don't
have
access
to
docker,
desktop
or
developers
that
you
know
you
can't
really
reduce
the
compile
times
here
very
well
unless
you
get
these
docker
containers
off
of
their
local
operating
system.
So
that's
where
something
like
a
hybrid
approach
comes
up.
A
You
can
move
that
docker
container
onto
a
server
and
suddenly
you're
working
with
the
vs
code,
client
locally,
but
you're
connecting
to
this
remote
docker
instance
on
this
server
and
all
of
the
dependencies
need
to
be
installed
on
the
server
instead
of
your
local.
It
has
all
the
same
benefits,
and
now
you
don't
even
need
to
have
docker
desktop
installed
locally.
A
This.
The
remote
containers
extension
for
vs
code
supports
this
and
I
believe
other
ides
are
working
on
supporting
this
pattern
as
well.
So
I
call
this
a
medium
difficulty
because
you
need
to
set
up
a
server
for
it.
Another
medium
difficulty
solution
is
to
use
something
like
code
server
or
jetbrains
projector,
so
that,
instead
of
the
server
connecting
to
a
local
ide
client,
you
have
the
server
stream
a
web
browser
session.
So
you
don't
need
a
client
anymore.
You
don't
need
to
install
anything
special
on
your
local
operating
system.
A
It
is
a
little
different
from
working
locally.
I
believe
that,
with
these
solutions,
the
extension
marketplace,
for
example,
isn't
as
robust
as
it
is
locally
because
you're
just
running
it
on
your
server
and
it's
not
like
a
microsoft
approved
thing,
but
for
the
most
part
this
is.
This
is
a
strong
solution
to
it.
It's
just
that
again,
you
have
to
set
up
the
server
yourself
and
jetbrains
also
has
a
solution.
A
You
want
declarative
configuration
for
your
server
config
and
you
want
it
to
be
able
to
auto
scale,
which
basically
means
you
want
kubernetes.
At
this
point
you
want
kubernetes,
you
want
an
operator,
that's
managing
the
connections.
That's
saying
hey!
You
want
to
connect
to
this
ide.
Okay,
here
you
go.
I've
got
a
connection
for
you
per
user
sessions,
stateful
workloads,
it
kind
of
balloons
in
complexity
of
what
you
need
in
order
to
have
this
self-service
and
scalable
system,
and
that's
why
it's
nice
to
have
something
like
selkies.
A
So
selkies
is
a
kubernetes
platform
for
per
user
stateful
workloads
like
ides,
but
it
can
do
other
things
too.
It
can
you
know,
do
the
unreal
editor
for
3d
editing,
you
can
use
it
for
ides.
You
could
use
it
for
a
full
desktop
experience
if
you
wanted
to
it's
effectively
just
a
a
streaming
solution
for
the
end
user,
but
for
the
administrator
it's
taking
care
of
all
of
the
networking.
It's
taking
care
of
all
of
the
security
concerns.
A
There's
a
lot
of
things
that
a
kubernetes
operator
in
a
kubernetes
platform
like
selkies,
can
do
if
your
team
or
enterprise
does
not
want
to
manage
kubernetes.
There
are
managed
solutions
that
are
here
for
you.
Instead,
so
instead
of
setting
up
those
kubernetes
clusters,
you
can
just
sign
up
for
one
of
these
services.
A
One
of
them
is
itopia
spaces.
Another
is
github
code
spaces
and
what
they
do
is
they
provide
the
full
ide
in
the
browser,
with
the
back
end,
completely
managed
and
scaling
to
the
level
that
you
would
want
it
to
for
github
code
spaces,
it's
visual
studio
code
for
github-based
repos
and
for
itopia
spaces.
It's
a
variety
of
ides
for
a
variety
of
source
code
posters.
So,
if
you
are
using
gitlab
itopia
spaces
would
be
a
good
solution
for
you.
A
If
you're
using
a
jetbrains,
ide
or
you're
using
something
like
eclipse
or
some
other
niche
ide
itopius
faces
would
be
able
to
run
it
scale,
it
set
it
up
for
your
whole
team.
It
would
look
something
like
this
complete
ide
in
the
web.
Browser
you've
got
everything
the
look
and
feel
the
same
way
as
local
using
those
personalization
files
with
shamoi.
I've
got
this
color
theme
and
I
think
a
font
installed
in
here,
and
you
also
have
the
complete
ecosystem
of
extensions
for
whatever
ide
you're
using
inside
of
here.
A
It
could
also
be
pycharm
not
just
vs
code.
You
could
use
a
variety
of
different
ides,
install
them
according
to
a
docker
file,
spec
and
then
customize
them,
for
whatever
your
team
needs
them
for
pre-install
all
the
dependencies,
all
the
extra
tools
that
you
need
alongside
them,
so
that
they're
just
isolated
in
that
browser
tab.
These
two
browser
tabs
share
no
back
end.
They
are
completely
isolated
from
each
other
and
so
work
and
changes
and
drift
that
I
do
in
one
workspace
is
not
going
to
permeate
into
another,
which
is
really
great
for
that
project.
A
Isolation
developers
log
into
here
through
whatever
sso
system
you
want
to
integrate
with
and
they
can
switch
between
the
different
teams
that
they're
on
now.
Let's
talk
about
administrators
because
they
get
a
lot
of
superpowers
with
the
tokyo
spaces.
Two
click
on
boarding,
one-click
off-boarding,
so
you
can
bring
people
in
and
out
of
these
teams.
You
can
manage
your
teams
here
in
the
admin
portal.
A
A
Again,
all
of
this
is
fully
managed,
so
it's
not
running
on
a
server.
You
need
to
set
up
it's
not
running
in
your
cloud
project
or
on-prem
or
anywhere
like
that.
It's
all
exposed
via
sas
apis,
as
most
enterprises
want
it
to
be,
and
then
our
catalog
we're
building
out
in
public.
So
all
of
this
is
open
source
on
github.
A
How
we're
installing
these
ides,
how
we're
building
these
docker
images,
so
you
can
base
your
custom
docker
images
off
of
these
ones
that
we
have
in
here,
maybe
there's
a
step
that
you
wish
was
done
in
the
middle
of
it.
You
can
just
add
that
in
and
upload
that
custom
image
into
the
system
and
boom,
your
developers
have
exactly
what
they
need,
and
it's
also
nice
that
your
developers
and
administrators
can
collaborate
on
these
images.
A
A
A
So
with
that,
thank
you
very
much
appreciate
you
joining
and
if
you
have
any
questions
about
anything,
I've
said
today.
Please
email
me
at
jvanbruggen,
itopia.com
or
hit
me
up
at
yonseevanb
on
github
or
twitter.
You
can
see
what
I'm
up
to
over
there
if
you're
interested
in
itopia
spaces
check
out
these
links
here
and
feel
free
to
reach
out.