ソフトウェア開発者の社外貢献バリエーションがあるか、ということについてまとめます。
プログラムで貢献
他者公開プログラムへの貢献
OSS で他者が公開しているリポジトリへの機能追加、バグ修正などを行う。
ありがちなきっかけとしては 1 ユーザーとしてツール・ライブラリを利用していて
- バグを発見
- 必要な機能を思いついた
あたりが発生した際に対応することとなる。
他者の OSS に貢献する場合は、まずガイドラインなどあれば確認をすること。
関連情報
- Ruby の 定番対話ツール pry 徹底攻略 | 番外編 攻略記事作成中に見つけた pry のバグのプルリクエスト作成への道 #pry #ruby - Qiita
- Fix test code of kconv by tbpgr · Pull Request #1696 · ruby/ruby · GitHub
- Add link to doc by tbpgr · Pull Request #82 · AtomLinter/linter-reek · GitHub
- Fix history clear bug(No re-init @original_lines) by tbpgr · Pull Request #1340 · pry/pry · GitHub
- Pull requests · ruby/did_you_mean · GitHub
- fix typo. swbemsink_avairable? => swbemsink_available? by tbpgr · Pull Request #1025 · ruby/ruby · GitHub
- Fix gitlab_markdown_helper method header typo. rquest => request. by tbpgr · Pull Request #7291 · gitlabhq/gitlabhq · GitHub
自作プログラムによる貢献
自身が作成した、ツール・ライブラリを社外提供する。
ありがちなきっかけとしては
- 完全に自分独自のアイデアでつくるもの
- コンセプトは流用だが、創るのは自分が1から担当する
- 言語Aに存在するツールを、言語Bでもほしい場合など
あたりです。
関連情報
- GitHub - tbpgr/kosi: ターミナルアプリケーション用表フォーマットサポートツール。格子。
- CrystalのAtom用Snippet atom_crystal_snippet_tb お引越しのお知らせ - Tbpgr Blog
- 現在開いているタブを右端に移動する Atom Package tab-rightを作成した - Tbpgr Blog
文書による
OSS の文書への貢献
プログラミングがビギナーでも貢献しやすいのがここ。
関連情報
- Rubyリファレンスマニュアル「るりま」の誤字などを見つけた時の貢献フロー - Qiita
- 【緩募】Rubyリファレンス・マニュアル=るりまで不足中のサンプルコード8,000件を一緒に作りませんか? - Tbpgr Blog
- MDN の埋め込みサンプルコードの 404 を修正する迄 - Qiita
- Fix document(id to number) by tbpgr · Pull Request #863 · octokit/octokit.rb · GitHub
- Update README.ja.md by tbpgr · Pull Request #5 · fortissimo1997/ruby-style-guide · GitHub
技術発信での貢献
必要な文書が整備されてない他者が作ったプロダクトに文書を追加する。
エラーの解消方法を発信し、同じ罠にはまる人の解決コストを大きく下げる。
関連情報
- Markdown記法 サンプル集 - Qiita
- Ruby の 定番対話ツール pry 徹底攻略 #pry #ruby - Qiita
- Ruby の CLI ツールの作成を支援する、 thor gem の基本について。 #thor #ruby - Qiita
- RuboCop 関連記事まとめ #rubocop - Qiita
書籍への貢献
他者公開書籍への貢献
- 誤字報告を行う
- 出版社、書籍など対象によって報告先や報告方法が異なる
書籍を執筆
- 技術同人誌
- 商業誌
QAで貢献
質問 / 応答関連のサービスで質問者の疑問に答える。
※私は、この種の貢献はしたことがない
勉強会・カンファレンス
カンファレンスで登壇
カンファレンスで、趣旨にそった分野の登壇を行う。
他者の勉強会で登壇
他者主催勉強会で、趣旨にそった分野の登壇を行う。
自己の勉強会主催
自分が知見を持っている分野の勉強会を企画、実施する。
まとめ
思いつく範囲でざっとまとめてみました。
思い出したら or 他者から助言いただけたら更新します。