►
Description
Presented by Sasha Rosenbaum, Product Manager, GitHub
How long does it take you to get a new developer up to speed on an open source project or an enterprise development team? Three weeks? Three days? Learn how new GitHub features can save you valuable onboarding time—and get developers ready to code faster.
GitHub Satellite: A community connected by code
On May 6th, we threw a free virtual event featuring developers working together on the world’s software, announcements from the GitHub team, and inspiring performances by artists who code.
More information: https://githubsatellite.com
Schedule: https://githubsatellite.com/schedule/
A
Yeah
for
sure,
so
next
we
have
how
to
get
to
from
idea
to
contribution.
In
minutes
that's
presented
by
one
of
our
own
product
managers
at
github,
sasha
rosenbaum,
who
chairs
delivery
comp,
which
is
a
conference
center
around
ci
and
cd
she's,
an
organizer
of
devops
days
in
chicago
who
has
experience
in
development
operations,
consulting
and
cloud
architecture.
B
C
All
right,
thank
you
all
for
coming
with
welcome
to
github
satellite,
I'm
so
happy
you're
able
to
join
us
from
wherever
you
are
in
the
world
today
and,
like
cheetah
said
my
name
is
sasha
osmaum
I
work
for
github.
You
can
find
me
on
github
as
the
vine
ops,
as
well
as
on
twitter
by
the
same
username,
and
I
have
some
pretty
excited
new
feature
to
talk
about
today,
but
before
that
I
also
actually
have
some
great
news
about
you.
C
So
congratulations,
actually
you
just
got
a
new
job,
and
that
is
completely
awesome
and
since
you're
a
developer.
That
means
that
you
get
to
do
coding
straight
away
right.
Well,
usually,
that's
not
how
it
works.
Usually,
first,
you
need
to
do
a
couple
of
things.
So,
first
you
need
to
get
a
developer
machine
and
that
might
take
a
little
while.
C
Then
you
need
to
install
your
developer
tools
and
even
if
your
machine
came
with
the
developer
tools,
pre-installed,
usually
you
need
to
do
a
lot
of
configuration
to
get
them
just
the
right
way
right
and
then,
of
course,
you
need
to
install
all
of
your
dependencies
and
these
sometimes
can
take
a
while.
Just
before
you
even
get
to
compile
your
project,
sometimes
you
get
to
spend
quite
a
while
getting
it
all
set
up.
So
how
long
usually
does
it
take
before
you
can
actually
write
your
first
line
of
code?
C
Well,
let's
say
if
it
took
two
hours
that
would
be
great.
Usually
offices
come
with
pretty
nice
coffee
machines
and
I'm
a
coffee
person.
So
I
don't
mind
an
extra
cup
of
coffee,
but
from
my
personal
experience
in
no
organization
did
it
take
two
hours
for
me
to
just
be
able
to
get
started.
C
Maybe
it
takes
two
days:
that's
okay.
I
can
consume
a
little
bit
more
coffee,
maybe
read
a
handbook,
and
you
know
understand
the
organization
better,
that's
great,
but
sometimes
we're
getting
more
like
into
two
weeks.
That's
a
more
realistic
time
frame,
and
by
that
time
I'm
like.
Oh
wow,
I'm
consuming
a
lot
of
coffee
without
actually
contributing
anything
of
value.
C
To
my
projects
that
I'm
supposed
to
be
working
on
right
and
then
sometimes
in
some
organizations
it
can
actually
even
take
longer
for
you
to
even
get
productive,
and
this
is
a
problem
that
a
github
we've
been
thinking
about
for
a
while,
and
this
was
a
dream
to
enable
developers
to
work
from
anywhere
and
just
be
able
to
get
started
right
away
right.
So
today,
if
you
went
to
natsuki
note,
you
might
already
know
what's
coming
up,
but
today
we
have
a
solution
to
that
problem
and
that
solution
is
called
codespaces.
C
So
codespaces
is
cloud-based
full
powered
developer
environment,
which
you
can
work
on
from
anywhere
inside
your
browser.
It
is
hosted
by
github
and
powered
by
vs
code,
and
you
can
bring
all
of
your
dependencies
and
all
of
your
tools
right
with
you.
So
you
can
get
productive
right
away,
and
that
sounds
amazing,
but
it
also
kind
of
sounds
like
magic,
so
so
that
you
believe
me,
I'm
going
to
actually
demonstrate
some
of
that
goodness.
C
So,
let's
get
into
a
demo
and
I'm
going
to
do
the
demo
live
so
hopefully
it
all
works,
just
fine
all
right.
So
let
me
go
right
here,
so
my
co-worker
matt
has
been
working
on
this
application
where
he
has
written
some
haikus
for
his
dog
and
I've
been
meaning
to
contribute
to
that
application
for
actually
a
little
while,
but
I
kind
of
haven't
gotten
around
to
it.
C
So
this
will
just
take
us
a
moment
if
you're
starting
from
scratch,
it
may
take
us
a
little
bit
longer,
but
since
we
already
have
one
we're
just
starting
it
up,
so
all
right.
We
landed
right
here
and
you
can
see
it's
a
simple
node
application.
So
since
I
want
to
make
a
change
usually
I
just
would
like
to
get
started
by
seeing
if
the
app
really
works.
C
So
I'm
just
going
to
come
into
the
terminal
and
do
node
non-start,
and
then
I
can
browse
to
my
remote
explorer
from
right
here
and
see
that
we
have
forwarded
port
3000
for
this
application.
So,
let's
see
if
I
can
browse
right
to
it
all
right,
this
is
cool.
So
this
is
a.
This
is
matt's,
lovely
dog.
C
It's
amazing
and
I
think
it's
enjoying
quarantine
quite
a
bit,
so
I'm
gonna
add
a
haiku
now
for
on
for
june,
so
she
can
have
a
new
friend,
so
I'm
gonna
come
into
haikus
and
I'm
going
to
make
a
change
right
here,
so
bear
with
me
one
second:
while
I
bring
in
a
new
haiku
all
right,
there
we
go
and
then
you
will
notice
that
on
all
the
haikus
came
with
images,
so
we
probably
need
an
image
to
go
with
it.
C
C
So
we
got
it
right
here,
so
if
you
notice,
I
just
had
a
full
experience
of
developing
code
right
online
right
in
my
browser
I
didn't
have
any
to.
I
didn't-
have
to
install
any
tools,
I'm
in
all
of
my
application.
Just
worked
right
away.
So
to
me
this
is
amazing,
and
this
means
that
you
can
do
so
many
things
without
actually
owning
a
super
powerful
developer
machine.
So
let's
just
go
back
into
the
presentation
and
talk
a
little
bit
about
on
the
use
cases
that
we
could
potentially
address
with
code
spaces.
C
Maybe
it's
just
an
upgrade
of
a
version
and
it
would
really
take
just
a
minute
or
two
and
you
would
like
to
contribute
it
right
there,
but
you're
unable
to
do
that,
because
you
don't
have
your
developer
machine
with
you.
Well
with
code
spaces,
you
are
able
to
contribute
right
from
your
browser
from
absolutely
anywhere.
Also,
if
you
are
in
a
country
where
you
might
not
have
access
to
strong
developer
machines,
you
can
have
that
with
codespaces.
So
long
as
you
have
access
to
the
internet
into
the
browser.
C
C
I
might
be
developing
something
on
the
branch
and
my
changes
might
not
be
in
a
good
shape
to
commit
yet
and
then
I
get
a
ping
from
a
coworker
asking
me
to
actually
go
and
review
his
code,
so
it
can
go
into
production,
and
I
I
am
unable
to
review
that
pull
request
or
switch
a
branch
or
make
any
changes
there,
but
with
code
spaces
I
could
actually
just
go
into
a
separate
environment
and
contribute
anything
that
I
needed
and
then
of
course
conflicting
dependencies.
C
So
maybe
I
have
a
package
version
that
conflicts
between
two
projects
that
actually
happens,
and
it
gets
very
hairy
to
deal
with
that
on
a
single
machine,
or
maybe
I
just
don't
want
to
install
a
mongodb
driver
on
on
my
local
machine
right
with
codespaces.
I
can
do
this
without
actually
polluting.
C
This
product
is
now
in
beta,
and
so
you
are
able
to
sign
up
today
for
the
beta
and
then,
if
you
do,
you'll
be
able
to
just
come
in
into
your
familiar
github
landing
page
for
a
repository
and
getting
to
open
with
code
spaces,
and
then
it
will
automatically
spin
up
a
new
code
space
for
you
and
it
will
automatically
spin
up
a
new
container
so
that
there
is
a
default
image
and
it
will
provision
it
for
you.
So
you
don't
actually
have
to
do
anything.
C
So
it
will
do
a
spin
up
screen
for
a
minute
and
then
you
will
land
in
a
page
that
looks
approximately
like
this
right.
So
without
any
configuration
I
don't
have
anything
in
here.
That
is
very
interesting.
It's
just
a
very
simple
node
application,
I'm
I'm
all
about
simple
node
applications
today,
so
let's
just
do
another
demo
of
something
that
we
can
do
with
codespaces.
C
C
So
I'm
going
to
explore
a
little
bit
of
the
things
that
you
can
do
with
this,
so
you
will
notice
that
there
is
a
dev
container
folder
in
here
and
then
in
here
we
have
a
couple
files,
so
we
have
a
docker
file
and
in
this
case
I'm
just
pulling
a
microsoft
container
image.
Then
I'm
configuring
node
user.
So
I
don't
have
to
run
with
a
default
route
and
then
I
am
just
installing
a
single
dependency.
C
I'm
planning
to
use
my
sql
in
this
application,
so
I'm
just
installing
it
in
the
container
so
that
it's
installed
in
my
developer
environment,
and
so
I
could
bring
all
of
my
dependencies
bake
them
into
a
docker
image
that
I'm
using
and
then
use
them
in
my
application
and
then,
more
importantly,
there
is
a
dev
container
file,
so
I
can
get
configuration
set
up
here
as
well.
So
I
have
the
docker
file
configured
so
which
docker
file
I'm
looking
at.
C
I
have
an
app
port
that
is
open
and
I
don't
have
to
open
any
ports,
but
if
I'm
opening
a
port
so
in
this
application
I'm
opening
3000.,
then
I'm
configuring,
which
remote
user
I'm
going
to
run
with
I'm
and
then
I'm
configuring.
What
my
bash
is
so
another
thing
I
can
do
is
to
choose
a
post,
create
command
so
for
the
postgrade
command,
and
you
can
see
that
I
can
run
multiple
ones
or
I
can
run
a
script,
but
I
can
basically
do
npm
install
or
in
this
case
I'm
installing
nodemon.
C
So
I
can
monitor
changes
right.
So
my
app
when
it
starts
up
when
the
code
space
comes
fully
baked
with
things
I
need
and
then
of
course
you
can
install
vs
code
extensions.
So
all
your
favorite
vs
code,
extensions
that
you
know
and
love
can
come
with
you
into
this
online
editor
because
it's
powered
by
vs
code
and
then,
if
you've
been
paying
attention.
You
might
have
also
noticed
that
my
terminal
here
is
a
little
bit
custom.
So
it's
actually
like
very
cool,
because
I
can
also
do
interesting
brains
like
this.
C
So
let
me
just
do
it
crack
out
I'm
new
branch,
so
you
see
that
I
automatically
see
which
branch
I'm
actually
currently
on,
which
is
super
helpful
for
me
to
know
which
I'm
going
to
contribute
into
so
that
I
don't
end
up
on
installing
contributing
to
a
wrong
branch.
And
then,
where
this
configuration
comes
from
is
a
public
repository.
Oh
all
right,
maybe
it
will
go
away
in
a
second,
it's
a
public
repository
called
dot
file.
C
So
I
have
my
dot
files
in
here
and
I
have
a
batch
prompt
script
in
here
which
configures
what
my
prompt
actually
looks
like.
So
I
have
all
of
my
things
configured
so
which
branch
I'm
looking
at
and
what
color
and
what
what
comes
up
as
a
prompt.
So
if
you
have
a
dot
files,
repo
that
configuration
can
come
fully
with
you
and
it
spins
up
automatically
with
code
spaces
and
then
another
super
cool
thing
that
I
can
do
right
from
here
is:
I
can
launch
a
debugger.
C
So
let
me
just
switch
to
a
file
that
might
have
something
more
interesting
to
look
at
so
and
I'm
gonna
actually
put
a
breakpoint
on
here
and
then
I'm
gonna
click
on
launch
debugger
all
right,
so
it
launched
a
debugger
and
I
can
actually
go
to
this
url
from
right
here.
C
C
Okay,
so
it
stopped
at
a
breakpoint,
let's
see
all
right,
so
it
did
stop
at
a
breakpoint,
and
I
have
js
data
in
here.
So
that
doesn't
help
me
very
much.
What
I
really
would
like
to
see
is
the
characters,
and
I'm
watching
that
variable.
So
let's
just
make
one
step
all
right.
So
now
I
got
the
characters
and
I
can
browse
what
is
happening
in
the
character.
So
I
can
see
that
the
data
is
correct
when
it's
coming
through
and
then
I
just
let
it
run.
C
C
Okay,
so
we
let
it
run
so
it
responded
correctly.
So
this
way
we
can
start
a
debugger
fully
from
fully
from
our
code
space
and
actually
have
a
fully
powered
editor
in
our
browser.
Again,
I
didn't
have
to
get
anything
installed.
I
didn't
have
to
do
anything
specific
and
I
just
had
the
whole
thing
working
from
my
browser.
So
with
that,
let
me
just
switch
back
to
my
presentation,
real
quick.
C
Okay,
so
just
to
reiterate
everything
that
we've
talked
about,
you
can
configure
all
your
project
dependencies
directly
in
your
github
repository,
so
that
it
spins
up
directly
with
everything
that
you
need
and
so
as
an
open
source
maintainer.
For
instance,
you
get
to
configure
your
project
dependencies
so
that
people
who
come
to
contribute
can
spin
up
easily
instead
of
spending
days
on
setup
right
and
then
you
can
contribute
from
anywhere
anytime.
C
So
if
you
have
a
browser
and
if
you
have
an
internet
connection,
you'll
be
able
to
spin
up
code
spaces
and
contribute
to
your
favorite
project.
So
what
can
you
do
today?
C
Well,
first
of
all,
you
can
check
out
the
sign
up
for
beta
link,
and
so
you
can
read
a
little
bit
more
about
code
spaces
and
sign
up
for
beta
and
then
on.
You
can
also
read
our
docs
about
code
spaces
and
then,
last
but
not
least,
you
can
read
about
vs
code
dev
container
docs,
so
that
feature
is
available
today
in
preview.
So
you
can
start
playing
with
this
code.
Dev
containers
right
away,
so
you
kind
of
ramp
up
on
on
code
spaces.
That
way,
all
right
so
with
that.
B
Thank
you
sasha.
I
really
really
love
that
super
pumped.
It's
almost
like
cut
spaces
is
like
a
dream,
come
true,
world-class
development
environment
in
the
browser
with
powered
by
vs
code.
It
comes
pre-configured
for
your
environment,
all
your
dot
files,
all
your
git
config.
Everything
is
there.
If
you're
in
a
country
where
you
might
not
have
access
to
a
strong
machine
with
scope
spaces,
you
can't
do
that
as
long
as
you
have
access
to
an
internet
and
with
this
dev
container
thing,
this
is
going
to
usher
in
a
new
revolution.
B
The
same
kind
of
revolution
we've
seen
in
productions
with
docker,
we're
going
to
see
the
same
revolution
in
development
and
remember
everybody.
We've
gotten
some
of
your
questions,
teed
up
and
all
ready
to
go,
and
our
first
question
is
gonna.
Come
from
I'm
looking
at
it
now
all
right.
We've
got
first
questions
matthew,
we're
nine
get
abuser,
matthew,
redney,
says
coke's
racist
seems
too
good
to
be
true
sasha.
He
wants
to
know.
What's
the
catch?
Is
there
a
couchsurfer.
C
B
A
I
don't
think,
there's
a
catch.
I
think
it
might
be
magic,
but
if
it
works
I'll
take
it.
One
thing
I
wanted
to
bring
up
is
funky
penguin
asked
or
stated.
I
hope
this
will
work
on
an
ipad
with
vs
code,
slash
code,
server,
not
doing
copy
and
paste
nicely
on
ipad
or
oh,
what
ipad
os
on
safari.
So
I
have
the
same
questions.
I
want
to
use
this
on
my
ipad.
So
what's
your
what's
your
thought
process
there
sasha.
C
Yes,
so
if
you're
able
to
spin
up
a
browser,
you
should
be
able
to
use
codespaces
from
anywhere
anywhere,
including
your
ipad
and
again,
if
you
try
it
during
the
beta,
give
us
your
feedback.
If
you
see
any
issues,
the
other
thing
that
I
haven't
really
had
a
chance
to
mention
is
that
you
could,
if
you
have
a
developer
machine
and
you
have
vs
code
installed,
you
can
actually
connect
from
to
a
codespace
from
your
desktop
and
actually
also
run
in
a
development
environment.
That
way,
so
it's
an
additional
bonus.
C
But
again
you
don't
have
to
have
vs
code
installed
at
all
for
this
to
work.
B
All
right,
github,
user
hansel,
hence
hence00,
says
how
does
codespaces
handle
secrets,
for
example,
you're
using
a
codespace
to
write
your
code
and
to
debug
the
code
running.
You
want
to
provide
a
secret
via
environment
variable
or
something
similar,
but
you
don't
want
that
secret
to
be
persisted
anywhere
online
as
per
one
of
the
previous
talks.
D
C
So
I
I
think
in
terms
of
checking
it
in
the
regular
github
process,
in
terms
of
checking
that
secrets
haven't
been
changed,
they
haven't
been
checked
in
is
gonna
kick
in,
so
it
isn't
specific
to
code
space
and
in
terms
of
giving
its
secrets,
I
think
you
should
be.
You
know
mindful
about
what
you
save
in
public
variables
and
configurations.
A
Yeah
yeah:
I
want
to
dive
deeper
on
that
hopping
on
the
persistencies.
So
how
does
how
does
code
spaces
handle
persistence
with
your
databases
and
things
you're
setting
up
are
those
living
forever
until
you
press
a
button
or
do
they
kind
of
disappear
after
x,
amount
of
time.
C
Yeah,
so
they
go
into
suspension,
so
obviously
it's
not
going
to
keep
spinning.
So
if
you
are
not
using
it
for
about
half
an
hour,
it's
going
to
suspend,
but
it's
going
to
save
the
state
and
so,
for
instance,
even
if
you
have
not
committed
code,
it's
still
going
to
be
safe
there
unless
you
delete
it.
If
you
delete
it,
it
goes
away.
So
again,
if
you
have
code-
and
you
want
to
commit
it
to
a
repository-
obviously
you
want
to
go
to
through
commit
and
pull
requests
and
all
the
normal
process.
B
B
Questions
coming,
okay,
so
there's
a
user.
I
cannot
pronounce
the
name.
Anger
in
this
scissors.
Is
the
codespace
config
persistent
across
repos,
or
is
this
specific
to
each
repo?
For
instance?
Let's
say
I
use
a
specific
set
of
problems
most
of
the
time
do
I
need
to
configure
it
in
each
of
the
code
space
instances,
or
is
this
just
persisted
across
all
of
them.
B
Me
I'll
read
it
again:
let's
just
read
it
again
so
that
we're
all
on
the
same
page
right
is
the
code
spaces
config
persistent
across
repos,
or
is
this
specific
to
each
repo?
For
instance?
Let's
say
I
use
a
specific
set
of
programs
most
of
the
time
do
I
need
to
configure
it
in
each
codespace
instance.
C
Specific
to
each
repo,
I
am
not
able
to
answer
if
we're
looking
into
doing
it
across
different
repos,
so
that
like
to
save
you
time
in
terms
of
like
across
organization
right
now,
what
it
is
it's
specific
to
repo.
So
if
you
had
the
same
configuration,
then
you
you
need
to
be
basically
copying
it
over
to
a
different
one,
just
because
a
lot
of
times
you
do
want
something
different
in
a
different
repository
right
and
it's
easy
enough
to
basically
bring
in
the
same
configuration.
A
C
Yeah,
so
I
don't
think
I
even
take
full
advantage
of
them
myself
right,
but
you
can
configure
certain
things
that
you
like
and
then
they
will
basically
just
happen
across
all
of
your
repositories
right,
so
you
don't
have
to
keep
reconfiguring
the
same
environment
over
and
over.
So
as
a
for
instance,
that
terminal
prompt
like
I
I
used
to
actually
every
single
computer
that
I
get
I
used
to
you
know,
set
up
the
terminal
prompt
exactly
the
way
I
like
it
now.
I
don't
have
to
do
that.
C
So
I
think
you
know
it
especially
if
it's
all
open
source.
So
if
you
copy
over
and
fork
it
from
somebody,
you
can
get
started
really
really
quickly.
D
B
B
C
So
it
is
an
excellent
question.
I
don't
have
an
answer
to
that.
But
alison
who
was
in
the
keynote
today
is
also
answering
the
question
in
the
discussion,
so
she
might
be
able
to
answer
that
question
for
you.
B
A
Yeah
yeah,
so
it
seems
that
code
spaces
is
going
to
be
absolutely
simple
to
use
on
the
kind
of
consumer
side
of
things.
But
what's
it
like
setting
up
the
configuration?
Is
that
that
pretty
simple
require
a
little
bit
more
of
expertise.
C
Yeah,
so
did
you
see
me
like
I,
I
could
get
started
right
away
from
nothing
at
all,
so
it
as
long
as
you
get
access
to
it.
You
can
get
started
by
simply
clicking
a
button.
Now,
if
you
want
to
figure
out
something
quote,
unquote
smarter
to
do
with
the
code
space
and
and
have
your
specific
configuration
set
up,
then
probably
you
need
to
read
the
docs.
C
So
maybe
that's
a
good
idea
to
have
these
links,
so
the
first
link
is
where
you
can
say:
request
early
access.