Player is loading...

Embed

Copy embed code

Transcriptions

Note: this content has been automatically generated.
00:00:00
yeah
00:00:02
and the colour okay hello everyone i my name is much a yeah i work in a
00:00:06
wire in berlin uh we're doing this um encrypted
00:00:10
secure messenger and we use colour on under it
00:00:14
uh but today's uh talk will probably about that um the talk will be about something called solo
00:00:20
out tomato to some way to model complex distributed
00:00:23
complacency but it's not a library it's uh another
00:00:27
but the framework you will not be able to do something
00:00:31
useful with it immediately uh it's a concept in a computer science
00:00:35
of just maybe one day when you design your project you
00:00:38
will just think ah this is something that i can use castle
00:00:42
but it needs some work for me um we will talk for a moment in a moment uh what are some of
00:00:48
them are plain detail will will talk and what's a history
00:00:52
of that in computer science and what are the practical um
00:00:56
you sets of it but um practical usage was arm kind of complex
00:01:01
and i don't know have times and to talk about that um in forty
00:01:04
minutes so we will more focused on simple examples because solar automatic can
00:01:10
also be used for something on and pretty just to generate some pretty uh
00:01:16
being things on the screen so there will be come with game of life which is like the
00:01:21
for the first of the most important uh it's a lot
00:01:24
of martin and not talk are adults or automatic can be
00:01:27
done without masonic it there will be like constant another example
00:01:32
and like constant if we apply some modifications and make it colourful
00:01:38
it can create some interesting current pictures uh then i would
00:01:43
like to tell you something about connection between similar automata and
00:01:46
affix our intelligence and if we have time that would be
00:01:49
one more example connected to that okay um so what exactly are
00:01:55
it's or some art um in a way we can say that this
00:01:59
is a um we can complex processes by breaking them into sets of rules
00:02:04
apply it again and again over time on data spread over out like the discrete board of
00:02:10
cells so we we have something very complex but there is some way to make it simpler but
00:02:15
eternity if we can do it with some of the matter we need five thinks for that we
00:02:21
need a cell which is like a data structure in and in scallops will be a case class
00:02:27
uh when the board which is a like a a a collection of
00:02:30
cells that it's also structure in space so uh in cases colour that will
00:02:35
be our map of positions on the bottom to do is all brought
00:02:39
to sell so themselves and map does not necessarily have to be two dimensional
00:02:45
i will come back to it in a moment um there is a concept of neighbour fruit unable who'd
00:02:51
is if we have a simple cell and the tape instant also and we want to uh up and
00:02:58
computer the data for doesn't also don't we can access the
00:03:02
data of the cells around that so to classical ways to do
00:03:07
is to classical neighbourhood are vaughn and i'm i'm a neighbourhood with this like we have a set on a two dimensional board
00:03:13
and we have cells up down left and right and that and that
00:03:17
there's some more neighbourhood loses like all eight still surrounded but uh boards
00:03:23
can be also three dimensional can be multidimensional this is at anything that
00:03:28
has any space and also a cell doesn't have to be square can
00:03:31
be for example hexagonal boards are kinda interesting current popular um so yeah
00:03:38
we have this concept of neighbour fruit which is gonna will be our
00:03:41
funk some from a cell one map all this other cells that are in the neighbourhood and their distinctive
00:03:48
pa systems um and this is important because it means that some of them up
00:03:53
at work on local data you don't have to access something that is very far away
00:03:59
us um there are rules also uh rules are simply functions from muscle
00:04:05
to us all i'm awesome itself is in multiple witches would also in sky
00:04:10
makes it easier to use but uh we're taking the so we're taking the
00:04:14
neighbourhood of that's all but we can take that neighbourhood from the cell itself
00:04:19
and we create a new updated for some of that solid some new data
00:04:24
and then we want to get the data and apply the same rules
00:04:28
again and again and again so we need some kind of a loop
00:04:33
in case it's colour that will just iterate or over the whole map um
00:04:40
yeah uh that sold that's exactly it gives them the basics um the his story is
00:04:46
a bit more complicated the grandfather also learn how to mark them is john but my mom
00:04:53
someone lemon is a guy who invented quite a lot of computer science or just
00:04:58
after the war in the forties um he had this idea that we can have
00:05:03
like a factory of robots and to the robots can take resources from the environment
00:05:10
and they can created their own copies and those copies of the robots can create their
00:05:14
own copies taking there is also some moving around um this was clearly a inspired
00:05:21
by battery this isn't microbes moving around into to this is eating some is also smooth
00:05:26
spank and so on and since he was from my mom then he when he
00:05:32
gets this idea he wasn't gonna want immediately but anyway format them up to sounds there
00:05:38
this'll smells like chemistry and from what the madison's we would like to
00:05:42
have something that is more well defined maybe not simplified but more abstract so
00:05:48
don't moment you sometime to create some definitions and terms but he died soon after
00:05:55
and only a few decades later another guy stephanie waltham
00:05:59
who is pretty active and alive still um the to get
00:06:03
that idea and i'm like advanced under developed more about that
00:06:10
he uh mainly focused on the a one dimensional summer automata
00:06:15
which you might scenes somewhere or this is this
00:06:18
tract also it's called should shaping ski spangled and
00:06:22
um well it's not the board it's one dimensional solo ultimatum means that the board is just a line
00:06:28
and we every cell has only two neighbours to the left and
00:06:31
to the right and in case of staten both france and ideas
00:06:36
at that sell itself has only one bleeding of data so we
00:06:40
can be either white or black and can change its mm data and
00:06:46
i'm looking at this to naples to the left up to the right so in this
00:06:51
case that triangle is created like that that
00:06:54
we have this one line bought horizontally about
00:06:58
vertically it's time so we can see that the triangle
00:07:02
unfolds on over the the license um vault from created
00:07:08
a set of rules like these uh that say that
00:07:12
if we have for example only one soul descent also other
00:07:16
which is black and there are two cells around that with a
00:07:19
white done in the next to license that's all we'll stay black and
00:07:24
if that if the so this light but there is a neighbour which is black this out due in the next isn't would like as well
00:07:31
but if then we go to the next day sun and if we have three cells and the scent also is back then and
00:07:36
then even next iteration that so with white um yeah so donnelly
00:07:42
looking at it this way he created some naming conventions and classifications he
00:07:47
not this to that most of the uh similar to martha i
00:07:51
like it is a pretty boring can stable there are some solar of
00:07:55
tomatoes that up chaotic thing just make a mess on the boat
00:07:58
and nothing interesting concept of it but somewhere in the middle between them
00:08:03
there is a like and this interesting part that is both chaotic and stable their
00:08:09
patterns which are um and and thought would
00:08:14
unfold okay optically but then they him come
00:08:17
to the moment of stability but a perfect stability than they unfold again and we
00:08:22
can use that for compute basins or for something like that that is all intelligence um
00:08:28
okay but what a practical um implications of all that first of all if you ever looked at
00:08:36
dave what are and ask you saw okay we'll be did you remain england was on for the whole
00:08:41
week it won't probably um then that somewhere there
00:08:46
and the the whole forecasting there is probably a
00:08:49
model that looks a bit likes it like it is like some of them up and only more complicated
00:08:55
we have a plan that but we don't have like a one single equation that can tell us
00:09:00
about that whatever on the whole planet in stat
00:09:03
we divide the planet into smaller cells friedman's on all
00:09:08
sort of and in every cell we have some physical processes we have at most here
00:09:14
we have some land and water we have
00:09:18
to uh cut sandwiches warms all this we
00:09:22
had some uh uh when conditions and so on and this is not magic we exactly
00:09:27
know from physics how it works how uh this will change over time so we can
00:09:32
take that this data in one so we can apply the
00:09:36
rules than the physics and we can also look at the uh
00:09:41
cells around the two created updated person of our cell and then again and again iterating over
00:09:48
this we at some point to create our forecast
00:09:52
also doubt what are in the next day next
00:09:55
tuesday uh apart from whether for casting um some
00:10:00
automatic can be used for modelling physicals for example you
00:10:03
know the dynamics of flutes is are pretty complicated
00:10:07
somehow that we can seem like all things that are
00:10:11
somehow related to real world had space we we have uh oh if we have a plan that we
00:10:16
have i'd like a system always have some kind of an economic and um then we have some rules
00:10:22
adopted a local because in the old things that
00:10:25
do not happen at immediately everywhere some data it's something
00:10:29
happens in one place and it's only slowly propagated over the whole system then we can use some a
00:10:34
lot of the matter uh to simulate that uh we can of course also use that for my troubles
00:10:40
that's called artificial life and it's like going full circle from a microbes which inspired some of them up
00:10:47
sorry we can use the uh it also proves some kind of
00:10:51
a low level activism intelligence i will come back to it later
00:10:55
but uh one more think is that we can generate data for which still ultimate power
00:11:02
uh this is use include some but it can also be
00:11:05
used simply to create something that looks nice um alright the the
00:11:13
game of life was invented to buy this guy uh
00:11:19
john conway who is a professor emeritus in princeton
00:11:23
i think and uh it's important because it's like the
00:11:27
simplest various on all of a of a similar
00:11:31
ultimate on which is still this interesting kind it's not
00:11:36
stable is not chaotic it creates battles so all the idea is like it is we have a cell
00:11:43
which can be also we have only one billion of data we can uh we can be alive or that
00:11:49
we have a board which is like get typical to the mental bought uh in fact in the seventies
00:11:55
the first game of lifeless plate on the board of checkers not on the computer we have the malls
00:12:00
neighbourhood sold for a given sell we had eight
00:12:04
cells around that with from the neighbourhood and doubles goes
00:12:08
like that even the cell is that the slight but
00:12:13
in the neighbourhood we have free cells that are alive
00:12:16
then the next in the next it away some dots and also will be alive if the
00:12:21
cell is alive and in the neighbourhood we have two or three cells that are alive as well
00:12:27
then that's somewhat will stay our life in the text me next
00:12:30
to my son otherwise the cell will die either because sauce like
00:12:36
it's south that's two maps or it's too loudly and this is one way so you the first example
00:12:48
that was thinking of life yeah so we can create some populate the board first
00:12:54
because of the bodies only whiter than nothing really interesting is happening but we've we
00:13:00
at some black that this life styles on that it will go like this we
00:13:05
have we can see that we have some uh stable thinks for example we can do
00:13:10
see that uh this part is just flipping around from one uh save to another but
00:13:17
nothing really happens we can see that we have some chaos here we don't really know
00:13:22
what will happen in the next few days since about that but also had something very
00:13:26
interesting this is uh it's the call the glider like like there is moving around like this
00:13:33
uh it's not in the existing like i it serves its cells the bounce slipping from white to to black
00:13:39
and we only see it as an object about it's
00:13:42
early but it's stable but dynamic and then it hits something
00:13:47
but um okay it just disappeared anyway we can see that we have still some
00:13:51
chaotic part of the screen what's and that's basically all here i'm going back to the
00:14:03
oh wait it off or did it with our um
00:14:15
okay let's go back to this oh
00:14:20
okay so how to how can we do it in scanner um we have that
00:14:25
we just have to implement all those things of cell abort
00:14:29
neighbour who turtles um we have a case class game of life
00:14:34
with its takes a boolean um and it's
00:14:39
well it also has to have an access to the boat but the problem is
00:14:42
the board also has to have an access to it sell so we can't create
00:14:47
a cell which let you know about the ball to to stop it creates like and
00:14:51
i can take an problem we can go around the by making it more lazy instead
00:14:56
of having the sell out of uh giving the so the refers to the boat we
00:15:00
can give it information about its own position on the boat and we can you give
00:15:05
it a function because we need that refers to the board to find the neighbour put
00:15:09
them on it before but if we simply gave a fax on that will find upon
00:15:14
another cell on the board then we don't really need the boat yet we really need
00:15:19
the boat only in the moment of looking for that's all um and that works we can
00:15:25
go around the the bigger that the problem um so then we need a method which is which i called up
00:15:32
to date the method implements the rules um would rub off
00:15:38
and on that we need to class board which takes the
00:15:43
demands on the we need to know how big the board is
00:15:46
and it takes a map all's a lot from some identify us
00:15:51
to the cells game of life and for that when and in
00:15:56
that board we implemented a fine sell matt out and we um
00:16:01
implemented um that of that will create a new board from the existing clung depending on although it's um
00:16:09
the thing is i told you before about the the map
00:16:12
is uh on yeah well only temples as opposed to the
00:16:17
game of life but to the to the cells but uh let's think about it a
00:16:20
bit um they can't be really want to one person is not really out in eden
00:16:25
to fire um and that's like because um we have about like this even if we
00:16:32
talk about a cell in the middle of the ball than okay we have all the hate
00:16:37
naples around it but what happens if we talk about a a cell which is on the
00:16:41
ads or in the cotton that's like literally a call in that case you um the site cell
00:16:47
has only three neighbours and we would i don't
00:16:50
need to do some colour cases uh rules exactly
00:16:55
for those cells all we need to change the board somehow for example we can make it into
00:17:02
um like we talked before into a planet if we have a
00:17:07
um if we can wrap around our board than uh when would uh uh
00:17:12
when we talk about the board on the left and we don't want to
00:17:15
take a neighbour from even more to the left on this one then we
00:17:18
seem to go around and we take the neighbour from the most right to possess
00:17:23
and vice versa the problem is on the polls that the polls steel
00:17:28
can't have that is uh we we can still can't move from the most
00:17:32
norton most upper or on the um on some disposal to this possible but
00:17:39
in case and i work a solo to martin but we can do it again
00:17:43
you can wrap it again we can create something that is called the porous it's looks like this doughnut here
00:17:50
and um and display we have the possibility to moves
00:17:54
both ways either horizontally and vertically and there is no
00:17:59
a corner cases anymore um well there are
00:18:02
no planets that look like this in the reality
00:18:06
uh but uh it it is you sometimes in video games i think in looking them up online
00:18:11
i think i so i'm ought to see these days on and this is basically because of that
00:18:16
we don't and if we use a board like this in a game we don't need colour cases
00:18:21
uh that's alright we have aboard the boat is i'm calling keeps next the
00:18:26
methods to create doubt another bought and another board and so on all the time
00:18:32
and in skylark that will be on it that i to write all thoughts simply a class that
00:18:38
creates new boards every time there next method is
00:18:43
called um uh so we implement that class it's
00:18:47
cindy and iterate over the uh the board we caught ultimatum and for that we
00:18:54
need a arguments on again the size of the board we need a funk some
00:19:00
that we'll uh take the pulses some also on the board and the function that will
00:19:06
well well but what's with this is a matter this will be a function that we all
00:19:10
uh find another cell on the ball the basic on the possible and that sell will
00:19:16
be created from the method um then we also need another matter that we'll create a board
00:19:24
from the bought wielded half thought this would be called like
00:19:28
board in doubt tomato and apply bought takes the dimensional and takes
00:19:33
a function that will create cells in that new board and this
00:19:38
is probably the most magical line in the whole product into the um
00:19:43
we created ball first also bought by applying does mm method applied board that takes
00:19:50
the demands on and ah um thanks and that creates sells a and apply cell
00:19:57
takes the position on the board but it also needs a funk some that
00:20:01
will find cells on the board and the board is not it created display
00:20:06
well we can go around that this is this is exactly the the way
00:20:10
and the rest is that it till we have then next method would simply
00:20:15
creates a new for some of the board we have a house next fall because this is the director but it
00:20:20
this house next is always true and then we can do all the things that iterate else can do in scanner
00:20:28
alright i'm so another example here line comes and it was created by
00:20:34
cool stuff for like ten eighty six um this is a bit different if
00:20:41
in case of the game of life we had a dose microbes all over the
00:20:45
board in case of like guns and we have just like one on one cell
00:20:49
but it's doing something and so the rules goes like this we have a cell
00:20:54
again like a white although in the next person it will be more colourful
00:20:58
we have the direct sun we like we have heaved a cell has an aunt
00:21:03
and what we're interested in the really is does that directs and and this had
00:21:07
ink um or it can be known if there is no and on the cell
00:21:13
the boat is again to demands on all the neighbourhood this time is on leave on
00:21:17
no human so that means that we are only interested in the up down left right puzzles
00:21:22
alright and that i think is that uh now we have two rules so that not not
00:21:29
only one the first two is about the um eat food that um how the and is moving
00:21:36
and okay this is a bit complicated on the screen but basically if
00:21:40
we have a central a cell we're looking for on and in that neighbourhood
00:21:45
if there is an and in the neighbourhood we're moving down and
00:21:48
to the central soul and then depending on the colour of that central
00:21:53
so we either take it and to uh to me right if
00:21:58
the colour is white hot to them left if the colour is black
00:22:04
otherwise if there's no and in the neighbourhood the cell will stay the same
00:22:09
um there's also about the colour or if there is snow and then the colours stay the same
00:22:16
otherwise if we have an hour and then we will uh
00:22:20
i'll change the colour of the so right it's so it's not
00:22:27
so we start with a simple single place we
00:22:30
just run the whole thing and like this and is
00:22:34
moving into this kind of how chaotic button even though
00:22:38
they're also pretty simple it creates something like um may
00:22:42
is um that we now uh that after some
00:22:46
time no matter how knots we can even at some
00:22:49
older and on the screen or the or some obstacles
00:22:53
if there's enough time that and will at some point
00:22:58
uh create a stable battle but dynamic stable purple okay
00:23:03
um and it will just move like this on the highway
00:23:07
going in one direction until it until it hits the something that was
00:23:15
already created before and then again it will go to the chaotic face
00:23:20
and at some point it will go back to the to creating that part on
00:23:25
if there is a possibility for that and or right let's go back to the
00:23:33
thus or okay
00:23:44
okay so how to do it again uh we have a case plus lincoln and we have
00:23:49
a caller would have a direct zone we have couples us on and off and we have the
00:23:54
um the function that will find that may bore cell and you have there
00:23:59
update let out and this is all that we need again to implement that even though like guns and looks very
00:24:05
different from games live now uh because of that we
00:24:08
can think about um making it all more abstract so the
00:24:14
clearly some chi some parts of the code that out the same in
00:24:17
both cases um so concrete dust tried cold ultimate on cell about this
00:24:22
the thing is this is um lower ball of that outcome items sell
00:24:27
uh is itself because for the uh function that finds this
00:24:31
all we need to do it on the cell itself not just
00:24:34
the trait because we need access data of that likes that
00:24:38
sell that liked unsound game of life or whatever um yeah but
00:24:43
all the rest all the rest is in basically the same in both cases and we can now we
00:24:49
write to the board and we divided out on
00:24:51
apple using that right instead of about a particular class
00:25:00
and this is also one thing that um this is the
00:25:04
first time michael you have a skeletal grammar backed actually problem up
00:25:08
made a difference because i'm in for a pro because all the cells
00:25:14
are a calculated independently they don't don't always come doesn't stay don't interact with
00:25:20
you to each other so even changing a simple marked the problem up
00:25:24
uh gave me some like thirty percent
00:25:27
of better performance um alright so all
00:25:32
we need now after that saints um is to implement the actual data
00:25:38
of the given how to mark them in this case this is that the
00:25:41
colour and the direct sun and we need to implement rules in the object
00:25:47
met up up there so that again this time in calls so we have
00:25:52
and this time we have a case class that tells us something about
00:25:56
the the colour of the armed and we have a bit different case
00:26:00
class of the cell that tells us that there can be many and
00:26:04
with many colours they don't interact with with its although they just go
00:26:09
from the uh if they are taken to the present all sell they will just moved
00:26:15
away to to write on left they're only interested in their own colours but the colours
00:26:20
would stay in the cell can be um mixed and
00:26:25
um and and get some uh some interesting button let's just see
00:26:35
okay so for example to have three yellow ones level magenta amount
00:26:41
we can add some more now those long siam and and when they
00:26:47
come to the same place like for example here then
00:26:51
the colours mix so we can have blue and red and
00:26:56
so but the and then some of the day just move around as if nothing happened uh although the magenta out one
00:27:03
magenta and if it uh it goes the it if it
00:27:06
was sees another magenta colour made by uh another magenta and
00:27:11
that will impact but the the colour deck and slid different
00:27:15
colours state a completely independent and all soul after some time
00:27:21
create that all highways to call a dynamic battles on here we
00:27:26
can see that they go to do the whole data it always
00:27:31
yeah something like that um alright i'm for something now i will have to
00:27:38
go back to the exact place in the present taxable or that something like that
00:27:49
okay um so uh puff using that idea that we have
00:27:56
so low i'll come out there that can go two phases to
00:28:00
more chaotic and the more stable things we can't think how to use
00:28:05
it to to for like more general purpose uh a puzzle intelligence uh
00:28:12
imagine that uh we want to again we want to do some um
00:28:16
a forecasting we have some cute data set with the data about the
00:28:22
past and the present and how it's changed we can them like divided the
00:28:27
whole thing we can uh uh say that we have uh this represents our
00:28:32
past that this represents our present moment or just like more recent past and
00:28:38
um we get we have some items all intelligence we feed to the uh the past
00:28:44
the data set to the tune of this on intelligence and we get some products all
00:28:50
about the present moment so because we already know the present moment we can then what compare
00:28:57
the the present and that the dixon we can get some feedback and we can start a up
00:29:03
teaching the that i i hear us all next time with me
00:29:08
do the same thing uh that uh dixon will be closer to the truth
00:29:12
and when we think that okay to business tasks like the tools that does like
00:29:16
the present moment we can like move the time window and we can feed the
00:29:21
a. i. the present moment and to get some to dixon about the future and
00:29:26
well i assume that this is a good so that's so if we're talking about that is
00:29:32
on the wrong networks uh that's usually back
00:29:35
propagating uh in in the work here we we
00:29:38
use somehow got tons that um tweak the
00:29:42
uh the neural network into a better products and
00:29:45
in some of the market that is not possible
00:29:48
while if does outcome martin is a complex enough
00:29:54
then at probably there will be a lot of cats results like uh we have
00:29:59
so much of this we want to transform it into so much of that and there
00:30:03
will be some cat isn't present uh or in another way uh you used in that
00:30:09
so so my soul and if there are enough because we have those cats isn't and
00:30:14
we can use some kind of a statistical might dots like we can use journal
00:30:17
quick out got tons of monte carlo that we'll uh up we could else cousins but
00:30:24
quite also um in case of soul automata all the making did a seed and a
00:30:30
simulation better um acquires actually has a better models of uh we'll see work and that
00:30:37
needs actual humour and scribbled a sit down and think about those models uh that
00:30:43
there are some advantages though we have better understanding of the underlying processes we are
00:30:49
i used to think about the space and you we are used to think about local events not
00:30:54
something very complex and the very universal over the whole
00:30:58
system at the not so simple because we just to break
00:31:02
down all the uh a complex equations into something that
00:31:05
can him work only on our central so and it's neighbourhood
00:31:10
the communication is easier because we're talking about things that we can imagine and
00:31:15
we can assume that older people imagine it in a similar way than we do
00:31:21
alright and um for example we can use it's in no ways that that can be wrong
00:31:27
it's not so obvious um my mom my
00:31:33
personal project is uh to use a lot of
00:31:36
them out that in video game um we can think back in an even you know normal
00:31:41
way if we have a a a hero who uh and there's a scene an area and
00:31:48
there are some uh and and p. c.s uh the uh the x. which are being controlled
00:31:54
by the computer and they want to kill the the hero and here was the cables and
00:31:58
disease i'm dan i'm a dick every and p. c. has something like that yeah you need
00:32:04
a test it so we have something like an object well brain that controls that one one one
00:32:10
one correct that in case if we want to think about that uh from the uh sell out
00:32:17
the metal point of view we can think about the whole r. yeah it's once a little automatic
00:32:22
in when there is no zero no no person then uh that's some of
00:32:26
the martin stays stable but uh and tearing the uh the area is like adding
00:32:32
a new data acting changing some cells and that uh that triggers the solar to
00:32:37
martin into the chaotic state and and given if the rules are good then the
00:32:43
of the martin wants to become stable again and can do it by killing
00:32:48
the hero um what we get for free in this situation is that our n.
00:32:53
p. c.s uh communicate with each other all the time and in case of like
00:32:58
a classical approaches the teamwork between n.
00:33:01
p. c.'s is usually a very complicated think
00:33:05
um so how does this equate a this is a link to
00:33:12
uh the place on get help where you can uh see all the
00:33:15
code and the documentation of the product um i'm trying to uh work
00:33:21
the same amount to the same in the rust and to make you
00:33:24
can make it into like a moral um the damn game approaches with
00:33:29
the rest uh you can also see because it's a lot of buttons
00:33:33
like does the concert it doesn't matter which language you use so you
00:33:36
can also see how it to the translates ins colour how this little
00:33:41
there are separate different or similar to it ah for the whole
00:33:46
um doesn't taste and i use that a book by and to looking cecil automata a
00:33:51
discrete universe you can find me out with the of you can find me of wire
00:33:57
you wipe 'em all yet so the so the handles and thank you very much dust
00:34:11
oh
00:34:12
cost of
00:34:16
questions
00:34:23
oh
00:34:25
how did you meet your presentation yes there okay
00:34:34
uh_huh if you want want uh no more this is called videos gripe it's uh usually useful sort
00:34:42
of uh the castle videophone you'd you'd but as you can see something like this is also possible
00:34:54
okay well thank you very much

