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の海に投げ出されよう @ Speee Cafe Meetup #2
Search
Yuki Hattori
September 01, 2016
Programming
1
2.4k
OSSの海に投げ出されよう @ Speee Cafe Meetup #2
OSSの海に投げ出されよう
〜個人プロダクトがOSSの海で生きるために〜
http://speee.connpass.com/event/38159/presentation/
Yuki Hattori
September 01, 2016
Tweet
Share
More Decks by Yuki Hattori
See All by Yuki Hattori
Marp for VS Code 拡張機能開発の舞台裏 - VS Code Conference Japan 2024
yhatt
0
740
jsx-slack のご紹介&実践 Slack アプリ開発
yhatt
0
1.3k
Marp Basic Example
yhatt
5
510k
Introducing Marp's Gaia Theme
yhatt
5
460k
jsx-slack: React ⾵ Block Kit
yhatt
1
7.8k
Marp Vue: Vue を 1mm も触ったことない人がコンポーネントを公開するまで
yhatt
2
2.7k
そろそろはじめる Service Worker @ SpeeeKaigi #3
yhatt
0
4.6k
Electronを勉強していただけなのに... @ Meguro.es #5
yhatt
4
6.1k
Other Decks in Programming
See All in Programming
AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
bicstone
4
1.2k
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
2
270
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
750
dynamic!
moro
9
4.3k
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
2
1.2k
iOSDC.pdf
chronos2500
2
640
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
100
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
160
半自動E2Eで手っ取り早くリグレッションテストを効率化しよう
beryu
6
2.3k
ABEMAモバイルアプリが Kotlin Multiplatformと歩んだ5年 ─ 導入と運用、成功と課題 / iOSDC 2025
akkyie
0
300
CSC305 Lecture 02
javiergs
PRO
1
260
Web技術を最大限活用してRAW画像を現像する / Developing RAW Images on the Web
ssssota
2
980
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
27
2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Fireside Chat
paigeccino
40
3.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
A Modern Web Designer's Workflow
chriscoyier
697
190k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Become a Pro
speakerdeck
PRO
29
5.5k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Transcript
OSS の海に投げ出されよう ~ 個人プロダクトが OSS の海で生きるために ~ 株式会社Speee 服部 雄輝
(@yhatt) 2016.09.01 - Speee Cafe Meetup #2 Speee Cafe Meetup #2
Who am I? 服部 雄輝 (Facebook: yu.hatt / GitHub: @yhatt)
株式会社Speee 新卒3 年目 仕事 現在: 社内システム開発全般 過去: イエウー ル 開発サポー ト Skill Ruby on Rails, JavaScript, CSS Speee Cafe Meetup #2 2
yhatt & Cafe 強いこだわりはありません 年中アイスコー ヒー を好みます 今回取り上げるプロダクトは CoffeeScript 製です
だからどうした Photo from: https://bluebottlecoffee.jp/ 3
今回のテー マ 個人プロダクトが OSS の海で生きるために Speee Cafe Meetup #2 4
Agenda 1. 個人プロダクトが OSS になるまで なぜ OSS を選択したか? 2. OSS
が Buzz ると何が起こる? Feedback に振り回される 良質な Feedback を生むために 3. まとめ OSS の波に乗るために & 乗り続けるために Speee Cafe Meetup #2 5
個人プロダクトがOSS になるまで Marp: Markdown Presentation Writer https://yhatt.github.io/marp/ Speee Cafe Meetup
#2 6
What's Marp? クロスプラットフォー ム対応 Markdown スライド作成ツー ル Deckset の OSS
版 (MIT License) フロントエンド (Electron) の勉強を目的に開発 Atom と同様、CoffeeScript を採用 Speee Cafe Meetup #2 7
なぜ OSS を選択したか? 1. 技術的フィー ドバックへの期待 経験のない技術 への挑戦 技術的知見の獲得 プロダクトの改善
2. コミュニティ主導の貢献への期待 スライドテー マがコミュニティ主導で増えたら理想的 3. 自身の市場価値を高める ( 副次的要素) Speee Cafe Meetup #2 8
OSS の海へ 日本語の封印 ( 明確なコミットログを徹底) ドキュメントの整備 OSS ライセンスへの理解 リリー スペー
ジ (LP) の作成 テスト/CI の整備 クロスプラットフォー ムテストのハウツー が無く、 未実装のまま開始 現時点で最大の失敗ポイント ( 後述) Speee Cafe Meetup #2 9
Buzz Hacker News Github Trending GIGAZINE GitHub 4041 stars 157
forks Speee Cafe Meetup #2 10
Buzz ると何が起こる? Speee Cafe Meetup #2 11
想像を超える Feedback 月のIssue 数 月のPR 数 Buzz 前 約 3
Issues/month 約 0 PRs/m Buzz 後 約 60 Issues/month 約 15 PRs/m ※ Issue は 機能要望が約半数を占める 完全なる個人開発 サポー トリソー スの不足 Buzz 前は 『 お客様は神様』 の気持ちで対応できていた Buzz ると、Issue/PR の絶対数に押しつぶされてしまう Speee Cafe Meetup #2 12
Feedback に振り回され過ぎない Feedback された要望を、 盲目的に反映すると... スコー プクリー プ の深刻化 デスマー
チPJT 化 の懸念 特にMarp は主たる開発スコー プが広く、 適切な管理が必要 スコー プの広さ:OSS ソフトウェア > OSS ライブラリ Speee Cafe Meetup #2 13
Feedback に振り回され過ぎない かといって、Feedback を蔑ろにしない 開発スコー プを、Feedback する側に明確に伝える 明確になっていないと... スコー プ外のFeedback
により、 仕様が二転三転 する プロジェクトに対して 不信感 を生む Speee Cafe Meetup #2 14
不透明な例: #23: Export Powerpoint slides : Powerpoint のスライド が Export
できると嬉しいな : 野心的すぎない? : なんで?node のライブラリはあるよ : ODF で出力できると良いね : 中間言語 (IL) を作ろう、 拡張しやすくなるし出力も自由自在だよ : それは Pandoc の仕事じゃないかな Marp のスコー プから外れてきたため wontfix をマー ク ※ 意訳です 15
不透明な例: #23: Export Powerpoint slides 前提スコー プの共有不足 コミュニケー ションロス を招く
( 青字) : Marp がフロントエンドになる 意味はあるんじゃない? : 決定は尊重するけど wontfix には失望したよ 不信感 : "PDF と同じ水準の出力" は無茶でしょ? : 一旦 wontfix 外すから、 発案者の意見を聞きたい 二転三転 : 確かに同目的の別ツー ルがあるかも、 探してまた報告するよ ※ 意訳です 16
良質な Feedback を受けるために 構成要素の分割 OSS ライブラリに適切に分割、 開発スコー プを切り分ける 継続的インテグレー ション
(CI) 自動テストで 開発スコー プを " 見える化" OSS の目的をハッキリさせる この OSS が担うスコー プは? 今はどのフェー ズなのか? ロー ドマップ の明確化 Speee Cafe Meetup #2 17
Speee Cafe Meetup #2 18
( おそらく) 透明な例: #16: HTML export : PDF みたいに、HTML に出力できたらサイコー
だね ( 14) : ホントそれ、 基本技術もHTML+CSS+JS だしカンタンでしょ? : 議論に際して ロー ドマップ を見てみよう "Presentation renderer" のスコー プに明確に誘導 Speee Cafe Meetup #2 19
まとめ:OSS の波に乗るために必要なこと プロジェクト肥大化時、 以下が適切にできているか? ロー ドマップの明確化 構成要素の分割( スコー プ管理) 自動テスト
継続的インテグレー ション (CI) 全てが最初から必要では無いけど... 必要なタイミングで、 アクションを起こせるかがPoint Speee Cafe Meetup #2 20
OSS の波に乗り続けるためには... モチベー ションの維持 目標を充足すると、 個人の開発モチベー ションが下がる 前述のようなコミュニケー ションロスは尚更下がる 意欲を掻き立てる分野で、
自分に火を付けましょう 英語 高校英語(+ 翻訳機) で、 大体のニュアンスは伝えられるが... 英語力不足だと、 翻訳にエネルギー が持っていかれる 普段から英語に慣れ親しみましょう Speee Cafe Meetup #2 21
Marp はまだまだこれから https://github.com/yhatt/marp/wiki/Roadmap-to-Marp-1.0.0 Speee Cafe Meetup #2 22
END Speee Cafe Meetup #2 23