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
ゲームのマスタデータ特有の3つの困難と、カヤックでの解決方法 / How to solve t...
Search
mackee
December 12, 2019
Programming
3
12k
ゲームのマスタデータ特有の3つの困難と、カヤックでの解決方法 / How to solve three problems when handling the master-data of mobile games
マスタデータNight #1
https://masterdata.connpass.com/event/155533/
mackee
December 12, 2019
Tweet
Share
More Decks by mackee
See All by mackee
ワンバイナリWebサービスのススメ
mackee
10
7.8k
tanukistack ライブコーディング / tanukistack live-coding
mackee
0
110
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
690
perl for shell, awk and sed programmers
mackee
2
2.3k
今更GoのWebフレームワークを作ろうとしているワケ / Why am I trying to create a Go web framework now?
mackee
1
650
database/sqlでNullを扱う歴史とsql.Null[T]の登場 / sql.Null[T] history
mackee
0
540
マイクロサービス化を利用した Goへの移行事例
mackee
0
670
PerlでつくるフルスクラッチWebAuthn/パスキー認証 / Demonstration of full-scratch WebAuthn/Passkey Authentication written in Perl
mackee
3
4.6k
SRE定例やその辺の取り組みをアプリケーションエンジニア目線で語る / "Observe" about SRE Meeting by Application Engineer
mackee
0
1.9k
Other Decks in Programming
See All in Programming
What's new in AppKit on macOS 26
1024jp
0
140
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
型で語るカタ
irof
0
530
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.5k
Hack Claude Code with Claude Code
choplin
6
2.4k
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
190
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
1k
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
180
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
280
PipeCDのプラグイン化で目指すところ
warashi
1
290
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
1
310
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
370
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Gamification - CAS2011
davidbonilla
81
5.4k
Navigating Team Friction
lara
187
15k
4 Signs Your Business is Dying
shpigford
184
22k
Documentation Writing (for coders)
carmenintech
72
4.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Transcript
ήʔϜͷϚελσʔλಛ༗ͷ 3ͭͷࠔͱɺ ΧϠοΫͰͷղܾํ๏ ϚελσʔλNight #1 2019-12-12 ໘ന๏ਓΧϠοΫ @mackee_w 1
όοΫάϥϯυͱϙδγϣϯ • macopy, twitter: @mackee_w, GitHub: @mackee • ໘ന๏ਓΧϠοΫ ιʔγϟϧήʔϜࣄۀ෦ήʔϜٕݚ
• αʔόαΠυΤϯδχΞ • ӡ༻ͷͨΊͷศརάοζΛ։ൃ͢Δ୲ 2
ձͷςʔϚ **ͷϚελσʔλ 3
ࠓճͷձͷςʔϚ ήʔϜͷϚελσʔλ 4
͜ͷηΫγϣϯͰ͢͜ͱ • ϞόΠϧήʔϜͰΘΕΔϚελσʔλͷܗଶ • ϞόΠϧήʔϜಛ༗(ͱࢥΘΕΔ)ࠔ • छྨ͕ଟ͍ɾߴසͷߋ৽ɾଈ࠲ʹࣄނʹͭͳ͕Δ • ΧϠοΫͰͷࠔͷղܾํ๏ 5
ϞόΠϧήʔϜͰ ΘΕΔ ʮϚελσʔλʯͱ 6
ʮϚελσʔλʯͰ͍ͨ͜͠ͱ • ϓϩάϥϜͱσʔλͷ • ΞϓϦߋ৽ແ͠ͰήʔϜσʔλΛߋ৽͢ΔͨΊ • App Storeͷن 2.5.2 ͷଘࡏ
• ۀͷͨΊ => ήʔϜ੍࡞࿑ಇूܕ࢈ۀ 7
͜ͷͰѻ͏Ϛελʮσʔλʯ • ήʔϜͷύϥϝʔλʔɾఆͱݺΕΔͷ • ͋ΒΏΔήʔϜςΩετ => ࠃࡍԽ • ήʔϜͰࢀর͖͢ΞηοτΛهड़ͨ͠ͷ 8
Ϛελσʔλͷೖྗํ๏ • ͍͍ͩͨೋ࣍ݩͷදͰͷཧ • ೖྗExcel, Google SheetsͳͲ • ಠࣗͷUIͰRDBMSʹ͍ΕͨΓCSVͳͲʹग़ྗ͢Δ έʔε
9
อଘܗࣜͷྫ • CSVJSONɺProtocol Buffers etc... • Ϛελσʔλ͔ΒϓϩάϥϜΛੜ • ߋʹ͔͜͜Βύοέʔδϯάख๏͕Δ •
ྫ: tarballʹݻΊͯ҉߸Խ • SQLiteͷ1ϑΝΠϧʹೖΕͯ৴͢Δख๏͋Δ 10
Ϛελσʔλͷ৴ ৴ʹؔͯ͠ߟ͑Δ͖͜ͱ͕ଟ͍ 11
ήʔϜಛ༗ͷ՝ • Ϛελσʔλͷछྨ͕ଟ͍ • ߴසͷߋ৽ • ؒҧ͑ͨΒଈࣄނʹͭͳ͕Δةݥੑ 12
Ϛελσʔλͷछྨ͕ଟ͍ • ΅͘ϙέͷ߹ɺ237 छྨ(2019ݱࡏ) 13
ͯ͢Λಉ࣌ʹ͏Θ͚Ͱͳ͍ • ಛఆͷΠϕϯτͷͱ͖ʹ͔͠Θͳ͍Ϛελσʔλ • Πϕϯτ͝ͱʹେ͖͘มಈ͢Δ1 1 2ϫʔϧυ(ςφϯτ)ʹు͍͍ͯΔͷͰ࣮ࡍͷCSVͷछྨ͜ͷ 14
छྨ͕େྔʹ͋Δ߹ͷ՝ • ઐ༻ͷೖྗը໘Λ࡞Δίετͷํ͕ߴ͍ • ͲͷϚελσʔλ͕ͲͷΠϕϯτʹඞཁͳͷ͔ɺ֮͑ Δίετ͕ߴ͍ • ೖྗ͢Δ߲͕େྔʹ͋Δ • =>
ෳਓͰ୲ͯ͠ೖྗ͢Δͷ͕લఏ 15
छྨ͕େྔ => ΧϠοΫͰͷղ๏ • ೖྗͯ͢Google SheetsͰߦ͏ • ઐ༻ͷཧը໘Λ࡞Βͳͯ͘ࡁΉ • ෳਓͰಉ࣌ʹฤूͰ͖Δ
• σϝϦοτ: ͜Ε͚ͩͩͱࣗ༝͗͢Δ 16
छྨ͕େྔ => ΧϠοΫͰͷղ๏ ೖྗ͖͢ϚελσʔλΛςϯϓϨ͔Β࡞Δ2 2 ͜ͳΕ͖ͯͨΒखͰೖྗͤͣʹؔͱGASͰϚελσʔλͷ༰·Ͱੜ͢Δ 17
ߴසͷߋ৽ • ि3ʙ4ճͷຊ൪Խ • 5ʙ6ݸ͙Β͍ͷ։ൃτϐοΫ Λಉ࣌ਐߦ 18
ߴසߋ৽ͷ߹ͷ՝ • ಉ͡ϚελσʔλΛෳͷਓ͕͍͡ΔՄೳੑ • ͔͠ຊ൪ԽλΠϛϯά͕લޙ͢Δ • Ϛελσʔλͷؒʹґଘ͕ؔൃੜ͢Δ • ͋ΔϚελσʔλผͷϚελσʔλ͕ଘࡏ͢Δલ ఏͰهड़͞Ε͍ͯΔͳͲ...
19
ߴසߋ৽ => ΧϠοΫͰͷղ๏ • ؔ৺͝ͱʹ͍͡ΔൣғΛ໌֬ʹ͚Δ • ϚελσʔλͷதʹλάΛ͚Δ • λάؒͰґଘؔΛఆٛ 20
࣮ݱํ๏ • 2ͭͷख๏Λซ༻ • ։ൃτϐοΫ͝ͱʹਫฏׂͯ͠ग़ྗ࣌Ͱ౷߹ • ߦͱྻʹλάΛ͚ͯऔΓࠐΈ࣌ʹλάࢦఆ • ϚελσʔλཧγεςϜ akashic
Ͱཧ 21
࡞࣌ਫฏׂͯ͠ग़ྗ࣌ʹ౷߹ 22
λά͚ͯ͠ݶఆग़ྗ ґଘఆ͔ٛΒߏΛੜͯ͠ɺࢦఆͨ͠λά͕ґଘ͢ΔλάؚΊͯग़ྗ 23
ଈ࠲ʹࣄނʹͭͳ͕Δ • ϚελσʔλήʔϜ͕ಈͨ͘Ίͷࡐྉ • ϓϩάϥϜͦͷࡐྉΛͬͯۦಈͯ͠ήʔϜʹͳ Δ • ࡐྉͷྔछྨ͕ؒҧ͍ͬͯͨΒήʔϜ͕յΕΔ • όά,
༏ྑޡೝ... • ͓ͼ, ճऩ, ϝϯςφϯεೖΓ... 24
Ϛελσʔλ ϓϩάϥϜͱಉ༷ʹ ѻΘͳ͚ΕͳΒͳ͍ 25
ϓϩάϥϜͱಉ༷ʹѻ͏ͱ • όά͕গͳ͍ϓϩάϥϜΛॻ͘ʹʁ • ίʔυϨϏϡʔΛ͢Δ • ςετΛॻ͘, CIΛճ͢ => ϚελσʔλͰΓ·͠ΐ͏
26
ϚελσʔλϨϏϡʔ • ຊ൪Խ͢ΔϚελσʔλPullRequestʹ͢Δ • ϚελΛೖྗ͢ΔਓͨͪͰϨϏϡʔ͢Δ 27
Ϛελσʔλͷςετ • αʔόαΠυͷ։ൃݴޠͷςετϑϨʔϜϫʔΫͰϚ ελσʔλͷCSVʹର͢ΔςετΛهड़ • ͷܗࣜ, ҬͳͲͷόϦσʔγϣϯ • ϦϨʔγϣϯઌͷID͕ఆٛ͞Ε͍ͯΔ͔Ͳ͏͔ •
ήʔϜϩδοΫΛͬͯҟৗͳಈ࡞ʹͳΒͳ͍͔ 28
ϚελσʔλͷςετͷCI • CSVʹͨ͠ޙʹPull Request͕࡞ΒΕΔΈ • Slack BotͰ࣮ߦ͢Δ • Pull Request͕࡞ΒΕΔͱϚελσʔλͷςετ͕࣮
ߦ͞ΕΔ • ςετ͕failͨ͠߹ೖྗऀ͕CI݁ՌΛݟͯ͢ 29
·ͱΊ Ϛελσʔλͷࠔʹର͢ΔΧϠοΫͰͷղ๏ • छྨ͕ଟ͍: Google Sheetsϑϧ׆༻ • ߴසͷߋ৽: ೖྗͷํͰόʔδϣϯཧ •
ࣄނରࡦ: ϨϏϡʔͱϚελσʔλͷςετ 30
Any Questions? 31