今日のRuby Kaigiでは、ライブラリ、テストについてのセッションを中心に聞きました。
Rubyには、RubyGemsという、アプリケーションやライブラリを管理するツールがあり、世界中の開発者が作成したライブラリを簡単に手元のシステムに組み込むことが可能です。
Eric Hodel氏は、ライブラリを作成するにあたっての注意点や、コツをたくさん紹介しました。ライブラリ開発時に実装したほうがいい機能などから、公開後、重要となるユーザーとの情報共有の手法など多岐にわたりました。
Richard Huang氏は、手元のRailsアプリケーションが、ベストプラクティス(最適な手法)で記述されているかどうか、調査するライブラリ「rails_best_practices」を紹介しました。外形上の問題だけでなく、構文解析を行うことによって、プログラムの流れにまで踏み込んで調査することが可能です。
Rubyでは、各要素の影響範囲がはっきりしているため、複雑な拡張ライブラリも、読みやすく記述できることが大きな利点だと言えます。「rails_best_practices」でも構文解析では別の作者のRubyライブラリ「ruby_parser」を利用して実現しています。
午後聞いた、テストの話やRubyのJIS規格化の話はまた別の機会にご紹介できればと思います。
Showing posts with label Event. Show all posts
Showing posts with label Event. Show all posts
2011/07/17
2011/07/16
Ruby Kaigi2011に参加して(第一日目) その2
今日、参加したRuby KaigiのAaron Pattersonのキーノート、午前中のRubyの未来についてのセッションは考えさせられる内容でした。全体通して、剛柔併せ持った発表内容に、まったくもって魅了されました。目頭熱くなり、頭の中熱くなり、色々刺激的でした。
その中で、一番私が関心を持ったのは、Rubyの開発管理についてのアイデアでした。Aaronの話の中でも、「responsibility to communicate(対話の責任、説明の責任)」という提案は重要だと思いました。
世界で5本の指に入るくらい注目される言語に成長したRubyにとって、これまで以上に説明する必要は高まるでしょう。
Rubyのコア開発チームとして、世界の開発者に対して質問に答えられるスポークスマンを配置する必要があるかもしれません。チケットベース、メーリングリストがあるから、と言うよりは、podcastとか少し距離感がある人にも届くメディアを使う時期だと思います。
その後の、コアコミッタによる未来のRubyについての話も面白かったです。8月末にリリース予定というRuby1.9.3を土台にして、その未来はどうなるのでしょうか。
Ruby1.9.4なのか、Ruby2.0なのか。そしてそのバージョンは、どんな思想でRubyの世界が構築されるのでしょうか。
誰も答えを持たない(Matzにも)そんなわくわくした謎掛けは、夏の夜長に思いを巡らすのに最適なのではないでしょうか。
一日で頭の中が熱くなっています。
さあ、あと二日どんなサプライズがあるのか。とっても楽しみです。
その中で、一番私が関心を持ったのは、Rubyの開発管理についてのアイデアでした。Aaronの話の中でも、「responsibility to communicate(対話の責任、説明の責任)」という提案は重要だと思いました。
世界で5本の指に入るくらい注目される言語に成長したRubyにとって、これまで以上に説明する必要は高まるでしょう。
Rubyのコア開発チームとして、世界の開発者に対して質問に答えられるスポークスマンを配置する必要があるかもしれません。チケットベース、メーリングリストがあるから、と言うよりは、podcastとか少し距離感がある人にも届くメディアを使う時期だと思います。
その後の、コアコミッタによる未来のRubyについての話も面白かったです。8月末にリリース予定というRuby1.9.3を土台にして、その未来はどうなるのでしょうか。
Ruby1.9.4なのか、Ruby2.0なのか。そしてそのバージョンは、どんな思想でRubyの世界が構築されるのでしょうか。
誰も答えを持たない(Matzにも)そんなわくわくした謎掛けは、夏の夜長に思いを巡らすのに最適なのではないでしょうか。
一日で頭の中が熱くなっています。
さあ、あと二日どんなサプライズがあるのか。とっても楽しみです。
Ruby Kaigi2011に参加して(第一日目)その1
今日は、Ruby Kaigi 2011に参加しました。3日間連続開催という日本でのコンピュータ言語に関するカンファレンスでは、かなり大規模なイベントです。
初日の今日は、Rubyの開発者の一人Aaron Pattersonの基調講演からスタートし、開発チームによるRubyの未来についてのセッションの後、2つのホールを利用しての参加者によるセッションが続きました。
午後のセッションでは、クックパッドの舘野さん、GitHub(ギットハブ)のCorey Donohoeさんのセッションに参加しました。私の関心分野でもあるウェブ開発の話だったので、とても面白く話を聞きました。
舘野さん、Coreyさんの話で共通して感じたのは、継続的に顧客に価値を提供するために、貪欲に新しい技術を取り込んで行こうとしている姿勢です。クックパッド、ギットハブとも様々なツール(オープンソース、有料サービス問わず)を活用し、世の中になければ自作していくことが徹底しています。
面白いのは、両者の顧客層で、クックパッドは、30代女性の半分は利用しているというサービスであり、一方、ギットハブは、30代女性の大半はその存在すら知らないと言うサービスなのです。(ギットハブの名誉のために言っておきますが、会場内での利用者は9割を超えていました。)
つまり、顧客の要望が大きく異なっていても、開発側のベストプラクティス(最善の手、定石)にはそんなに違いがないのです。
実際、ギットハブの手法(一日に何回もデプロイ(システムの更新)できるし、実際する)と言うのは、通常のウェブサービスではびっくりするような斬新な内容ですし、クックパッドのRailsのExtensionの機能をフルに使って、試験的なサービスを限定的に安全に提供するというのも、私にとっては新鮮な提案でした。
しかし、現在、動くプログラムに追加機能を追加して、やっぱり動くようにするということは、どの会社にも共通する課題ですし、そのためのいろいろな手法の大半は共通しているのです。
CI、テスト、自動化、ハートビート、LVS、モニタリング、memchached・・・。
クックパッド舘野さんの言葉を借りると、「定石をきちんとやっておけば大丈夫」なのです。とても、刺激になった午後の2セッションでした。
Aaron Pattersonのキーノート、午前中のRubyの未来については、次のエントリーで書いてみます。
初日の今日は、Rubyの開発者の一人Aaron Pattersonの基調講演からスタートし、開発チームによるRubyの未来についてのセッションの後、2つのホールを利用しての参加者によるセッションが続きました。
午後のセッションでは、クックパッドの舘野さん、GitHub(ギットハブ)のCorey Donohoeさんのセッションに参加しました。私の関心分野でもあるウェブ開発の話だったので、とても面白く話を聞きました。
舘野さん、Coreyさんの話で共通して感じたのは、継続的に顧客に価値を提供するために、貪欲に新しい技術を取り込んで行こうとしている姿勢です。クックパッド、ギットハブとも様々なツール(オープンソース、有料サービス問わず)を活用し、世の中になければ自作していくことが徹底しています。
面白いのは、両者の顧客層で、クックパッドは、30代女性の半分は利用しているというサービスであり、一方、ギットハブは、30代女性の大半はその存在すら知らないと言うサービスなのです。(ギットハブの名誉のために言っておきますが、会場内での利用者は9割を超えていました。)
つまり、顧客の要望が大きく異なっていても、開発側のベストプラクティス(最善の手、定石)にはそんなに違いがないのです。
実際、ギットハブの手法(一日に何回もデプロイ(システムの更新)できるし、実際する)と言うのは、通常のウェブサービスではびっくりするような斬新な内容ですし、クックパッドのRailsのExtensionの機能をフルに使って、試験的なサービスを限定的に安全に提供するというのも、私にとっては新鮮な提案でした。
しかし、現在、動くプログラムに追加機能を追加して、やっぱり動くようにするということは、どの会社にも共通する課題ですし、そのためのいろいろな手法の大半は共通しているのです。
CI、テスト、自動化、ハートビート、LVS、モニタリング、memchached・・・。
クックパッド舘野さんの言葉を借りると、「定石をきちんとやっておけば大丈夫」なのです。とても、刺激になった午後の2セッションでした。
Aaron Pattersonのキーノート、午前中のRubyの未来については、次のエントリーで書いてみます。
2010/09/02
BPStudy#36 Jeamamy & Beproud-bot (Part2)
Previous article is Part1.
Beproud-bot
Beproud-bot is a bot program which sends useful information to Skype's group. Sometime, meaningless information.When Beproud-bot catches the information from Mercurial, Trac, Nagios, It post a message via Skype API.
Praise points
John++ : Increment John's praise points.
Jane-- : Decrement Jane's praise points.
Praise points is an appearance of member's appreciate feelings. If someone was late for a meeting, he/she may receive --. If someone finish works on time, he/she may receive ++.
Human-like comment
If the bot recived some commands, it retern a human-like comment. it has personality, funny, serious etc. It brings a little laugh to us. A little laugh is oil of our conversation.
Skype-Centered Development
With Beproud-bot, we realize Skype-Centered Development. We use Skype more than E-mail.
Source code
Beproud-bot is built with django. You can see source code. Please try from the repository.
My opinion
It is my first time to join BPStudy meeting. Both presentations are very amazing.
Thanks for staffs and speakers.
Beproud-bot
Beproud-bot is a bot program which sends useful information to Skype's group. Sometime, meaningless information.When Beproud-bot catches the information from Mercurial, Trac, Nagios, It post a message via Skype API.
Praise points
John++ : Increment John's praise points.
Jane-- : Decrement Jane's praise points.
Praise points is an appearance of member's appreciate feelings. If someone was late for a meeting, he/she may receive --. If someone finish works on time, he/she may receive ++.
Human-like comment
If the bot recived some commands, it retern a human-like comment. it has personality, funny, serious etc. It brings a little laugh to us. A little laugh is oil of our conversation.
Skype-Centered Development
With Beproud-bot, we realize Skype-Centered Development. We use Skype more than E-mail.
Source code
Beproud-bot is built with django. You can see source code. Please try from the repository.
My opinion
It is my first time to join BPStudy meeting. Both presentations are very amazing.
Thanks for staffs and speakers.
2010/09/01
BPStudy#36 Jeamamy & Beproud-bot (Part1)
Last Friday, I attended BPStudy#36 meeting.
It have been held by BeProud once a month through 3 years.(Great!)
In #36, we have two presentation, Jiemamy by @daisuke_m and Beproud-bot by @haru860
Jiemamy
Jiemamy is based on "Evolutionary Database Design" concepts.(Martin Fowler) Jiemamy supplies not only ER diagram drawing tool but also management scheme of modifing Databases.
Uncontrollabe parts of an application
Applications normally includes many uncontrollabe parts.(Runtime, Database software and Environmental variables) Automation and documentation are keys to manage these uncontrollabe parts. Jiemamy helps that.
Apache Maven
Apache Maven gives your software management easier. It is Based on the concept of a project object model (POM).
Maven-jiemamy-plugin is available. It makes SQL query from Jiemamy Model automatically.
Version Control
Sometimes, a database schema is not included in a repository. That makes troubles. Jiemamy aims to make the database schema controlable unified designs.
DRY(Don't repeat yourself)
Jiemamy respects the DRY concept. ER diagram, SQL query, database design description should be unified.The DRY concept is a rule. Sometimes, we can't follow the rule. So, we'll break the rule, CAREFULLY.
Demo
Demo presented by @regtan.
Jiemamy is OSS
Jiemamy community uses Atlassian's software. (Hudson, too)
Continue to Part2.
It have been held by BeProud once a month through 3 years.(Great!)
In #36, we have two presentation, Jiemamy by @daisuke_m and Beproud-bot by @haru860
Jiemamy
Jiemamy is based on "Evolutionary Database Design" concepts.(Martin Fowler) Jiemamy supplies not only ER diagram drawing tool but also management scheme of modifing Databases.
Uncontrollabe parts of an application
Applications normally includes many uncontrollabe parts.(Runtime, Database software and Environmental variables) Automation and documentation are keys to manage these uncontrollabe parts. Jiemamy helps that.
Apache Maven
Apache Maven gives your software management easier. It is Based on the concept of a project object model (POM).
Maven-jiemamy-plugin is available. It makes SQL query from Jiemamy Model automatically.
Version Control
Sometimes, a database schema is not included in a repository. That makes troubles. Jiemamy aims to make the database schema controlable unified designs.
DRY(Don't repeat yourself)
Jiemamy respects the DRY concept. ER diagram, SQL query, database design description should be unified.The DRY concept is a rule. Sometimes, we can't follow the rule. So, we'll break the rule, CAREFULLY.
Demo
Demo presented by @regtan.
Jiemamy is OSS
Jiemamy community uses Atlassian's software. (Hudson, too)
Continue to Part2.
Subscribe to:
Posts (Atom)