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
エンジニアが持続的に成長するスキルサーズデー型勉強会 〜なかだるみしない社内勉強会の運営方法〜
Search
Cygames, Inc.
PRO
September 30, 2016
Technology
9.3k
12
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
エンジニアが持続的に成長するスキルサーズデー型勉強会 〜なかだるみしない社内勉強会の運営方法〜
2016/08/25 CEDEC 2016
Cygames, Inc.
PRO
September 30, 2016
More Decks by Cygames, Inc.
See All by Cygames, Inc.
【U/Day Tokyo 2025】Cygames流 最新スマートフォンゲームの技術設計 〜『Shadowverse: Worlds Beyond』におけるアーキテクチャ再設計の挑戦~
cygames
PRO
4
14k
【CEDEC+KYUSHU2025】学生・若手必見!テクニカルアーティスト 大全 ~仕事・スキル・キャリアパス、TAの「わからない」を徹底解剖~
cygames
PRO
1
1.2k
【TiDB User Day2025】リリース時のアクセス急増をいかにしてノーメンテで乗り越えたか 〜『Shadowverse: Worlds Beyond』におけるTiDB採用のゲームサーバー設計〜
cygames
PRO
1
2.8k
【CEDEC2025】『Shadowverse: Worlds Beyond』二度目のDCG開発でゲームをリデザインする~遊びやすさと競技性の両立~
cygames
PRO
2
850
【CEDEC2025】大規模言語モデルを活用したゲーム内会話パートのスクリプト作成支援への取り組み
cygames
PRO
2
2.5k
【CEDEC2025】現場を理解して実現!ゲーム開発を効率化するWebサービスの開発と、利用促進のための継続的な改善
cygames
PRO
0
1.8k
【CEDEC2025】ブランド力アップのためのコンテンツマーケティング~ゲーム会社における情報資産の活かし方~
cygames
PRO
0
1.9k
【CEDEC2025】『ウマ娘 プリティーダービー』における映像制作のさらなる高品質化へ!~ 豊富な素材出力と制作フローの改善を実現するツールについて~
cygames
PRO
0
680
【CEDEC2025】LLMを活用したゲーム開発支援と、生成AIの利活用を進める組織的な取り組み
cygames
PRO
1
5k
Other Decks in Technology
See All in Technology
AIを「創る」と「使う」の循環 — HRテックが実践するリアルなAI組織実装
taketo957
0
1.8k
Rancherの紹介&Update情報(RancherJP Online Meetup #09)
yoshiyuki_kono
0
140
新しいVibe Codingと”自走”について
watany
5
270
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
53
58k
Dario Amodi『Policy on the AI Exponential』を理解する
nagatsu
0
210
自律型AIエージェントは何を破壊するのか
kojira
0
130
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
0
220
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
2
330
2026TECHFRESH畢業分享會 - AI 時代的人生存檔點
line_developers_tw
PRO
0
150
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
360
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
430
運用を見据えたAIエージェント設計実践
amacbee
1
3.5k
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
310
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Navigating Team Friction
lara
192
16k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
830
It's Worth the Effort
3n
188
29k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
220
Designing for Timeless Needs
cassininazir
1
250
Paper Plane
katiecoart
PRO
1
51k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
Transcript
None
© 2016, Cygames, Inc. /73 アジェンダ(2部構成) 2 持続的な社内勉強会の運営⽅法につ いて(スキルサーズデー) 社内勉強会で共有した知識を体系化
するための⼤学講義・演習のノウハ ウについて
© 2016, Cygames, Inc. /73 アジェンダ(2部構成) 3 持続的な社内勉強会の運営⽅法につ いて(スキルサーズデー) 社内勉強会で共有した知識を体系化
するための⼤学講義・演習のノウハ ウについて
4 社内勉強会に関して (スキルサーズデー)
© 2016, Cygames, Inc. /73 ⾃⼰紹介
© 2016, Cygames, Inc. /73 サマリ • 本内容は社内勉強会を運営している⽅、また運営を ⾏おうとしている⽅へのセッションです。 弊社の社内勉強会事例、またどのような⼼構えで運
営をしているかをお伝えしたいと思います。 6
© 2016, Cygames, Inc. /73 アジェンダ • 社内勉強会の運営は⾟い • スキルサーズデーについて • ⼼がけている3つの事 • まとめ
7
© 2016, Cygames, Inc. /73 質問 • 社内勉強会を運営している⽅ • 開催に苦労しているという⽅ 8
© 2016, Cygames, Inc. /73 質問 ࣾษڧձͷӡӦਏ͍ ͱݴΘΕΔ 9
© 2016, Cygames, Inc. /73 運営は⾟い ਓ͕ू·Βͳ͍ ޮՌ͕ݟࠐΊͳ͍ ଓ͔ͳ͍ 10
© 2016, Cygames, Inc. /73 運営は⾟い ਓΛूΊ͍ͨ ޮՌΛݟࠐΈ͍ͨ ଓ͚͍ͨ 11
ਅͷతʁ
© 2016, Cygames, Inc. /73 勉強会のきっかけ • 元々は1プロジェクトの週1定例MTG • 共有事項+勉強会 • 3ヶ⽉間毎週スライドを書いていた
• サーバー(アプリケーションサーバー、KVS) • クライアント(cocos2d-x、メモリ) • その他(git、時間管理術、最近のトレンド) • プロジェクト内からは好評 • 15分程度で書いたスライドでも需要はある 12
© 2016, Cygames, Inc. /73 勉強会のきっかけ • プロジェクトから離れた⽴場になり、 技術的に伸びを感じない「焦り」 •
社内SNSでアピール 「何か勉強して話すから聞いてくれる⼈募集」 • 毎週話す気でいたら、他にも話したい⼈がいた 13
© 2016, Cygames, Inc. /73 勉強会のきっかけ • プロジェクトから離れた⽴場になり、 技術的に伸びを感じない「焦り」 •
社内SNSでアピール 「何か勉強して話すから聞いてくれる⼈募集」 • 毎週話す気でいたら、他にも話したい⼈がいた εΩϧαʔζσʔͷ։࢝ 14
© 2016, Cygames, Inc. /73 最初の⽬的は ਓΛूΊ͍ͨ ޮՌΛݟࠐΈ͍ͨ ͠ଓ͚͍ͨ ͍ͨͩͨ͠ͱ͍͏
ʮࢥ͍͖ͭʯ͔Β࢝·ͬͨ 15
© 2016, Cygames, Inc. /73 スキルサーズデー • エンジニア向け社内勉強会 • 毎週⽊曜⽇
• 定時後の19:00〜20:00 • 副題は「毎週が8⽉31⽇」 16
© 2016, Cygames, Inc. /73 スキルサーズデー • エンジニア向け社内勉強会 • 毎週⽊曜⽇
• 定時後の19:00〜20:00 • 副題は「毎週が8⽉31⽇」 • アクティブラーニング 17
© 2016, Cygames, Inc. /73 アクティブラーニングとは 18 ߨٛ ಡॻ ࢹௌ֮
σϞϯετϨʔγϣϯ άϧʔϓ౼ ࣗΒମݧ͢Δ ਓʹڭ͑Δ Learning Pyramid ʢग़యɿNational Training Laboratoriesʣ
© 2016, Cygames, Inc. /73 アクティブラーニングとは 19 ̍̌ˋ ̎̌ˋ ̏̌ˋ
̑̌ˋ ̓̑ˋ ̌̕ˋ ߨٛ ಡॻ ࢹௌ֮ σϞϯετϨʔγϣϯ άϧʔϓ౼ ࣗΒମݧ͢Δ ਓʹڭ͑Δ ̑ˋ ฏۉֶशఆண ʢग़యɿNational Training Laboratoriesʣ
© 2016, Cygames, Inc. /73 アクティブラーニングとは 20 ̍̌ˋ ̎̌ˋ ̏̌ˋ
̑̌ˋ ̓̑ˋ ̌̕ˋ ߨٛ ಡॻ ࢹௌ֮ σϞϯετϨʔγϣϯ άϧʔϓ౼ ࣗΒମݧ͢Δ ਓʹڭ͑Δ ̑ˋ ฏۉֶशఆண 受動的 能動的 ʢग़యɿNational Training Laboratoriesʣ
© 2016, Cygames, Inc. /73 アクティブラーニングとは 21 ̍̌ˋ ̎̌ˋ ̏̌ˋ
̑̌ˋ ̓̑ˋ ̌̕ˋ ߨٛ ಡॻ ࢹௌ֮ σϞϯετϨʔγϣϯ άϧʔϓ౼ ࣗΒମݧ͢Δ ਓʹڭ͑Δ ̑ˋ ฏۉֶशఆண 受動的 能動的
© 2016, Cygames, Inc. /73 能動的フェーズ άϧʔϓ౼ ࣗΒମݧ͢Δ ਓʹڭ͑Δ ラウンドテーブル
ハンズオン 発表 3つを主軸に置いた 環境作り 22
© 2016, Cygames, Inc. /73 ラウンドテーブル • ⽉1程度 • プロジェクトを越えて話す機会になる
• 初期の議題は普段の業務に近い内容が良い 「プロジェクトの進め⽅」について など άϧʔϓ౼ 23
© 2016, Cygames, Inc. /73 ハンズオン • 不定期 • Vimの使い⽅など初歩的な所がメイン
• やってみると意外と知らないショートカットも • 同テーマで継続的に⾏うものであるなら 別の時間の⽅が良い。 ࣗΒମݧ͢Δ 24
© 2016, Cygames, Inc. /73 フリージャンル • Unityと静的解析 • UnityTestTools • Unity最適化(主に3D以外) • Unity
+ SpriteStudioで最適化の話 • プレUnite〜Unity+スマホで3Dゲーム開発/最適 化するための考え⽅ • Monoから推測するUnity GCの動き • ドメイン固有⾔語による境界コード⽣成術(主 にruby) • 某カードゲームの戦闘シミュレーション最適化 • ゲームの勝利ログからゲームAIが作れることも ある • ゲームAI・実装事例の紹介 • ディープラーニングがAIにもたらすブレークス ルー 〜AlphaGoがイ・セドルに勝てたのはなぜ か? • AI設計における限定合理性の効⽤ - TCGAIでの 事例- • AIのデータ運⽤事例と、復帰処理を利⽤した回 帰テストについて • nodejsの特徴と仕組み • PhantomJSを使ったsocket.io負荷試験 • Node.jsとPromise/Deferredパターン • PHP5とPHP7を較べて⾒た • MySQLをいじめ倒してみた!!! • サーバの殺し⽅ • サーバーがこんなに減らせるわけがない • XFLAG Infrastracture DEEP DIVE • 遺恨を残さないためのcron周り運⽤⾒直し • C++初歩 • 某プロジェクトにおけるC++の罠 • プログラミング研修で学んだこと(C⾔語)〜総合職 視点〜 • スクラムマスター研修レポート • プロジェクトの進め⽅ラウンドテーブル • VisualStudioアドオンのVisualAssistXとの美味 しい付き合い⽅ • UnrealEngine4を触ってみた話 • swiftのすすめ • swagger⼊⾨編 • 中の下のエンジニア脱出するための⽬標設定 • あなたにもなれる!Pepper新⽶プロデューサー育 成講座 • リーン開発を駆け⾜で解説 • ニューラルネットワークの実装⽅法 ଞ20ఔ ਓʹڭ͑Δ 25
© 2016, Cygames, Inc. /73 • MySQLをいじめ倒してみた!!! • サーバの殺し⽅ • サーバーがこんなに減らせるわけがない • XFLAG Infrastracture
DEEP DIVE • 遺恨を残さないためのcron周り運⽤⾒直し • C++初歩 • 某プロジェクトにおけるC++の罠 • プログラミング研修で学んだこと(C⾔語)〜総合職 視点〜 • スクラムマスター研修レポート • プロジェクトの進め⽅ラウンドテーブル • VisualStudioアドオンのVisualAssistXとの美味 しい付き合い⽅ • UnrealEngine4を触ってみた話 • swiftのすすめ • swagger⼊⾨編 • 中の下のエンジニア脱出するための⽬標設定 • あなたにもなれる!Pepper新⽶プロデューサー育 成講座 • リーン開発を駆け⾜で解説 • ニューラルネットワークの実装⽅法 • Unityと静的解析 • UnityTestTools • Unity最適化(主に3D以外) • Unity + SpriteStudioで最適化の話 • プレUnite〜Unity+スマホで3Dゲーム開発/最適 化するための考え⽅ • Monoから推測するUnity GCの動き • ドメイン固有⾔語による境界コード⽣成術(主 にruby) • 某カードゲームの戦闘シミュレーション最適化 • ゲームの勝利ログからゲームAIが作れることも ある • ゲームAI・実装事例の紹介 • ディープラーニングがAIにもたらすブレークス ルー 〜AlphaGoがイ・セドルに勝てたのはなぜ か? • AI設計における限定合理性の効⽤ - TCGAIでの 事例- • AIのデータ運⽤事例と、復帰処理を利⽤した回 帰テストについて • nodejsの特徴と仕組み • PhantomJSを使ったsocket.io負荷試験 • Node.jsとPromise/Deferredパターン • PHP5とPHP7を較べて⾒た カテゴリ分け Unity AI Node.js+PHP αʔόʔ C++ Ϩϙʔτ ։ൃख๏ UE4 Swift Visual Assist pepper ͳͲ 26
© 2016, Cygames, Inc. /73 参加⼈数の傾向 27 ࠷େࢀՃऀɿ̑̎ਓ ࠷ࢀՃऀɿ̔ਓ ฏۉࢀՃऀɿ̎̐.̔ਓ
0 15 30 45 60 10/29 11/26 1/7 1/28 3/3 3/24 4/21 5/19 6/9 7/7 開始時から30回までの⼈数推移 ࢀ Ճ ऀ ։࠵
© 2016, Cygames, Inc. /73 参加⼈数の傾向 28 ࠷େࢀՃऀɿ̑̎ਓ ࠷ࢀՃऀɿ̔ਓ ฏۉࢀՃऀɿ̎̐.̔ਓ
0 15 30 45 60 10/29 11/26 1/7 1/28 3/3 3/24 4/21 5/19 6/9 7/7 開始時から30回までの⼈数推移 ࢀ Ճ ऀ ։࠵
© 2016, Cygames, Inc. /73 0 15 30 45 60
10/29 11/26 1/7 1/28 3/3 3/24 4/21 5/19 6/9 7/7 開始時から30回までの⼈数推移 参加⼈数の傾向 29 Unityճ Unity回には⼈が集まりやすい 普段の業務に近しい内容には興味がある ࢀ Ճ ऀ ։࠵
© 2016, Cygames, Inc. /73 0 15 30 45 60
10/29 11/26 1/7 1/28 3/3 3/24 4/21 5/19 6/9 7/7 開始時から30回までの⼈数推移 参加⼈数の傾向 30 ͦͷଞ 枯れた技術、開発⼿法、⽣存戦略 などには⼈が集まりにくい ࢀ Ճ ऀ ։࠵
© 2016, Cygames, Inc. /73 ⼈が集まらないことは問題なのか • ⼈が少ないからこそ盛り上がる事もある • cronの回、 運⽤⽅針の回など
• 最初の⽬的を忘れない • そもそもは話したい「場所」が欲しかった 場所が作れているだけで⽬的は達成 • 「⼈を集めたい⽬的」の勉強会は 別でやるべき 31
© 2016, Cygames, Inc. /73 振り返りで⾒えてくるもの • 興味がある項⽬であれば⾃然と⼈は集まる • 毎週は出れない⼈も当然出てくる • 参加できずとも資料を⾒てくれる⼈はいる
• 「あの資料が役に⽴った」と数ヶ⽉経った後 に聞く事もある • 続かない原因は運営にある事を⾃覚する • 「⼈が集まらない」で折れそうにも 視点を変える事が重要 32
© 2016, Cygames, Inc. /73 続ける為の3つのコツ ίϛϡχέʔγϣϯ ΠςϨʔγϣϯ ΧΠθϯ 33
© 2016, Cygames, Inc. /73 コミュニケーション • 運営外のコミュニケーションを⼤事に • 意欲的な⼈には「直接」相談する 他の⼈の⽬に触れる場所での相談では、
強制⼒が出る • 参加してくれる⼈に感謝を忘れない • 必ず感想を書く(フィードバック) • 参加してくれるだけありがたい話 • ⾃主性を重視する • プライベート優先で。過度に誘わない。 • ただし「話したい」と⾔っていた⼈には ⽬をつける 34
© 2016, Cygames, Inc. /73 イテレーション • ⽊曜⽇が休⽇なら勉強会も休む • リスケに労⼒を割かない • 2週以上は極⼒空けない
• 空きには慣れやすい • リズムを崩さない • 10分でも続ける努⼒ • 話すネタが無いことは「無い」 • 毎回収穫がある勉強会を期待しない 35
© 2016, Cygames, Inc. /73 カイゼン • BOTの作成 • 告知に使⽤ •
運営の軽減になる • 資産を⼤事に • 資料⾃動アップロード • 社内スライドシェアを作る • 定期的な振り返り • 参加者の意⾒重要 36
© 2016, Cygames, Inc. /73 まとめ • 継続系の勉強会では即時効果は⾒えにくい • 続ける事で⾒えてくる事がある • 運営は程よく頑張らない
• 運営が疲れたら寂れるのも終わるのも容易い • 勉強会の⽬標を明確に • 勉強会のパターンは⼀つでは無い 37
© 2016, Cygames, Inc. /73 アジェンダ(2部構成) 38 持続的な社内勉強会の運営⽅法につ いて(スキルサーズデー) 社内勉強会で共有した知識を体系化
するための⼤学講義・演習のノウハ ウについて
39 社内勉強会で共有した知 識を体系化するための⼤ 学講義・演習のノウハウ について
40
© 2016, Cygames, Inc. /73 サマリ 41 ͋ΒΏΔ࢈ۀʹ͓͍ͯɺ࣋ଓతͳ Λ࣮ݱ͢ΔͨΊʹɺ৫Ͱͷࣝ ڞ༗ͱͦΕʹΑΔΠϊϕʔγϣϯ͕ඞ
ཁෆՄܽ ͋ΔఔͷنҎ্ͷ৫ʹ͓͍ͯɺ ࣝڞ༗Λଅਐ͢ΔͨΊʹɺࣝͷ ମܥԽ͕伴ͱͳΔ
© 2016, Cygames, Inc. /73 アジェンダ 社内における知識共有 体系的な知識の発信⽅法 ⽂章作成技術の紹介 まとめ
42
© 2016, Cygames, Inc. /73 体系的な知識の発信⽅法 43 ϓϨθϯςʔγϣϯ ϥΠςΟϯά
© 2016, Cygames, Inc. /73 プレゼン/ライティングのスキルは必要? 44 組織が⼤きくなるほど、⽂書化技術 がコミュニケーションの鍵となる ⽂
書 খ͍͞৫Ͱޱ ಄ڞ༗Ͱे େ͖ͳ৫ͰจॻΛഔ հʹͨࣝ͠ڞ༗͕ඞཁ
© 2016, Cygames, Inc. /73 チームの盲点 45 企業 プロジェク トチームA
プロジェク トチームB ৫ΛνʔϜʹׂ͢ΔํࣜɺνʔϜͷ ίϛϡχέʔγϣϯΛԁԽ͢Δ͕ɺνʔϜ ؒͷίϛϡχέʔγϣϯΛ્ΉཁҼʹͳΔɻ 独⾃の ⽂化A 独⾃の ⽂化B 異⽂化 の障壁
© 2016, Cygames, Inc. /73 コミュニケーションが円滑すぎる場合は密結合 46 企業 プロジェク トチームA
プロジェク トチームB ίϛϡχέʔγϣϯ͕ԁʹͰ͖͗͢Δ νʔϜಉ࢜ɺසൟʹඞཁͳίϛϡχ έʔγϣϯΛߦ͍ͬͯΔͱ͍͏͜ͱͰ͋ Γɺۀମ੍ཱ͕֬Ͱ͖͍ͯͳ͍ɻ ࣝΛڞ༗Ͱ ͖͍ͯΔ͕ɺ ϘτϧωοΫ ڞ༗
© 2016, Cygames, Inc. /73 ⾼度に⾃律した組織間でのコミュニケーションを 成⽴させる⽅法 47 ࣝͷମܥԽͱڞ௨ج൫Խ͕ͦ͜ίϛϡχ έʔγϣϯΛཱͤ͞Δ伴ͱͳΔɻ
ࣝͷମܥԽͱڞ௨ج൫ԽΛɺશਓྨنͰ ߦͬͨͷ͕ɺʮՊֶʢαΠΤϯεʣʯ ମܥతͳࣝΛจॻϓϨθϯͱͯ͠ڞ༗͢ Δख๏͕༗ޮ
© 2016, Cygames, Inc. /73 プログラマだからプレゼンも⽂章も苦⼿? 48 ྑ͍ϓϩάϥϚɺඞͣɺ ྑ͍ϓϨθϯλʔɺྑ͍ ϥΠλʔͰ͋Δɻ
© 2016, Cygames, Inc. /73 良いプログラムと悪いプログラム 49 public class Main
{ public static void main(String[] args) { 全てがmainメソッドの 中に書かれており、引 数で条件分岐する5000 ⾏のプログラム } } public class Main { public static void main(String[] args) { } private static int eventLoop() { } private static int processFile() { } private static int handleErrors(Error e) { } } ϓϩάϥϜߏԽ͞Ε͓ͯΓɺҰͭͷػೳҰͭͷ Ϟδϡʔϧʹू͞Ε͍ͯΔํ͕͍͍ɻ จষಉ͡ɻߴʹߏԽ͞ΕɺҰͭͷτϐοΫΛ1ͭ ͷষύϥάϥϑʹू͞ΕͨจষΛॻ͖͘ɻ
© 2016, Cygames, Inc. /73 プログラム全体を複数のモジュールに分割するべ き(IMRAD構成) 50 • Introductionʢઓུʣ
• Methodʢઓज़ʣ • Resultʢ݁Ռʣ • Discussionʢߟʣ ⽂書ならば、Introduction、Method、 Result、Discussionの4部構成に分割する。 Λఆٛ͠ɺࣗͷߟ͑Λ ཧతʹطଘͷจ຺ͷதͰҐ ஔ͚Δɻ ۩ମతͳํ๏Λɺ࠶ݱՄೳ ͳܗͰઆ໌͢Δɻ ٬؍తͳࣈূڌΛ༻͍ͯ ํ๏ͷଥੑΛࣔ͢ɻ কདྷͷలΛ͡Δɻ
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 51 サマリ Intro.
Method Result Disc. 背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 52 サマリ Intro.
背景 関連技術 問題定義 問題 1 問題 2 技術 1 技術 2 すべての⽂章の先頭はサ マリから始めるべき。 サ マ リ の な い ⽂ 章 は、 オープニングのないゲー ムと同じ。
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 53 サマリ Intro.
背景 関連技術 問題定義 問題 1 問題 2 技術 1 技術 2 1、2、3と要素の列挙を、 最 も 下 位 の レ ベ ル の ブ ロックとして持つ。要素 は、順序関係か、あるい は、単純な列挙であるこ とが好ましい。
© 2016, Cygames, Inc. /73 良い⽂章とは 54 ීวతͳ֓೦Ͱఆٛ͞Εͨ ΞΠσΟΞΛɺ ۩ମతͳཁૉͷྻڍʹ
ม͢Δϓϩηε͕ ϥΠςΟϯάͰ͋Δ
© 2016, Cygames, Inc. /73 伝わらない⽂章は、列挙しかしていない 55 問題 1 問題
2 技術 1 技術 2 ͜Μͳจষॻ͍͍ͯ·ͤΜ͔ʁ จ຺ͳ͖ྻڍΛ͍ͯ͠·ͤΜ͔ʁ • ͚ͩΛྻڍ͍ͯͯ͠ɺͳͥͦͷ͕ ͳͷ͔ͷจ຺Λઆ໌͍ͯ͠ͳ͍ɻ • ඞཁͳٕज़ͷઆ໌͚ͩΛ͍ͯͯ͠ɺͳͥͦ ͷٕज़ͳͷ͔ɺଞͷํࣜͱͷҧ͍ͳͲΛઆ ໌͍ͯ͠ͳ͍ɻ
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 56 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 Introductionは、背景と⽬的を 明らかにすることで、⾃分の アイディアを世界の⽂脈の中 に位置付ける
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 57 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 背景とは、現在の技術⽔準と、 その限界から発⽣する問題の 定義を⾏うセクション
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 58 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 ⽬的とは、ゴールの設定。 定義した問題を解決するために、 どのような状態を達成するべきか を、特徴と利点を明らかにしなが ら説明する。
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 59 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 問題定義は、⾃分のアイディア が対象とする領域と、そこで解 決するべき要素を定義する。
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 60 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 ⾃分のアイディアを客観的に捉 えるためには、関連する技術の 中で定義づける必要がある。
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 61 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 無数にあるゴールの中から、1つの ゴールを選び取るのが、アイディア を考えるということ。特徴のセク ションでは、⾃分が選んだゴールが、 ほかと何が違うのかを明らかにする。
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 62 サマリ Intro.
背景 関連技術 問題定義 ⽬的 特徴 利点 問題 1 問題 2 技術 1 技術 2 特徴 1 特徴 2 利点 1 利点 2 アイディアの正しさは、その効果が証 明する。⾃分のアイディアによっても たらされる利点をサマライズする。
© 2016, Cygames, Inc. /73 プログラムの階層構造と同じように⽂章の階層 構造を作成する 63 サマリ Intro.
背景 関連技術 問題定義 問題 1 問題 2 技術 1 技術 2 1、2、3と要素の列挙を、 最も会のレベルのブロッ ク と し て 持 つ 。 要 素 は、 順 序 関 係 か 、 あ る い は、 単純な列挙であることが 好ましい。
© 2016, Cygames, Inc. /73 要素の列挙がわかりやすい理由 64 if(A) { doSomething1();
} if(B && !A) { doSomethingB1(); } if(A) { doSomething2(); } if(C) { doSomethingC1(); } if(A) { doSomething3(); } if(B && !A) { doSomethingB2(); } if(A) { doSomething1(); doSomething2(); doSomething3(); }else if(B) { doSomethingB1(); doSomethingB2(); } if(C) { doSomethingC1(); } 1ɺ2ɺ3ͱཁૉͷྻڍΛɺ࠷ԼҐͷϨϕϧͷϒϩοΫͱͯ࣋͠ ͭɻཁૉɺॱং͔ؔɺ͋Δ͍ɺ୯७ͳྻڍͰ͋Δ͜ͱ͕ ·͍͠ɻ →ґଘؔͱॱংؔ۠ผͰ͖ͨํ͕Θ͔Γ͍͢ɻ
© 2016, Cygames, Inc. /73 1つのメソッドは1つの機能を実装するべき 65 1ͭͷηϯςϯεɺ1ͭͷτϐοΫ͚ͩΛѻ͏͖ 良い例: 本プロジェクトではサーバサイドのI/Oボトルネック
の解消ために、SSDを⼤規模に導⼊した。 悪い例: 本プロジェクトでは⾼価なSSDを⼤規模導⼊するこ とにより、従来よりデータセンターコストは1.6倍に なったものの、⼈⼿での定期巡回も不要になり、従 業員の満⾜度はおしなべて向上した。
© 2016, Cygames, Inc. /73 1つのクラス/メソッドの抽象度は⼀定 66 1ͭͷηϯςϯεͷதͰٞͷநҰఆʹอͭ 良い例: 本プロジェクトにおける分散レンダリングを実現するために
は、シェーダプログラミング、クラウドコンピューティング、 および、ネットワークの専⾨家が必要である。 具体的には、⽥中をシェーダに、佐藤をクラウドに、⼭下を ネットワークにアサインすることが好ましい。 悪い例: 本プロジェクトは分散レンダリングを実現するために、⽥中、 佐藤、⼭下をアサインしたい。
© 2016, Cygames, Inc. /73 この⾔い訳を⾔い始めたら要注意 67 จॻͷ͔Γʹ͘͞Λࢦఠ͞ΕͨΓɺ࣭͞ Εͨ࣌ʹɺʮ͜͜ʹॻ͍ͯ͋Δʯͱݴ͍༁Λ ࢝ΊͨΒཁҙɻ
public class Main { public static void main(String[] args) { 全てがmainメソッドの 中に書かれており、引 数で条件分岐する5000 ⾏のプログラム } } ここに書い てあります。 ෦Լޙഐ͕ɺࣗͷॻ͍ͨε ύήοςΟʔίʔυͷҰ෦Λࢦ ͯ͠ɺ͜ͷΑ͏ͳݴ͍༁Λͨ͠ ࣌ʹɺ৺͔ΒೲಘͰ͖Δʁ
© 2016, Cygames, Inc. /73 この⽂章作成技術でどの程度の成果が出るのか • CEDEC 2016に7件の公募が採択 • GDC Europe
2016でフルセッション 講演の公募が採択 • エンジニアが、DiGRA Japanに4件の 論⽂を発表 • IEEE VR 2016にポスター論⽂が採択 68
© 2016, Cygames, Inc. /73 ࢈ۀք͔Βͷ࢈ֶ࿈ܞଅਐ DiGRA Japan 2016において、ゲーム開発者を筆頭著者とする発表4件を発 表し、産業界からアカデミアに向けた情報発信と議論を開始
69
© 2016, Cygames, Inc. /73 IEEE VR2016ʹ͓͚ΔݚڀՌൃද 3݄16ʙ18ʹ։࠵͞ΕΔIEEE VR2016ʹͯɺCygames͕։ൃͨ͠Π ϝʔδϕʔεͷίετͳϋϯυδΣ
ενϟೝࣝγεςϜͷݚڀՌΛൃද 企業内での研究レベルを継続的に向 上させるとともに、組織内での知識 の体系化を促進 70
© 2016, Cygames, Inc. /73 プレゼンテーション技法は? 71 ଞͷฐࣾελοϑʹΑΔ CEDECൃදΛ͝ཡͩ͘͞ ͍ɻ͋ͷΑ͏ͳײ͡ͷεϥ
ΠυߏͷߨٛΛ͍ͯ͠· ͢ɻ
© 2016, Cygames, Inc. /73 応⽤ 72 ྑ͍ॻ͖खɺྑ͍ಡΈखͰ͋Δɻ ͜ͷจষٕज़ΛϚελʔ͢Εɺੈ քதͷจʗใࠂॻʗ༷ॻͷࣝ
Λ׆༻͢Δ͜ͱ͕Ͱ͖Δ
© 2016, Cygames, Inc. /73 まとめ 73 ྑ͍ϓϩάϥϚɺඞͣɺྑ ͍จষΛॻ͘͜ͱ͕Ͱ͖Δɻ จॻԽΛ௨ͨࣝ͡ͷମܥԽ
ɺࣾ֎Ͱͷࣝڞ༗Λଅ ਐ͢Δɻ