Share this talk: 


Conference Program

Welcome!
June 11, 2019 · 5:03 p.m.
1574 views
A Tour of Scala 3
Martin Odersky, Professor EPFL, Co-founder Lightbend
June 11, 2019 · 5:15 p.m.
8330 views
A story of unification: from Apache Spark to MLflow
Reynold Xin, Databricks
June 12, 2019 · 9:15 a.m.
1267 views
In Types We Trust
Bill Venners, Artima, Inc
June 12, 2019 · 10:15 a.m.
1569 views
Creating Native iOS and Android Apps in Scala without tears
Zahari Dichev, Bullet.io
June 12, 2019 · 10:16 a.m.
2230 views
Techniques for Teaching Scala
Noel Welsh, Inner Product and Underscore
June 12, 2019 · 10:17 a.m.
1292 views
Future-proofing Scala: the TASTY intermediate representation
Guillaume Martres, student at EPFL
June 12, 2019 · 10:18 a.m.
1152 views
Metals: rich code editing for Scala in VS Code, Vim, Emacs and beyond
Ólafur Páll Geirsson, Scala Center
June 12, 2019 · 11:15 a.m.
4695 views
Akka Streams to the Extreme
Heiko Seeberger, independent consultant
June 12, 2019 · 11:16 a.m.
1552 views
Scala First: Lessons from 3 student generations
Bjorn Regnell, Lund Univ., Sweden.
June 12, 2019 · 11:17 a.m.
577 views
Cellular Automata: How to become an artist with a few lines
Maciej Gorywoda, Wire, Berlin
June 12, 2019 · 11:18 a.m.
386 views
Why Netflix ❤'s Scala for Machine Learning
Jeremy Smith & Aish, Netflix
June 12, 2019 · 12:15 p.m.
5016 views
Massively Parallel Distributed Scala Compilation... And You!
Stu Hood, Twitter
June 12, 2019 · 12:16 p.m.
958 views
Polymorphism in Scala
Petra Bierleutgeb
June 12, 2019 · 12:17 p.m.
1112 views
sbt core concepts
Eugene Yokota, Scala Team at Lightbend
June 12, 2019 · 12:18 p.m.
1652 views
Double your performance: Scala's missing optimizing compiler
Li Haoyi, author Ammonite, Mill, FastParse, uPickle, and many more.
June 12, 2019 · 2:30 p.m.
833 views
Making Our Future Better
Viktor Klang, Lightbend
June 12, 2019 · 2:31 p.m.
1682 views
Testing in the postapocalyptic future
Daniel Westheide, INNOQ
June 12, 2019 · 2:32 p.m.
498 views
Context Buddy: the tool that knows your code better than you
Krzysztof Romanowski, sphere.it conference
June 12, 2019 · 2:33 p.m.
393 views
The Shape(less) of Type Class Derivation in Scala 3
Miles Sabin, Underscore Consulting
June 12, 2019 · 3:30 p.m.
2321 views
Refactor all the things!
Daniela Sfregola, organizer of the London Scala User Group meetup
June 12, 2019 · 3:31 p.m.
513 views
Integrating Developer Experiences - Build Server Protocol
Justin Kaeser, IntelliJ Scala
June 12, 2019 · 3:32 p.m.
551 views
Managing an Akka Cluster on Kubernetes
Markus Jura, MOIA
June 12, 2019 · 3:33 p.m.
735 views
Serverless Scala - Functions as SuperDuperMicroServices
Josh Suereth, Donna Malayeri & James Ward, Author of Scala In Depth; Google ; Google
June 12, 2019 · 4:45 p.m.
935 views
How are we going to migrate to Scala 3.0, aka Dotty?
Lukas Rytz, Lightbend
June 12, 2019 · 4:46 p.m.
709 views
Concurrent programming in 2019: Akka, Monix or ZIO?
Adam Warski, co-founders of SoftwareMill
June 12, 2019 · 4:47 p.m.
1973 views
ScalaJS and Typescript: an unlikely romance
Jeremy Hughes, Lightbend
June 12, 2019 · 4:48 p.m.
1376 views
Pure Functional Database Programming‚ without JDBC
Rob Norris
June 12, 2019 · 5:45 p.m.
6365 views
Why you need to be reviewing open source code
Gris Cuevas Zambrano & Holden Karau, Google Cloud;
June 12, 2019 · 5:46 p.m.
483 views
Develop seamless web services with Mu
Oli Makhasoeva, 47 Degrees
June 12, 2019 · 5:47 p.m.
785 views
Implementing the Scala 2.13 collections
Stefan Zeiger, Lightbend
June 12, 2019 · 5:48 p.m.
810 views
Introduction to day 2
June 13, 2019 · 9:10 a.m.
250 views
Sustaining open source digital infrastructure
Bogdan Vasilescu, Assistant Professor at Carnegie Mellon University's School of Computer Science, USA
June 13, 2019 · 9:16 a.m.
373 views
Building a Better Scala Community
Kelley Robinson, Developer Evangelist at Twilio
June 13, 2019 · 10:15 a.m.
245 views
Run Scala Faster with GraalVM on any Platform
Vojin Jovanovic, Oracle
June 13, 2019 · 10:16 a.m.
1337 views
ScalaClean - full program static analysis at scale
Rory Graves
June 13, 2019 · 10:17 a.m.
463 views
Flare & Lantern: Accelerators for Spark and Deep Learning
Tiark Rompf, Assistant Professor at Purdue University
June 13, 2019 · 10:18 a.m.
380 views
Metaprogramming in Dotty
Nicolas Stucki, Ph.D. student at LAMP
June 13, 2019 · 11:15 a.m.
1250 views
Fast, Simple Concurrency with Scala Native
Richard Whaling, data engineer based in Chicago
June 13, 2019 · 11:16 a.m.
623 views
Pick your number type with Spire
Denis Rosset, postdoctoral researcher at Perimeter Institute
June 13, 2019 · 11:17 a.m.
244 views
Scala.js and WebAssembly, a tale of the dangers of the sea
Sébastien Doeraene, Executive director of the Scala Center
June 13, 2019 · 11:18 a.m.
661 views
Performance tuning Twitter services with Graal and ML
Chris Thalinger, Twitter
June 13, 2019 · 12:15 p.m.
2003 views
Supporting the Scala Ecosystem: Stories from the Line
Justin Pihony, Lightbend
June 13, 2019 · 12:16 p.m.
162 views
Compiling to preserve our privacy
Manohar Jonnalagedda and Jakob Odersky, Inpher
June 13, 2019 · 12:17 p.m.
301 views
Building Scala with Bazel
Natan Silnitsky, wix.com
June 13, 2019 · 12:18 p.m.
564 views
242 views
Asynchronous streams in direct style with and without macros
Philipp Haller, KTH Royal Institute of Technology in Stockholm
June 13, 2019 · 3:45 p.m.
303 views
Interactive Computing with Jupyter and Almond
Sören Brunk, USU Software AG
June 13, 2019 · 3:46 p.m.
680 views
Scala best practices I wish someone'd told me about
Nicolas Rinaudo, CTO of Besedo
June 13, 2019 · 3:47 p.m.
2679 views
High performance Privacy By Design using Matryoshka & Spark
Wiem Zine El Abidine and Olivier Girardot, Scala Backend Developer at MOIA / co-founder of Lateral Thoughts
June 13, 2019 · 3:48 p.m.
752 views
Immutable Sequential Maps – Keeping order while hashed
Odd Möller
June 13, 2019 · 4:45 p.m.
275 views
All the fancy things flexible dependency management can do
Alexandre Archambault, engineer at the Scala Center
June 13, 2019 · 4:46 p.m.
389 views
ScalaWebTest - integration testing made easy
Dani Rey, Unic AG
June 13, 2019 · 4:47 p.m.
466 views
Mellite: An Integrated Development Environment for Sound
Hanns Holger Rutz, Institute of Electronic Music and Acoustics (IEM), Graz
June 13, 2019 · 4:48 p.m.
213 views
Closing panel
Panel
June 13, 2019 · 5:54 p.m.
400 views

Recommended talks