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
0
12
GoのProposal を読むときにしていること
tomato3713
February 26, 2024
Tweet
Share
More Decks by tomato3713
See All by tomato3713
stefafafanさんに学んだアウトプット
tomato3713
1
120
イテレータを実装するときに 知っておくと良いこと
tomato3713
0
12
Other Decks in Programming
See All in Programming
ECS初心者の仲間 – TUIツール「e1s」の紹介
keidarcy
0
100
コンテキストエンジニアリング Cursor編
kinopeee
1
710
MLH State of the League: 2026 Season
theycallmeswift
0
160
State of CSS 2025
benjaminkott
1
120
Infer入門
riru
4
1.6k
兎に角、コードレビュー
mitohato14
0
150
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
8
3.2k
フロントエンドのmonorepo化と責務分離のリアーキテクト
kajitack
2
140
AIエージェント開発、DevOps and LLMOps
ymd65536
1
350
「リーダーは意思決定する人」って本当?~ 学びを現場で活かす、リーダー4ヶ月目の試行錯誤 ~
marina1017
0
240
Nuances on Kubernetes - RubyConf Taiwan 2025
envek
0
200
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
13
2.8k
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Rails Girls Zürich Keynote
gr2m
95
14k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Fireside Chat
paigeccino
39
3.6k
Side Projects
sachag
455
43k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Building an army of robots
kneath
306
46k
Faster Mobile Websites
deanohume
309
31k
The Cost Of JavaScript in 2023
addyosmani
53
8.8k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
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なテストを再試行する 機能を導入する提案