►
Description
This is a coffee chat discussion on how we can simplify our codebase to make it easier to add new replicable items. Fabian, Gabriel Douglas, and Valery, spoken about the pain points and ideas.
A
A
A
There
is
a
lot
of
classes
and
objects
that
we
need
to
create,
and
they
are
not
so
obvious,
it's
different
than
adding
something
like
a
controller
or
modeler
view
to
rao's.
This
is
something
that
we
build
ourselves
and
it's
not
built
in
a
in
a
way
that
looks
like
a
framework
or
something
like
stuff
like
that,
it's
more
or
less
something
that
we
started.
C
A
C
Sorry,
I'm
sorry,
I
didn't
I
had
time
to
trade,
easy
things
for
the
call,
but
yeah
I
think
that
the
way
that
you
build
the
application,
there's
a
lot
of
room
for
improvement
and
I
think
that
you
can
threaten
think
about
how
to
reduce
the
number
of
steps
where
to
add
a
new
type.
I
was
trying
to
do
the
list
of
steps,
so
he
can
make
clear
a
lot
of
necessary
steps
that
we
need
to
do
so.
C
You
make
easier
to
to
know
which
steps
you
can
remover
can
condensate
on
another
one,
but
I
think
that
it's
a
good
point
that
I
need
to
start
to
think
about,
because
I
created
a
list
of
all
the
data
types
that
are
created
by
each
lab
and
there's
a
lot
that
we
didn't
replicate
yet
so
I
think.
That
is
that,
if
you
have
time
stretching
about
this,
this
can
help
us
to
to
exceed
replicate
his
other
data
types.
C
B
I
mean
I'm
not
going
to
be
able
to
comment
very
much
of
the
like
technical
details
here,
but
I
looked
at
the
list
and
I
think
at
the
moment
we
replicate
9
out
of
19
data
types,
because
I
mean
this
is
not
so
bad
as
it
sounds
like
we
replicate
like
Mitchell,
routine
I.
Think
of
the
data
but
I
think
I
can
I
can
see
that
ask
it
lab
close.
There
will
be
more
data
added
over
time
and
I
think
at
least
from
my
sort
of
high
level
background
is
I.
B
I
worked
a
lot
on
projects
where
you
had
many
many
different
data
sources
right
so
different
data
bases
and
things
that
you
have
to
consume
some
more
like
an
ETL
framework
and
having
a
like
a
standard
way
of
saying,
hey.
You
know
you
want
to
replicate
something
where
you
want
to
add
some
thing
but
and
something
that
people
can
easily
understand.
I
think
is
extremely
valuable
because
otherwise
it
just
doesn't
scale
and
if
it
is
a
bespoke
effort
every
single
time
you
know,
and
you
need
to
like
figure
it
out
it.
B
Just
is
it's
very
expensive.
You
know
because
it
means
that
you
know
you
have
different
solutions
for
different
things
and
becomes
harder
and
harder
to
understand
so
I,
really
like
at
least
from
my
very
high
level
understanding
effort
spend
now
making
it
more
standardized
so
that
in
the
future
we
can
say,
hey,
you
know
like
either
to
other
teams.
If
you
want
this
to
you
know,
if
you
want
this
to
be
replicated
NeoGeo.
B
A
A
It
requires
some
some
level
of
like
searching
things
out
from
here
to
here.
Another
thing
that
I
look
at
that
could
help
us
model
this,
like
this
abstraction,
is
event
sourcing
event.
Sourcing
can
be
used
to
reconstruct
the
state
of
an
object
based
on
different
events
that
has
to
be
executed
in
a
sequence
so
in
in
this
way
it's
different
from
Geo,
because
we
don't
care
about
the
sequence.
We
don't
care
about
the
artery,
but
there
are
a
few
things
in
event.
A
Sourcing
that
resembles
what
we
are
doing
with
with
Geo
I,
also
think
that
it
would
be
really
nice
if
we
could
perhaps
move
some
of
the
logic
to
the
app
folder.
So,
ideally,
we
will
have
like
the
Geo
replication
as
a
feature
as
a
library
in
ingot
lab
and
we
had
like
okay.
This
is
a
Jew
search,
this
is
a
Jew
event,
or
this
is
a
Geo
transformation
or
whatever.
This
is
the
Geo
service
like
to
get
data
and
to
send
data
or
something
so
so
this
this
kind
of
distractions.
A
B
C
Just
each
take
care
of
and
trying
to
track,
this
framework
is
because
we
have
some
data
type,
that's
not
related
to
data
base
models
and
Amy
and
I
think
that
most
of
them,
you
require
a
lot
of
different
settings,
our
data
to
on
the
secondary
to
be
replicated.
So
we
need
to
think
about
this
as
well.
Yeah.
A
A
D
Yeah
so
the
most
difficult
part
that
we
don't
have
any
template
for
that.
So,
and
this
thing
is
that
the
design
of
around
all
the
registries
we
have,
it
is
like
well
how
it's
called
well
well
polished,
and
so
we
fixed
like
thousands
of
bugs
so
every
detail.
Every
condition
does
make
sense.
But
when
you
just
copy
it
and
adopted
to
you
your
needs,
you
lose
much
of
this
in
much
of
those
important
details
and
so
I
expect,
like
hundreds
of
bucks
in
doggie
registry
and
it's
the
problem
yeah
it's
one
of
the
problems
yeah.
D
Second
one.
It
is
actually
a
lot
of
code
to
sort
of
implement
something
yeah,
but
I
don't
know
if
it
is
possible
to
came
up
with
some
generic
solution
for
all
type
of
resources
because
they
are
all
different
and
so
I
don't
know
if
we
can
come
up
with
something
better
and
then
what
we
have
now
and
actually
I
think
the
most
of
things
we
we
would
need
to
seek.
We
already
think
so,
probably
it's
not
the
best
error
to
to
focus
on.
B
B
D
C
I
think
that
solution
that
we
have
today
is
very
simple
but
yeah
if
we
need
a
life
coach
implement
it.
So
if
you
can
keep
this
solution
but
try
to
reduce
the
code
necessary
to
run
it
I
think
that
would
be
a
good
start
and
I
think
that
the
biggest
problem
nowadays
is,
for
example,
for
dog
head
history.
I,
have
you
followed
the
mesh
equation,
but
I
have
been
working
on
the
biggest
problems
to
understand
how
the
doctor
has
history
works
inside
which
plug,
which
are
the
points
that
we
need
to
track
event
or
not.
C
I,
think
that's
the
pin
point
that
you
have
right
now.
For
example,
yesterday
I
was
machine
it
about
the
design.
Holsters
looks
like
that.
It
will
be
very
easy,
but
I
tried
vocally
and
nothing
work
out
of
the
box
on
the
juice
side
for
l.f.t.s
objects,
and
you
need
to
start
thinking
how
it
can
try
to
make
easier
to
find
this
points.
That
I
need
to
do
to
add
this,
that
they
need
to
attract
events
for
June,
in
that
this
is
the
hard
part
nowadays.
A
Yeah
I
think
we
are
integrating
so
many
different
applications
that
are
out
of
the
scope
of
gitlab
Rao's
itself
and
that'd.
That
is,
that
is
that
adds
on,
like
Street
I
imagined
that
you
had
to
learn
how
docker
protocol
works,
at
least
a
high
level
to
to
see
how
how
you
have.
We
will
have
to
send
like
JSON
files
from
one
one
side
to
the
other
and
how
to
download
things
and
authenticate
in
a
way
that
the
docker
registry.
A
A
A
It
shouldn't
be
different.
Most
of
the
code,
then
replicating
LFS
objects
are
have
stalker
containers,
no
way
that
you
have
to
have
a
finder
that
figures
out
what
you,
what
will
be
process
it
in
a
way
where
do
you
download
from
here?
Where
do
you
upload
here
and
saving
things
in
the
in-between,
so
that
there
is
a
lot
of
things
in
common
that
perhaps
you
can
create
some
abstractions
and
we
use
things?
A
One
thing
better
I
think
we
could
simplify
earlier
is
the
amount
of
code
we
need
to
do
to
create
the
workers,
for
you,
I
think
they
are
all
look
look
mostly
like
the
Saint.
They
have
its
batcher,
they
have
the
single
worker
and
they
execute
the
service
plans.
So
in
this
sense
this
is,
they
are
all
generic
in
a
way,
and
the
only
thing
that
changes
is
are
the
parameters
and
which
service
class
is
called,
but
they
mostly
look
like
the
same
the
same
thing.
A
D
C
C
Has
so
what
does
I
think
about
the
points
that
you
put
on?
The
documents
are
more
related
to.
How
do
we
generate
the
events
on
the
on
the
parameter,
node
and
I
was
recently
think
about
how
it
can
improve
the
application
on
the
secondary
nodes.
I
know
it's
that
our
workers
that
are
responsible
to
try
to
figure
out
figure
out
what
files
we
didn't
sign
it
yet
or
which
I
posters
in
science,
science
at
the
add,
on
the
second
day,
I've
ever
done,
we
need
to
go
through
in
the
entire
database.
Try
to
find
everything.
C
C
This
is
something
that
I
think
about
recently.
I
think
that
we
are
able
to
do
this
because
the
queers,
the
avender
F,
the
W
choirs,
are
very
expensive
and
we
are
adding
more
data
types
and
we
need
to
run
more
queries
and
those
guys
are
very
expensive.
I
think
that
this
is
a
good
point
that
it
can
start
to
think
about
how
we
can
make
our
workers
and,
on
the
second
item,
are
smart,
for
example.
Sometimes
if
you
don't
have
a
active
instance
like
each
lab
at
home,
the
workers
will
be
performing.
C
Those
expensive
works
a
lot
of
times
and
we
don't
have
a
lot
of
data
to
see
so
if
they
can
identify
nothing
that
I
need
to
sync
right
now.
So,
ok,
you
try
to
see
just
checking
on
out
in
the
next
hour,
because
we
already
have
the
de
la
Cruz
running
and,
for
example,
if
episode
get
updated
on
the
primary
you
have
this
event.
C
A
A
Perhaps
this
is
something
we
can
fix
and
that
will
prove
a
lot
because
we
will
not
have
to
be
doing
expensive
carrots
just
to
get
new
uploads
on
board,
but
at
the
same
time
we
should
we
have
something
done
that
we
could
just
like
blue,
like
okay
at
this
event
at
this
event,
at
this
event,
and
then
like
this
library
will
handle
it
in
a
way.
Another
thing
that
I
was
thinking
about.
A
Perhaps
we
could
simplify
the
database
architecture
in
a
way
that
we
could
use
different
types
that
are
available
in
Postgres
instead
of
just
creating
multiple
columns,
so
we
could
use
a
single
table
all
right,
all
data
types
and
maybe
just
using
JSON
Jason
B
for
the
extra
bits
that
we
need
to
have
hold
like
for
projects.
We
have
like
the
I,
don't
know
bridge,
engineer
hash,
something
like
this
metadata.
That
requires
us
to
creating
at
least
two
tables,
one
one,
one
icon
in
the
geo,
even
log
and
another
like
geo
event,
log
repository
selfie.
A
This
can
also
perhaps
be
simplified.
Now
that
we
have
Postgres
entirely
to
us.
We
have
to
be
careful
at
the
same
time,
because
when
we
are
doing
joints
against
the
primary,
we
need
those
fields,
but
all
those
other
fields
that
are
not
primary
Keys
can
perhaps
being
now
like
this
metadata
json
feud,
I.
D
D
B
D
B
B
I
have
elf
Adam,
okay,
so
I
had
a
question,
so
I
spoke
with
Ashe
a
little
while
ago,
and
he
mentioned,
but
I'm,
not
sure
I
understood
him
correctly.
That
people
were
thinking
about,
for
example,
potentially
spinning
out
geo,
as
well
as
a
separate
gym
or
actually
separating
it
from
the
main
application
and
I
I
have
no
idea.
If
that's
a
good
or
bad
idea
right,
but
I
am
I
was
just
thinking.
B
If
you
know,
like
one
thing
that
I
think
Douglas
Douglas
said,
and
you
guy
said
it's
like
we,
we
have
all
of
these
different
data
types
right
and
we're
straying
sort
of
further
away
from
Ruby
on
Rails,
and
it's
like
it's.
There
are
other
problems
that
we
need
to
tackle
right
and
also
not
everybody
using
using
git
lab.
You
know
necessarily
needs
to
use,
is
to
use
geo,
and
so
we
can
obviously
still
bundle
this.
But
are
there
other
potential
advantages
in
having
it
like
as
a
separate
thing?
B
A
A
A
D
And
I
want
to
add
that
it's
like
you
know
it's
like
bicycle
with
ten
wheels
when
so,
we
need
to
create
separate
service
well
only
when
we
absolutely
need
to
we
in
geo.
We
use
lots
of
code
from
github
lots
of
like
for
validation,
verification
for
for
for
everything,
and
if
we
would
create
separate
service,
we
would
need
to
implement
this
again
and
that
would
make
things
harder.
D
C
The
hippos
are
later.
This
is
something
that
I
think
that
in
the
future,
you
start
using
to
replicate
there
between
June
nodes
as
well.
We
have
a
get
lay
node
on
the
primary
and
I
get
a
node
on
the
cigarette,
and
you
can
use
this
mechanism
synchronize
data
there
posters,
so
you
can
get
right
off
of
what
are
you
doing
the
each
lab
and
we
dis
directly
namdak
italy
latter.
I.
B
C
A
There
is
one
big
difference
of
how
they
do
replication
and
I
believe
they
did
it
more
as
synchronously.
So
when
something
is
pushed
to
the
poster,
it's
immediately
replicated
to
the
other,
and
this
works
fine
when
you're
in
a
local
network.
But
when
you
are
in
a
remote
location,
you
have
like
the
congestion
of
either
the
data
center
connection
or
internet
connection
et
cetera.
A
A
So
this
would
be
an
issue
to
do
that
and
then
figure
out.
If
there
are
simplification
steps
we
can
do
either
by
structuring
things
into
generic
class
that
can
be
inherited
or
something
like
that
and
I
will
try
to
see
if
there
is
any
possibility
of
creating
abstractions
and
then
we
can
discuss
again.
I
think
that
that's
at
least
something
we
could
do.
C
Yeah
that
makes
sense
I
was
I,
would
also
like
to
suggest
principal
valve
is
already
on.
The
continent.
Has
replication
and
I
am
starting
work
on
the
issue
of
the
custom
hooks,
so
why
you
are
doing
the
code
review
if
you
try
it,
if
you
see
something
that
you
can
do
with
some
smaller
fact
to
make
it
more
genetic
I
think
that
is
that.
A
C
B
B
I
think
the
only
the
only
real
like
word
comment
that
I
have
is
that
I
actually
enjoy
the
process
of
thinking
about
these
things
and
having
like
a
little
bit
more
like
structured
for
myself,
you
know
to
say
that,
okay,
this
is
the
problem
when
it
becomes
a
lot
more
concrete.
When
you
see
a
table-
and
it
says
like
where
we
have
these
19
things
we
kind
of
need
to
handle
them.
Probably
you
know
what
what
can
we
do?
You
know
and
then
you,
you
think
about
improvements
and
I,
think
that's
it's
fun
for
me.