Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
改めて考えるOSSのあり方について
Search
ufoo68
April 02, 2026
Programming
57
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
改めて考えるOSSのあり方について
ufoo68
April 02, 2026
More Decks by ufoo68
See All by ufoo68
BlenderをCodexで動かす
ufoo68
0
330
文法で学ばないJavaScript
ufoo68
0
71
Cookieとは?
ufoo68
1
84
今更ながら、開発現場での生成AI活用について
ufoo68
0
82
28歳独身エンジニア 婚活してみた
ufoo68
0
34
OpenAIでクッキー型を作る
ufoo68
1
69
初めて開発リーダーをやってみた話
ufoo68
0
150
M5Stack用の指紋認証デバイスを試す
ufoo68
0
910
結婚式のクイズアプリを自作した話
ufoo68
0
700
Other Decks in Programming
See All in Programming
スマートグラスで並列バイブコーディング
hyshu
0
150
Inside Stream API
skrb
1
740
Lessons from Spec-Driven Development
simas
PRO
0
210
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
200
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
180
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.4k
New "Type" system on PicoRuby
pocke
1
970
Claspは野良GASの夢をみるか
takter00
0
200
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
570
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
260
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
250
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.4k
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
200
Unsuck your backbone
ammeep
672
58k
Balancing Empowerment & Direction
lara
6
1.2k
The Pragmatic Product Professional
lauravandoore
37
7.3k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
350
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
200
The SEO Collaboration Effect
kristinabergwall1
1
490
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
180
Transcript
改めて考える OSSのあり方について ざっくりと学ぶWebの基礎
自己紹介 • 名前 ◦ 松永勇太(@ufoo_yuta) • 出身学科 ◦ 大阪工業大学ロボット工学科 •
職業 ◦ Webエンジニア • すきなこと ◦ シンプルなものづくり
議論に入る前に、
改めてOSSとは何か Open Source Softwareのこと。 • ソースコードが入手可能 • 誰でも配布できる • 改変して配布できる
重要なのはOSSは無料で利用できるソフトではなく 、 ライセンスによって自由が保証されたソフトウェア ということ。
OSSとUNIXの思想 UNIXとは1970年に開発されたOSで、 その設計思想は後のOSS開発にかなり影響している。 • ソースコードを読んで改変する • 小さく単機能に作る • プログラムを組み合わせる ソフトウェア開発とは既存のOSSを組み合わせて作る
ものである。 その上で足りない機能を自らが実装していく 。
ここまでで言いたいこと 世の中のソフトウェア開発の全ては、 OSSの上に成り立っていて、OSS無しでは成り立たない。 と言っても過言ではないということ
ここから本題
Log4Shell事件 これは2021年12月にLog4jというJavaライブラリで見つかった、 ログ機能をハックして任意のコードが実行できる という恐ろしい脆弱性。 • Apple • Amazon • Microsoft
• Minecraft などの多数の大企業に影響した事件。
この事件が示した構造 これは単なるOSSの脆弱性の問題ではなく、 • 数多の企業のインフラになっていた • 保守は少人数のコミッター(ボランティア)によるもの という構造的問題が明るみになったことで、 OSSの責任問題がSNSでかなり議論された。
その後起こった事件 2022年初頭にあるOSS開発者による反乱が発生。 自身のJavaScriptのライブラリを意図的に破壊した • faker.js • color.js 無限ループコードを仕込んだり、空に近い状態に改変したりした。 これらを利用した多くのライブラリにも波及した(特にcolor.js)
二つの事件から改めて認識したこと OSSとは • インフラである • 保守が個人に依存 している そして非対称性がある • OSSを利用する企業は利益を得る
• OSSを開発する個人は無償でありながら責任を追及 される 反乱事件はこの非対称性に対する抗議 でもあった
解決モデル
OSSの管理は大体こうなっている • ライブラリ ◦ ユーティリティレベルのもの ◦ これはまだ個人単位での管理が多い • フレームワーク ◦
ソフトウェアの構造レベルに影響するもの ◦ 企業単位での管理が主流 • プログラミング言語 ◦ 言うまでもなく全ての開発に影響するもの ◦ これに関しては中立的であることが必要なので財団管理が主流 あくまで傾向、もちろん例外はたくさんある
企業が主体で管理する OSS例 フレームワークの例として、VercelとNext.js • Vercel ◦ フロントエンド特化のホスティングサービス ◦ 細かな設定なしでもデプロイ可能 ◦
GitHub連携をすればgit pushから自動化もできる • Next.js ◦ Vercelが開発したWebフレームワーク ◦ React.jsというライブラリを利用 ◦ VercelはNext.jsの利用に特化
企業で管理するメリット • 利用者側 ◦ セキュリティ問題があった時の責任を負ってくれる ◦ 長期での運用サポートをしてくれやすい ◦ アップデートの意思決定が早い •
企業側 ◦ ソフトウェア開発の標準を作ることができる ◦ 自社サービスへの誘導がしやすい ◦ 自社の技術スタックに適合したエンジニアを採用しやすい
そのことによる問題点 • ベンダーロックイン ◦ フレームワークとクラウドが強く結びつくと他の環境に移行しにくい • 方向性が企業の利益に左右される ◦ 自社サービスに有利な機能が優先される可能性 •
コミュニティの影響力が小さくなる ◦ 個人開発者の意見が通りにくい • UNIX哲学との剥離 ◦ 企業はオールインワンの OSS開発になりがち ◦ 小さな機能単位の提供にはなりにくい
まとめ OSSは、 • ソフトウェア開発の重要インフラである • 個人のボランティアに依存する構造的危うさを持つ • 企業主導もしくはスポンサーになるケースが主流になりつつある 理想としてはコミュニティベースで個人同士の自由参加 が良いとされるが、
ソフトウェアが経済インフラになってしまった昨今では難しくなっている。