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
GoのProposal を読むときにしていること
Search
tomato3713
February 26, 2024
Programming
21
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GoのProposal を読むときにしていること
tomato3713
February 26, 2024
More Decks by tomato3713
See All by tomato3713
stefafafanさんに学んだアウトプット
tomato3713
1
170
イテレータを実装するときに 知っておくと良いこと
tomato3713
0
27
Other Decks in Programming
See All in Programming
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
290
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
110
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
180
yield再入門 #phpcon
o0h
PRO
0
950
「人を評価する AI」の設計と実装
ryoyanara
0
160
AIが無かった頃の素敵な出会いの話
codmoninc
1
380
メールのエイリアス機能を履き違えない
isshinfunada
0
220
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
460
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
190
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
150
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
210
Featured
See All Featured
From π to Pie charts
rasagy
0
250
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
Practical Orchestrator
shlominoach
191
12k
GitHub's CSS Performance
jonrohan
1033
470k
The Cult of Friendly URLs
andyhume
79
7k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
360
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
200
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
260
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
520
Exploring anti-patterns in Rails
aemeredith
3
460
Designing Experiences People Love
moore
143
24k
Transcript
GoのProposal を読むときにしていること 株式会社はてな id: tomato3713
Q. Go の Proposal って何? A. Goの言語仕様や標準ライブラリ、コマンドなどのへの提案 Q. どこで管理されてる ?
A. GitHub の golang/go リポジトリの Issue
https://github.com/golang/go/issues/62244 実際の提案例
Q. あなたは誰 ? A. 趣味で Go の Proposal を読んでいる者です Q.
今日は何を話すの ? A. Proposalを読むときにしたこと、良かったことを話します
読むときのステップ 1. 提案の概要を理解する 2. コメントを 1個ずつ読む
1. 提案の概要を理解する Accepted なので追加予定なんだな どんな提案なんだろう ? 提案をした理由(メリット)ってなんだろう ? 既存のプロジェクトではどう対処している ?
cmd/go: add support for dealing with flaky tests であれば 提案
◦ 「cmd/go に Flaky Test が失敗したときに再実行して成功すればテスト全体を成功とする」機 能を追加する ◦ 具体的には、 Flaky Test であることをマークするメソッドや再実行回数を指定するコマンドのオプションを追 加する 先行事例 ◦ Tailscale プロジェクトにある go test ラッパーコマンド ◦ ビルドツールの Bazel にある flaky オプション
実際の概要を纏めたメモ
2.コメントを 1個ずつ読む • 必ずメモをとる ◦ 提案によってはかなり長いので過去の議論を忘れる • 何に焦点をあてたコメントなのかを意識する ◦ 割と好き勝手なコメントがある
◦ 並列して議論されることも • コメント時点での提案内容を理解する ◦ 議論によって当初の提案から内容が変わってしまっているこ ともある
コメントを読み進めているときのメモ 議論の節目っぽいコメントへのリンク コメントの翻訳、自分なりのまとめ
仕様提案を読んでみて良かったこと 1. 仕様がどんな過程で決まったのかがわかる 2. 追加される仕様によってどんなメリット、デメリットがあるのかを他 の却下された仕様と比較して理解できる 3. 言語の開発者の視点や考えがわかる
まとめ • 時間をかければ言語に詳しくなくても読んで理解できる • 面白いので読んだことがない人は一緒に読みましょう • flaky test のサポートを追加する提案について気になった方は ブログを読んでください
◦ Goのテスト安定性向上のために Flakyなテストを再試行する 機能を導入する提案