2/21に栃木県那須塩原市にて、とちぎRuby会議01(サイト)が開催されました。Rubyの学び方や、Rubyを学んだらどうなるか、など「Rubyを通して行う学習」についての発表が集まったイベントとなりました。
日本のRuby関係のイベントでもっとも規模の大きなものとしてはRuby会議があります。これは毎年初夏の時期に開催されます。昨年はつくば市で開催され、2トラックでVMや様々なRuby実装の話や、実際にRuby活用した事例などが発表されました。そのRuby会議の関連イベントとして、今年活発に行われているのがRegional Ruby Kaigiです。これはアメリカのRegional Ruby Confにならって、各地で開催されているもので、札幌、東北、東京、関西、島根、九州など各地で開催されてきました。とちぎRuby会議もそのひとつです。
イベントの中のタイムテーブルとは異なりますが、学習のライフサイクルという観点で、とちぎRuby会議を振り返ってみます。
ライトニングトークスではとちぎRubyの会の大川さん(サイト)が、初心者としてRubyの勉強を勉強して理解された内容について発表をしました。この内容からは3つの学習のスタートにおけるTipsがピックアップできます。
- 新しいものを学ぶときには「自分の知っている知識(この場合は他の言語)との 比較」をすると理解が早い
- 「自分の理解を言語化する」ことは、自分が理解している部分と理解していな い部分の境界をはっきりさせる
- さらに、外部に発信することで周りからのフィードバックが期待できる
その次のステップとしては、同じくとちぎRubyの会の米澤さんのライトニングトークス(サイト)の中で説明がありました。
イベントを主催するとちぎRubyの会では、ライトニングトークス用のタイマーを作るのがブームになりました。なんとなく文法を学んだりするのに比べて、テーマを決めて、それにフォーカス取り組むと学習が加速しRubyが身近に感じられるようになりました。
テーマの見つけ方や、決めた後の実現方法の学び方について、日本Rubyの会の樽家さん(サイト)が発表をされました。
テーマの見つけ方としては、自分がいつもやっている活動の改善をするところから見つけるということです。また、学習方法として、ライブラリのコードリーディングと、それを解析して拡張することでの学習する方法について、実際にTest::Unitをマルチプロセス対応にして速度アップをするという事例で発表をされました。
森田さんのセッションも、仕事の効率化するために、Rakeを利用して作り上げたツールの紹介でした。森田さんは出版社で仕事をされていますが、原稿から素早くPDFを生成するツールを作ることで、アジャイルな書籍編集を実現しているといった内容でした。Rubyを使って仕事のワークフローの一番のボトルネックを自動化することで、仕事のやり方を大きく変えることができるという事例です。
今回のとちぎRuby会議における特徴的なセッションが、全員参加の勉強会です。これはとちぎRuby会議の開催母体である、とちぎRuby(サイト)が毎月行っているもので、今回はdRubyの本を使って行われました。書籍の最初のチュートリアルにあわせて少し動作させただけでしたが、2~3人でペアプログラミングをして、本に書いていないような深い内容の解説など、色々な話で盛り上がりました。
後藤謙太郎さんのセッション(サイト)は、自分の仕事に密着したところから、さらに幅広く学びを深めるためのものです。後藤謙太郎さんが今まで作ってきた数多くのツールを引き合いに出しながら説明されました。
身近に使えるツールの開発を行うことで、手になじんだツールを仕事に生かすことができます。テキスト処理など、多くの場面でRubyを使うことができますが、ネットワークの開発も簡単にできます。開発にあたっては、無駄な機能に時間をかけずに、使う機能に絞って開発を行い、また、開発するだけでなく、どんどん公開をしましょう。「アルゴリズムなどの基礎的な知識」は大事です。
原信一郎さんのセッション(サイト)は、最終的にRubyと人との位置関係がどのようになっていくか、ということを、とことんまで踏み込んだ内容でした。「忘れる」ことの予防としてのメモ帳や、視力の低下を補うメガネなどを引き合いに出しながら、仕事と直結したRubyのライブラリのAlgebraの紹介を通してRubyと一体となった生活について発表されました。
人は何かしら外部のものを利用して、欠点を補っています。私はRubyを、脳を補助するツールとして使っています。Rubyは私の脳の一部です。
(中略)
Algebraを作った動機は、(自分の弱い部分)を克服したい。Algebraは手になじむなぁ、と言いたいということです。
とちぎRuby会議は、Rubyを単なるプログラミング言語としての内容だけではなく、Rubyの世界への入り方から、最終的にどのようになっていくか、というところまで幅広く議論が行われたが、自分の実力がどのあたりにあるのか、強みは何か、伸びしろのある部分はどこかと、いうのを客観的に知るためにも、まずは仲間を作るところから始めるのことをお勧めします。今後も各地でRegional Ruby会議が各地で行われていくが、まずは近場で開催されるRuby会議に参加して、仲間を見つけて、何か発表をしてみてはいかがでしょうか?
著者について
製造業の会社の社内SE。今のお気に入りはDjango+jQuery+Google App Engine。