おことわり
今日の発表は個人の見解であり、
所属する組織の公式見解ではありません
OSS活動始めました
なぜOSS活動を始めたのか
- 他者と共有できる問題解決をしたい
- 使いたいOSSに自分がほしい機能がある
- 業務のため
- 自分もしくは隣のエンジニアの問題解決に
- 興味関心のため、エンジニアとしての研鑽
どうやってるのか
Write Code Every Day
マイルール
- 毎日コードを書く
- 意味のないコードは書かない
- 継続可能な状態を作る
- 酒は飲み過ぎない (2本まで)
- 習慣にする:筋トレと同じ
- とりあえずMacの前に座る
OSS活動で得られたもの
- ユーザからのフィードバック
- 承認欲求
- ライブラリの作り方やコードの書き方
- 業務では知り得なかったことを知る機会
- 多少の英語力
- 英語の技術ディスカッション未だに悩む
毎日書いても得られないもの
- 劇的なプログラマ力
- 長い目で見てパワーアップはするがマンガのように覚醒はしない
- 業務で厳しい環境の中でやったほうが力は付く
OSS活動のダークサイド
- これ、OSSにできるんじゃないか…?
- OSSありきの考え方に陥りやすい
- 目的と手段の混同
- それは誰の問題解決になるのかを考える
- 自分だけ/チーム内/社内/社外
- スコープによって手段が変わるはず
- バランス重要
- 自分だけ/チーム内/社内/社外
業務の中のOSS活動
推奨していきたい!
ただし推奨はするが義務でもないし、目的でもないし、目標でもない。not 業務としてのOSS活動。
大前提
会社から支払われている報酬は、会社の事業やサービスを開発し、貢献することによって発生している。あくまで業務が主であり、開発をより良くするためのOSS活動であるべき。
OSS活動を推奨する狙い
エンジニア目線
- 業務のため(自分もしくは隣のエンジニアの問題解決に)
- 興味関心のため、エンジニアとしての研鑽・実利
- 問題解決の抽象化/横串の目線
会社目線
- ブランディング
- 採用目的
インプット・アウトプットの循環
ブログを書いたり、イベントで登壇したりと同じアウトプットのひとつ。
自分が困っていることは誰かが困っている可能性がある。アドバイスを貰えるかもしれないし、誰かの役に立って巡り巡って自分にリターンがあるかもしれない。
まとめ
- 業務中に「あ、これ外部の人の問題解決になる」と思ったら、コードを汎化してOSSにする
- 趣味としてのOSSに取り組んでみる
- 仕事は選べないけど、OSSは選べる
- 毎日コード書いてビルドアップ
- 楽しい!
キーワード
- OSSは公開しただけでは使われない
- 継続的な開発とメンテナンスが重要
- OSSは1人のフォロワーがいれば生き残る確率が高い。2人目が出てくればその確率がさらに上がる
- 隙があったほうがいい
- 問題の汎化ができるかどうか。他者と共有できる問題か
- 誰にも使われないソフトウェアは、何も解決をしていない