►
Description
Join members from the ASP.NET teams for our community standup covering great community contributions for ASP.NET, ASP.NET Core, and more.
Community links for this week: https://www.theurlist.com/aspnet-standup-2019-07-30
A
A
A
Okay,
so
this
is
kind
of
neat
I
regularly
talk
about
our
our
present
here.
Our
workshops
and
presentations,
Nick
foundation.org
I,
showed
him
off
last
week.
This
is
kind
of
neat
Miroslav.
They
did
a
workshop
locally
and
I
was
like.
Why
didn't
you
use
our
workshops?
It
turns
out
they
did,
but
they
did
exactly
what
we
are
hoping
they
forked
them
and
they
they
tweaked
them.
They
did
exactly
what
they
want
to
do.
So
they
call
out
to
you
the
workshops
that
we've
been
showing
off
and
then
they
just
did
their
own
stuff.
A
They
added
in
some
other
Blaser
stuff
as
part
of
it.
They
they
added
in
Sarah,
log
and
and
just
some
other
neat
stuff.
So
this
is
great
just
a
reminder
that
those
presentations
are,
you
know,
they're,
open
source
for
a
reason,
they're
absolutely
out
there
for
you
to
do
what
you
want
with
so
very
cool,
to
see
this
so
so
anyways.
This
will
be
included
with
the
links
and
go
ahead
and
take
a
look.
A
A
new
release
of
Saturn,
so
Saturn
is
an
f-sharp
based
SP
net
kind
of
variant,
so
this
is
updated
to
use
a
is
peanut
core
to
to
some
other
neat
stuff
support
for
gr
PC,
some
other
things.
Alright,
two
things
from
DevExpress
dan
Roth
sent
this
over
to
me
last
during
this
past
weekend.
So
this
is
cool.
This
is
a
utility
to
set
metadata.
A
So
as
your
metadata
changes
as
you
navigate
through
the
site
or
different
things
happen,
you
want
to
be
able
to
update
your
metadata,
that's
not
built
into
blazer
currently,
and
they
ran
into
this
as
an
issue
and
wanted
to
be
able
to
change
it.
So
this
is
a
utility
that
allows
doing
that.
So
this
goes
through
and
explains
how
to
add
custom
metadata
and
how
to
change
it.
Runtime
and
stuff,
also
from
DevExpress
blazer
components
so
new
release.
This
includes
a
scheduler
control.
This
is
really
nice
I,
like
that.
A
You
know
that
you
can
build
your
own
controls,
but
then,
when
you
get
into
complex
things,
like
scheduling
and
stuff
like
this,
it
is
nice
that
you've
got
component
vendors
that
are
building
complex.
You
know
deeply.
You
know
like
all
kinds
of
stuff
like
this
includes
you
know.
It's
mobile
support
includes
all
kinds
of
recurring
appointments,
all
this
kind
of
stuff,
that's
beyond
what
you
would
normally
build.
They
also
have
data
grid
tree
view,
a
lot
of
other
stuff,
so
cool
to
see
those
updates
coming
out.
A
This
is
interesting.
This
is
a
so
you've
got
dotnet
watch
run,
which
will
kind
of
rebuild
things
as
your
code
changes.
This
developer
was
tired
of
of
having
to
refresh
their
browser
as
static
files
changed.
So
as
you
go
through
and
you
change
things
like
you
know
your
CSS
or
images
or
HTML.
That's
in
your
static
area
this.
This
is
just
a
pretty
lightweight
kind
of
thing.
A
When
you're
in
development,
it
sets
up,
add
every
load,
and
then
you
set
up
this
tag
helper
and
then
there's
some
middleware
that
just
runs
and
it
just
writes
out
a
it,
writes
out
a
timestamp
and
so
based
on
it.
It
just
says
every
second:
it
writes
out
this
tie
timestamp
in
the
tag
helper,
there's
some
front-end
JavaScript
that
just
monitors
and
the
the
timestamp
only
changes
when
your
static
files
are
rebuilt.
A
So
he's
gone
through
and
updated
his
code,
samples
for
preview
7,
which
is
neat
one
of
the
things
that
Dan
Roth
called
out
last
week,
is
that
the
templates
are
just
are
not
using
any
kind
of
front
end
manager,
it's
just
and
they're,
not
not
going
to
be
using
CDN
in
the
future.
But
you
know
there's
tons
of
different
ways.
You
can
manage
your
kind
of
front-end
packages,
so
Damien
buttons
showing
an
up-to-date
way
of
using
NPM
and
what
is
it
called
exactly
bundler
middle
minify
er
build
bundler
manna
fire.
So
so
that's
you
know.
A
That's
a
package
I
believe
Mads
Christensen
built
so
here
just
showing
how
to
kind
of
set
that
up
and
integrate
that
in
with
with
NPM,
so
always
good
to
see
these
things
kind
of
keep
changing
all
the
front-end
package
management
system,
so
good,
just
kind
of
see,
up-to-date
examples
of
how
to
do
that.
I'll.
A
A
I
mean
there's
this
there's
also
the
lead
man,
which
is
kind
of
the
kind
of
lighter
weight
thing,
so
yeah
a
lot
of
options.
Well,
all
right,
just
a
few
other
things,
so
we
had
the
docs
team
on
showing.
If
that
was
maybe
a
month
ago,
the
docs
team
was
on
showing
asp
net
docs
and
how
they
manage
the
docs
and
all
their
kinds
of
stuff.
A
One
of
the
questions
I
asked
them
is
they've
got
a
lot
of
great
samples
in
their
repo,
but
in
order
to
get
to
the
samples
you
actually
have
to
clone
the
whole
repo,
which
is
like
a
gigabyte,
is
crazy,
so
I
asked,
if
there's
a
way
that
you
can
actually
get
in
there
and
just
grab.
You
know
specific
samples,
like
just
the
code
you
want
so
they're
working
towards
that
here.
A
They've
got
this
samples,
browser
and
samples
browser
has
like
now,
I
can
go
in,
I
can
say
you
know,
like
just
asp,
net
core
you'll
see
right
now,
there's
just
a
few
of
them,
but
I
think
that,
from
what
I
understood
on
the
call,
the
plan
is
to
get
all
the
samples
that
are
in
the
docks
make
them
available
here.
So
you
can
go
in
and
just
directly
grab
just
just
individual
samples,
which
is
something
I'm
very
happy
about,
and
the
last
thing
before
I
pass
over
to
you.
We've
got
dotnet
coffee
coming
up.
A
September
23rd
and
the
important
thing
that
we
want
to
call
out
here
is
the
call
for
speakers
is
open.
Now,
one
of
the
cool
things
that
we
do.
We
have
two
days
of
content,
that's
presented
in
the
channel
nine
studios
and
then
the
last
24
hours
is
around
the
world.
Twitch
stream-
and
this
is
your
chance.
You
know
any
we
love
presenters
around
the
world,
they
could
be
interns
or
students,
they
could
be
open-source
contributors
it
could
you
know
this
could
be
something
where
you've
only
spoken
at
your
local,
meetup
and
you'd.
A
B
A
There
it
is
awesome
and
we
have
all
kinds
of
great
stuff
going
on
this
year.
We've
got
stuff
for
like
we
have
a
student
program.
We
have,
we
have,
you
know
all
sorts
of
great
stuff
so
follow
here,
dotnet
cough,
you
know,
here's
the
website
submit
your
thing
and,
and
you
know,
watches
we'll
be
making
more
announcements
and
I
am
done.
Talking
I
will
share
the
the
links
for
these,
so
I'll
be
in
the
description,
and
there
will
also
be
in
the
chat,
excellent.
A
D
D
B
C
D
D
You
have
to
do
you
have
to
do
set
alias.
Oh
there,
you
go
so
now,
John's
rolling
the
dice,
and
you
can
see
that
he
could.
He
moves
a
couple
spaces
and
if
somebody
else
were
to
jump
in
there
with
him,
maybe
one
of
our
viewers
could
jump
in
there.
They
could.
Theoretically,
you
know,
you
know,
play
the
game
with
him
in
real
time.
We
had
a
developer
on
campus
or
at
Microsoft
out
and
off.
Who
pinged
me
about
this
just
before
the
show,
and
we
thought
hey,
let's
go
ahead
and
show
this.
C
C
A
D
Have
to
reconnect
that
way
anyway,
if
you
want
to
try
it
out,
those
of
you
online,
you
could
go
to
snake
and
ladder
and
I
think
you
can
only
do
two
players
at
a
time.
So
that's
one.
What's
one
rub,
but
if
we
do
two
player
at
a
time,
then
you
know
individual
folks
can
party
on
it
together,
but
I
thought
it
was
a
cool
hackathon
project
and
it
was
related
to
one
of
my
favorite
topics
and
asp.net.
It
signaller.
So
you
come
back
here
and
I.
Guess.
D
C
D
Before
you
jump
into
Ori
jump
into
it,
one
thing
I
wanted
to
say:
is
you
know
we
want
to
let
everybody
out
there
now.
You
know
we
have
an
awesome
intern
program
here
at
Microsoft
I
learned
last
week,
I
was
working
with
the
arcade
make
code
team.
They
were
nice
enough
to
bring
my
son
in.
He
met
some
interns
there.
These
were
interns
that
actually
do
real-world
projects
shortly
thereafter,
I
had
a
meeting
with
another
intern
and
she
said
that
her
first
intern
project
was.
D
B
D
C
C
D
Yeah
yeah:
well,
let's
see,
let's
see
his
demo,
we
have
a
couple
questions
in
here:
John
asked
cams
so
per
question.
We're
gonna
get
some
ace.
Peanut
core
samples
in
I
also
talked
to
one
of
the
PM's
on
that
project
the
other
day
and
asked
him
if
we
could
eventually
get
this
signal,
our
organization's
samples
being
pulled
in,
we
think
we
might
do
that.
And
yes,
yes,
Sebastian's
right
Dylan
is
kind
of
a
quiet
person.
Your.
C
C
Right
so
Wow
I'm,
Dylan
and
I've
made
for
you,
some
concurrency
limit
or
middleware,
and
so
what
this
does
is
it's
middleware
and
the
concurrency
of
your
server,
and
so
why
would
I
want
to
do
that?
Why
would
you
want
to
do
that
Wow
so,
three
years
ago
we
had
this
github
issue
what's
important
here.
So
there's
a
hundred
comments
on
this
github
issue.
That's
a
lot
of
comments,
and
so
this
problem
is
bad
and
a
lot
of
people
were
having
it.
Basically,
what
this
said
is
someone
had
they
said.
C
Well,
so
we
have
a
website,
we
tested
it.
It
worked
fine,
we
pushed
it
to
production
and
it
just
fell
over.
We
had
a
lot
of
clients
with
long-running
requests,
a
lot
of
hot
clients
with
hangs,
and
it
just
really
didn't
work,
and
we
don't
know
why
please
fix
it
and
so
Stefan
who's
been
my
mentor
on
this
project.
Looked
into
this
went
through
some
dumps
and
found
wow.
You
have
440
threads
that
are
blocked
waiting
on
tasks.
Wow,
that's
a
lot!
So
what
goes
on
here?
Suspiciously
slow
server.
C
It
was
thread,
pool
starvation,
all
along
so
Fowler,
spoiled
this
meme
on
Twitter,
but
it's
still
a
good
one.
So
for
those
of
you
who
don't
know
who
had
pool
starvation
is
when
you
run
out
of
threads
so
like
operating
system,
threads
are
pretty
heavy
pretty
expensive.
What
c-sharp
does
what
the
dotnet
run-time
does?
Is
it'll,
pull
like
a
dozen
threads
from
the
operating
system
and
it'll
keep
them,
and
then,
when
it
has
tasks
to
run,
it
will
schedule
them.
It'll
find
an
available
thread.
C
It'll,
say:
hey,
run
this
task
and
it'll
it
can
get
through
like
a
couple
thousand
tasks
and
a
couple
seconds
with
only
like
ten
or
twelve
of
these,
like
heavy
operating
system
threads
see
what
can
get
really
bad
is
if
you
have
some
tasks
that
are
waiting
on
other
tasks
and
so
like.
Theoretically,
your
system
is
locked,
free
and
everything
should
go
through.
C
But
if
you
have
your
12
threads
like
here
and
they're,
waiting
on
other
tasks
to
be
able
to
complete,
but
you
have
a
whole
heap
you'd
like
you,
have
a
whole
pile
of
tasks
going
up
that
are
all
waiting
for
this
limited
number
of
threads.
Then
this
is
something
that
can
like
gridlock,
pretty
bad,
and
this
is
something
you
can
bottleneck
on.
So
that's,
third
cool
starvation.
That's
why
it's
a
problem,
and
so
this
project
is
how
do
we
mitigate
that?
So
here's
a
really
good
comment
from
a
user
on
the
original
github
issue.
C
So
they
asked
oh
it's
a
little
cut
off
under
display
here,
but
so
they
asked
is
there
some
way
of
limiting
the
amount
of
concurrent
requests
and
kestrel
I
would
like
to
try
and
see
if
limiting
the
amount
of
simultaneous
requests
can
temporarily
fix
the
problem?
And
so
that's
what
this
project
is.
Henri
limit
the
requests.
Yes,
we
can
and
does
it
fix
the
problem?
Yes,
it
does,
and
so
that's
both
good.
C
So
the
big
idea.
This
is
like
it's
like
the
stoplight
on
a
freeway
on-ramp.
So
you
limit
inflow
into
your
system
into
your
freeway
into
your
server.
This
avoids
congestion,
and
this
lets
you
increase
throughput,
so
by
letting
less
things
in
you
get
better
flow
more
stuff
through,
and
this
just
makes
everything
better.
So
how
is
this
not
just
moving
congestion
back
on
the
on-ramp,
so
it
does
move
congestion
back
onto
the
on-ramp,
but
it
lets
some
things.
C
B
B
C
C
And
so
the
first
thing
I
tried
is
I,
took
a
semaphore
and
I
put
it
on
top
of
the
server,
and
so
any
requests
that
came
in
it
would
try
and
grab
the
semaphore
and
if
I
can
grab
the
semaphore.
It
goes
into
this
server
and
if
the
server
is
full
it'll
wait
to
grab
the
sim
before
and
everything
will
pile
up,
and
this
worked
and
it
mostly
solved
the
problem.
But
as
more
and
more
things
waited
on
the
semaphore,
you
could
get
memory,
pressure,
buildup
and
so
I
added
reject.
C
C
C
To
go
all
the
way
through
if
it's
full
new
requests
show
up,
and
they
say:
oh,
it's
full
we'll
come
back
later.
What
other
people
do
and
what's
better
in
a
lot
of
situations,
is
actually
doing
a
first-in
first-out
a
stack,
and
so
this
can
seem
like
counterintuitive,
because
you're
like
oh,
everyone
should
have
to
wait
in
line.
It's
no
fair,
like
you
show
up,
and
then
the
server
just
immediately
replies
to
you.
C
This
ends
up
being
better,
so
like
same
throughput,
lower
latency,
because
so
like
in
that
situation,
where
you
can
only
physically
give
good
responses
to
a
thousand
customers
per
second.
Instead
of
making
everyone
wait
through
line
just
give
those
thousand
responses
back
as
quickly
as
you
can
and
then
the
rest
of
the
people
throw
them
into
the
backlog,
tell
them
to
like
come
back
later
mm-hmm,
so
the
people
you
can
respond
to
you
do
so
as
quickly
as
possible.
C
The
people
you
can't
you
just
forget
about
there
are
some
cases
where
this
first
and
first,
our
cue
policy
is
better,
especially
when,
like
the
user
does
one
page
load
and
it
launches
like
three
streams
and
in
the
queue
policy,
those
will
all
basically
go
through
together,
where
in
the
stack
policy
like
one
of
them,
could
get
like
bobbled
up,
and
so
the
user
gets
like
half
of
their
page
loaded
and
there's
like
wow
where's,
the
CSS
and
then
they
refresh
in
add
more
load.
C
So
we've
included
both
of
these
policies
in
the
middle,
where
you
can
choose
what
one
you
want
and
you
can
additionally
write
your
own
policy
and
plug
it
in
with
dependency
injection.
So
we
see
the
chat.
Are
these
sorts
of
controls
supported?
Yes,
they're
supported
and
you
can
go
write
your
own
implementation.
Sorry.
D
C
A
Yes,
so
there's
a
little
argument
about
that
on
the
chat
there,
because
people
are
saying
like
hey:
isn't
that
a
bad
experience
for
some
people,
because
their
request
fails
but
I
think.
The
point
is
that
you
don't
want
to
have
this
backlog
where
everyone's
waiting
and
the
whole
thing
just
dies.
You
want
to
have
some
request
fails
so
that
you
can
bail
out.
B
Is
an
interesting
analogy,
but
I
think
a
more
Universal
one
would
be
Ticketmaster
where
the
tickets
come
live
and
it's
like
refresh
refresh
refresh
refresh
refresh
and
but
once
you
get
in
at
least
you
can
buy
tickets
right
and
everyone
else
is
being
told,
go
away.
Well,
you're
staying
without
this,
nobody
gets
tickets
at
all
until
an
hour
later,
when
the
whole
thing
chilled
up,
yeah.
D
C
B
C
B
D
D
So
let's
see
the
demo,
the.
C
B
C
Good
yeah,
all
right
here
we
go
so
here's
a
sample
like
asp.net
app
and
so
basically
all
it
does.
Is
it
writes
hello
world
before
it
writes
hello
world
it
has
this
100
millisecond
sink
over
async
wait.
So
this
is
you
take
a
async
task
and
you
like
call
it
synchronously,
and
this
is
an
anti-pattern,
and
this
will
induce
thread
pool
starvation,
which
will
then
cure
with
the
middleware.
So
we
go
over
here
to
Sebastian's
cool
benchmarking
tool
and.
B
C
What
you'll
see
when
it's
finished
running
is
that
essentially
zero
requests
per
second
have
gone
through,
so
there's
been
no
requests
yeah
there
we
go
so
zero
requests
per
second
right
there
and
like
1%,
CPU
utilization.
So
what's
going
on
to
the
server
sitting
there
and
it's
been
asked:
hey,
can
you
do
this?
Can
you
do
this?
Can
you
do
this
and
it
just
keeps
on
accepting
more
and
more
jobs
and
it
becomes
like
totally
overwhelmed
and
it
gets
nothing
done
and
so
the
fix
here
is
we
give
the
server
the
ability
to
self-regulate.
C
We
give
it
the
ability
to
say
hey,
no
I'm
busy
I'm
not
going
to
do
that,
and
this
is
like
a
good
tip
for
work
as
well.
Gotta,
say
no
to
some
stuff,
sometimes
sure
so.
We'll
do
services
dot,
add.
C
C
So
this
is
how
many
requests
do
you
allow
in
the
server
at
any
given
time,
and
so
a
safe
default
will
go
for
environment
processor
count,
because
this
will
be
low
enough,
that
it'll
like
it
can
be
higher
and
it's
faster
if
it's
higher.
But
if
it's
environment
that
process
or
count
like
you'll
avoid
the
thread
pool
starvation
and
nothing
will
be
bad.
So
this
is
a
safe
default
to
start
at
and
then
we'll
set
the
request
queue
limit.
C
So
this
is
whoops,
so
this
is
how
full
the
queue
can
be
before
it
starts
rejecting
stuff
and
we'll
just
use
a
low
number
here
for
sake
of
the
demo,
and
the
last
thing
we
have
to
do
is
add:
AB,
dot,
use
on
currency
limiter,
and
so
we've
added
basically
four
or
five
lines
of
code.
We
go
back
to
here
and
we
rerun
the
same
hello.
C
We
rerun
the
same
exact
command,
it'll,
do
the
same
exact
benchmark
and
what
will
sees
much
better
performance,
because
the
server
will
like
accept
a
request
accept
a
request
until
it
gets
up
to
its
limit
when
it's
at
its
limit,
it
says
no
I,
don't
want
to
talk
to
you.
Don't
give
me
no
more
work,
go
away,
go
away,
it'll
finish
one
of
its
things,
return
it
and
I'll
say
alright.
Give
me
another
one
and
then
it'll
pull
another
one
and
then
so,
because
it's
able
to
self
limit
this
way.
Yeah.
C
C
Yeah,
like
2.8
million
again
we're
bad
responses.
So
if
you
do
the
difference,
you
see
in
this
10
seconds,
it
got
through
about
a
little
over
a
thousand
valid
requests
which
makes
sense
because
each
one
takes
100
milliseconds,
unlike
a
12-core
machine,
so
that
works
out
to
about
a
thousands,
the
most
it
can
do
and
then
there's
2.8
million
rejections
of
no
I
can't
do
that
during
this
same
10-second
interval
right
so
going.
A
Going
back
to
Scott's
Ticketmaster
example,
I
would
think
of
the
case
where
I
would
I
would
want
to
be
more
specific
about
what
I
want
to
fail
and
whatnot.
So,
for
instance,
I'd
love
I
want
my
website
always
to
come
up,
but
then
I'd,
like
maybe
just
specific,
API
requests
to
fail.
Is
there
a
way
to
target,
or
you
know
have
you
have
you
thought
about
like
making
it
more
targeted
as
far
as
what
what
can
fail
and
what
like
I
want
to
queue
up?
No
matter
what
yeah.
C
So
there's
nothing
directly
in
this
that
interfaces
with
that.
If
you
do
like,
if
you
branch
your
middleware
pipeline
with
like
endpoint
routing
stuff,
you
can
put,
you
can
have
like
most
of
your
website
just
normal,
and
then
you
can
like
put
this
limiter
over
that
one
database.
Query
that
takes
forever
and
say,
like.
Oh,
my
god,
I'll
like
five
of
these
at
once,
and
so
you
can
selectively
apply
this
to
certain
parts
of
your
application
within
point
routing
right.
B
D
And
this
is
the
first
time
anyone
outside
the
team
has
seen
this.
So
all
this
feat.
Well,
we
did
an
internal
presentation
as
well,
and
we
had
some
similar
questions.
I
think
the
question
that
I
had
was:
let's
say
you
are
in
a
webform,
and
you
want
this
to
kind
of
inform
your
look,
your
your
load
balancer
or
your
what's
term
I'm.
Looking
for
here,
your
the
thing
that
will
automatically
fire.
D
There
was
some
way
you
could
couple
this
middleware
and
say:
hey
the
server's
starting
to
get
pegged.
We
probably
need
a
second
server
or
an
end
server
or
whatever,
and
then
we
go
from
there.
So
we
talked
about
something
like
that
as
well.
But
again,
this
is
the
first
time
anybody
outside
the
team
has
seen
it.
So
if
you
have
any
feedback
on
this
or
you
have
ideas
on
how
to
make
it
better,
this
is
a
perfect
time
to
start
getting
that
feedback
in
we've.
C
Got
so
we
there's
an
on
rejected
call
back
so
when
it
rejects
it
calls
on
rejected.
So
by
default
it's
a
503,
HTTP
error,
so
it
sets
this
and
then
it
kicks
it
out
on
the
way
out.
You
can
set
your
own
HTTP
message,
so
you
can
do
like.
Oh,
you
can
add
whatever
field
you
can
add
whatever
flag
to
the
out,
go
and
request
when
it's
rejected
and
you
can
have
something
else,
like
your
load,
balance
or
equivalent.
Checking
this
and
saying
alright,
this
server
is
overloaded.
D
C
C
A
A
D
B
C
Have
one
more
chart:
this
is
just
so
the
Mexican
currency,
how
many
things
you
let
in
at
a
time
we
tried
a
bunch
of
stuff
to
get
like
a
good
default
value
to
get
something
that
automatically
set
a
default
value
for
you
and
basically
it's
really
confusing
and
the
thread
pool
has
a
lot
of
magic
going
on,
and
so
we
advise
start
at
low
measure
perf
in
production
or
under,
like
simulated
load.
That's
pretty
close
to
what
you
expect
in
production
and
then
increase
it
slowly
and
when
you
fall
off
a
cliff
back
up.
D
C
What
we
want
to
avoid
is
like
oh
I'll,
just
start
it
at
like
a
hundred,
and
then
you
still
get
thread,
pool
starvation
and
you're
like
no
doesn't
help,
or
you
said
it
to
like.
Only
we
allow
only
one
thing
in
this
like
20,
core
server
and
you're
like
wow.
This
middleware
just
makes
things
worse,
so
we
want
like
good,
enable
the
middleware
and
see
if
it
actually
helps
and
then
like
make
a
good
decision.
Yeah.
D
D
We've
we've
had
quite
a
few
questions
on
it.
We
have
another
one
in
in
the
Ticketmaster
example.
If
I
have
a
ticket
in
my
basket,
you
know
quests
get
prioritize.
Do
I
just
need
to
be
pushed
off
to
a
different
server
once
past.
That
initial
request.
That's
that's
the
kind
of
thing
we
you
and
I
talked
about.
If
you
have
a
farm,
is
there
a
way
that
you
could
redirect
traffic
to
one
of
those
servers?
And
then
we
had.
Another
question
needs
to
be
one
one
in
earlier:
requests
equals
connections
not
necessarily
think
about
signal.
D
A
C
Food
there's
a
lot
of
so
like
one
of
the
best
parts.
It's
all
the
social
activities
with
other
into
so
we
have
like
board
game
parties
like
after
work
on
Thursday,
and
we
bring
a
couple
boxes
like
we
have
30
40
different
board
games,
maybe
like
30
40
different
people
play
a
lot
of
a
lot
of
cou
some
Catan
a
century
spice
Road,
it's
a
lot
of
like
new
and
exciting
board
games
and
you
get
to
like
try
out
different
people's.
C
So
that's
one
of
my
favorite
things
this
summer,
like
Sunday
afternoons,
we
have
a
group
and
we
all
go
over
to
like
someone's
air
B&B,
we're
all
like
meal
prep.
For
the
week
we
get
like
good
five,
six
hours
of
like
cook
and
hanging
out
on
the
couch.
So
it's
great
to
you
know
be
out
here
in
Seattle
and.
A
C
B
D
Interns
there
were
high
school
interns
there.
Internship
was
working
on
Scott,
you
and
ahold
of
one
of
those
cool
devices
working
on
little
devices
like
Mike
Mike
son
has
one
called
the
meow
bit
and
they
actually
build
web-based
tools
where
you
can
write
games
that
can
be
downloaded
to
devices
like
this,
and
these
kids
are
in
high
school
and
they're.
B
D
Us
that's
it's
fun!
It's
great
I'd
like
to
applaud
your
internship.
Your
second
wendi-go,
that's
good
stuff,
was
a
good
time.
What's.
B
I
have
a
couple
question:
I
would
say
that
until
I
could
hear
from
the
people
in
the
chat
and
then
in
the
YouTube,
but
I
purchase
it
there's
probably
some
professional
developers
of
dotnet
that
might
been
in
this
in
this
15-20
years
were
these
10
years.
Rather
that
don't
know
things
like
thread
starvation
and
how
these
things
work.
Did
you
figure
this
out
on
your
own,
or
is
there
a
class
on
this?
How
do
you
know
this
at
your
age
and
what
what
course
did
others
not
take.
C
B
B
D
As
we've
seen
many
times,
I
mean
you
know,
sync
over
a
sink
is
something
that
a
lot
of
deaths
have
a
difficult
time
coming.
You
know
coming
to
dotnet
core,
if
you're
switching
from
framework
to
core
you
know,
you
think,
is
the
thing
I
don't
know
how
many
times
I'll
go
with
three
we'll
say
three
three
times
Fowler
has
said:
there's
no
such
thing
as
a
sink,
and
he
starts
yelling
at
me
again.
So
now,
I
know
better
facing
tasks.
D
C
B
D
A
B
C
C
A
D
C
A
A
C
So
Avalon
you've
got
a
so
there's
roles
and
different
rules
know
different
things
about
different
people,
and
so,
when
you're
playing
this
in
person,
you
have
to
do
like
heads
down
thumbs
up
and
then
alright.
These
people
put
your
thumbs
up.
These
people
open
your
eyes
thumbs
down
eyes
down,
and
now
these
other
people
and
then
someone's,
like
oh
I,
heard
someone's
our
move.
C
We
have
to
restart,
and
so
this
gets
tricky,
and
so
what
this
does
is
it
lets
you
like
make
rooms
so
like
here
rady
on
the
left,
wow
he's
made
it
room,
you
can
enable
you
can
disable
different
roles
over
here.
We're
I'm
Dylan
I
can
click
wow
join
and
we
see
like
two
out
of
seven
players
and
when,
oh,
that's
not
enabled
anyway.
C
C
Yeah
I
did
I,
make
it
okay,
when
it's
fully
functional
cool.