業務で使用したOSSにプルリクを投げてみた話
View Slide
突然ですが、皆さんOSSって何か知ってますか?
OSSとはOSS(オープンソースソフトウェア)オープンソースソフトウェア(英: Open Source Software、略称: OSS)とは、利用者の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配布が可能なソフトウェアの総称である引用元https://ja.wikipedia.org/wiki/オープンソースソフトウェア
つまりタダで使える&改造できる&再配布できるソフトウェアのことです!※細かい決まりはライセンスによりますが今回はそこには触れないです
ある日の出来事「ログのUAを解析して、ブラウザ仕様割合を見たい」
考えた調査方法アクセスログの中のUA(ユーザーエージェント)を見ればブラウザが特定できそうこんなやつ→User-Agent: Mozilla/5.0 () () アクセスログをCSVでダウンロードしてRubyでUAを解析すれば自動化できそう!
課題UAからブラウザ名を特定しなければならないRubyで作るのでできればGemが欲しい(Rubyで使えるの便利ツール的なの)
そんなこんなでGemを見つけました
browserhttps://github.com/fnando/browserUA(ユーザーエージェント)をブラウザ名に変換してくれるGem(Rubyの便利機能的なやつ)トラッキングサーバーへのアクセスログを解析してブラウザの使用割合を計測するために使用バンクーバーに住んでるNando Vieiraさんが作った(https://github.com/fnando)
一旦これで解決...だがUAでの解析に対応していないブラウザがある対応していないブラウザのUAは全て「Unknown」で出力されてしまう
よし、プルリクを送ってみよう!
どんなプルリクを送ったのかyahooブラウザのUAを追加しました
機能を追加した箇所UA文字列の中にYJAppがあればyahooブラウザだよ〜!
マージされました?されてません!!そもそも定期的に更新されてるGemでは無さそうyahooブラウザがマイナー過ぎて無視されてるかも
今回学んだことOSSは無料で使えるし、便利だけどその裏で有志による開発が行われている使う時は開発者へのリスペクトを忘れない!OSSのコードを読むことで勉強になる
バレットグループ人とテクノロジーで世界をつなぐテクノロジーの部分でいっぱい使われてるのがOSSSLVRbulletだけでも色々なOSSが使われてるこんな便利なものあるのか〜こんな便利なものを誰かが作ってくれてる
ただOSSを使うだけじゃ無くて発展に貢献するのもプログラマーとして大事だなと思いました!
終わり