►
From YouTube: Tabnine and GitLab Integration 20220503
Description
Tabnine presented an overview and demo of their product and it's integration with GitLab.
A
B
Everyone
to
another
episode
of
cs
skills
exchange.
We
actually
have
a
few
guests
with
us
today
from
tab,
nine
and
I'll,
give
them
a
chance
to
introduce
themselves
and
then
they'll
go
into.
I
believe
they
have
a
presentation
for
us
as
well
as
a
demo,
so
I'll
brandon,
I
guess
I'll.
Let
you
kick
it
off
and
get
us
started.
C
Perfect,
perfect,
well
I'll.
Do
quick,
intros
and
hey
a
number
of
y'all,
it's
good
to
see
y'all
again,
former
get
labber
used
to
build
out
a
bunch
of
the
alliances
and
channel
a
bunch
of
fun,
open
source
stuff
for
about
three
three
and
a
half
years
with
three
years
with
with
git
lab
about
a
year
ago,
moved
over
and
to
a
little
company
that
is
called
tav9,
which
we're
going
to
get
to
chat
a
bunch
today,
and
the
world
is
small
and
so
about.
C
Six
months
ago
the
world
of
ai
for
development
came
full
circle
and
we
ended
up
in
the
same
boat,
because
github
launched
something
called
co-pilot,
so
I'm
gonna
go
a
little
bit
today.
Goals
today,
as
in
the
dock,
are
certainly
give
a
little
bit
of
like
what
is
ai
for
code.
How
does
it
sort
of
fit
in
we've
done
some
great
integrations?
We
have
a
really
fun
road
map
of
other
fun
stuff
that
we're
going
to
keep
doing
together.
So
that's
really.
C
My
goal
is
to
give
you
guys
some
context
on
what
it
is
a
fun
demo,
so
you
can
get
to
see
it.
We're
going
to
give
you
all
a
whole
bunch
of
free
access
to
play
with
it
all
you
want
with
you
or
your
customers,
and
you
know
what
we
expect
and
why
we
wanted
to
get
a
little
bit
ahead
of.
This
is
obviously
curious
to
see
if
you
are
hearing
anything
about
copilot.
Clearly
we
do,
but
that's
because
we're
there's
a
divopley.
C
It's
us
co-pilot
so
just
want
to
get
some
good
education,
for
you
all
make
sure
you
know
that
we're
here
as
a
resource
and
run
from
there
and
as
always
any
questions
you
all
bend
down
this
more
times.
We've
I've
been
doing
this
many
many
times.
Add
all
the
questions
into
the
doc.
So
we'll
get
to
that,
and
I
think
that's
about
it
marshall.
Do
you
want
to
do
quick,
intro
near
your
side,.
D
Hi,
yes,
thank
you
for
having
us
today.
My
name
is
marshall.
Young
I've
worked
with
tab
nine
since
january.
I
do
customer
success,
solutions,
architect,
engineering.
D
You
know
all
of
the
things
that
need
to
be
done
in
a
small
startup,
so
I'm
happy
to
be
here
I'll,
be
giving
you
guys
a
short
demo
today
of
a
couple
of
things.
So
hopefully
you
can
kind
of
get
an
idea
of
how
the
tool
works
if
you're
not
already
familiar
with
how
ai
tools
work
in
the
ide.
So
thank.
C
You
I'm
going
to
do
quick
screen,
share
and
grab
there,
so
uber
simple
from
this
standpoint,
real
straightforward!
These
are
what's
driving.
Why
aaa
for
software
development
matters?
These
are
all
things
you
all
know.
Well,
common.
A
lot
code
continues
to
be
comment
always
has
been,
but
has
become
more
common
and
more
reusable
a
lot
of
it
ton
of
code
online,
so
machine
learning
models
require
a
lot
of
training
data
to
build
them.
Having
that
available
is
really
important.
C
So
that
has
always
that's
been
helpful
ml
models,
particularly
we're
going
to
be
talking
transformer
models
if
you
really
want
to
geek
out
on
this,
like
add
I'd
like
to
geek
out
and
we'll
send
you
all
sorts
of
fun
stuff
to
read
about
it
by
all
means,
when
I
spent
a
bunch
of
time
around
uniqueness
of
why
these
models
work
or
what
came
through
them,
but
suffice
to
say
about
two
and
a
half
years
ago,
transformer
models
became
real
and
capable
of
executing
and
doing
what
we're
starting
to
see
today
and
then
we've
just
seen
a
big
explosion
from
there
and
then
the
last
piece
which
we
all
know
is
there's
never
enough
developers.
C
So
that's
kind
of
the
issues,
some
fun
stuff,
fun
fact
we'll
get
into
how
we
get
this
data,
but
last
month
tab
nine
wrote
as
with
our
base
our
calculations
about
point
eight
four
percent
of
the
world's
code,
so
we're
in
a
huge
number
of
developers
and
we're
writing
a
whole
bun.
Helping
developers
write
a
whole
bunch
of
fun
code
now,
you'll.
Note
that
that's
way
below
what
our
real
goal
is,
which
is
what
a
double
software
productivity,
so
4.84
we're
like
50x
too
small.
C
So
we
got
plenty
of
work
to
do
but
pretty
excited
on
where
that
stands
to
get
there.
We
see
three
primary
things:
we
gotta
do
one
you
gotta
have
developers,
love
you
and
the
end
of
day
is
that's
probably
the
hardest
turtle
to
get
over.
Do
developers
love
the
tool
because
they're
not
gonna,
use
something
they
don't
like.
They
just
won't
use
it.
You
can't
force
it
down
their
throats,
so
the
short
answer
is
absolutely:
we've
got
millions
of
developers.
C
We
are
rated
one
of
the
very
top
tools
in
all
the
marketplaces
id
marketplaces,
so
this
is
one
that
we're
never
done
with.
So
maybe
I
shouldn't
say
done
because
it's
never
done,
but
we
are
definitely
the
biggest
platform
for
ai
development
out
there
right
now
and
we've
got
a
lot
of
happiness.
So
that's
awesome.
Second
stage
we're
in
is
hey.
How
do
we
help
get
that
to
teams
and
organizations
enterprises,
not
just
individual
developers,
but
also
teams
and
enterprises?
C
And
that's
we're
well
done
that
that
phase
with
thousands
of
paying
teams
that
use
tab,
nine
for
their
teams
and
on
custom
models
and
then
the
last
one
which
is
probably
won't,
spend
a
lot
of
time.
But
it's
really
interesting.
There's
a
long
term.
There's
a
big
need
in
software
development
to
help
companies
and
we'll
just
be
very
blunt,
easy
use
case.
C
Gitlab
has
2500
to
3
000
external
contributors.
That's
amazing,
but
contributing
into
the
gitlab
code
base
is
tough.
It's
got
a
huge
hurdle
to
get
from.
I
want
to
contribute
to.
I
can
contribute
and
the
ability
to
get
up
that
very
quickly
is
actually
something
we've
already
built
out
and
are
working
with
get
lab
on.
So
we'll
spend
a
little
time
there,
probably
less
than
the
others,
I'm
going
to
do
little
context
and
then
throw
it
to
a
demo,
because
I
think
it's
helpful
to
have
a
demo
tab
design.
C
The
ease
of
it
is
it
actually
feels
like
autocomplete
great
autocomplete
means
easy
adoption.
A
developer
can
be
up
and
running
with
tab.
Nine
in
you
know
three
to
five
minutes.
Not
complex
fits
right
in
the
world.
They're
already
doing
the
difference,
though,
is
this-
has
been
around
autocomplete's
been
around
forever
continues
to
be
around,
but
autocomplete
has
always
been
around
syntax
and
you'll,
see
that's
what
your
you
get
today
versus
intent.
C
So
what
I
wanted
to
do
on
that
is,
give
you
a
little
context
of
how
it
fits
in,
and
I'm
going
to
throw
it
to
marshall
on
the
demo.
So
you
get
to
see
in
you
get
to
see
intent
in
action.
A
little
idea
of
how
tab
9
fits
git
lab.
We
fit,
obviously
in
an
id
which
isn't
directly
a
a
gitlab
product,
but
we
also
integrate
directly
into
the
source
code
repositories
at
gitlab.
C
So
that's
where
we
fit
and
we're
also
working
on
long-term
next
steps
in
enabling
that
into
the
merge
request
so
any
case
we're
not
spending
a
bunch
of
time
there
that
this
is
sort
of
how
we
fit
into
it.
I'm
gonna
throw
a
demo
over
to
marshall.
So
let
me
stop
sharing.
D
All
right,
hopefully,
everybody
can
see
my
screen.
I've
made
it
a
little
bigger,
but
he
always
complains
that
my
screen's
too
tiny,
but
I
do
like
the
giant
4k
screen.
So
if
everybody
can
see
that,
I
can
blow
it
up
a
little
more,
but
hopefully
that's
at
least
visible.
One
of
the
things
I
would
like
to
start
off
speaking
about
is
to
declare
to
you
guys
that
I'm
not
the
world's
best
programmer.
I
like
to
mess
around.
I
like
to
make
mistakes,
I'm
not
the
best
world's
best
programmer.
D
One
of
the
things
I
always
appreciate
when
somebody
gives
me
some
code
to
review
or
to
use
in
in
a
project
is
that
things
are
well
commented
right.
I
think
the
idea
behind
having
very
solid
detailed
comments
and
explanations
in
the
code
itself
is
a
way
of
maintaining
both
hygiene
as
well
as
reduced
organization.
D
One
of
the
things
we've
really
pushed
with
the
newer
model
that
we've
rolled
out
for
tab.
Nine
is
the
ability
to
understand
english
language
in
comments
which
oftentimes
gives
the
tool
something
a
little
bit
more
specific
about
what
you
intend
to
do
in
the
code
and
helps
guide
the
algorithm
in
giving
you
what
you
want.
So
while
it
does
require
typing
a
bit
more,
I
don't
think
anybody
who
actually
puts
hands
to
keyboard
and
maintains
or
builds
code
is
ever
going
to
really
complain
about
too
many
comments
explaining
precisely
what
the
code
does.
D
So
what
we're?
What
I'm
going
to
demonstrate
for
you
here
is
just
a
really
simple,
very
basic
concept
of
how
tab
9
understands
context
through
comments
and
then
gives
you
multi-line
completions
to
help
you
do
that
a
little
faster.
So,
as
you
can
see,
I'm
working
in
python
today,
I'm
a
python
person
I
always
have
been,
but
we'll
start
along
here
and
see
how
it
flows
through
what
I'd
like
anybody
to
do
at
any
point
in
time
is
just
raise
your
hand
or
speak
up
and
ask
questions
about
how
it
works.
D
I'll,
give
you
some
understanding
of
how
the
algorithm
functions.
If
we
have
enough
time,
I
will
swap
over
to
a
more
specific
example,
which
shows
how
somebody
who
might
be
a
bit
more,
I
would
say,
of
a
experienced
coder-
might
use
the
tool
itself
and
after
this
demo
I'll
talk
to
you
a
little
bit
about
how
I've
seen
different
types
of
programmers
from
junior.
All
the
way
to
you
know,
senior
very
experienced
programmers
use
the
tool
because
everybody
uses
it
a
little
bit
differently.
D
So
in
this
case,
I'm
going
to
type
a
simple
comment
here,
so
I'm
going
to
say,
import
libraries
and
you
can
see
it's
actually
doing
some
prediction
itself.
I
don't
usually
take
predictions
or
sometimes
they're
correct,
but
really
I'm
typing
specifically
about
what
I
want
to
do
in
the
next
code
block
here.
So
to
display
graph
information.
D
I
want
to
just
reinforce
some
libraries
in
here:
I'm
going
to
hit
enter
and
then
it's
going
to
say
all
right,
based
on
displaying
graph
information,
it's
going
to
pull
these
libraries
as
a
set
of
libraries.
That
would
give
you
what
you
need
in
order
to
display
graph
information,
and
so
those
are
are
pretty
easy
to
access,
and
it
gives
you
some
code
block
here
and
then
I
would
say
all
right.
What
I
want
to
do
next
is
maybe
something
as
simple
as
create
a
random
everybody
likes
doing
this
number
generator.
D
That
seems
to
be
a
common
thing
for
for
code
and
between
zero
and
one
that's
often
pretty
common,
too
and
so
I'll
hit
enter,
and
it's
going
to
say
all
right,
I'm
going
to
use
the
numpy
random
state,
and
it
also
is
contextually
aware
of
the
fact
that
I
already
asked
it
that
I
would
want
to
display
that
information.
So
the
tool
itself
says:
well,
you
probably
want
to
plot
whatever
you
generated
previously,
so
it
actually
generates
the
comment
and
brings
in
the
code
to
do
the
plotting
of
that
information
directly
after
that.
D
So
to
show
you
why
that's
important,
I
think
we
have
to
understand
exactly
how
machine
learning
algorithms
work
and
I'm
probably
going
to
explain
this
a
little
bit
more
in
detail
that
most
folks
on
the
call
necessarily
need
but
understand
that
machine
learning
isn't
just
return
based
on
what
was
simply
typed
before
right.
There's,
there's,
definitely
a
there's
an
art
form
to
the
complexity
of
the
returned
answers
here,
and
you
can
get
much
longer
completions
or
much
shorter
completions,
but
oftentimes.
The
way
the
algorithm
is
trained
really
makes
a
difference.
D
It
would
be
more
specific
than
that,
especially
if
you're
writing
for
a
customer
or
for
your
internal
teams,
but
ultimately
the
the
model
itself
has
to
be
tweaked
and
trained
on
specific
areas
of
code
in
order
to
make
it
better
so
think
about
going
to
school
right,
you'll,
learn,
general
understanding,
so,
mathematics,
you
know
algebra
help,
you
understand
some
classes,
but
in
order
to
understand
organic
chemistry,
you
know
algebra,
isn't
really
a
tool
to
do
that.
You
need
to
understand
organic
chemistry.
D
Read
the
textbooks
go
to
class
and
learn
that
in
some
ways
we
do
the
same
thing
with
the
algorithms
ourselves
right,
one
of
the
powers
the
tab
9
has
and
I
really
enjoy.
This
is
building
custom
models
for
particular
customers
that
are
looking
for
for
specific
answers
in
their
coding
needs.
So
we
can
build
models
that
are
python
based,
ruby
javascript,
you
name
it.
D
We
have
30
some
languages
currently
and
those
can
be
tweaked
even
further
to
combine
languages
or
libraries
specifically
for
a
for
a
particular
task
along
those
lines,
I'm
going
to
jump
really
quickly
to
a
different,
a
different
python
code
here,
and
this
is
taken
from
aws,
it's
their
python
cdk
for
creating
a
rest
api
right.
I
use
this
demonstrate
to
the
folks
who
oftentimes
in
the
devops
world.
They
do
things
that
are
very
repetitive,
and
this
is
a
more
specific
model
that
is
aimed
directly
towards
an
experienced
devops
engineer.
D
What
I'll
do
here
is
I'll
start
doing
some
of
the
code
that
creates
the
rest
api
itself,
but
what
we
want
to
look
at
is
I
have
a
lot
of
the
tools
that
are
sort
of
natively
built
into
vs
code
as
air
quotes
there.
D
So
what
we
can
see
is
what's
being
suggested
by
tab
nine
versus
what
sort
of
are
the
syntax
suggestions
that
would
come
from
the
built-in
tools
in
vs
code,
as
you
would
get
if
you
download
it,
and
so
in
this
case
right
we
would
say
the
completion
is
trying
to
say.
I
I
understand
the
comments
put
up
above
so
I'm
just
going
to
say
I'm
creating
a
rest
api.
D
Okay,
so
it
understands
that
I
want
to
create
it
first,
and
this
would
be
something
to
say:
okay,
it
knows
that
I
want
the
api
name
to
be
in
there
right
and
in
this
case
I'll
return
that,
and
it
also
gives
the
ability
to
get
some
like
information.
D
And
you
can
notice
here
by
the
way
and
I'll
just
on
the
screen
right.
So
if
I'm
just
logging
some
info
here,
it
understands
based
on
the
rest,
api
capitalization,
because
it's
looking
through
the
comments
here
that
that
might
be
something
that
I'm
interested
in.
In
doing
so,
it's
going
to
say
all
right.
I
understand
that
you
want
capitalized,
that's
how
you
wrote
it
in
the
comment.
I'm
also
understanding
that
I'm
creating
the
api
name
and
I'm
returning,
even
though
that
really
isn't
part
of
the
code
that
I
wrote
already.
D
So
it's
both
contextually
aware
of
what
you
wrote
as
well
as
looking
in
the
code
and
the
model
for
the
amazon
cdk
in
order
to
create
something,
that's
very
static
and
standard,
with
the
procedures
that
amazon
calls
out
as
best
practices
for
working
with
devops
in
python
for
aws.
That's
an
example,
very
specific
model.
So
with
that,
I
just
want
to
stop
here
and
see
if
there's
any
questions
and
and
if
not,
we
can
hand
it
back
over
to
brandon.
E
Yeah,
okay,
I've
partially
typed
it,
but
I'll
just
verbalize
first.
So
thank
you!
So
far,
it
looks
very
exciting
if
I
was
to
think
about
integrations
and
think
about
integrating
this
inside
the
gitlab
web
interface,
so
much
requests
or
web
id
whatever.
Are
there
relevant,
sdks
or
apis
that
tab?
Nine
already
has
today.
C
So
I'm
gonna
add
some
links
here
to
and
actually
I
think
I'm
ask
mike's
on
so,
while
I'm
presenting
it'll
be
slightly
delayed,
we
have
a
shared
development
and
roadmap
of
areas
that
we
want
to
integrate.
So
the
initial
marshall,
if
you're
good
you
want
to
flip
over,
give
me
control
here
for
a
sec
I'll
go
back.
C
The
short
answer
is
yes,
so
well,
I
should
say:
we've
got
a
road
map
of
where
else
we
would
love
to
be
doing
that
integration,
the
the
next
one,
which
will
take
a
fair
amount
of
joint
work
to
do
well,
but
it's
very
doable.
What
you
saw
here
is
tab
nine
as
a
coach.
So
if
you're
all
familiar
with
pair
programming,
the
idea
behind
pair
programming
and
what
tab
nine
focuses
on
in
the
ide
is
about
being
positive
reinforcement.
So
this
is
the
plus
and
minuses
for
a
developer.
C
There's
both
there's
a
lot
of
red
x's.
You
did
something
wrong
that
end
up
in,
for
example,
an
mr
right
and
you
could
use,
and
that's
your
spot
on
this
technology
we
could
use
to
create,
mrs
in
or
in
in
the
pipeline,
not
a
problem.
That's
something
that
that's
kind
of
the
next
step,
most
of
where
tab
nine
has
mostly
focuses.
How
do
we
shift
those?
What
would
otherwise
be
an
mr
all
the
way
left
so
that
it
becomes
something
that
is
your
a
positive
reinforcement?
C
So,
if
you
think
about
it,
generally
speaking,
our
goal
has
always
been
first
to
be
that
positive
reinforcement
to
a
developer
such
that
a
developer,
and
you
can
read
bunches
of
these
comments.
The
developer
says:
hey.
It
makes
me
better
coder,
oh
my
god,
it
read
my
mind.
That's
a
lot
of
what
we
want
to
focus
on.
So
short
answer
is:
yes,
you've
nailed
on
where
we're
going.
C
It
is
something
that
is
very
doable.
It
is
something
we're
going
to
need,
and
I've
already
got
a
bunch
of
work
already
listed
in
there
and
I'll
again
I'll,
put
the
links
into
the
issues
that
we're
off
and
running.
We
have
a
on
the
first
step
we
tackle
jointly
was
hey,
let's
first
just
get
the
max
amount.
Let's
give
ai
capabilities
to
the
get
lab
repositories
right
and
make
those
powerful
and
shift
those
left
right.
C
So
what
this
really
from
the
simplicity
of
what
we
have
today
is
about
getting
the
insights
that
are
already
in
your
repository
into
the
hands
of
a
new
developer
so
when
they
get
started,
and
so
that
was
kind
of
step,
one
in
terms
of
where
we're
headed
you're
spot
on
that
there's
a
lot
of
other
places
that
we
can
definitely
go
so
I'll
pause
stream.
I
could
go
deeper,
but
is
that
helpful?
For
now.
E
No,
it's
it's
really
good.
I'd
love
to
collaborate
and
work
together
on
a
concept
of
how
this
would
look,
so
we
don't
have
to
build
it
right
now,
but
just
work
on
a
concept
of
how
a
code
review
a
code.
Reviewer
can
use
tab,
9
to
suggest
improvements
to
somebody
else's
code.
That's
one,
and
maybe
a
related
question
would
be
would
be.
I
think
you
already
mentioned
this,
but
training
a
model
specifically
on
self-managed
instances.
So
only
looking
at
repos
belonging
to
a
certain
organization.
C
C
We
are
looking
the
next
step
on
that
is
hey
for
self-managed
developers.
We
have
a
couple
workarounds,
so
we
can
make
that
work.
If
you
have
a
customer,
you
want
to
work
to
do
that
with
we've
actually
had
some
customers
approached
us.
That
said,
hey
we
do
have
a
self-managed
we'd
like
to
build
a
model,
that's
something
we
can
work
with
today,
as
is
the
full
transparency,
the
biggest
challenges
in
gitlab.com.
C
There's
a
process
called
workhorse
that
allows
for
long-running
applications
that
doesn't
exist
in
for
a
self-managed
instance.
So
you'll
see
in
the
in
the
notes
that
we
have
in
here
on
the
which
put
links
up
to
the
issues.
That's
actually
one
that
we're
also
working
on
is
what's
the
right
way
to
integrate
that
for
a
self-managed
we
can
solve
that.
C
Today,
though,
we
have
easy,
workarounds
I'd
like
to
make
it
like
uber,
simple,
so
make
it
just
as
easy
as
what
we're
seeing
with
the
hundreds
of
users
and
companies
already
that
have
used
their
connect
to
their
gitlab.com
to
to
tab
nine.
So,
yes,
short
answer
is,
I
think,
we're
in
a
good
step,
but
we
got
plenty
more
fun
stuff
to
do
and
being
able
to
do
it
with.
You
would
be
awesome.
C
C
Where
is
that
data
coming
from-
and
mostly
this
is
give
you
a
context
of
just
like
this-
is
you
can't
solve
it
any
other
way
in
terms
of
really
pulling
the
best
data,
the
best
coding
practices
out
of
your
code,
so
I'll
go
through
this
kind
of
quick?
This
is
how
we
got
to
that
number
you're,
like
hey.
C
0.84
we
are
in
currently
we
have
just
under
a
million
monthly
active
users.
The
large
majority
large
majority
of
those
are
daily
active
users,
so
very,
very,
very
high
engagement
level
and
they're,
almost
they're
70
80
professional
developers.
So
this
is
sort
of
that
hey
we've
got
a
bunch
of
happy
developers
and
on
average
it's
writing
and
suggesting
about
34
of
their
code
that
they're
doing
basic
data.
You
can
link
on
it
if
you're
interested
it's
fun.
This.
E
E
C
We
talked
about
that,
but
if
you're
interested
in
kind
of
where
they're
at
already
in
a
bunch
of
companies
a
lot
of
them
full
transparency
we're
in
a
bunch
of
we're
in
just
about
every
company
on
the
planet,
as
individual
developers
we're
in
thousands
of
companies
with
smaller
teams,
we
obviously
are
gold
being
very
transparent,
continue
to
grow
that
in
where
it's
a
a
large
deployment
across
a
key
piece
of
the
entire
devops
platform,
so
tap
nine.
C
It
would
love
to
obviously
follow
the
lead
that
and
support
git
lab,
as
you
all
are
on
that
journey
as
well.
In
terms
of
where
we're
going.
This
is
obviously
sort
of
the
key.
If
we
go
back
to
y'all
have
been
through
the
fun
of
all
the
training
and
hey.
What
are
the
exact
problems
you
need
to
solve?
This
is
just
sort
of
a
a
journey
there
to
go
through.
I'm
gonna
spend
a
few
minutes
here
just
for
solution.
Architects,
like
what,
then,
what
do
we
have?
C
What
is
what
are
all
the
components
you
saw,
some
of
it,
you
saw
the
ide
pieces,
but
on
the
right
hand,
side
in
the
purple
box.
This
is
individual,
so
think
this
is
what
marshall
is
showing.
This
is
how
an
individual
experiences
code,
completions,
snippet,
suggestions,
simple
suggestions,
just
larger
code
completions
are
going
to
be
smaller,
it's
nuanced,
but
it's
fun
to
do
both
and
there's
a
lot
of
work
to
make
both
work.
There's
live
review.
In
fact,
you
might
have
seen
a
little
bit
of
this.
C
This
is
where,
if
you
open
up
a
a
in
your
id
a
set
of
code,
it
might
put
in
a
little
squiggly
line
with
yellow
that
says.
Yellow
you
know
highlight.
F
C
Says:
hey,
you
might
want
to
look
at
this.
The
code
that
you've
written
could
get
better
and
here
might
be
a
suggestion,
so
that
is
in
there
in
beta
part
of
exactly
where
steve
was
talking,
the
directions
is
it's
useful
for
code
search
now
I
want
to
be
sort
of
really
clear,
because
first
off
gitlab
has
great
code
search,
there's
code
search,
that's
very
specific,
like
I
want
this
snippet
of
code,
I
want
to
see
every
place.
It
exists,
there's
good
tools
for
that.
C
C
They
may
be
explicitly
different
for
a
very
good
reason.
They
may
very
well
not
be,
in
which
case
standardizing
those
is,
of
course,
you
know
quite
valuable.
We
talked
already
about
this
three
already
got
is
already
a
step
ahead.
Hey
you
know.
A
C
Pr,
mr
review
yeah,
absolutely
that's
a
place
that
is
in
beta
that
we
we've
already
got
out
and
played
with
a
number
of
places.
We
haven't
done
a
bunch
of
shipping
on
it
for
the
reasons
we'd
love
to
get
that
locked
in
with
gitlab,
but
this
is
something
that
we
even
have
some
some
good
beta
work
already
underway
that
we
can
even
show
if
people
are
really
interested
and
then
the
last
piece
on
this
is
just
really
helpful.
Is
this
insights
analytics?
C
So
this
gives
you
notion
as
an
individual
developer,
you
would
get
in
tab
nine,
a
a
dashboard
that
says:
hey
here's,
what
my
completions
look
like:
here's,
how
it's
made
me
more
productive
and
that
helps
both
for
an
individual.
It
helps
for
a
team
in
being
again
significantly
more
efficient.
This
certainly
is
some
fantastic
when
we
tied
into
the
the
overall
development
life
cycle,
that
is,
that
gitlab
drives
beautifully.
Think
of
this,
just
as
additional
data
on
the
furthest
left
part
of
the
development
lifecycle
right.
C
So
this
is
just
a
supercharged
tool
to
help
really
drive
home
all
the
great
velocity
that
someone's
already
got
in
running.
You
know
with
gitlab,
so
that's
kind
of
the
right
size,
that's
what
an
individual
developer
sort
of
interfaces
with
the
left-hand
side,
and
let
me
sort
of
give
you
a
little
bit
of
this-
is
the
marshall
hit
on
this,
but
these
are
think
of
these
as
more
of
a
layer
cake
from
bottom
to
top
in
terms
of
what
models
are
so
tabnade
lives
and
breathes
on
data
and
models
that
it
builds?
C
That's
how
you
get
what
you
saw,
how
do
we
build
them
and
where
they
come
from,
it's
really
about
data,
and
so
we
start
at
the
base
level
with
a
very
large
universal
data
set
that
data
set
is
a
couple
things,
it's
obviously
very
large,
but,
most
importantly,
it's
from
a
licensed
standpoint.
It's
only.
We
only
use
fully
permissive
public
code
to
build
this
we'll
get
into
why
this
is
really
important.
C
We
talk
competitive,
but
just
keep
that
in
mind
from
then
on
top
of
it,
you
can
build
a
model,
that's
even
custom
to
you.
You
all
have
the
one.
We
have
a
gitlab
model
that
we've.
Actually
we
built
one
with
you,
then
you
gave
some
more
data.
We
built
the
second
one.
It
got
better
we're
actually
playing
on
our
side.
Now
we
just
rewrote
we
just
shipped
a
bunch
of
new
models
around
ruby
on
the
back
end
that
we're
going
to
rebuild
your
model
again,
so
just
like
gitlab
tab
buying.
C
This
is
an
iterative
process
where
we
take
a
model
and
we
iterate
on
it,
and
it
continues
to
get
more
and
more
efficient
for
for
the
users.
The
other
two
are
other
additional
data
sets
above
so
isv
stack,
so
we
can
bring
in
you
know
if
you're
an.
E
C
C
So
this
is
the
idea
of
pair
programming,
taking
kind
of
also
the
next
level
hey
as
your
team
is
working
on
it,
that's
data
that
can
help
make
that
will
help
that
model
get
better
and
better
improve
over
time.
It's
not
sort
of
a
transformer
model.
So
that's
kind
of
the
core
of
what
you
see
when
you
ask
what
tab
9
is
it's
those
pieces,
it's
the
models,
then,
using
that
model
to
help
bring
more
value.
C
That's
your
ai
layer
to
to
gitlab
and
the
great
code
and
development
you
all
do
and
develop
customers
already
do.
We
can
spend
time
on
model.
It's
very
similar
to
yours.
We've
got
a
free
version.
C
That's
focused
on
developers
that
anyone
can
use
just
like
gitlab
we've
got
a
teams
version
which
is
just
like
premium,
which
is
focused
on
teams,
and
we
have
an
enterprise
version
that
is
focused
on
you
know:
security
and
large
customers
just
like
ultimate,
so
we
can
chat
about
it,
but
it's
pretty
much
the
same
idea
from
a
model
standpoint
as
go
to
market
a
lot
of
good
value.
This
is
just
a
very
specific
example.
You
all
when
we
built
models
together
with
you
and
we
give
reports
out
on
these
models.
C
So
you
know,
if
you
work
with
a
customer,
we
not
only
build
the
model,
but
we
have
very
clear
reports
on
what
you're
getting
and
very
programmatic
route,
then
best
practices
and
machine
learning
to
handle,
cleanse
and
segment
the
data
so
that
when
you
get
that
feedback
back,
you
know
you've
gotten
the
best
model
possible
and
we're
giving
you
transparency,
because
machine
learning's,
a
little
fuzzy
and
it's
nice
for
people
to
have
a
really
good
visibility
of
the
value
of
it.
Architecture
is
also
the
same.
C
So
we
have
one
option:
that
is
local,
that
you
can
run
just
like
gitlab.
You
could
literally
run
it
tab.
9
runs
on
your
actual
machine,
which
is
pretty
amazing
that
you're
running
a
transformer
model
on
your
machine.
We
have
a
self-managed
option
that
customers
can
put
in
their
data
centers,
and
we
have
a
cloud
hosted
version
that
we
run
on
gcp
like
you,
so
not
really
surprised,
you're,
seeing
that
we
play
that
same
way
and
we
think
of
it.
C
I
think
the
only
nuance
to
this
is:
if
we
want
to
run
in
a
customer's
data
center
they're
going
to
have
to
have
either
we
prefer
a
big
vp
with
vpc
on
aws
or
google,
because
at
that
scale
we're
going
to
want
gpus,
oftentimes
customers
inside
their
data
centers,
don't
have
gpu
sitting
around,
so
just
just
a
little
note
there,
but
one
don't
need
to.
We
talked
a
little
bit
about
this.
This
is
just
data
is
the
lifeblood
of
models
and
the
lifeblood
of
that
models.
C
We
build
together
with
partners,
so
we
build
that
with
the
russ
foundation
with
cncf
with
aws,
and
then
we
build
custom
models
that
help
expand
the
way
they
reach
to
their
developers.
There's
nothing
at
all
that
get
lab
needs
to
do
here.
It's
just
very
similar
to
inline
to
what
and
how
you
all
think
about
the
space
of
supporting.
C
We
have
very
similar
core
partners
very
similar
models
that,
in
terms
of
go
to
market,
you
already
know
this,
you
all
front
and
center
from
repositories,
and
then
I'm
going
to
spend
the
last
little
bit
and
then
quick
quick,
get
questions
on
competition.
So
the
short
answer
is
in
the
space
there's
two
players,
there's
us
and
there's
github
in
this
space.
We
both
look
at
models.
We
start
with
very
similar
back
end
models.
C
We
both
use
transformer
models,
github
uses
a
model
that
is
called
either
gp23,
also
known
as
codex
from
a
company
called
openai
which
they
bought,
which
we
can
all
now
refer
to
efficiently
as
closed
ai.
They
were
sort
of
the
initial
leaders
there
when
microsoft
bought
them,
the
rest
of
the
world
went
elsewhere
and
they
went
to
companies
like
ai21
to
ricoh
to
hugging
face.
C
We
work
with
all
the
above,
so
think
of
it
like
not
surprisingly,
everything's
been
consolidated,
microsoft's
done
the
same
thing
they
did
with
when
they
bought
github,
everything's,
proprietary
and
github
they've
done
the
same
thing.
They
did
with
the
models
on
the
back
end
with
open
ai,
that's
fine,
they
can
have
fun
they're
going
to
build
it.
That's
to
microsoft.
The
rest
of
the
world
wants
this
to
continue
to
be
open,
and
that's
where
we
work
so
git
lab
is
all
about
open
source,
open
collaboration.
We
view
the
world
in
the
exact
same
way.
C
Difference
is
copilot
is
one
model
to
rule
them
all.
It
does
some
very
important
things,
one
it
trains
on
you
as
a
user,
so
just
everyone
be
conscious.
If
you
use
copilot
every
piece
of
data
every
code
you
write
is
sent
to
microsoft,
that
they're
transparent
about
that.
That
is
how
they
run
the
the
model.
There's
security
issues
out
the
yin
yang
on
this.
The
other
thing
is
again
back
to
the
model.
C
They
use
all
code
inside
of
github.
What
does
that
mean?
It
means
if
you're
writing
a
completion.
Like
marshall
was
showing
that
happens.
It
looks
somewhat
similar
to
some
private
code
that
they've
already
trained.
They
may
throw
you
back
private
code
and
they
may
throw
you
apis
from
the
customer
that
they
trained
on.
C
I
don't
really
have
to
go
down
the
path
like
not
tenable
for
any
customer.
That's
I
don't
know
why
they
chose
that,
but
we're
entirely
fine
with
they
chose
that,
because
it's
not
tenable
for
any
customer,
that's
looked
at
it
seriously
and
then
the
most
important
piece
that
we're
really
different
is
like.
We
build
these
models
and
a
large
model
will
never
be
as
good
as
a
custom
model
the
trade-off
of
a
custom
models.
C
You
need
to
know
what
you're
using
it
for,
but
that
works
very
well
inside
of
a
company
and
with
a
t.
So
when
you
get
to
a
company
and
a
team,
they
know
we
are
doing,
let's
just
say:
gitlab
hey.
We
know
it's
going
to
be
ruby
with
some
javascript
and
maybe
a
little
go.
We
know
exactly
what
you're
building
and
that
pattern
is
going
to
be
very
similar.
So
we
don't
need
to
look
at
the
world's
universal
open
source
code.
That's
this
big!
C
We
can
be
very
specific,
and
that
means
we
can
bring
a
lot
more
context
and
completions
into
the
the
space.
So
we
also
support
more
ids,
not
surprisingly.
Currently
they
focus
on
microsoft,
products
like
vs
code
only
and
primarily
big
microsoft
languages
like
proprietary
typescript.
They
will
expand
those.
We
know
they
will.
You
know
they
will
we've
seen
this
jointly
together.
So
I've
got
other
details
in
here:
you're
welcome
to
go
through,
I'm
gonna
leave
it
simple.
C
This
is
the
simple
side
and
then
I'd
love
it
to
go
to
questions
that
anyone
has.
We
have
a
joint,
so
a
couple
of
things
join
slack
channel.
Please
join
it.
You
get
to
see
all
the
fun
work,
we're
doing
with
your
engineers
real
time
again,
absolute,
brutal
transparency
in
what's
going
on.
So
you
know
what
works?
What
doesn't
you
can
go
actually
back
through
history,
we're
making
some
fun
progress,
shout
out
to
chad,
wooley
who's,
just
rolled
up
his
sleeves
and
done
some
a
lot
of
cool
stuff.
C
Then
you
can
create
your
own
model,
so
I've,
given
you
guys
free
codes
here
to
use
with
your
customers,
you
can
connect
any
gitlab
repository.
You
want
have
your
own
built
models.
It
takes
about
24-ish
hours
when
you've
connected
for
us
to
go,
build
that
model
test.
It
make
sure
that
it's
quality
it
may.
If
you
connect
it,
it's
a
small
repository.
We
will
probably
give
you
back
like
a
too
smaller
repository
to
build.
C
You
know
a
great
model,
in
which
case
you
can
let
us
know,
and
we
can
obviously
we
would
help
enrich
it
and
there's
other
ways
we
can
make
that
stronger.
There
is
an
internal
model
that
is
already
built
for
us.
So
if
you're
doing
contributions
to
the
gitlab
code
base,
kyle
weavers
has
that
team.
You
can
ask
him
happy
to
add
more
people
that
team
over
time
we're
gonna,
probably
continue
to
add
more
and
more
engineers
so
that
you
guys
can
be
really
productive
to
it
and
then.
C
Lastly,
if
you're
anything
on
ai
for
code
you're
anything
with
copilot,
you
hear
any
of
that:
hey
ping,
myself
or
hesi
who
are
in
that
slack
channel
and
say:
hey
we,
we
got
a
competitive
spot.
Hey
can
you
jump
on?
Can
you
be
our
subject
matter
expert?
We
are
here
to
support
you
in
what
you
all
are
up
to,
so
I'm
gonna
stop
sharing,
because
you
all
have
it
and
go
to
questions.
C
F
Yeah
sure
so
I
work
with
teams
in
companies
that
have
hints
in
latam
and
a
lot
of
those
will
will
do
commenting
and
code
documentation
in
english,
but
some
of
them
are
beginning
to
use
spanish,
and
I,
like
the
feature
that
you
have
where
it
identifies
a
comment
and
then
starts
producing
code.
I
was
wondering
if,
if
you're
gonna
use
some
other
other
languages
beyond
english
or
if
the
model
can
identify
other
languages
beyond
just
english.
D
That's
correct
as
right
now
we
built
the
this
sort
of
this
latest
iteration
is
trained
on
english.
Only
there
isn't
reason
we
couldn't
do
it
on
different
languages.
D
Keep
in
mind,
though,
that
all
algorithms
need
some
sort
of
training
data
in
order
to
do
that,
and
so
you'd
have
to
have
a
sufficiently
large
set
of
open
source
code
base
in
a
different
language,
although
I
guess
there's
some
auto
translation
opportunities
that
we
could
try
right
like
how,
let's
use,
let's
use
a
translation
api
to
put
all
of
the
english
into
spanish
and
then
train
that
so
that
real
time
it's
an
opportunity,
we're
not
there
yet,
but
I
think
it's
possible.
D
G
You
awesome
hugo
hello
next
question,
but
I
asked
it
and
answered
myself.
You
know
this
is
to
verbalize.
It
write
the
integration
with
gitpod,
because
gippod
integration
of
gitlab
has
been
there
already,
and
I'm
happy
to
report
that
all
we
got
to
do
is
use
gitpod's
extension
for
vs
code
to
install
it.
G
C
Actually,
that
is
a
phenomenal
use
case,
and
it's
actually,
the
get
lab
team
is
looking
this
for
contributors
right,
because
if
you
think
about
it,
it's
a
perf.
It's
a
really
good
combination,
and
also
this
is
a
really
important
piece
you
all
will
run
into
if,
if
y'all
aren't
hugo
is
sort
of
hitting
on
this,
but
I'll
be
explicit.
C
Microsoft
github
has
code
spaces
and
copilot,
which
are
two
areas
that
are
currently
they're,
they're,
very
id
they're,
very
ide
centric,
so
they're,
just
not
an
area
that
get
labs
really
focused
on
for
reasons
that
are
very
obvious
and
totally
understand,
but
yeah
that
integration
already
exists
and
it
works
really
really
well.
So
if
your
customer
needs
that
it
works
great
because
you
functionally
have
git
pod
with
its
dependencies
and
everything
else
needs,
you
build
a
custom
model
and
this
custom
model
surface
directly
through
git
pod.
C
It's
it's
a
very
good
one,
two
value.
If
you
hear
that
in
in
the
with
your
customers,
so
yep
that's
built
and
good,
we
also
work
with
coder
and
there's
a
number
of
others
in
the
space.
But
I
would
say
our
experience
has
been
get
pods
the
market
leader
in
cloud-based
or
browser-based
ids.
Today.
A
A
I
did
have
a
couple
questions,
although
one
of
them
is
a
comment,
I
do
want
to
geek
out
so
brandon.
You
had
put
a
call
out
early
on
the
call-
and
I
I
I'm
answering
to
that
call
awesome.
C
A
A
Well,
if,
if
there's
ai,
that
will
help
me
write
better
code,
it
can
it
also
help
me
write
more
secure
code,
that's
sort
of
the
context
of
this
question
and
really
the
example
is
just
you
know
if
I'm
writing
some
code
and
maybe
I'm
going
to
leave
something
weak
in
the
code
in
terms
of
being
able
to
exploit,
could
tab
9
offer
me
some
suggestions
and
say:
hey,
wait,
you're
about
to
make
a
blunder
here?
Can
you
not
do
that
or
something
like
that?
Just
putting
it
out
there.
D
Yeah,
absolutely
so
what
the
way
that
we
want
to
approach
this
and
it's
part
of
like
how
do
we
make
code
consistent,
follow
best
practices,
maintainable,
lower
tech
debt,
reduce
security
issues
based
on
basically
human
error.
Let's
be
honest
right
most
of
it
comes
from.
I
didn't
quite
understand
how
to
properly
implement
the
code
for
our
team
or
our
company,
the
best
part
about
using
a
custom
model
that
is
specifically
curated
on
the
front
end
towards
code.
That
is
both
secure
and
repeatable,
sorry
and
maintainable.
D
If
that's
the
code
base
that
you
use
to
train
the
algorithm,
then
the
suggestions
that
the
programmers
will
get
while
they're
working
will
follow
those
best
security
practices
so
and
also,
as
brandon
said,
on
the
mr
portion
of
submitting
code
2,
the
opportunity
comes
for
review
of
code
and
say
this
does
not
fit
with
what
the
algorithm
was
trained
on
best
practices.
So
it
can
flag
that
saying
hey.
This
doesn't
look
like
what
you
what
what
my
algorithm
was
trained
on.
D
It
will
flag
it
and
say
you
should
review
this
portion
and
make
sure
that
this
meets
best
practices
for
security.
So,
in
terms
of
like
a
tiny
voice
popping
on
the
computer
and
and
yelling
at
you,
hey
don't
do
that.
The
way
it
would
come
through
is
hey,
as
I'm
typing
something
to
do
with
security.
It
would
give
me
those
suggestions,
saying
this
is
the
best
practice
of
security
and
the
more
consistent
you
train
that
algorithm
to
be
the
more
consistent.
D
Those
suggestions
will
be
right
for
the
coders
that
are
using
them
and
that's
kind
of
the
the
the
pair
program
programming
idea.
D
Think
of
it
as
somebody
who
is
a
senior
you
know
engineer
at
a
company
whose
concern
is
only
security,
have
them
sitting
beside
a
junior
programmer
coming
into
the
team
for
the
first
time
and
saying:
hey
nope,
that's
not
the
that's,
not
the
method,
we're
using!
That's,
not
the
structure.
We're
using!
This
is
how
you
do
it
instead
and
and
show
them
that.
C
C
You've
got
a
linter
like
all
the
basic
all
the
great
security
stuff
that
ends
up
in
the
pipeline
then
applies
to
the
code,
which
then
gets
better,
which
comes
back
through
to
suggest
and
all
we're
doing
is
taking
those
best
practices
that
are
already
being
surfaced,
and
you
know
corrected
in
the
pipeline
in
gitlab,
we're
just
then
shifting
to
the
next
developer
down
the
line
gets
those
earlier
right.
So
you
have
fewer
red
axes,
but
you
need
both
right.
So
when
we
look
at
this,
this
is
also
like
their
self.
C
Their
self-reinforcing
mechanisms
on
both
sides.
A
Yeah,
no,
I
appreciate
that
so
this
is
really
interesting
because
it
doesn't
seem
like
there's
any
proactive
implementation
at
this
point,
but
with
the
solution
you
have
and
the
way
marshall
explained
it,
it
seems
like
if
a
security
individual
decided
that
hey
here's
a
better
way
of
writing
this
code.
So
it's
secure
and
train
the
model,
then
that
can
become
sort
of
the
template
for
them
to
use.
A
But
I
I'm
wondering
if
there's
any
better
approach,
because
remember
security
happens
when
something
is
found
in
code
in
real
life
situation.
So,
for
example,
if
you
look
at
what
happened
with
log4j
okay,
that
code
existed
for
a
long
time
until
it
was
actually
hacked
and
then
a
cve
came
out,
and
now
we
have
a
better
way
of
writing
that
code
or
actually
using
a
better
package
for
for
for
doing
that.
A
So
that's
a
simpler
situation
where
a
package
you
know
you're
putting
a
wrong
version,
you
can
suggest
a
new
package
and
everything
will
be
good,
but
then
there
are
other
situations
where
there
may
not
be
a
cve.
There
may
be
a
common
weakness
because
of
the
way
you
write
the
code.
Maybe
you're
pushing
the
bits
and
bytes
in
a
way
that's
going
to
make
your
system
very
unstable,
so
those
patterns
are
widely
known
and
and
shouldn't
be
a
security
person's
job
to
train
your
model.
Are
you
training
those
models?
That's
my
question.
C
Yes,
so
some
of
the
ways
that
we're
going
about
this
are
two
one:
the
again
our
explicit
way
that
we
start
about
curating
code
is
we've
made
a
different
choice
instead
of
taking
all
the
code
and
say
github,
which
is
what
copilot
does
that's
a
lot
of
crappy
code
and
a
lot
of
old
code
and
what's
useful
or
not
useful,
not
there,
so
we
go
first
off.
We
use
a
lot
of
code,
but
we
use
you
know
things
like
the
pile,
some
very
curated
understood
code.
C
The
second
piece
that
we
add
to
that.
This
is
really
really
valuable.
Is
this
work
where
we're
adding
additional
code
say,
for
example,
around
amazon
from
amazon?
So
what
you're
gonna
start
seeing
and
you've
already
it's
already
been
baked
in?
There
is
well
now
we're
taking
the
best
curated
code
from
amazon
for
writing
on
amazon
and
as
a
security
engineer,
who's,
not
say
you're
at
gitlab.
C
You
can't
explicitly
have
any
idea
what
the
best
practices
on
amazon
necessarily
are.
I
mean
you
might
if
you're
only
doing
aws,
but
you
get
the
gist.
Amazon
knows
what's
best
and
most
secure
in
amazon,
so
their
model
they're,
giving
us
the
data
that
says:
here's
our
model,
here's
what
we
wanted
it,
here's
the
most
current
most
secure
code
that
then
just
becomes
what
you
get
as
part
of
your
model.
So
what
we're
doing
here
in
in
by
aligning
interest
is
amazon
wants
to
get
the
best
practices
out
to
their
code
base
to
their
customers.
C
C
boom.
No
idea
how
to
follow
that
amazon
does,
though,
and
they're
very
interested
in
making
sure
that
you
adopt
the
8,
the
263
68
whatever
product
is
and
that
you're
using
the
most
current
api
right.
So
it's
in
their
interest
to
build
so
it's
their
model.
They
give
us
the
best
data
for
their
model,
most
current.
That
then
gets
incorporated
in
say.
You
know
you
have
devops
engineers
that
do
deploy
stuff
on
amazon.
C
You
don't
need
to
then
go
hey.
What
are
the
best
practices
that's
been
incorporated
into
because
amazon
wants
to
get
that
to
its
developers,
so
this
is
the
process.
That's
where
that
ecosystem.
It
didn't
spend
a
lot
of
time
on
it,
but
this
is
where
that
self-reinforcing
mechanism
works
really
well
amazon.
C
They
want
to
get
gold.
They
care
about
gold,
about
amazon,
they're
willing
to
spend
a
little
bit
of
time
and
tell
us
the
best
code.
That's
all
they
need
to
do
it's
very
easy.
This
is
our
best
code.
We
build
the
model
and
then
we
federate
it
out
to
to
users.
So
I
hope
that
helps
that's
sort
of
where
we're,
I
think,
we're
step.
You
know
four
or
five
down
a
long
journey
that
we'll
be
making
that
work,
but
we
found
very
good
alignment
for
everyone
in
in
helping
move
security
forward
through
those
processes.
A
You
know
that
was
excellent.
Thank
you
brandon
for
explaining
that,
because
I
kind
of
missed
some
of
that
nuance
in
the
when
you
were
describing
the
slide
and
you
you
putting
focus
on
that,
really
helps
me
differentiate
between
what
github
solution
is
and
what
your
solution
is
in
a
much
much
more
applicable
way
right.
It's
not
we're
just
going
to
take
some
any
old
code.
That's
out
there
you're
actually
very
focused
in
curating
the
right
kind
of
code,
which
usually
means
also
secure
kind
of
code,
and
that's
awesome.
Thank
you.
C
And
you
see
that
this
is
the
the
the
loop
going
on
on
this
slide.
You'll
see
those
companies
are
giving
the
expert
guidance,
then
we
help
them
reach
their
developers
and
then
we
give
them
back
analytics.
Okay,
that's
good,
so
this
is
generalized
analytics,
not
individual,
on
a
developer,
but
so
now
we've
we're
connecting
this
gap.
That's
existed
between
isvs
that
have
huge
devrel
teams
that
can't
reach
and
no
idea
of
what
their
devs
are
doing.
They
want
to
really
help
those
devs,
although
devs
want
to
help
them,
but
there's
no.
C
C
B
C
Thank
you
all
and
we'll
do
the
same
by
the
way
when
we
find
we've
already
reached
out,
but
when
we
have
customers
inbound
that
say,
hey
we'd
like
to
use
it,
we
will
make
sure
we
also
reach
out
to
the
sellers
and
everything
and
we've
done
that
a
few
times
we'll
keep
doing
it
with
mike's
been
very
mike
lebeau.
Thank
you
in
making
sure
we
keep
these
connections
off
up
and
running,
so
we
look
forward
to
it
and
you
all.
Thank
you
so
much.