Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
業務で使用したOSSにプルリクを投げてみた話
Search
hiro
December 01, 2021
Programming
0
910
業務で使用したOSSにプルリクを投げてみた話
hiro
December 01, 2021
Tweet
Share
Other Decks in Programming
See All in Programming
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
130
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
150
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
310
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
11
11k
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
120
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
730
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
690
俺流レスポンシブコーディング 2025
tak_dcxi
14
8.7k
AIコーディングエージェント(Gemini)
kondai24
0
220
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.3k
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
2
220
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Designing for humans not robots
tammielis
254
26k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How GitHub (no longer) Works
holman
316
140k
Automating Front-end Workflow
addyosmani
1371
200k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Why Our Code Smells
bkeepers
PRO
340
57k
Transcript
業務で使用したOSSにプルリクを投げてみた話
突然ですが、皆さんOSSって何か知ってますか?
OSSとは OSS(オープンソースソフトウェア) オープンソースソフトウェア(英: Open Source Software、略称: OSS)とは、利用者 の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配布が可能なソフ トウェアの総称である 引用元
https://ja.wikipedia.org/wiki/オープンソースソフトウェア
つまりタダで使える&改造できる&再配布できるソフトウ ェアのことです! ※ 細かい決まりはライセンスによりますが今回はそこには触れないです
ある日の出来事 「ログのUAを解析して、ブラウザ仕様割合を見たい」
考えた調査方法 アクセスログの中のUA(ユーザーエージェント)を見ればブラウザが特定できそう こんなやつ→User-Agent: Mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions> アクセスログをCSVでダウンロードしてRubyでUAを解析すれば自動化できそう!
課題 UAからブラウザ名を特定しなければならない Rubyで作るのでできればGemが欲しい(Rubyで使えるの便利ツール的なの)
そんなこんなでGemを見つけました
None
browser https://github.com/fnando/browser UA(ユーザーエージェント)をブラウザ名に変換してくれるGem(Rubyの便利機能的 なやつ) トラッキングサーバーへのアクセスログを解析してブラウザの使用割合を計測するため に使用 バンクーバーに住んでるNando Vieiraさんが作った(https://github.com/fnando)
一旦これで解決...だが UAでの解析に対応していないブラウザがある 対応していないブラウザのUAは全て「Unknown」で出力されてしまう
よし、プルリクを送ってみよう!
どんなプルリクを送ったのか yahooブラウザのUAを追加しました
機能を追加した箇所 UA文字列の中にYJAppがあればyahooブラウザだよ〜!
マージされました? されてません!! そもそも定期的に更新されてるGemでは無さそう yahooブラウザがマイナー過ぎて無視されてるかも
今回学んだこと OSSは無料で使えるし、便利だけどその裏で有志による開発が行われている 使う時は開発者へのリスペクトを忘れない! OSSのコードを読むことで勉強になる
バレットグループ 人とテクノロジーで世界をつなぐ テクノロジーの部分でいっぱい使われてるのがOSS SLVRbulletだけでも色々なOSSが使われてる こんな便利なものあるのか〜 こんな便利なものを誰かが作ってくれてる
ただOSSを使うだけじゃ無くて発展に貢献するのもプログ ラマーとして大事だなと思いました!
終わり
None