Summarized using AI

Keynote: Ruby, Community and You

Akira Matsuda • October 12, 2017 • Selangor, Malaysia • Keynote

In the keynote presentation titled "Ruby, Community and You," Akira Matsuda discusses the significance of the Ruby programming language and the community surrounding it. Matsuda, visiting Malaysia for the first time, expresses gratitude for the warm welcome and introduces the concept of the Ruby community, inviting attendees to consider their own participation in it.

Key points discussed include:

  • Definition of Community: Matsuda emphasizes that being part of the Ruby community is considered to be more about having a positive attitude towards Ruby rather than just technical proficiency. He illustrates this with the term 'Rubyist', defined by the language creator, Matz, to mean someone who enjoys Ruby and promotes it to others.

  • Matz's Contribution: He notes that Matz, the founder of Ruby, is still actively involved in its development, but he has expressed that Ruby is no longer just his language; it belongs to the community at large. Matz appreciates the community's role in Ruby's evolution.

  • How to Get Involved: Matsuda encourages participation in contributing to Ruby's development, mentioning that while contributing to Ruby historically has been challenging due to its use of Subversion, efforts are underway to transition to GitHub to facilitate easier contributions.

  • Ruby on Rails Community: He highlights the Rails community as another vibrant component of the broader Ruby ecosystem, showcasing how Rails defines its community as those contributing to its evolution.

  • Social Coding: Matsuda discusses the impact of social coding through platforms like GitHub, highlighting how it connects developers globally and enables collaborative contributions. He shares examples of his own projects and mentions that contributions often come from people he has never met in person.

  • Organizing Community Events: He is involved in organizing events like Ruby conferences in Japan, aiming not just for technical discussions but also for building connections among Ruby users worldwide.

  • Encouragement to Code: The keynote concludes with a motivational message for attendees to express themselves through coding in Ruby. Matsuda believes that Ruby's readability makes it an excellent choice for communication.

Overall, he invites everyone, especially those present in Malaysia, to join the Ruby community and share their coding experiences. The session is followed by a Q&A, providing further insights into the importance of community in open-source development and contributions.

Attendees leave with a newfound sense of belonging to the Ruby community, encouraged to participate and contribute to its growth.

Keynote: Ruby, Community and You
Akira Matsuda • October 12, 2017 • Selangor, Malaysia • Keynote

Speaker: Akira Matsuda (@amatsuda)

Website: http://rubyconf.my

Produced by Engineers.SG

RubyConf MY 2017

