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
バルサ CL 初戦大勝のその後
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Doarakko
November 12, 2020
Programming
1.3k
0
Share
バルサ CL 初戦大勝のその後
Doarakko
November 12, 2020
More Decks by Doarakko
See All by Doarakko
Cloudflare Workers で X(Twitter)のボットを作ってみた
doarakko
0
310
Vercel Edge Functions を使って作る画像メーカー
doarakko
0
81
JOIN して1ヶ月のエンジニアに聞いた Liiga の良いところ 3 選
doarakko
0
86
わんわおーん
doarakko
0
72
職場を明るくする
doarakko
0
320
コードレビューの時間を削減しました
doarakko
0
100
仕事中に隠れてテレビ番組表を見るぞ
doarakko
0
210
GitHub Project の運用を自動化しました
doarakko
0
120
GitHub Actions に入門しました
doarakko
0
1.3k
Other Decks in Programming
See All in Programming
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
140
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
570
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
280
ハーネスエンジニアリングとは?
kinopeee
12
6k
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
運転動画を検索可能にする〜Cosmos-Embed1とDatabricks Vector Searchで〜/cosmos-embed1-databricks-vector-search
studio_graph
0
420
의존성 주입과 모듈화
fornewid
0
150
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
220
Back to the roots of date
jinroq
0
330
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
180
AIと共に生きる技術選定 2026
sgash708
0
100
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
580
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
0
6.7k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
320
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
170
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
120
GitHub's CSS Performance
jonrohan
1032
470k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.7k
Transcript
バルサ CL 初戦大勝のその後 @Doarakko
・2019年12月入社(2社目) ・エンジニア歴1.5年 - 仕事: Go, PHP(たまに) - 趣味: Python, C++
・AtCoder 緑 ・海外サッカーをよく見ます 自己紹介 2
CL 初戦前にヘタフェに完封負け 3
【朗報】バルセロナ大量5得点、圧倒的勝利! 4
Gin にコミットしたい >>>>> 眠気 5
コミットしました 6 パッケージのバージョン上げただけだよ
・Go の Web フレームワーク ・外資就活ドットコムのバックエンドで使用 ・OSS(Open Source Software) Gin とは
7
・ブログを書く ・勉強会を開催 ・issue を立てる ・ドキュメントの追加・修正・翻訳 ・機能追加 ・バグ修正 OSS に貢献するには 8
他にもあるかも
・ブログを書く ・勉強会を開催 ・issue を立てる ・ドキュメントの追加・修正・翻訳 ・機能追加 ・不具合・バグの修正 OSS にコミットするには 9
他にもあるかも
issue 探し 10 OSS によっては「good first issue」というラベルをつけてくれています!
Undefined validation function 'required_if' on field 'Field' 11 issue template
に合わせて書いてくれているのでローカルでの再現や対応がしやすかった
Gin の binding タグとは 12 Gin の内部では validator パッケージを使っているので挙動は同じ Gin
binding タグ validator の validate タグ
binding タグで「required_if」を指定すると定義されてませんよエラー 13
・ローカルで再現するか → 再現 ・「required_if」以外を指定するとどうなかるか → 同様のエラーになるものが一部あり ・validator パッケージの issue に報告が上がっていないか
→ 特になし ・(Gin のバージョンを最新にしても再現するか) 一つずつ確認していく 14
Gin は内部で validator パッケージを使用している 15
validator パッケージのバージョンを見てみると... 16 Gin が使っているバージョン 最新バージョン
17
required_if がリリースされたバージョンを調べてみる 18 ソースから PR を特定して Releases からバージョンを確認
Gin が使っているバージョンでは「required_if」が追加されていない 19 validator パッケージのバージョンあげるぞ
PR を上げるまでの手順 20
・README.md を読む ・CODE_OF_CONDUCT.md を読む ・CONTRIBUTING.md を読む ・コメントがついている issue や PR
を見る(雰囲気を知るため) OSS に PR を上げる前に⚠ 21 ルールが厳格な OSS もあるので必ず読む
① リポジトリを Fork してローカルに落とす 22 本家に直で Push する権限がないため
② go get -u github.com/go-playground/validator/v10 23 動作確認・テストコードの実行も忘れずに!
③ PR 作成 24 マージされた他の方の PR を見て雰囲気を掴む
05:53 25
12:26 26
マージされました 27
・OSS 活動怖くない ・小さな修正でも多くの人のためになる ・issue をよく見てみると意外とコミットチャンスあるかも まとめると... 28
バルサ CL 初戦大勝のその後 @Doarakko