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活動のススメ / oss-activities
Search
k.goto
June 19, 2024
Technology
2.1k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OSS活動のススメ / oss-activities
2024/06/20,21開催AWS Summit Japan 2024での登壇資料です。
k.goto
June 19, 2024
More Decks by k.goto
See All by k.goto
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.8k
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
10
4.7k
AWS CDK の目玉新機能「Mixins」とは / cdk-mixins
gotok365
2
740
AWS CDKの仕組み / how-aws-cdk-works
gotok365
18
5.8k
AWS CDK 実践的アプローチ N選 / aws-cdk-practical-approaches
gotok365
8
2.7k
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
10
1.7k
とあるEdTechベンチャーのシステム構成こだわりN選 / edtech-system
gotok365
7
1k
CodePipelineのアクション統合から学ぶAWS CDKの抽象化技術 / codepipeline-actions-cdk-abstraction
gotok365
5
560
AWS CDKにおけるL2 Constructの仕組み / aws-cdk-l2-construct
gotok365
6
1.6k
Other Decks in Technology
See All in Technology
ホームラボ紹介
y_sera15
0
180
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
880
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
590
関東Kaggler会発表資料
takoi
1
240
TypeScript入門 2026
recruitengineers
PRO
3
600
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
180
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
800
PLATEAU で バーチャル花火大会
tatsuya1970
0
160
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
260
ハーレムエンジニアリング
kazuma777777
0
170
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
3.1k
Writing Fast Ruby
sferik
630
63k
Fireside Chat
paigeccino
42
4k
エンジニアに許された特別な時間の終わり
watany
108
250k
Optimizing for Happiness
mojombo
378
71k
Navigating Team Friction
lara
192
16k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Building Adaptive Systems
keathley
44
3.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
470
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
250
Leo the Paperboy
mayatellez
8
2.1k
Transcript
2 0 2 4 / 0 6 / 2 1
AW S S U M M I T JA PA N 2 0 2 4 DAY 2 OSS活動のススメ k.goto (後藤 健太) AWS DevTools Hero 1
自己紹介 (k.goto) X: @365_step_tech AWS HERO AWS DevTools Hero 自作OSS
AWSツール (cls3, delstack, lamver) AWS CDKコントリビュート Top Contributor Trusted Reviewer Community-Driven CDK Construct Library Maintainer CDK Constructライブラリ GitHub: @go-to-k
本セッションの目的 • OSS活動はそんなに難しくないよ! • OSS活動で得られることはたくさんあるよ! 3
本セッションの目的 • OSS活動はそんなに難しくないよ! • OSS活動で得られることはたくさんあるよ! 4 1人でもそう思ってもらえるように・・・ OSS活動のハードルを下げ 一歩踏み出したくなる!
OSS活動とは 5
OSS • OSS = オープンソースソフトウェア § 利用者の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配 布が可能なソフトウェアの総称 (Wikipediaより) •
AWS関連のOSSでも種類はたくさん § AWS公式のものからコミュニティ・個人によるものまで § 海外発のものから国内発のものまで 6
OSS活動 • OSSコントリビュート(貢献) § コード・テスト・ドキュメントなどを書き、Pull Requestを提出 § 機能追加の要望やバグの内容などをissueに起票 § 既存のissueやPull
Requestなどでディスカッション § Pull Requestをレビュー 7
OSS活動は敷居が高い? 8
OSS活動は敷居が高い? 9 興味はあるんだけど・・・ いつかやってみたい・・・ いつも使っているし 何か貢献したい・・・ なんかすごい あまりプログラミング できないし・・・ カッコいいけど
自分にはとても・・・ 今年中には・・・ 自分の書いたコードを 知らない人に見せるのか・・・ すごい人多そう・・・ 英語わからん
OSS活動は敷居が高い? • 有名なOSSなんてとても・・・ • プログラミングがあまり得意でない • 英語が苦手 • 知らない人怖い・海外の人すごそう 10
OSS活動は敷居が高い? • 有名なOSSなんてとても・・・ • プログラミングがあまり得意でない • 英語が苦手 • 知らない人怖い・海外の人すごそう 11
自信がない なんか難しそう
OSS活動は敷居が高い? 12 もったいない!!
OSS活動は敷居が高い? 13 そんなことないんです!!
「有名なOSSなんてとても・・・」 • 例えば:AWS Cloud Development Kit (CDK)へのコントリビュート § 深いコーディング知識がなくてもコントリビュートできる –
TypeScript固有の実装方法などはあまり使われていない § むしろ他の面の比重が大きい – ビルド方法・Pull Request提出ルール – AWSサービスの知識 14 マネコンだとこうだから デフォルト値はこれが便利 この設定だとリソース作成失敗 するからバリデーションしよう ログ名にはルールがあるから 最初から設定してあげよう XプロパティとYプロパティ はセットで必要だよな 必要な権限はこれとあれだから 簡単に付与できるようにしよう コーディング知識 << AWS知識 な方にはピッタリのOSS!!
「有名なOSSなんてとても・・・」 • ベンダー公式・有名なOSSへのコントリビュートじゃなくてもいい § 個人・コミュニティで作っているOSS § 自分のリポジトリ(Public) – 自作ツール/ライブラリ •
シェルスクリプトでもいい! – TIPS/コードサンプル • CDKコード • IaCツールの定義コード 15 これらも立派なOSSです! 公開してみるのが大事! (※ライセンスには注意)
「プログラミングがあまり得意でない」 • 何ならプログラミングできなくてもいい § Typo・ドキュメント修正 § issue起票 (バグ報告や機能の要望) § 既存issueやPRにコメント
§ そのOSSを広める – 登壇・ブログ・SNS・etc… 16 「よかった」と書くだけでも立派な貢献!
「英語が苦手」 • 翻訳ツール・生成AIを駆使 § 対面の同期会話じゃない・文章での非同期会話 • 日本語だけで作っても良い § 日本人ユーザーだけでも助かる人はたくさんいる §
一旦日本語で作って、後から英語にするのもOK – ハードル低く始められる! 17 英語のいい経験になります!
「知らない人怖い・海外の人すごそう」 • みんな人間 • だいたい優しい 18 AWSコミュニティの人は特に優しい!
OSS活動はイイぞ 19
OSS活動はイイぞ • グローバルな交流ができる • 自分の貢献したものが色々な人に使われる • アウトプット・アピールになる 20
グローバルな交流ができる • 多くのOSSでは英語が主流 § 必然的に英語の交流が経験できる • 自作OSSを海外の方に使ってもらえたり § Issue, PRをくれたり
§ ブログを書いてくれたり 21 AWS Españolの方が自分のツールの記事を スペイン語で書いてくれました
自分の貢献したものが色々な人に使われる • 日本から海外までたくさんの人が助かる § 自分の業務で使う場合、自分も助かる • とにかく嬉しい! 22 自己肯定感・自信に繋がる
アウトプット・アピールになる • 実際に手を動かすのでスキルが向上 • GitHubに公開することでパブリックな成果物・記録になる § 執筆や登壇以外でのアウトプット方法・アピールにもなる 23 AWS界隈はインフラ寄りの方が多いので 目立てるかも?
(AWS HEROにもなれました)
はじめてのOSS活動 (k.gotoの場合) 24
はじめてのOSS活動 (k.gotoの場合) 25 自作 OSS 作成 AWS CDK 貢献
はじめてのOSS活動: 自作OSS作成 • CLIツールのようなものをシェルスクリプトで自分用に作成 • ポータビリティなどを理由にGo言語で再作成 § AWS CLI部分 ->
AWS SDKに変更 (今の時代なら生成AIに頼めば楽々?) § オプション導入・関数化・ファイル分割・エラーハンドリングなどリファクタ • GitHubリポジトリで公開 § 簡単な概要だけのREADMEを英語でとりあえず作成 • 色々と変更を加えて今に至る 26
はじめてのOSS活動: AWS CDK貢献 • Issue漁る § Good first issueラベル、 Typo/ドキュメント変更系
• 他の人のPull Requestを見まくる・コントリビュートガイド読む § 貢献ルールやビルド・テスト方法を学ぶ • とりあえず着手 + PR出してみる § 初心者にはレビュアーが親切に教えてくれるので、それをもとに修正 • あとは都度やりながらお作法を学んでいく (勢いが大事!) 27
自作OSSの紹介 28
自作OSS: AWSツール 【delstack】AWS CloudFormationスタック強制削除ツール § https://github.com/go-to-k/delstack 【cls3】Amazon S3バケットを高速に削除・空にするツール § https://github.com/go-to-k/cls3
【lamver】AWS Lambdaランタイム/バージョン検索ツール § https://github.com/go-to-k/lamver 29
delstack AWS CloudFormationスタック強制削除ツール 30 スタック削除で失敗するリソースがあっても、そのリソース含めスタックごと強制削除! 対話で検索して、複数スタック一括削除可能! (依存関係を加味して新しいものから順に削除)
cls3 Amazon S3バケットを高速に削除・空にするツール 31 対話で検索して、複数バケット一括削除可能! 非現行バージョンのみ削除も可能!
lamver AWS Lambdaランタイム/バージョン検索ツール 32
lamver AWS Lambdaランタイム/バージョン検索ツール 33 リージョン横断検索! CSV出力オプションもあり!
自作OSS: AWS CDKコンストラクトライブラリ 【image-scanner-with-trivy】CDKでTrivyでコンテナイメージスキャン § https://constructs.dev/packages/image-scanner-with-trivy 【image-scanner-with-dockle】CDKでDockleでコンテナイメージスキャン § https://constructs.dev/packages/image-scanner-with-dockle 【elb-other-5xx-alarm】CDKでマイナーな5xx(501,506...)のELBアラーム
§ https://constructs.dev/packages/image-scanner-with-dockle 34
まとめ 35
まとめ • OSS活動はそんなに難しくないよ! • OSS活動で得られることはたくさんあるよ! 36
まとめ • OSS活動はそんなに難しくないよ! • OSS活動で得られることはたくさんあるよ! 37 OSS活動のハードルが下がり 一歩踏み出したくなったらいいな 気軽に一歩踏み出してみよう!
宣伝 38
builders.flashに寄稿させていただきました! 2024/06/04 『AWS CDK におけるバリデーションの使い分け方を学ぶ』 • https://aws.amazon.com/jp/builders-flash/202406/cdk-validation/ 39
CDKコントリビュートワークショップやります! 2024/07/06(土) 『AWS CDK Conference Japan 2024』(@目黒セントラルスクエア 21階) • AWS
CDKへコントリビュートしてみようワークショップ (現地参加のみ) § https://jawsug-cdk.connpass.com/event/317921/ 40
CDKコントリビュートワークショップやります! 2024/07/06(土) 『AWS CDK Conference Japan 2024』(@目黒セントラルスクエア 21階) • AWS
CDKへコントリビュートしてみようワークショップ (現地参加のみ) § https://jawsug-cdk.connpass.com/event/317921/ 41 登壇もします! (セッションはオンラインとのハイブリッド) 17:35 - 17:55 『AWS CDKにおける「再利用性」を考える』
Thank you! k.goto (後藤 健太) AWS DevTools Hero X: @365_step_tech
GitHub: @go-to-k 42