00:00:00.900
foreign
00:00:12.840
word that describes my relationship with
00:00:15.299
Ruby on Rails
00:00:18.660
Michelle
00:00:19.920
but love
00:00:21.119
fun magic it's complicated
00:00:25.199
yeah I think complex yeah complicated
00:00:28.199
works very facebook-esque answers you
00:00:31.859
know you have your relationship status
00:00:33.480
yeah it's complicated for me on Rails in
00:00:36.300
one word would be empowered you can do
00:00:38.940
so much with something that in the grand
00:00:40.860
scheme of the world is kind of small one
00:00:42.840
of the key problems that Shopify is
00:00:45.239
trying to solve it would be unreals is
00:00:47.040
to get it to scale to a massive size a
00:00:49.739
lot of the problems we are trying to
00:00:51.000
solve are like how to make rails easier
00:00:53.460
for new developers how to make rails
00:00:56.039
easy to work with with Elijah teens
00:00:58.260
we're solving problems anywhere from
00:01:00.180
security to speed optimizations
00:01:03.239
enhancements we're really thinking about
00:01:05.220
the future of rails and how we can help
00:01:07.799
it continue to grow with the needs of
00:01:09.600
its user base it keeps changing and it
00:01:12.000
keeps getting better like rel7 is one of
00:01:14.700
the most exciting releases of rails ever
00:01:17.159
like who can say that after having their
00:01:19.439
framework be around for I don't know
00:01:21.600
since 2004 or whatever else was created
00:01:24.000
why do you continue invest in the Ruby
00:01:26.939
or rails Community I like this question
00:01:28.979
I really like this question we continue
00:01:31.380
investing in Ruby and rails to make sure
00:01:34.380
the language and the framework are 100
00:01:36.659
Year languages and Frameworks and they
00:01:39.299
are top choices for new people coming
00:01:41.579
into the community and they continue
00:01:43.619
working for Shopify as well it's not
00:01:45.780
just an investment in the technical side
00:01:47.700
of let's only do stuff that benefits us
00:01:49.680
let's only do features that Shopify
00:01:52.259
needs it's features that everybody needs
00:01:54.479
to scale and grow and use rels and Ruby
00:01:57.720
for the foreseeable future programming
00:01:59.640
in Ruby makes me happy using rails makes
00:02:01.979
me happy and I want developers around
00:02:03.840
the world to feel the same joy that I do
00:02:05.939
when I'm developing rails applications I
00:02:08.759
feel like I really belong to this
00:02:10.560
community and I feel like people deserve
00:02:13.200
to feel that way there's so many really
00:02:15.660
nice and talented people who share their
00:02:18.480
knowledge and so many people that I look
00:02:20.459
up to
00:02:22.099
now that the end yeah
00:02:25.920
it's a wrap
00:02:34.440
hey everyone uh this is a really big
00:02:36.540
room uh welcome to day two I I'm Mike I
00:02:39.599
work at Shopify I've been asked to say a
00:02:42.239
few words uh they're my employer though
00:02:44.220
so it's going to be a little one-sided
00:02:46.040
uh that said I am happy to have a candid
00:02:48.959
conversation about what uh what it's
00:02:51.480
like to work at Shopify so if you want
00:02:52.980
to find me and have a good conversation
00:02:54.480
about what what I like and what's
00:02:56.280
painful happy to do that uh so let me
00:03:00.000
start with a simple a simple fact which
00:03:02.099
is that Shopify and rails have really
00:03:04.080
grown up together both were just you
00:03:05.940
know little baby things in 2004
00:03:09.360
um when our CEO Toby was one of the
00:03:12.720
original rails contributors as well as a
00:03:15.900
rails Corps member and shopify's product
00:03:18.300
was built on top of rails and uh the
00:03:20.700
rails Doctrine was part of our
00:03:21.900
engineering culture so if you think
00:03:23.700
about like developer happiness Omakase
00:03:25.860
menus uh sharp knives Majestic monoliths
00:03:29.040
it's all it's all here
00:03:33.480
shopify's product vision is pretty
00:03:35.760
simple we want to give entrepreneurs
00:03:37.140
everything they need to run their
00:03:40.440
business online and focus on what makes
00:03:43.260
them great
00:03:44.840
uh so
00:03:46.980
uh
00:03:49.080
sorry about that I'm trying to balance
00:03:50.879
two laptops up here
00:03:53.159
um
00:03:54.659
so in addition to the storefront
00:03:56.099
experience and the payment gateways
00:03:58.440
thank you Evan you're so kind
00:04:01.379
um so in addition to
00:04:03.180
um payment gateways we're also doing
00:04:04.620
things like Merchant financing we do we
00:04:07.440
have warehouses for Drop Shipping we're
00:04:09.000
trying to get all of our Merchants to be
00:04:11.040
able to do one or two day shipping to
00:04:12.420
compete with Amazon so if you think
00:04:14.220
about it like we're we're trying to help
00:04:15.659
Merchants build their own brand and just
00:04:17.459
focus on what makes them what makes them
00:04:19.440
great
00:04:20.400
uh
00:04:21.600
we actually are featuring two Portland
00:04:23.940
local Merchants here this week if you
00:04:26.280
want to stop by the Shopify Booth one is
00:04:28.139
a loop which are uh earplugs for uh for
00:04:31.560
quieting and on the noise of the world
00:04:32.699
and the other one is Smith T who
00:04:35.280
actually have a tasting room here in
00:04:36.600
Portland so if you're interested at all
00:04:38.400
in uh I think that we have some samples
00:04:40.440
and stuff down there too just stop by
00:04:41.940
the booth and check it out
00:04:44.280
um but I want to come back to
00:04:46.320
um to to to rails right so we're able to
00:04:49.440
actually scale all the way up from those
00:04:51.120
small Merchants to huge Merchants like
00:04:53.460
Sephora Budweiser or Red Bull and we do
00:04:56.940
it all with rails
00:04:59.220
um and Shopify success is due to rails
00:05:01.620
and so we want to try to pay that back
00:05:03.000
as well as we can and so I want to just
00:05:06.180
spend a minute talking about
00:05:07.800
how we pay off that date how we pay off
00:05:10.139
that debt but also contribute back to a
00:05:12.120
much larger goal so what's really common
00:05:14.160
inside Shopify to talk about wanting to
00:05:16.440
be a 100 Year company and just like
00:05:18.720
think about that for a second like 21 22
00:05:20.699
if Shopify is still around what will be
00:05:22.560
different about the world that feels
00:05:24.479
like a super ambitious dream
00:05:27.120
um
00:05:27.840
but part of my job is to think about
00:05:29.280
what is the tech stack gonna look like
00:05:30.600
for Shopify in 2122 is it still going to
00:05:33.060
be rails like mind blown if it is I want
00:05:36.900
my team to have contributed to making it
00:05:39.780
true
00:05:41.100
so
00:05:42.539
how do we make Ruby and rails 100 Year
00:05:44.460
tools I think the um it's not just
00:05:47.340
making rails great for new projects it's
00:05:49.500
things like I have a list
00:05:52.380
um
00:05:54.180
production performance making sure that
00:05:56.100
you can actually scale out when you need
00:05:57.539
to it's a well-formed opinion it's an
00:05:59.280
application architecture
00:06:01.080
it's easy upgrades it's great editors
00:06:02.940
it's avoiding anti-patterns in your code
00:06:04.740
base it's about choosing when you want
00:06:06.720
to use the power of types in your code
00:06:09.120
base so Ruby and rails uh
00:06:13.560
hmm sorry so so the idea is we want to
00:06:16.979
like Define what relative scale means
00:06:18.900
and it means not just thousands of
00:06:20.280
Engineers millions of lines of code
00:06:22.380
billions of web requests but also
00:06:24.240
hundreds of years this is the goal this
00:06:26.460
is what we're trying to shoot for at
00:06:28.199
Shopify and on my team which does a lot
00:06:30.060
of the open source work that you've
00:06:31.440
heard about so just a quick rundown
00:06:34.080
we're trying to improve tooling be open
00:06:36.060
source a lot of the tools that we use
00:06:37.500
we're trying to make vs code the best of
00:06:39.539
breed Ruby editor we added rails support
00:06:43.380
to sorbet we're working on making
00:06:45.419
upgrades automating upgrades to rails
00:06:47.940
easy
00:06:49.039
we're trying to focus on Ruby
00:06:51.000
performance so we we created yjit we're
00:06:53.460
working with Oracle on shuffle Ruby
00:06:55.139
we're doing variable with allocation
00:06:56.819
we're working on object shapes and we
00:06:59.220
also just announced a half a million
00:07:00.660
dollars in funding for computer science
00:07:01.979
researchers
00:07:03.660
finally we're trying to work on the
00:07:05.520
security of the ecosystem so we've been
00:07:07.259
contributing Upstream to bundler and to
00:07:09.319
rubygems.org and in a couple of weeks uh
00:07:12.539
we're going to announce our long-term
00:07:14.100
partnership with Ruby Central that I'm
00:07:15.539
pretty excited about related to uh the
00:07:17.940
open source supply chain so uh keep your
00:07:20.759
eyes open for that one
00:07:22.919
so the video you just watched was all
00:07:25.919
folks who are on my team at Shopify some
00:07:28.020
of those faces are probably familiar
00:07:29.220
because they are world renowned experts
00:07:31.199
some of those faces are not familiar to
00:07:33.479
you someday they will be because we're
00:07:36.000
growing the next generation of Ruby and
00:07:37.919
rails experts as well who can continue
00:07:39.780
the work and hopefully give us a chance
00:07:41.220
at having a hundred year tooling and
00:07:43.080
ecosystem
00:07:45.599
anyway that's it that's all I wanted to
00:07:47.280
talk about for Shopify
00:07:49.199
um hopefully I've explained a little bit
00:07:50.400
behind our motivation we're not so big
00:07:51.840
and scary we're just a group of people
00:07:53.220
who are trying to do our best to make
00:07:54.660
Ruby and rails last as long as possible
00:07:57.840
um again if you want to talk about
00:07:58.800
working at Shopify that's great but my
00:08:01.020
real hope is that you get to use some of
00:08:02.639
our software and that's someday we get
00:08:03.960
to collaborate with you on making Ruby
00:08:06.060
rails 100 Year tools thanks