00:00:06.190 can't let me start it ah hello hello
00:00:14.480 everybody No
00:00:19.660 I'm Akira I'm from Japan this is my
00:00:23.480 first time visiting this country
00:00:25.460 Malaysia
00:00:27.970 thank you very much thank you very much
00:00:31.220 for having me
00:00:32.840 I found that people in Malaysia are so
00:00:35.270 nice and welcoming actually I found this
00:00:39.230 sign at the airport so yeah thank you
00:00:44.059 for having me and I really love the way
00:00:46.879 you spell the word restaurant you spell
00:00:51.949 it like this restaurant right is this
00:00:56.960 correct
00:00:57.350 okay so restaurant that's exactly how we
00:01:01.190 pronounce restaurant in Japanese so I
00:01:07.970 really love you Malaysia anyway I heard
00:01:18.170 this is the second Ruby conference in
00:01:20.120 Malaysia right and so I would like to
00:01:23.930 tell you I would like to tell you
00:01:26.960 Malaysia
00:01:27.830 welcome welcome to the Ruby community
00:01:34.670 thank you but what is the Ruby community
00:01:43.840 how can we join the Ruby community so
00:01:48.080 please raise your hand if you think
00:01:50.630 you're already in the Ruby community
00:01:52.430 please raise your hand I think not
00:01:57.170 everybody here for those who raise their
00:02:01.430 hand I'd like to ask you why why do you
00:02:04.550 think so what makes you feel like you're
00:02:08.780 in the Ruby community so I would like to
00:02:13.040 tell my story in my case the key is the
00:02:18.230 language the the nature of the language
00:02:22.160 I used to be a Java programmer before
00:02:27.320 before I southern Ruby and when I was
00:02:29.840 level programmer I never felt like I was
00:02:33.050 in the kaabah community I was just a
00:02:36.170 Java programmer but Ruby was different
00:02:41.170 Ruby makes us makes me make me feel like
00:02:44.799 I'm in home so
00:02:49.040 when I was a job with brillo I never
00:02:51.140 felt like it was I was in the community
00:02:54.670 but when I started Ruby I became a
00:02:57.980 Ruby's I guess this is the key phrase
00:03:02.930 and this phrase was actually made
00:03:07.519 created by Matz himself the language
00:03:10.040 designer Matz designed the language to
00:03:16.640 make the programmers happy and also he
00:03:21.700 defined the word robeast so the word
00:03:26.569 means not just a Ruby programmer the
00:03:36.409 word actually defined 20 years ago at a
00:03:42.620 mailing list post here
00:03:44.720 I guess you cannot read this it's in
00:03:46.970 Japanese so in in this post he defined
00:03:51.829 the word Ruby's as something that is not
00:03:56.540 equivalent to Ruby hacker really hacker
00:03:58.579 is a person who is very good at
00:04:02.269 programming Ruby he is skillful
00:04:05.000 at Ruby but Ruby's means someone who's
00:04:13.860 we have the positive feeling towards
00:04:15.780 ruby and who wants to do something for
00:04:19.590 will be right for example tell your
00:04:23.070 friends that ruby is good you should try
00:04:25.889 Ruby if you say this to your friend then
00:04:29.790 your are rubyist so it's very easy to be
00:04:35.460 common released you already know Ruby is
00:04:38.880 nice Ruby's a good language right so
00:04:42.290 just tell your friends tell your family
00:04:44.760 were telling a co-worker that Ruby is
00:04:47.910 good then you're Ruby's it's very simple
00:04:51.690 right so this way Matt's design Ruby and
00:04:56.990 he he made the bird robeast I think this
00:05:01.560 is how he created a language and it's
00:05:03.990 community okay now
00:05:11.420 his maths still actively developing Ruby
00:05:16.540 the answer is yes he's still making
00:05:19.940 decisions on the red mine
00:05:23.540 the bug tracker and the developer
00:05:25.910 meetings and he's still so he's still
00:05:29.960 the lead designer of the language but if
00:05:35.510 we look at the project repository this
00:05:41.270 is his most recent comment to ruby he
00:05:47.210 just bumped the version to be 2.5 less
00:05:51.440 Christmas and the second reason is again
00:05:59.920 bumping version and the next one he
00:06:04.790 defined the ruby version 2.4 2 years ago
00:06:08.960 again at Christmas and the next one is
00:06:14.260 another Christmas 3 years ago for 2.3
00:06:18.140 and and another Christmas to Point C and
00:06:28.070 another one over two point one I'm sorry
00:06:33.830 this is wrong image anyway so he's
00:06:37.310 really he's just like version H bot
00:06:42.820 in the Ruby repository then then who's
00:06:50.300 actually writing Ruby manse himself and
00:06:56.240 answered this question three three weeks
00:06:59.660 ago in Japan it's on this page this
00:07:07.400 video but again this is only in Japanese
00:07:11.780 I'm sorry
00:07:12.610 so anyway in this session he he stated
00:07:18.080 that Ruby is not not his language no
00:07:21.230 longer his language it
00:07:24.620 he said it's our language now
00:07:30.150 he said Ruby's developed by the
00:07:33.490 community efforts and he showed his
00:07:39.939 gratitude to the community
00:07:41.439 thank you for community so the answer to
00:07:46.270 my previous question is that the
00:07:49.809 community is creating Ruby
00:07:57.070 but which community is it well the
00:08:01.870 community is called Ruby developers ruby
00:08:05.710 community could commit series so this
00:08:11.740 team is developing the language you're
00:08:16.180 right
00:08:19.830 with like nearly 100 people
00:08:26.420 but not everyone is active it's you know
00:08:31.430 the language has a long history and
00:08:33.470 maybe currently active for remember is
00:08:37.730 like 30 or 40 people I guess so anyway
00:08:42.200 this is the team and actually there is
00:08:45.650 no complete list of the members there's
00:08:51.110 you can find there on github but it this
00:08:57.710 actually doesn't include everybody like
00:09:00.320 even Matz is not in the list so anyway
00:09:06.470 there's 30 or 40 ish active communities
00:09:09.320 and you can meet these people at
00:09:12.460 conference name ruby ke and this year's
00:09:17.210 recog e there was a session titled ruby
00:09:20.060 camellias versus the world and we had 40
00:09:24.950 ruby communities on stage like this
00:09:29.350 these are all really Canaries in blue
00:09:33.140 shirt then I'm moving so this team
00:09:38.060 includes me here
00:09:42.959 so again let me introduce myself arm
00:09:46.199 Akira and I'm Ruby committee so this is
00:09:52.720 the community creating Ruby and in this
00:09:56.920 picture here you can find very very very
00:10:00.759 important people for Ruby for example
00:10:04.480 the release manager there and the VM
00:10:11.139 author at the right in the right end and
00:10:13.449 the patch monster there let me let me
00:10:19.899 talk a little bit about the patch
00:10:21.309 monster if you take a look at the
00:10:24.459 numbers like this number of commits this
00:10:27.790 shows the number of comments to the Ruby
00:10:30.549 ripple 3 2004 hundred and eighty-five
00:10:34.089 888 and if you take a look at the number
00:10:39.819 of commits per person here it is
00:10:45.760 this shows that the total number of
00:10:49.160 commits are two thousand and four
00:10:51.710 hundred or something and Nobu just one
00:10:55.940 person makes one thousand comments and
00:10:59.030 the second one is a bot so he's he's
00:11:04.370 committing almost 50% of Ruby right and
00:11:11.440 so he is called the Pats monster or
00:11:15.950 patch amount for short and this guy is
00:11:21.050 patch mom
00:11:26.070 so this is how Ruby's traded next how
00:11:30.899 about Ruby on Rails we're creating rails
00:11:36.740 if you take a look at the official
00:11:39.540 website here at the bottom it says our
00:11:45.720 large friendly community there's a link
00:11:48.870 to the community page and if you jump to
00:11:52.649 the community page it says Rails is made
00:11:56.220 of people
00:11:58.310 so the rails defines the community as
00:12:06.410 people who are made in making rails
00:12:08.819 right it says our community made rails
00:12:14.449 and again I'm on the community page as a
00:12:19.079 member as the rails community
00:12:24.139 so unlike Ruby rails has a complete list
00:12:30.630 of commits authors through the
00:12:32.880 repository
00:12:36.620 like this
00:12:40.010 you see Aaron's at the second so this is
00:12:47.360 the URL on the website contributors Ruby
00:12:51.560 on Rails down org and there are nearly
00:12:57.050 what five thousand people in the list so
00:13:02.360 this shows the edited book of the rails
00:13:06.470 team the rail seemed really welcomes
00:13:08.780 everyone's contributions right so who
00:13:15.200 who here are on the list
00:13:20.140 raise your hand if your name is on the
00:13:23.030 list
00:13:23.390 raise your hand okay uh some people
00:13:27.980 okay that's great so if your name is in
00:13:30.740 the list you must be in the rails
00:13:32.540 community because the community is
00:13:34.910 creating rails so welcome aboard
00:13:41.560 welcome to the community
00:13:47.699 this shows how rails is made rails is
00:13:51.129 made of the power of social coding the
00:13:55.749 phrase social coding is of course
00:13:58.529 created by github the sponsor of this
00:14:02.169 conference social coding for me
00:14:07.179 so she : really changed my life now not
00:14:12.129 only for participating the rails project
00:14:17.339 also when I traded gems associate
00:14:21.879 clothing really helped develop in my
00:14:24.789 James github brought so many
00:14:28.149 contributions firm from the gem users
00:14:32.199 for example in communities case I guess
00:14:36.399 this is my most popular gem that I've
00:14:39.339 created in this gems case
00:14:44.529 I got we've got so far
00:14:48.839 127 contributors
00:14:56.460 and in fact I do not know all these
00:15:00.840 people like I only know like 20 or 30%
00:15:03.870 of the contributors so I get so many
00:15:09.240 like bug fixes or feature requests from
00:15:11.610 people that are I don't know this is
00:15:14.730 wonderful right this is this is amazing
00:15:17.790 I really love this so this is me I'm on
00:15:24.210 github as a matsuda and I create gems
00:15:29.280 there and Ruby Ruby also decided to
00:15:36.000 follow this social coding trend so if
00:15:41.700 you want to get involved in Ruby
00:15:43.170 development if you want to do something
00:15:46.110 please just send patches and I'm gonna
00:15:51.660 explain how I know I know contributing
00:15:55.800 to Ruby is very hard
00:15:57.750 sending patch to Ruby is hard because
00:16:00.090 it's still on subversion and you need to
00:16:03.900 create a account for read mine first and
00:16:08.420 you need to like make a text file like
00:16:13.530 it format patch or something and attach
00:16:17.580 your batch file to the ticket and create
00:16:21.930 a ticket
00:16:24.250 right this is hard
00:16:31.750 so we we decided to move to github
00:16:35.319 somehow but we're not not moving the
00:16:38.740 whole repository at once but with regen
00:16:43.000 fiying some built-in standard libraries
00:16:46.180 like web break or open SSL etc or like
00:16:50.829 value pile utils and tk1
00:16:53.620 like this and to make everyone easy to
00:17:01.600 contribute to these gems so if you take
00:17:06.850 a look at Ruby's repo here github.com
00:17:10.089 slash Ruby you'll find so many standard
00:17:13.120 libraries these are accepting pool
00:17:16.089 workers from you so if you want to
00:17:19.530 contribute or if you just find bugs on
00:17:24.039 these libraries please just send popper
00:17:27.280 requests it's very easy right
00:17:32.450 also
00:17:35.990 I'm organizing a conference in Japan
00:17:42.040 um
00:17:45.530 recently one American guy wrote a blog
00:17:48.500 post about that conference he described
00:17:53.630 that the conference is heavily focusing
00:17:57.890 on technical talks right but we're
00:18:03.620 designing the conference not just to be
00:18:05.570 technical we're aiming to we're aiming
00:18:09.140 to connect with communities they will
00:18:12.230 record and the rest I mean the Ruby
00:18:15.110 users I mean these people and these
00:18:20.390 people from all over the world
00:18:22.840 you see we've got so many attendees perm
00:18:25.820 all these countries from the world so I
00:18:30.110 believe that I believe that code is the
00:18:34.820 best way to communicate between these
00:18:36.850 different countries different cultures
00:18:38.950 we can communicate in Ruby right that's
00:18:43.610 why we focus on technology on Ruby
00:18:47.450 especially and another goal of Eric IG
00:18:52.130 is that we want to develop Ruby I mean
00:18:56.510 we want to push Ruby for it so these are
00:19:01.669 big three topics on Ruby community
00:19:04.340 recently we're we're working on like
00:19:11.000 these new things for will be three by
00:19:13.250 three
00:19:16.040 so we had many talks revolving these
00:19:21.590 topics in order to share our ideas and
00:19:26.920 implementations for like types and
00:19:30.290 concurrency to make Ruby better this way
00:19:37.550 Ruby ke is aiming to be an event that
00:19:40.250 drives Ruby development right and if a
00:19:47.080 development project like Ruby is driven
00:19:50.450 by an event like really Kylie that's
00:19:53.150 called event-driven drama development
00:19:55.700 okay so Rebecca is doing this
00:20:03.850 this is the reason why I organize Rubik
00:20:07.340 IG and I'm very happy to see like other
00:20:13.490 conferences like this really come from
00:20:15.560 lazier like emerging I mean I'm very
00:20:23.750 happy to see new conferences like this
00:20:26.200 it shows that Ruby's still alive and
00:20:30.110 still becoming big and big I'm really
00:20:35.990 happy about that
00:20:37.120 so I'm this is me again I'm the
00:20:40.610 organizer of Ruby kie
00:20:44.440 so so that's it
00:20:46.340 um so I'm concluding this talk with a
00:20:49.280 message for you
00:20:51.310 everybody let's code the code is to
00:20:57.770 communicate I think so please express
00:21:03.580 yourself in Ruby code and not just write
00:21:07.910 code please push the code on the
00:21:11.690 internet so that we can read your code
00:21:15.620 I think Ruby is the best language for
00:21:19.430 doing this activity because because Ruby
00:21:22.250 is a human friendly running language
00:21:24.580 it's very easy for the code readers to
00:21:28.010 read so if you're willing to join the
00:21:32.120 community just starts communicating with
00:21:36.200 other rubyists in ruby
00:21:42.350 right so find something and
00:21:52.010 and work on that actually you can do
00:21:55.700 this you can join the community from
00:21:58.070 Malaysia
00:21:59.140 physically being here because the
00:22:03.530 community is here here
00:22:06.440 I mean community is on the internet
00:22:10.180 you're already connected to internet
00:22:13.160 right so you can push a code through the
00:22:19.370 world right so I'm hoping to see your
00:22:22.040 code there on the Internet
00:22:25.010 and if you're if you're working on
00:22:31.070 something and if that makes really
00:22:34.340 better you will be a member of the Ruby
00:22:38.360 community right so again welcome to the
00:22:46.100 Ruby community thank you
00:22:59.940 alright hey you guys we have like five
00:23:02.310 minutes you can ask here anything that
00:23:03.930 you would like okay hopefully about the
00:23:06.450 talk any questions from the crowd please
00:23:11.060 yep Nick
00:23:24.510 SVA although awesome
00:23:29.440 a rash
00:23:35.739 okay um in my understanding I personally
00:23:40.519 love github but in my understanding the
00:23:45.379 biggest reason is that github is a
00:23:49.090 commercial product and some like
00:23:52.940 open-source developers don't like that
00:23:55.719 they'll want to create an account on
00:24:00.409 github and don't want it like use that
00:24:06.859 service because it's it's commercial so
00:24:12.830 I know a few Ruby communities who
00:24:17.799 doesn't want to you don't want to use
00:24:20.389 github and I know some Rebecca Meera's
00:24:23.779 who's saying that in Ruby is completely
00:24:27.979 moving to get hub I'll come I'll quit
00:24:30.279 the team so I guess that's the main
00:24:34.849 reason it's a very difficult
00:24:40.920 good question in both mission guys
00:24:45.310 and what your only chance to appear on
00:24:47.500 stage
00:24:53.539 I asked you a question
00:24:55.520 or what made you want to contribute what
00:24:57.740 made you want to start contributing
00:24:59.570 so that you can you come in from those
00:25:02.529 communities like adaptive amenities
00:25:05.029 becoming so what inspired you to like
00:25:07.159 commit every war okay
00:25:09.710 I started using rails relatively very
00:25:14.359 old like bridge in the 41.0 I think so
00:25:20.389 at that time rails was really really
00:25:23.210 buggy I found so many bugs I mean I hit
00:25:26.179 so many bugs and I started using rails
00:25:28.729 in production through my customers but I
00:25:33.549 I hit so many troubles because the
00:25:36.889 framework is buggy so I needed to fix
00:25:39.919 the box so that was my first step I mean
00:25:43.820 I just hit bugs I just fix it box and I
00:25:48.950 pushed them to upstream there was the
00:25:52.639 storage so I didn't really want to
00:25:55.700 contribute to anything that was my job
00:25:58.099 right so this is my advice that's the
00:26:03.200 easiest way so please find box there are
00:26:06.799 so many bugs still still there remains
00:26:08.869 so many bugs in the world and you should
00:26:12.139 be hearing bugs every day so he aware of
00:26:16.159 the bugs and don't hesitate to fix it
00:26:18.889 and like push it to the upstream
00:26:25.060 any more questions
00:26:29.660 all right
Explore all talks recorded at RubyConf MY 2017
+16