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ことはじめ / First Step for OSS Contribution
Search
Masashi Hirano
April 23, 2020
Programming
4
11k
実践 OSSことはじめ / First Step for OSS Contribution
OSSへの貢献に関して社内の勉強会で発表しました。
OSSへの貢献に関心のある方の参考にしてください。
Masashi Hirano
April 23, 2020
Tweet
Share
More Decks by Masashi Hirano
See All by Masashi Hirano
Protocol Buffers and Connect for Frontend Development
masashi
0
100
You may not need XXX in Node.js
masashi
5
1.5k
OSSとコミュニティを支える
masashi
1
1.4k
英語ができなかった自分達が、グローバルチーム立ち上げに挑戦!?
masashi
1
3.5k
フロントエンド開発のためのセキュリティ入門について
masashi
1
540
フロントエンド開発のためのセキュリティ入門
masashi
50
18k
Node.jsの2022年と未来 / Node.js in 2022 and Future
masashi
1
1.1k
Corepack ~Node.jsに追加されたパッケージマネージャーマネージャー~ / #tng37
masashi
3
13k
Node.js + Web Compatibility
masashi
2
670
Other Decks in Programming
See All in Programming
Catch Up: Go Style Guide Update
andpad
0
220
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
1.3k
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
400
ALL CODE BASE ARE BELONG TO STUDY
uzulla
1
150
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
250
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
250
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
530
CSC509 Lecture 05
javiergs
PRO
0
300
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
470
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
3
2.1k
Serena MCPのすすめ
wadakatu
4
980
理論と実務のギャップを超える
eycjur
0
130
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
339
57k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Context Engineering - Making Every Token Count
addyosmani
5
230
YesSQL, Process and Tooling at Scale
rocio
173
14k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
620
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Mobile First: as difficult as doing things right
swwweet
224
10k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Producing Creativity
orderedlist
PRO
347
40k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Transcript
࣮ફ OSS͜ͱ͡Ί Masashi Hirano (@shisama)
ฏ ণ࢜ / Masashi Hirano @shisama_ shisama Node.js Core Collaborator
λʔήοτ • OSSߩݙʹؔ৺͕ͳ͍ਓ • OSSߩݙʹؔ৺͋Δ͚ͲɺͲ͏͢Ε͍͍͔Θ͔Βͳ͍ਓ
͜ͷLTͷΰʔϧ • OSSߩݙʹগ͠Ͱؔ৺ΛͬͯΒ͏ • OSSߩݙͷ۩ମతΠϝʔδΛͬͯΒ͏ ্هΛୡʹࢲͷܦݧ͕ʹཱͯخ͍͠
OSSߩݙԿ͔Β࢝ΊΕ͍͍ͷ…?
ߩݙ͢ΔOSSͷϧʔϧΛΖ͏ • ҎԼ͕͋Εඞͣಡ͏ • ߦಈنൣ (Code of Conduct) ϋϥεϝϯτ͠ͳ͍͜ͱͳͲͨΓલͷ͜ͱ͕ॻ͔Ε͍ͯΔ͜ͱ͕ଟ͍ •
ίϯτϦϏϡʔγϣϯΨΠυ (CONTRIBUTING.md) ίϛοτϝοηʔδͷॻ͖ํʮίϛοτલςετΛ࣮ߦ͠·͠ΐ͏ʯͱ͔ Δ͜ͱ͕ॻ͔Ε͍ͯΔ
issue • όάใࠂ • ݪҼΘ͔Βͳͯ͘όά͔ͱࢥͬͨΒissueొ • ػೳཁ • ࡞ऀɾϝϯςφϢʔβʔͷΛ͍ͬͯ·͢
υΩϡϝϯτͷमਖ਼ • typo • misspell (github.com/client9/misspell) Λ͑ίϚϯυҰൃͰݟ͔ͭΔ • ףࢺɻ’the the
‘Ͱgrep͢ΔɻGrammarlyͳͲจ๏νΣοΧʔΛ͏ • දݱ • ෆ໌ྎͳจষͷॻ͖͠ • ੍͕࣌લޙͰ߹Θͳ͍จষͷमਖ਼
υΩϡϝϯτͷमਖ਼ • αϯϓϧίʔυ • υΩϡϝϯτREADMEʹ͍ํ͕ࡌ͍ͬͯͳ͍ͱ͖αϯ ϓϧίʔυΛՃ • αϯϓϧίʔυςετίʔυ͔Βഈआ • मਖ਼લʹissueͰ࣭ͯ͠Έͯྑ͍
υΩϡϝϯτͷ༁ https://github.com/gatsbyjs/gatsby-ja/issues/1
ςετίʔυ • ΧόϨοδΛݟͯςετΛՃ͢Δ • ৽ػೳΧόϨοδ͕͍ • ෆ҆ఆͳςετ(flaky test)Λमਖ਼͢ΔʢқߴΊʣ • ςετίʔυ͔ΒֶͿ͜ͱଟ͍
https://coverage.nodejs.org/
ґଘϥΠϒϥϦͷΞοϓσʔτ • ϥΠϒϥϦΛΞοϓσʔτͯ͠ςετΛ௨͢ • ϝδϟʔόʔδϣϯͷΞοϓσʔτ͍͠ • ݹ͍ϥΠϒϥϦΛ࠷ۙͷϥΠϒϥϦʹஔ͖͑ • e.g. TSLint
-> ESLintɺrequest -> axios
OSS׳Ε͖ͯͨͷͰίʔυΛ৮Γ͍ͨΜ͕ͩ…
όάमਖ਼ • ఆ֎ͷͷόϦσʔγϣϯՃ • null͕Ҿʹ͘Δ͜ͱ͕ఆ͞Ε͍ͯͳ͍͜ͱΑ͋͘Δ • ϥΠϒϥϦʹύονΛͯΔલʹຊՈʹPull RequestΛૹΖ͏ • ϥΠϒϥϦʹಠࣗύονΛͯΔӡ༻ͩͱϥΠϒϥϦͷΞοϓσʔτ࣌ʹύονͷमਖ਼
͕ඞཁʹͳΔ • ηΩϡϦςΟύον • ੬ऑੑใࠂͳͲͷݪҼ͕OSSʹ͋ͬͨ߹issueΛొ͢Δ
ػೳՃ • ͜Ε͕͋ͬͨΒศརͱࢥͬͨػೳissueͰఏҊͯ͠ΈΔ • Ϣʔεέʔεࠔ͍ͬͯΔ͜ͱΛΘ͔Γ͘͢ॻ͘ • ଞͷOSSݴޠʹ͋ΔػೳΛఏҊͯ͠ΈΔ • ෦ͰͷΈ͍ͬͯͨػೳΛެ։͢Δ
෦ͰͷΈ͍ͬͯͨػೳΛެ։͢Δ ෦Ͱ͔͠ΘΕ͍ͯͳ͔ͬͨ ςετ༻ͷศརؔΛ APIͱͯ͠ެ։͍ͯ͠Δ https://github.com/nodejs/node/issues/32912
ϦϑΝΫλϦϯά • ݴޠϥΠϒϥϦͷݹ͍ػೳΛॻ͖͑Δ • JSͷ߹ɺasync/awaitΞϩʔؔ, let/constͳͲ • Deprecated ͳػೳΛॻ͖͑Δ •
ܕΛ͚Δ • JavaScript -> TypeScript ॻ͖͑ʢࣄલʹ߹ҙͳͲඞཁʣ • any ΛͪΌΜͱͨ͠ܕʹॻ͖͑Δ • ܕ͕ແ͍ϥΠϒϥϦd.tsΛ࡞ͬͨΓDefinitelyTyped (@types/xxx) ʹܕΛొ
OSS׆ಈͷোนʹͳΓ͍͢ͱ͜Ζ
ӳޠ • Google ༁ɺDeepLͰશવ௨͡Δ • ૬खӳޠݍͰͳ͍͜ͱ͋ΔͷͰɺؾʹ͠ͳͯ͘ྑ͍ • μϒϧΫΥʔςʔγϣϯͰғͬͯݕࡧͯ݅͠ΛݟΔ
OSSʹׂ͕࣌ؒ͘ͳ͍ https://cybozu-oss-policy.readthedocs.io/ja/latest/index.html αΠϘζۀதʹOSS׆ಈ͢Δ͜ͱ͕ೝΊΒΕ͍ͯΔ https://cybozu-oss-policy.readthedocs.io/ja/latest/index.html
ͲΜͳOSSʹߩݙ͢Ε͍͍͔Θ͔Βͳ͍ FEνʔϜOSSͷωλΛஷΊ͍ͯͨΓɺ ίϯτϦϏϡʔγϣϯΛཧ͍ͯ͠ΔͷͰ͍ͯΈ͍ͯͩ͘͞ʂ૬ஊঝΓ·͢ʂʂ
·ͱΊ • OSSͷߩݙํ๏༷ʑ • αΠϘζOSS׆ಈ͢Δͷʹྑ͍ڥ • ؆୯ͳͷ͔Β࢝Ί·͠ΐ͏ʂ
Thanks. @shisama_ shisama