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
Go を使い始めて 2 ヶ月の学び / My first two months with Go
Search
Daisuke Garaike
August 21, 2026
Programming
430
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go を使い始めて 2 ヶ月の学び / My first two months with Go
https://tamachi-go.connpass.com/event/400310/
Daisuke Garaike
August 21, 2026
More Decks by Daisuke Garaike
See All by Daisuke Garaike
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
860
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
730
立川で超かぐや姫!について話したい / Talking Cosmic Princess Kaguya! in Tachikawa
contour_gara
1
460
AR グラス + ミニ PC で実現する新しいモバイル環境
contour_gara
0
390
TDD 実践ミニトーク
contour_gara
1
440
Spring Boot と AWS S3 を使ったアプリケーションのテスト
contour_gara
0
170
ノート PC に Linux 入れてみたけど結構良かった
contour_gara
0
3.7k
JUnit5 から Kotest へ
contour_gara
0
220
社外での学びを社内に還元したい
contour_gara
1
600
Other Decks in Programming
See All in Programming
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
270
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
7.2k
AI活用は、個人から組織へ|マルチプレイヤーエージェントハーネス「QM」の社内活用事例 / AI use is moving from individuals to orgs
rkaga
1
110
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
190
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
350
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
160
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
550
すこし踏み込む CancellationToken
htkym
0
260
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
240
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
480
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
130
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Abbi's Birthday
coloredviolet
4
10k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Docker and Python
trallard
47
4.2k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
690
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
460
Transcript
Go を使い始めて 2 ヶ月の学び 2026-08-20 tamachi.go #1 Daisuke Garaike
Daisuke Garaike • プログラマー ◦ ハンディ株式会社 ◦ at 浜松町 •
サーバーサイド Kotlin, アジャイル, 自動テスト, プロダクト開発 2
Go を使い始めて? • よく考えると書いたことはない ◦ AI が書いてくれている • バックエンドメインで 3
年 やっている ◦ Java, Kotlin ◦ 設計とかは なんとなくわかる 3
switch のケース漏れは誰が見つけるのか 4
きっかけ • とある PR • enum の switch による分岐に対して default
を入れる提案 • Java 系から来てる自分にとっては驚き 5
Java 系: コンパイル • Kotlin: when ◦ 式として使えば網羅性がコンパイルエラー • Java:
switch ◦ 式として使えば網羅性がコンパイルエラー • enum, sealed interface と相性良し • いずれも default をつけないことで効果を発揮 6
Go: リンター • case に漏れがあってもコンパイル OK • sealed な型がそもそも無い •
default をつけず、リンターで検知 ◦ ref. 7
学び • 型の力は落ちる • 言語仕様に入れないことで、柔軟性がある 8
ビルドシステムが無い 9
きっかけ • どのリポジトリもビルドに違いが無さそう 10
Java 系 • Maven, Gradle • Xml, Groovy, Kotlin •
プラグイン, タスクグラフ, バージョンカタログ...... • テストも後から入れる 11
Go • build, test, mod が最初から入っている • 学ぶことが共通 ◦ プロジェクト間で移動するコストが低い
12
学び • 凝ったことはできなさそう? • 薄くつくることによる統一感 13
テストが思ったより遅い 14
きっかけ • 開発に慣れてくると、 CI が遅いことに気づいてしまった • テストが思ったより遅い ◦ ローカルは早い ◦
CI で遅い 15
DB テストが遅そう • mysql の起動に時間がかかってそう ◦ GHA だししょうがない? • go
test おもろい ◦ パッケージレベルでの並列化 ◦ t.Parallel() によりパッケージ内でも並列化 ◦ ファイル単位ではなくパッケージ単位 16
学び • まだわからん 17
まとめ • 3 つとも同じ構造だった ◦ 言語仕様は薄く保つ ◦ 同梱ツールが豊富 ◦ 代わりに「ツールの挙動を知っているか」が生産性
を左右する • Java 系は逆で、コンパイラが強くツールは自作前提 • どちらが良いという話ではなく、 保証をどこに置くかの設計思想の差 18