00:00:12.420
hey I'm Joshua I'm the standard engineer
00:00:16.199
with imposter syndrome standing right in
00:00:18.960
front of you and I would like to talk
00:00:21.180
about the first ever published version
00:00:24.420
of rails rails 0.5 it was just Ruby
00:00:29.820
I downloaded it I had to research a bit
00:00:33.559
and I let it run locally and I will show
00:00:38.040
you my journey on how to dig it up
00:00:41.940
install it and run it and we will have a
00:00:45.239
look at some Ruby code so
00:00:48.899
let me talk about rails 0.5 thank you
00:00:52.260
very much
00:00:54.059
um so yeah hands up if you've never
00:00:55.800
gotten a property name wrong in your
00:00:57.719
front-end code or you've never assumed
00:01:00.239
that something was null but actually
00:01:01.559
sometimes your backend does return nulls
00:01:03.480
I can't see any hands up it doesn't
00:01:05.460
surprise me I've made a lot of these
00:01:07.680
mistakes and they've not all made it
00:01:10.020
into production I mean sometimes you
00:01:12.240
find out locally first but still you
00:01:13.860
know the feedback loop can be quite long
00:01:15.479
you make a change you refresh a page you
00:01:17.760
click around in your app and then you
00:01:19.979
make that Ajax request that returns
00:01:21.900
something you didn't expect
00:01:24.540
um at this talk
00:01:25.920
um I'm proposing is really about um
00:01:27.960
finding those mistakes earlier which I
00:01:29.759
call some end-to-end typing for web
00:01:31.320
applications
00:01:32.820
um so it's really about knowing what the
00:01:34.799
data in your front end is you know when
00:01:37.020
is it a string when is it a number when
00:01:38.820
is it an object and when is it an array
00:01:40.740
of objects
00:01:42.240
um what things are optional what things
00:01:43.619
are not optional
00:01:45.060
so spoiler alert a lot of this revolves
00:01:47.280
around typescript
00:01:48.960
um I know dhh doesn't like typescript
00:01:51.479
but he's not here I haven't seen him
00:01:54.000
um and I think it's pretty cool and
00:01:55.259
really helps really helps them move
00:01:57.600
quickly and refactor aggressively
00:01:59.100
without breaking things
00:02:01.340
typescript is kind of only as good as a
00:02:03.659
typed you write
00:02:04.979
um so you can still have your front-end
00:02:06.240
and back-end disagree just in a
00:02:07.740
different way and so what this talk is
00:02:10.020
also about is how do we make this a nice
00:02:12.120
flow from a developed experience point
00:02:14.099
of view
00:02:15.239
um how do we how can we generate things
00:02:17.340
automatically so we don't have just hope
00:02:19.080
that the types that are here and the
00:02:21.180
types over there line up
00:02:23.220
um so yeah I'll show you after a bit of
00:02:24.900
intro the typescript I'll show you how
00:02:26.340
you can make everything line up nicely
00:02:28.220
enforce things automatically and some
00:02:30.420
cool tricks we can play with that
00:02:32.280
um so yeah vote for me and I've also got
00:02:33.780
kitten pictures in my slides um if you
00:02:35.700
like cats
00:02:37.260
after three minutes
00:02:39.840
hi my name is Andy I'm from Germany and
00:02:43.739
currently on a hundred days of code
00:02:46.980
challenge around 70 60 days
00:02:51.900
and I did a sabbatical and then uh at
00:02:55.920
the end of the sabbatical I thought
00:02:57.660
maybe
00:02:59.400
um just focus on Ruby and rails and now
00:03:02.940
stimulus
00:03:04.220
so
00:03:05.760
um my daily job is to talk to GPT
00:03:09.140
and work things out with him or her or
00:03:15.060
it
00:03:16.560
um as a pairing partner
00:03:19.920
yeah that's it
00:03:22.379
hello I'm Andrus I've been like Ruby
00:03:26.400
developer for more than 15 years and
00:03:28.620
about 10 or 11 years ago I presented a
00:03:32.159
talk and one of the local Ruby
00:03:34.980
conferences about how to become Ruby
00:03:38.700
wizard and it's basically been inspired
00:03:42.599
by one of the talks like
00:03:45.900
also more than 10 years ago about wtfs
00:03:49.920
of JavaScript if you know about Nana
00:03:54.540
that's that's the talk uh uh and it it
00:03:59.280
mostly explores more
00:04:02.220
more unknown bits of Ruby and how you
00:04:05.340
can use them in production or why you
00:04:08.459
shouldn't use them in production
00:04:10.980
so that's my pitch and yeah Anders again
00:04:14.580
thank you very much
00:04:16.799
hello there
00:04:18.239
so my name is Mikhail wenchitsky and on
00:04:22.019
daily basis I am a software developer
00:04:24.720
but
00:04:26.520
if you chose my presentation I have a
00:04:29.220
topic that is slightly less technical
00:04:31.860
because I want to show you how event
00:04:35.660
storming looks like so how we can use
00:04:39.479
this Workshop technique to Discover
00:04:42.419
Business processes and then try
00:04:44.820
translate them into the code
00:04:47.880
hello just let me snap a picture so my
00:04:50.699
mom knows where I am okay my name is
00:04:52.979
Giorgio I come from Italy and I know
00:04:56.580
nothing about Ruby absolutely nothing
00:04:59.759
and I work for a company in Italy who
00:05:03.060
that organized conferences in Italy and
00:05:05.759
they say you should go to Bill news and
00:05:07.620
see how your euroka is grab ideas meet
00:05:11.220
people and and come back to Italy so uh
00:05:15.300
uh that's a good idea to be here and
00:05:17.040
show my face to everyone but I have also
00:05:19.020
a story because 23 years ago it was a
00:05:21.419
software developer
00:05:23.100
and not Ruby and
00:05:26.460
um
00:05:27.060
after a couple of years I was developing
00:05:29.160
software I realized I didn't like it
00:05:31.560
completely
00:05:33.180
that that was not what I wanted to do
00:05:35.759
and so actually I was also a good
00:05:39.240
software developer because my boss
00:05:40.979
offered me a really good contract he
00:05:44.100
offered me a lot of money
00:05:45.660
and let's say okay thank you but I quit
00:05:49.500
because this is not what I want to do
00:05:51.840
and after 23 years I lived a lot of
00:05:56.220
different lives I've been author for
00:05:58.440
another director I've been a community
00:06:00.780
manager I'm a community manager now I
00:06:03.479
organize wine events
00:06:05.220
I did websites too and I realized that
00:06:08.940
all the things I've done in life in the
00:06:11.280
past 22 years
00:06:13.460
uh I have to thank
00:06:15.780
the fact I was a web developer
00:06:18.300
and in my story if you vote for me I
00:06:21.600
will show you how the skills
00:06:24.780
uh
00:06:26.060
these important skills I got when I was
00:06:28.800
developing software helped me in every
00:06:30.900
step of my careers
00:06:33.300
so if you want to vote for me my name is
00:06:35.280
Georgia and thank you very much
00:06:39.479
uh
00:06:40.680
okay
00:06:41.880
uh hello my name is chika hero I'm from
00:06:45.720
Japan I'm currently living Berlin
00:06:48.620
so my topic is talking about for the
00:06:53.360
anonymizing database
00:06:55.500
may I ask so do you have the experience
00:06:58.979
to want to have the production-like
00:07:01.199
database
00:07:02.280
let's say so you have to slow queries
00:07:04.979
and you want to optimize and you don't
00:07:06.900
have the
00:07:07.800
like enough data set like a production
00:07:11.039
and you can't produce this is maybe one
00:07:13.380
scenario or there's any other like you
00:07:16.199
if you want to reproduce some like baths
00:07:18.240
and which related to the data then you
00:07:20.880
won't have the production like database
00:07:22.440
so and of course you can't use a
00:07:25.560
production data and how you do that
00:07:28.639
anonymizing database is one way if you
00:07:31.740
want to have it so this stick this talk
00:07:34.500
is for you first I would explain so how
00:07:38.580
to do that I made an open source project
00:07:40.919
for this and then you can use it for
00:07:42.960
this and second I would explain for the
00:07:46.560
what is the internal architectures and
00:07:48.960
also and for the anonymizing there are
00:07:51.900
several approaches to do that I also
00:07:54.240
explained for this and also like when I
00:07:57.120
developing these two I do some like
00:07:59.460
practice like for the tdds or Unix
00:08:03.060
philosophies I would explain as well so
00:08:06.599
um if you're interesting to do having
00:08:09.300
the anonymizing database this this talk
00:08:12.180
is for you thank you
00:08:15.539
hi everyone my name is Alexander and I
00:08:18.780
flew here from Tokyo Japan but I'm
00:08:20.699
originally from Australia if you like
00:08:23.220
making money and not running rails new
00:08:26.220
for every new project you spin up please
00:08:28.379
come to my talk it's called Sinatra is
00:08:31.080
all you need that is all I need to say
00:08:33.599
so thank you very much
00:08:35.520
hey guys my name is Pablo I came to you
00:08:38.279
from Warsaw Poland
00:08:40.039
have you had a chance to play Texas on
00:08:43.740
Ruby the Euro Cup game
00:08:46.380
awesome uh so I had the pleasure of
00:08:49.440
writing that it's Ruby with Justice
00:08:52.680
Sparkle frails and one secret ingredient
00:08:56.459
so I would love to talk about how it was
00:09:00.060
made how it works that it's not
00:09:01.800
JavaScript and it's actually Ruby
00:09:05.100
so guys if you like to play games and if
00:09:08.640
you like Ruby then just vote for me my
00:09:11.100
name is Pablo thank you
00:09:12.959
hi my name is Johnny I flew in from
00:09:14.760
Tokyo and my talk is called Ruby
00:09:18.720
multi-threading and so can you
00:09:21.959
the the so have you ever had a rake task
00:09:25.080
or something where you want to send 10
00:09:27.360
000 emails but each email takes a little
00:09:29.459
bit of time to send and so you want to
00:09:32.040
have some way to do it multi-threaded so
00:09:34.380
you can send a bunch of mail mails at
00:09:36.240
once and not wait for the i o to
00:09:37.860
complete well my talk will explore just
00:09:40.140
simple ways we can write pure Ruby code
00:09:42.660
no no outside gems to implement a
00:09:45.959
producer consumer pattern which will
00:09:47.700
help you do it much faster so that's my
00:09:50.519
talk please vote for me thank you
00:09:52.620
good morning I'm Alexander repnikov I
00:09:55.200
came from Warsaw and my topic is active
00:09:58.080
record includes Probably sounds very
00:10:00.180
simple but in general it there is
00:10:02.820
heightened a quiet issue with includes
00:10:05.820
you can introduce by mistake if you're
00:10:08.040
not conscious so what we what you will
00:10:10.920
learn you will see some fundamental
00:10:13.019
which you probably know already we will
00:10:15.180
talk more about how includes work at the
00:10:18.660
bottom and then I will tell you a story
00:10:21.360
from my project where we had the problem
00:10:24.060
just because of introducing includes in
00:10:26.459
a query we supposed to improve time a
00:10:29.580
load time but we time out that page so
00:10:32.339
it's it will it will be interesting and
00:10:34.800
what's most important you can't test
00:10:37.560
this so you can't optimize to catch this
00:10:40.980
error you need to be conscious and see
00:10:43.440
those red flags if you introduce such
00:10:45.779
issue thank you I'm Alexander vote for
00:10:48.480
me
00:11:02.120
meetups and I would like to share our
00:11:05.040
story how we reactivate the community
00:11:08.360
and how we create our first conference
00:11:12.060
there will be
00:11:13.700
also some kind of
00:11:17.279
tricks and tips and I will try to
00:11:20.240
explain why it is so important to attend
00:11:23.399
to present and to organize and to be
00:11:26.279
part of it but you are the right people
00:11:28.260
so you are here you like to learn so I
00:11:31.860
hope you will choose me
00:11:34.140
hey my name is Adrian I'm the host of
00:11:37.079
friendly RB a tiny Boutique
00:11:39.060
International Conference in Bucharest
00:11:41.459
that's happening next week so if you
00:11:43.860
don't get your fix here you can come
00:11:45.839
with me to Bucharest it's going to be
00:11:47.579
cool about 140 people
00:11:49.700
today I would like to talk to you about
00:11:52.320
building rails apps 10 times faster I'll
00:11:55.380
speak about how internal tools usually
00:11:58.800
Decay over time nobody writes
00:12:00.839
documentation nobody writes tests for
00:12:02.399
them this happens in all types of
00:12:03.959
organizations and then we're going to
00:12:06.959
build we're gonna do some live coding
00:12:08.640
we're going to build an app together
00:12:10.260
it's going to be a cool little booking
00:12:13.980
app you'll see that's going to be
00:12:15.839
production ready end user ready and yeah
00:12:19.440
we're just gonna have some fun so my
00:12:21.120
name is Adrian build rails apps 10 times
00:12:23.579
faster thank you hello my name is
00:12:26.160
yaroslav I'm the creator of super rails
00:12:28.680
YouTube channel and
00:12:31.220
I can talk today about my struggles
00:12:35.339
journey in finding my latest Urban rails
00:12:38.760
job so I've been working with Urban
00:12:40.380
rails for like seven or eight years now
00:12:42.540
but at all levels it can be quite a
00:12:45.360
challenge to find the right position and
00:12:47.339
I'm going to talk about getting your
00:12:49.200
foot into the ground as a junior
00:12:50.399
developer and tips and tricks about
00:12:52.139
finding a job