Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Node学園 39 時限目資料 kuriyosh
Search
kuriyosh
June 27, 2022
Technology
190
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Node学園 39 時限目資料 kuriyosh
kuriyosh
June 27, 2022
More Decks by kuriyosh
See All by kuriyosh
Datadog On-Call と Cloud SIEM で作る SOC 基盤
kuriyosh
0
620
Next.js App Router x @apollo/client
kuriyosh
9
500
Other Decks in Technology
See All in Technology
How we choose session proposals
kawaguti
PRO
1
180
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
410
cdk deployとcdkd deploy、実際にデプロイして5倍速近くの差を実測した
yama3133
1
110
Patterns in AI Driven Software Development
akosma
PRO
0
300
Obsidian Vault Architectures
x5gtrn
PRO
0
190
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
5
2.5k
Don't write the architecture only in the prompt.
neohsu
0
180
GitHub、使う?使わない?
happysamurai294
0
110
キヨさん67歳 AIコーディングエージェント物語
happysamurai294
0
120
デザインレビューは自動化できるのか?─ Flutter × Figma で UI 品質保証を考える
techiro
2
360
Claude Code on Bedrock で統制をかける小ネタ集/claude-code-bedrock-governance-tips
emiki
1
13k
仕様駆動開発の、その先へ。決める力と確かめる仕組み
inariku
0
110
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.4k
Typedesign – Prime Four
hannesfritz
42
3.2k
Scaling GitHub
holman
464
140k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
630
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
550
How to build a perfect <img>
jonoalderson
1
6.2k
sira's awesome portfolio website redesign presentation
elsirapls
0
470
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
580
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
Transcript
z Node.js の Collaborator になった話 @kuriyosh
z 自己紹介 § ID・名前 § kuriyosh (Yoshiki Kurihara) § 職歴
§ Yuimedi Software Engineer 2021/7~ 原罪 § AWS Support Engineer (Windows) 2019/4 ~ 2021/6 § Windows Server とか、Active Directory とか、VDI とか § 好きなもの § TypeScript, React, Serverless architecture, AWS
z 目次 § Core collaborator とは § コミットを始めたきっかけ § 活動内容
§ 苦労したこと § おわりに
z Node.js collaborator になりました https://kuriyosh.net/blog/2022-05-17
z Node.js の組織 § Triager § Issue の一時受け § Core
collaborator § PRの管理 (レビュー、CI の実行) § Technical Steering Committee § 技術的方向性の決定 § 組織設計
z コミットをはじめたきっかけ § 現職で勤務時間の内 20% の時間を OSS や自己研鑽 に使ってよいというルールがあり何をするか迷っていた §
プロダクト開発を行いたいから転職したものの前職とは 全然違った職種であるため、成功体験がほしかった § 社内に既に collaborator の方が複数人おり @watilde さんに勧められてコミットをはじめてみた
z 最初のコミット § とりあえず Contributing ガイドを読んでどうしたら良いか理解 § https://github.com/nodejs/node/blob/main/CONTRIBUTING.md § PR
投げる体験をしたかったので Typo fix の PR を出してみた § Typo 探すのが面倒だったのでコマンドラインから実行できる Aspell というスペルチェッカーを使って Typo 探しをした § 辞書の作成が結構面倒だったのでもしよければ利用ください § https://gist.github.com/kuriyosh/3b592f90140a98c908e222e1ec1d8e2 2
z 最初の PR
z 続いてやったこと § テストカバレッジ向上 § DNS, HTTP とか § Node.js
の Code の Coverage を掲載してるサイト § https://coverage.nodejs.org/
z テスト追加のフロー § 1. カバレッジからテストが追加されてないコード § 2. テストを追加 § 3.
ローカルでカバレッジ作成 → カバレッジが上がったことを確認 § 4. lint を実行 § 5. PR作成
z テストの追加に関する Tips § テストの追加方法に関するドキュメント § https://github.com/nodejs/node/blob/main/doc/contributing/ writing-tests.md § Test
に利用できる Utils 関数 § https://github.com/nodejs/node/tree/main/test/common
z テスト追加で苦労したこと § 色んなライブラリを駆使して便利に書けるプロダクトのテ ストコード異なりプリミティブなJSで書かれている § 前述の Utils 関数はしっかり把握しておく必要 §
こればっかりは慣れるしかない § コードベースが膨大で誤った理解をしちゃう § 誤った理解で PR を出したりもしたが特に咎められない(優しく 修正してくれる) § TSCはすごい
z オンボーディング § ノミネーションプロセス § 既存の collaborator に GitHub issue
で推薦いただく § 1週間 Issue をオープンにして反対意見なければOK § オンボーディングセッション § 既存の TSC と PR を作成しながらオペレーションを学ぶ § https://github.com/nodejs/node/blob/main/onboarding.md
z 感想 § JS 何もわからん § Collaborator になる前は完全に理解してたけど、なる頃には 何もわからなくなっていた §
Node.js コミュニティの安心感 § 自分が参加した OSS の母数が少ないとはいえ、OSS なのに ここまでプロセスが整っているのは感動した § 英語勉強した方が良い § 先にオンボーディングのドキュメント見ていてよかった
z おわりに § Yuimedi ではエンジニア募集中です。 § 医療用のデータクレンジングソフトウェア Yuicleaner の開発をしています §
技術スタック § 気軽に Twitter で連絡いただけると嬉しいです フロントエンド バックエンド インフラ - React - Next.js - Electron - NestJS - GraphQL - TypeORM - AWS CDK - Cognito - ALB - Fargate - S3 - RDS TypeScript GitHub Asana Docker その他 共通 Node.js