開発を楽しくする、OSS活動とは。活動に取り組む3人のエンジニアに、これからについて聞いてみた
こんにちは。PRチームのnonaskです。
最近ありがたいことに、ブログを読んでタレコミ(ネタ提供)をしてもらえる機会が増えてきました。
本文中にも似たようなお話が出てきますが、フィードバックがあるってうれしいですね。
ということで今回もタレコミネタから、FANSHIPのエンジニアチームに「OSS活動」なる良い取り組みをがんばっている3人がいるというお話が面白そうだったので、メンバーの杉浦さん、山崎さん、山口さんにインタビューのお時間をいただいてきました。
──「OSS」と「OSS活動」について教えてください。
杉浦:
OSSはオープンソース・ソフトウェアと言って、利用者の目的を問わずにソースコードを使ったり見たり、再利用や修正ができたりするソフトウェアを指します。
誰でも触れるようにはなっていますが、OSSを開発しているコアメンバーがきちんとコードのレビューをすることで悪意のある改ざんなどは省かれるようになっています。
例えば私が使っているOSのLinuxもOSSの一つですが、不信感を抱いたら自分でも実際のコードを確認できますし、たくさんの人が使うOSSであればより相互監視が働きやすくなります。
OSS活動については、OSSに関わることは何でもそう呼んでいいとされていて、実際のOSSを開発するのはもちろん、既存のものを修正したり、コードをコピーして使ってみて理解を深めるのもOSS活動の一つです。
山崎:
バグ報告などもOSS活動とみなされたりしますよね。
──みなさん始めたきっかけとかあるんですか?
杉浦:
私は前職ではネットワークエンジニアだったのですが、職種的にソフトウェアとあまり関係がないことから、プログラム書けるの?と思われがちなんですね。
今後のキャリアや転職を考えた時に、実際に書いたコードを公開することで、どれくらい書けるのかを客観的に見てもらえるだろうと始めました。
山崎:
僕は前職で技術検証などをやっていた中で公開せずにたまっているコードが増えてきて、勉強していることや技術検証結果をもっとみんなの目に見えるところに公開したほうがいいのではと始めたのがきっかけです。
いまは一歩進んでみんなが使えるような形にして提供するところまで、楽しみとしてやっています。
山口:
私はOSSって普段使っているけど実際にどんなものなのかとか、コミュニティってどうなんだろうとかもっと知識を付けたいと思った時に、自分からコミュニティに入っていくのが一番早いと思って始めました。
──具体的にどんなことをしているかお聞きしてみたいです。
杉浦:
一番積極的にやっている山崎さんの活動を話してもらうといいかもしれないですね。
山崎:
最近力を入れているプロジェクトを紹介させていただくと、フロントエンドのReactというライブラリを使ってコードを書いて実行するといい感じのインフラ構成図が描けるOSS・rediagram(リダイアグラム)を作りました。
rediagramで描いたインフラ構成図のイメージ
ソフトウェアの実装から、ドキュメントや日本語の紹介記事の作成、あとは使ってくれた人からバグや要望が上がってくる中でそれに対応していくという一連に取り組んでいます。
・日本語紹介記事
インフラ構成図をReactで描けるツールを作った
杉浦:
rediagramは山崎さん個人の取り組みではあるものの山口さんも私も興味があってみんなに使ってほしいので、我々は社内への周知や利用促進のところでお手伝いしています。
Issue Bash(月に一度開催しているエンジニアのチームビルディングイベント)のドキュメントを書くツールとして忍び込ませたり、積極的に使ってフィードバックしたり。
──普段の業務もある中でこういうアウトプットをするってなかなか大変だと思いますが、どれくらい時間を割いているんですか?
山崎:
もともと趣味として一日2・3時間取ってやっていたのがそのまま続いている感じですね。
rediagramに関しては構想としては1年前くらいからあって、これを作るためにまた別のOSSを作ったりというのをしながら細く長く少しずつ積み重ねてきています。
杉浦:
ちなみに私は以前はあまり活動できていなかったんですが、コロナ禍でリモートワークになってから、通勤時間がなくなった分の時間を使って一日3・4時間割けるようになったのがありがたいです。
──苦労したことや大変だったことも教えてください。
杉浦:
私が苦労したのはOSSを公開するための作法を覚えるところですね。
コードはこの会社に来る前から書いていたしエンジニアリング部分は問題ありませんでしたが、OSSを公開して使ってもらうためにはドキュメントを作ったりパッケージ化して簡単にダウンロードして使えるようにしたりする必要があります。
そこは初めての経験だったので、知見を持っていた山崎さんにかなり助けてもらいました。
山崎:
認知を広げて使ってもらえる状態にするには、名前を決めるところも重要だったり、細かいポイントがいろいろあります。
名前と機能が一致していないと使ってもらえないし、誰でも読めるような名前にしないとユーザーがコミュニケーションを取りづらかったりとか。
個人的には、実際に評価されるまでにはやっぱり時間がかかるので、フィードバックがない期間は大変でした。
いまは杉浦さんや山口さんに押し売りしてはいろいろフィードバックしてもらえているので楽しくやれています(笑)。
山口:
OSSって一つのサービスを展開するものだと思っているのですが、展開する以上は使ってもらいたいですよね。
そのためには誰かと同じものを公開してもしょうがない。
何を提供したら使ってもらえるか、サービスを作るためのアイデアづくりが大変だなと思っています。
──やってよかったことはいかがですか?
杉浦:
OSS活動を始めたことで、プライベートでの勉強や開発の習慣ができました。
「エンジニアは常に勉強し続けなければ」と思ってはいても、目的が勉強だと辛いし、仕事が忙しかったりするとどうしても後回しになりがちです。
開発も同じで、作りたいもののために積極的に開発する機会ができたことが良かったと思っています。
山崎:
キャリア面と技術面の二つがあると思っています。
キャリア面としては、活動が全部見える形に公開されていることで、転職の時にはエンジニアとしての名刺代わりになります。
実際、前職時代から取り組んでいたおかげで、アイリッジに入社する時にも詳しい話ができたり、どういうコードを書くかとか予め面接で見てもらうこともできました。
技術面では、仕事だとある程度使う技術が決まっていることが多いと思いますが、プライベートだと自由に技術選定もできます。
当然責任も負うし失敗することもありますが、失敗・成功含めていろいろな経験や成長につながっていると思います。
あとはこのチームで話す中で、このOSS使いやすいねみたいな何気ないやり取りからコミュニケーションが増えたり幅も広がったのがいいですね。
山口:
活動を始める前は、仕事と両立できるかなとかハードルを高く感じていた部分もあったのですが、始めてみるとそこまででもないことがわかり、楽しめています。
今後も誰かに使ってもらえそうなものがあれば、小さいアイデアでもいいからちょっと形にしてみようかなというポジティブな気持ちが生まれたのが良かったですね。
良い気持ちの切り替えになっているというか。
──今後の目標などがあれば教えてください。
杉浦:
現状はあくまで我々個人の活動の範囲に留まっているので、今後は会社としてちゃんとOSS活動をしますよと打ち出せるような環境づくりをがんばっていきたいと思っています。
いまアイリッジメンバーはコードをプッシュしている人はいるもののアイリッジのGitHubアカウントにも紐付いていなかったりして、このアカウントは何者なんだろうという状況に陥っているので、活動を公式化して表立って出していければと思います。
──それはぜひ進めていただきたいですね。まずはこのブログでたくさんの人に知ってもらえたらと思います。今日はありがとうございました!