YAPC::Asia 2012 CPANに恩返ししよう

Post on 01-Jul-2015

827 views 1 download

description

YAPC::Asia 2012 で発表したときのスライドです。

Transcript of YAPC::Asia 2012 CPANに恩返ししよう

CPANに恩返ししよう*** Giving back to CPAN ***

YAPC::Asia 2012

Satoshi Azuma

Who?● 東 聡志

● Satoshi Azuma● @ytnobody● Born in Hakodate,

Hokkaido, Japan● Perl: about 10 years● Linux: about 11 years● Love motorbike!● Love perl!

まさか、皆が皆

Perl Hacker じゃないよね?

専らCPANモジュールを使っている人

主な対象

真新しい話はありません

ある程度Perlを弄ってきた人なら

ほぼやっている事ばかり

恩返しとは?

 おん‐がえし〔‐がへし〕【恩返し】  [名](スル)受けた恩に報いること。報恩。

「世話になった人に―する」 

By goo国語辞書

恩返しとは

なぜ恩返しするのか?

まず考えてほしい

CPANモジュールは

本当にいつも完璧か?

モジュールのインストール時

CPANモジュールは本当にいつも完璧か

テストに失敗する

CPANモジュールは本当にいつも完璧か

CPANモジュールは本当にいつも完璧か

● CPAN Dependencies● CPANからリンク

● 環境を指定– 依存性一覧– インストール成功率

CPANモジュールは本当にいつも完璧か

「あまり意味は無い(チョウ訳)」とはあるが

「テスト完全成功率(チョウ訳)」があって、しかもそれが100%ではない物が存在する。

CPANモジュールは本当にいつも完璧か

CPANは「いつも完璧」などではないし

使う側がCPANにそれを求めるのもお門違い

ドキュメント通りに動作しない

CPANモジュールは本当にいつも完璧か

CPANモジュールは本当にいつも完璧か

SYNOPSISが無い

などなど・・・

CPANモジュールは本当にいつも完璧か

CPANモジュールはいつも完璧なんかじゃない

CPAN Authorも人の子。

過ちに気づかない事もあれば

怠惰に負けることもしばしば

CPANモジュールはいつも完璧なんかじゃない

「これだからPerlは」

と切り捨てるのは簡単

だがそれはちっとも建設的ではない

プログラマたる者、常に建設的であれ。

じゃあどうする

ここはひとつ、こう考えてみてはどうか。

考え方を変えよう

俺が困ることは

他の誰かが困るはず

考え方を変えよう

普段はお世話になっているのだから

ここで恩を返しておくか

考え方を変えよう

結果的に「恩返し」することは

他の誰か(と未来の自分)の手助けをするということ

どんな小さなことでもいい

じゃあ、CPANに

“恩返し”

した方がいいよね?

考え方、変わった?

恩返しのための準備

E-Mail● 様々なサービスのアカウントをとるために必須

● CPAN Author やPAUSE Adminへの*最後*のコンタクト手段

Twitter● メールと並び必須。● タイムリーなやりとりに便利。

● 不具合らしきものにぶち当たったときに#perl あたりでぼやいてると、時折ヒントや解決策を教えてもらえたりするかも。

Blog● ユースケースや問題解決方法の共有に。

● 広く問題解決方法を募る用途に。

● Google先生が拾ってくれるので、検索キーワードを意図して記事を書くと効果が高い。

Github● 開発版のソースが置いてあるケースが度々ある。

● Issue(チケット)の発行を行うためにも、ぜひ登録しよう。

PAUSE● CPAN Author になるためのアカウントだと思えば大体合ってる。

– CPANにモジュールを登録したり、CPANRTでIssueを登録したりするのに使う。

– アカウントを取得するのに外人さんとメールのやり取りする必要があったりする。

恩返しするための方法

ブログに記録を残す

● ありのままを書く● 現象● 処置● 結果● 周辺状況

– アップデート状況– 環境

テストの失敗を報告する

● CPANRTやGithubにIssueを書く。● タイトルを簡潔に● 現象を明確に● ターミナルログを貼り付ける

● 大抵は英語。– 中学英語でもまあそれなりに意味を汲んでもらえる。英語への恐れが最大の敵。

モジュールの使い方を書く

● どこに書くか● ブログ

– 自分の権限で書くことができる。

– 後々POD形式にできるように考慮を。

● Github– モジュールにPOD形式のドキュメントを追加する

– README.podを置いておくと、webページとして表示される。

● POD形式になれておく

改善要望を出す

● CPANRTまたはGithubでIssueを書く● 改善してほしい項目を明らかに

● できればPatchかpullreqのほうが望ましい– でもコード書けないのなら、要望だけでも書いておこう。

● コードが書けないからという理由で黙る必要はない

デザインの手助けをする

● デザインの心得があるなら。● ロゴ● ページデザイン● イメージキャラ

● Hackerと呼ばれる人たちは、意外とデザイン面に疎かったりすることが結構ある

↓このロゴ作った

盃を交わす

● 勉強会(小さくてもOK)● Hachioji.pm● Niigata.pm● Perl入学式● Hokkaido.pm Casual● Perl Beginners

– ↑主宰をやっております

● お気に入りのモジュールを宣伝してこよう● 誰かのお気に入りモジュールを使ってみよう

恩返しの次は

“恩送り”

Githubに

モジュールをアップする

CPANに

モジュールを公開する

これであなたも

CPANに恩返し・恩送りできるかも

ありがとうございました。