Ruby合宿に行くべき3つの理由と合宿後の軌跡

Ruby合宿とは

Ruby合宿とは、学生(大学・高専・専門学校・高校等)または25歳未満(平成30年4月1日時点)の求職中を対象にしたミニハッカソンである。ハッカソンといっても、事前講義や現役Rubyエンジニアの方々が開発をサポートしてくれるため初心者の人でも気軽に参加できる。

Ruby合宿URL

1. Matzに会える

友人のFacebookプロフィール画像のほとんどが、一人もしくは二人の画像だということに気付いた。対して僕は、Twitterアイコンと同じカブトムシで圧倒的アウェイ感!!!

Facebookという貴族社会において、プロフィールの写真というのは階級を表す。

カブトムシのアイコンなんて、下人のそれと同じである。

ひねくれ者の僕が、夕日をバックに写真を撮ることができるはずもない

しかし、カブトムシは嫌だ。エンジニアという身分を貴族の方々に知らしめながらも調子乗ってるやつ扱いされない写真は何かと日々頭を悩ましている時、Ruby合宿のことを知った。

その時は、Rubyなど書いたことがなく、日本人が開発した言語であるという知識しかなかった。

HPを閲覧するとMatzさんが講演に来るらしいということがわかった。

エンジニアらしい写真!? よし、応募だ!

という経緯があって参加をした僕にとって、Matzさんに会えるRuby合宿は最高だった!

真面目な話をすると、Rubyで開発しているサービスがたくさんあり、顧客がいる。それはつまり社会に対して何かしらの正の影響を与えていることを意味するだろう。その根本を作った、Matzさんに会いたいという思いも強く、Ruby合宿に参加した。

情報工学を専攻する学生はエンジニアではなくハッカーになる必要があると考える。OSSに対して、利用するだけでなく貢献することが専門知識を身につけた情報工学を専攻した者の使命だろう。OSSであるRubyを開発したMatzさんは将来、僕が達成する必要がある目標を成した人物の一人である。Matzさんに会うことで将来なるべきハッカー像を明確にしたかったのだ。

Matzさんに会う。勿論、このこと自体に大した意味はない。

会ってどうするかが大切である。

僕は、Matzさんの講演をお聞きしてモチベーションが上がり、より勉学に励むことができた

近距離でMatzさんに会えることが出来る点がRuby合宿を勧める一つ目の理由である。

2. チーム開発ができる

トイレットペーパーを消費するために大学に来ている学生が多い、私の大学ではチーム開発の講義は責任のなすり付け合いという社会の縮図を学ぶためのカリキュラムとなっている。

単位を取るためには、チーム内で多少コードを書ける学生が殆どの作業を行うため本当の意味でのチーム開発を経験したことがなかった。

Ruby合宿では、5人のチームで開発を行う。

チームで企画から設計、開発、発表まで行う。

私達のチームは「さくら荘のペットな彼女」というアニメで意気投合し、会場を巻き込む恋愛シュミレーションゲーム「ときめきMatz」を開発することになった。

楽しい。楽しいぞ!チーム開発って楽しいだ。

自分達が好きなソフトウェアを開発をしている時ってどんどんアイデアが出るし、開発スピードも早いということに気が付いた。

PullRequestを出したら、いい感じにリファクタリングしてくれるしハードウェアいじってるメンバーはダンボール引っ張り出してコード書かずに工作してるし、愉快で仕方ない。

チーム開発は楽しいです。何度も言いますチーム開発は楽しい!

Ruby合宿は開発が楽しくなる魔法の空間です。

チーム開発をしたい人は、オススメです。

ときめきMatzソースコード

3. 優秀なメンターに聞き放題

Ruby合宿にメンターがいることは既に話しました。

普通のメンターじゃない。優秀なメンター。ここが重要

初心者も同然の私に対して答えを教えるのではなく考え方、自分で解決するためのヒントを与えてくれる。

良いメンターとは、独りよがりに技術を語るのではなく看板を建設し道を示してくれるものだ。(僕もRuby合宿のようなメンターになりたい)

Naclの方々、igaigaさんは本当にRuby合宿に適したメンターだと思う。

合宿の初めに、メンターに相談する前にチーム内で話し合ってみようという話があるが、5分ぐらいネットで調べてわからなければ、メンターに相談することを勧める。

勿論、チーム内で解決した方がいいのだがRuby合宿に行く目的が技術寄りならば、発表のために動くプログラムを作ることではなく、良いコードを書くべきだ。

そのためにメンターの方々は良いアドバイスをくれます。

自分のコードをよくしたいという人、Ruby合宿に行きましょう

アドバイス生活面

  • 部屋がとても暗い

  • シャンプーは風呂場にあります

  • ドライヤーは脱衣所にある

  • 監禁されます。お菓子は買えるが、種類が少ないので買っておくことを勧める

  • 部屋のWIFI弱い

  • 最後に好きな言語を聞かれるのでPythonと叫ぶ!!!

アドバイス技術面

  • 最低限のGit、Githubの運用知識

  • 他言語経験者は「プロを目指す人のためのRuby入門」をオススメする

  • 事前講義のプログラムを見ておく

合宿後

Ruby合宿後、Rubyのコミッターの元でインターンをすることができました。Ruby合宿前までRubyを触ったことなかったが、今ではそれなりにRubyを書けるようになったと思います。

就職活動では、大企業2社に内定をもらうなど、それなりのエンジニアに成長しました。

Rubyを利用するだけでなく、RHCに参加し内部の構成にまで迫りました。いつかRubyに関するソフトウェアのコミッターになりたいです。

これらの軌跡の全ての要因がRuby合宿によるものでないのは確かですが、チームでの開発経験、エンジニアとしてどうあるべきかをRuby合宿で身につけ考えたことは少なからず影響していると思います。

最後になりますが、読んでくれた方がRuby、ソフトウェア開発を通して素敵な人生が送れることを願います。

HappyHacking!

P.S

松江駅にスタバがあった。

Ruby合宿前に1冊は読んでおきたい本

たのしいRuby 第6版 (Informatics&IDEA)

たのしいRuby 第6版 (Informatics&IDEA)

ゼロからわかる Ruby 超入門 (かんたんIT基礎講座)

ゼロからわかる Ruby 超入門 (かんたんIT基礎講座)