SlideShare a Scribd company logo
1 of 40
Download to read offline
地方企業が
ソーシャルゲーム開発を
  成功させるための
   10のポイント
 株式会社インフィニットループ
    松井 健太郎
自己紹介(1)

松井 健太郎

・ 株式会社インフィニットループ 代表
・ ke-tai.org 管理人
・ LOCAL PHP部(札幌のPHP勉強会グループ) 部長
・ コーラが好き
自己紹介(2)


 http://ke-tai.org/
                      ケータイプログラマのためのコ
                      ミュニティサイト。
                      携帯電話・スマートフォン向け
                      サイト開発に関する記事・情報
                      を紹介している。
本日の内容
• 会社紹介、開発実績の紹介
• ポイント1. 仕事の取り方
• ポイント2. リモートコミュニケーション用のツールを活用する
• ポイント3. リモート作業の限界を見極める
• ポイント4. 使用する技術を選ぶ
• ポイント5. 外注スタッフを活用する
• ポイント6. チーム編制
• ポイント7. チーム内のルール作り
• ポイント8. 基本をしっかりと
• ポイント9. 設計が大事
• ポイント10. 楽しむことが一番大切
会社紹介
株式会社インフィニットループ
(http://www.infiniteloop.co.jp/)

・札幌のソフトウェア開発会社

・業務内容
  ブラウザゲーム・ソーシャルアプリ開発
  モバイルサイト開発
  Webアプリケーション開発
  Linuxサーバ運用・保守
開発実績
[ブラウザ三国志]
 ブラウザ三国志]
       三国志
  運営(株)AQインタラクティブ
  開発ONE-UP(株)
  プログラム開発を(株)インフィニットループが担当
  2009年7月正式サービス開始
  AQI公式のほか、mixi、Yahoo!モバゲー、ハンゲーム、
  ニコニコアプリなど多くのプラットフォーム・チャネリングに対応、
  海外にも展開中




[英雄クエスト]
 英雄クエスト]
     クエスト
  運営・開発ONE-UP(株)
  サーバ側プログラム開発を(株)インフィニットループが担当
  2010年10月正式サービス開始
  Yahoo!モバゲーにて運用中
ブラウザ三国志について




特徴
・ インストール不要でブラウザ上だけで遊べるゲーム
・ 三国志の武将がカードとして多数登場
・ 他のプレイヤーと同盟を組み、都市を育てたり戦争を行う
・ いわゆる村ゲーと言われるジャンル
・ 基本的にHTML(PHP)とJavaScriptのみで製作されている
英雄クエストについて




特徴
・ クエスト進めて英雄(ヒーロー)をレベルアップしていくゲーム
・ スキルの獲得や、武器/防具の収集と合成を繰り返し、
  自分だけの最強ヒーローを育成していく
・ 他プレイヤーと協力して、一人では倒すことのできない
  強大なボスに挑み、連携して戦っていく
・ Cityモードでは、他プレイヤーと同盟を組み、
  協力して領地を広げていく
はじめに
               地方企業にありがちな特徴

• 人員が限られていることが多い
    → 数の上でも、スキルの上でも、不利なことが多い
•   予算も限られていることが多い
•   大規模・高負荷開発や運用の経験が少ない
    → 大手はポータルサイトなどで、大規模開発を経験し、
       そのスキルをベースにして、開発にのぞんでいる
    → そのような案件が地方には少ない

                    ↓↓↓

                これらのマイナス点
                これらのマイナス点を補う
                    マイナス
                 独自の工夫が必要になる
                 独自の工夫が必要になる
ポイント1. 仕事の取り方(1)

• 地方企業にとって、首都圏の案件を受注することは、
仕事の安定供給、作業単価などの面から多くのメリットがある

• 地方経済の活性化や、雇用の創出にも繋がる

• 発注側にも開発コストが押さえられるなどのメリットも
ポイント1. 仕事の取り方(2)
                弊社の場合は・・・

           Googleの検索で、運良く見つけて貰った

• SEOが大事
 (地方名+仕事内容のキーワードで上位になること)
• ホームページからの問い合わせが一番多い
• 勉強会の開催および、イベントなどへの積極的な参加や発表
• 会社の技術ブログなどでのアピール
ポイント1. 仕事の取り方(3)
• ゲーム開発の実績は無くても大丈夫

• いまソーシャルゲームを作っている技術者の多くは、
 ゲームの開発経験はなかった

• Webアプリケーションの基礎をしっかりと理解していること
 →   HTMLやJavaScript, CSSに関する知識
 →   DBの設計やインデックスに関する知識
 →   DBのロックに対する知識
 →   サーバに関する知識

• 大量アクセスに対する負荷対策の経験があるとなお良い
ポイント2. リモートコミュニケーション用の
          ツールを活用する(1)
• メインコミュニケーションツールは「Skype」
• チャットでの利用がメイン
• チャット上でやり取りを行うことで、
 チーム全体に情報が共有される
• IRCなどの他のツールでも良いが、
 Skypeはセットアップの敷居が低い
• 電話機能はあまり使わない
• たまにビデオチャットとして使う
• ただしセキュリティ上利用が出来ない会社も多いので注意
ポイント2. リモートコミュニケーション用の
          ツールを活用する(2)
• プレイステーション3を利用する
• 多対多のビデオ会議用
• PLAYSTATION Eyeを購入するだけで
 業務用ビデオ会議システムにも負けないツールとして大活躍

• 6拠点まで対応可能
• 会議室に備え付けておく
ポイント2. リモートコミュニケーション用の
          ツールを活用する(3)
• 重要だったり周知が必要な内容で、
 チャットだけでは足りない場合は、メーリングリストを活用
 (情報共有のため個人宛メールは使わない)
• Redmineなどのトラッカーでバグやタスクの管理を行う
• 情報共有のためのWikiを設置する
• 共通のファイル置き場を用意する
• 共通のレポジトリを用意する
ポイント3. リモート作業の限界を見極める(1)
• リモートで作業を行えるといっても、
直接会ってのコミュニケーションは大切
• 特に最初の顔合わせは大事
• リーダー同士はリアルで顔を合わせること、できるならスタッフ同士も一
度は顔合わせをしたい
(無理ならビデオチャットだけでも)
• 不思議なもので、知っている人だと腹がたたないようなことでも、
知らない人にはイラっときたりする
• リモート作業がまわりはじめてからも、全く顔を合わせないのは良くない
(せめて年に2回くらいは会いたい)
• 何気ない雑談で浮かび上がる問題点というのも多い
ポイント3. リモート作業の限界を見極める(2)
• さすがに各スタッフ全員が自宅作業というのは難しい
• 機能や要件ごとに、ある程度まとまった範囲で動くと良いようだ
(企画チーム、運用チーム、Flashチーム、
 サーバサイドプログラムチーム、インフラチームなど)
• バラバラでも問題なく作業できる場合もあるが、個人のスキルやコミュニ
ケーション能力に大きく依存する
• 業務の内容や社風などによる限界もある
ポイント4. 使用する技術を選ぶ(1)
• その地方の人口規模を踏まえたうえで、
使用する技術(言語など)を選定することが大事
• 例えばPythonは素敵な言語かも知れないが、
地元に何人の技術者がいるかを考えると、採用は難しいケースも
• 開発規模の変化に合わせて、リソースを柔軟に提供できることが大事
• 求人や外注で人材を集めやすかったり、
習得が比較的容易な開発言語を選択するとよい
ポイント4. 使用する技術を選ぶ(2)
       弊社では開発言語にPHP、DBにMySQLを使用している


                        [ PHP ]
• 安定のLAMP構成(Linux + Apache + MySQL + PHP)
• 数多くの高負荷運用の実績がある
• 書籍やWebの情報量も多い
• 地方でも開発スタッフ集めが比較的容易
• 処理速度がそれなりに高速、
 APCなどのアクセラレータでさらにスピードアップ
• もちろんダメな部分も多くある、
 またPHPだけが特段ゲーム向きの言語というわけではない
ポイント4. 使用する技術を選ぶ(3)

               [ MySQL ]

• 無料で使え、パフォーマンスが良い
• 数多くの高負荷・大規模運用の実績がある
• 書籍やWebの情報量が多い
• レプリケーションが容易
• 経験のある技術者が多数いる
• ソーシャルアプリの実績も多い
ポイント5. 外注スタッフを活用する
• 外注スタッフの利用は避けて通れない
• ソーシャルゲーム案件は、おおむね超短納期
• 口コミやランキング入りなど、登録数増加は突然やってくる、
急激なリソースの増加要望に対応できなくてはならない

• しかしながら、外注スタッフのスキルや作業品質には、
過度の期待をしてはならない
ポイント6. チーム編制
• チームはエースプログラマを中心に編制する
• しかし首都圏と比べると、どうしてもそんなにエース級はいない
• なるべくエースに頼らない開発体制を目指す
• 適材適所を意識したリソース配分を
• 例えば管理画面などの関係者用の画面は、多少のバグがあっても問題
がないケースも多い、そのような機能はスキルの低い人へ
ポイント7. チーム内のルール作り(1)

• 経験が浅かったり、外注のスタッフでチームを編制しなければならないた
め、しっかりとしたルール作りが必要になる

• ソーシャルアプリは生き物、他案件と比べると日々の変化が大きい

• 制作方針が一本化されていないと、バグ修正や機能追加がものすごく大
変になる

• 不特定の人が増えるにつれ、びっくりするようなコードを書く人が出てくる

• 特にコーディング規約は明確なものがあったほうがよい
ポイント7. チーム内のルール作り (2)

            コーディング規約についての考
            コーディング規約についての考え方
                  規約についての

• スキルの低い人の救済が目的
• コード品質の安定化、バグの削減に繋げたい
• コンビニチェーン店のようなマニュアル化が理想、
    教える側も教わる側も楽ができる
•   既知のバッドノウハウを避け、作業を効率化する
•   grep(検索)しやすく、目的のコードを漏れなく発見したい
•   毎日眺めるコードなので、気持ち悪い書き方は避けたい
•   PHPならではの問題(比較演算子の特殊性、自動キャスト)など、
    ハマりやすい部分をなるべく意識しなくてもよいように
ポイント8. 基本をしっかりと(1)
• ソーシャルゲームの開発には、
  とにかく基礎となる技術をしっかりと身につけることが必要

• 必要とされる技術は、一般的なものが多く
  足りない部分があっても、書籍やネット検索などで手に入る

• 特化した技術があるとなお良いが、
  地方でそのような人材を確保するのはかなり難しい

• 専門化を進め、分業できるところは分業するのがよい
ポイント8. 基本をしっかりと(2)
• サーバに関する知識
  → LAMP構成が1からきちんと組めること
  → 設定とチューニングが行えること
  → 知識が足りない場合は、本職のインフラエンジニアに任せる
  → ただしプログラマであってもサーバを理解することは重要
• HTMLやJavaScript, CSS
  → デザインはデザイナーがやるとしても、一通りの知識は必要
  → PC向けソーシャルアプリの場合、JavaScriptは必須
• Flashゲームの場合はFlashに関する知識
ポイント8. 基本をしっかりと(3)
• DBの設計に関する知識
  → (基本的には)ゲームならではの特殊な設計があるわけではない
• SQLに関する知識
• DBのレプリケーションやトランザクション、分離レベルに関する知識
• DBのロックに関する知識
  → 互いの情報を更新し合うことの多いソーシャルゲームには必須
  → テスト環境では問題なく、同時アクセスの多い本番環境でのみ問題が
  起こるといった場合も
• DBのインデックスに関する知識
  → 負荷対策に必須
• 書籍やネットで常に情報収集を行う
ポイント8. 基本をしっかりと(4)
• 負荷対策の知識が必ず必要になる
  → Webサーバの負荷対策
  → DBマスターの負荷対策
  → DBスレイブの負荷対策
  → 転送量の削減
• ただし負荷対策のテクニックは経験がものをいうことが多い
• 基本的な負荷対策の手法を、
  日頃から書籍やネットなどで情報収集しておく
• 多大な負荷がかかるということは、
  商業的に成功しているということなので、予算もあるはず。
  サーバを増強したり、ヘルプを頼んだりできっと何とかなるはず?
ポイント9. 設計が大事(1)
              陥りがちな状況
               りがちな状況

• とりあえず仕様を満たすように制作を進める

• 開発が完了し、テストもパスしてオープンした

• 利用者が増えるにつれ、負荷の増大が起きる

• サーバ台数を増やすなどして対処するが、設計上の問題からボトルネッ
ク発生し、ある一定数以上の接続数はどうしても捌くことができない

• 慢性的に重い状態となり破綻
ポイント9. 設計が大事(2)
             なぜこうなるのか

• 時間さえかければ、とりあえず仕様を満たしたものを
作成することは可能

• テストの段階で、本番に近い負荷をかけるのは非常に難しい

• 負荷や同時操作系の問題は露見しづらく、優れたテストチームがいたと
しても、問題の発見は難しい

• どこがボトルネックになるのかを予測するには、
知識と経験が必要
ポイント9. 設計が大事(3)
                  基本方針

• 運用後どれだけ利用者が増えるのか予測がしにくいので、
いつ人が増えても破綻をきたさない設計が必要

• 「利用者が増えてきてから対処」ではチャンスを逃し間に合わない

• サーバを追加することで対処可能なようにするのが基本
→ Webサーバ、 DBスレイブの追加
→ DBマスタの分割
→ 仕様が許せばワールド分割

• 落とさないサーバ作りは大変
→ 重要なサーバのみを守り、他はどんどん落とすという方針で
ポイント9. 設計が大事(4)
                    ブラウザ三国志のサーバ構成
                    ブラウザ三国志のサーバ構成
                        三国志
       EC2上に構築
Amazon EC2
                                                                  HTTPアクセス




・ Linux(CentOS)
・ squid, varnish(ロードバランサー)                                ロードバランサ

                                                                       HTTP振り分け

・ Apache
                                                                                           ・ ・ ・
・ PHP+APC                    バッチ処理サーバ
                                            Webサーバ        Webサーバ             Webサーバ
                                             (Apache)      (Apache)           (Apache)
・ MySQL                                          DBアクセス


                             キャッシュサーバ                                                    EC2によるオートス
・ memcached                   (memcached)                                                  ケーリングで
                                                                                          台数が増減する
・ syslogd(ログサーバ)                                          DBマスター
                                                           (MySQL)
                              ログサーバ                                    レプリケーション
                               (syslogd)



                                                                                           ・ ・ ・
                                            DBスレイブ        DBスレイブ             DBスレイブ
                                             (MySQL)       (MySQL)            (MySQL)
ポイント9. 設計が大事(5)
               DBの設計は
               DBの設計は特に重要

• テーブルの設計は重要

• インデックスの設計も重要
→ 参照系と更新系のバランスを考慮

• DB容量の増加はなるべく抑えるようにする
→ 保存期間を定めるなど、仕様レベルから意識する必要がある

• オンメモリでの動作を意識する

• 仕様上マスタ分割が必要なら、更に慎重な設計を
ポイント10. 楽しむことが一番大切

• ゲーム開発というお仕事を楽しむということが一番大切

• 参考ゲームをしっかりプレイして、面白さを理解すること

• 出来上がった自分のゲームを、しっかりプレイすること

• 自分の好みと合わないなどで、面白さが理解できない場合でも、どうやっ
て面白くしようとしているのか、どの部分が悪いのかを考えながらプレイ
することが重要

• ゲーム作りは難しいけど面白い
まとめ(1)
• ポイント1. 仕事の取り方
 → WEBや勉強会で技術力をアピール
 → ゲーム開発の経験がなくても大丈夫

• ポイント2. リモートコミュニケーション用のツールを活用する
 → SkypeやPS3などのツール類を活用する

• ポイント3. リモート作業の限界を見極める
 → 限界を見極めて、リアルのコミュニケーションを使い分ける

• ポイント4. 使用する技術を選ぶ
 → 人口規模や案件内容に合わせた技術を選ぶ

• ポイント5. 外注スタッフを活用する
 → ソーシャルゲームは超短納期
まとめ(2)
• ポイント6. チーム編制
 → なるべくエースに頼らないチーム作りを目指す

• ポイント7. チーム内のルール作り
 → チーム内ルールやコーディング規約重要

• ポイント8. 基本をしっかりと
 → 特別な知識はいらない、基本をしっかりと身につける

• ポイント9. 設計が大事
 → 負荷対策は設計が重要

• ポイント10. 楽しむことが一番大切
 → ゲーム作りは難しいけど面白い
おわりに
• いろいろと偉そうなことを書いてきましたが、
  トラブルもよく起こしてますし、実践しきれてない箇所もあります

• それでも、それなりにうまくまわせていけているのは、
  パートナーさんの協力があってのこと

• いつも感謝の心を忘れずに
おすすめの書籍やサイト(1)
  PHPで大規模ブラウザゲーム 開発してわかったこと
         ブラウザゲームを
• PHPで大規模ブラウザゲームを開発してわかったこと
 今回の内容と重なる部分もありますが、より技術的なことが書かれてます
            http://ke-tai.org/blog/2010/06/28/osc2010slide/




  ソーシャルゲームのためのデータベース設計
              のためのデータベース
• ソーシャルゲームのためのデータベース設計
  Linux-   システム構築
               構築/
• Linux-DB システム構築/運用入門
 DeNAの松信氏の発表資料と書籍
 MySQLを使ってソーシャルゲームを開発する場合のバイブル的存在
                  http://www.slideshare.net/matsunobu/ss-6584540
                  http://www.amazon.co.jp/dp/4798120723/
おすすめの書籍やサイト(2)
  とあるアプリ 開発運用(トラブルシュート)
     アプリの
• とあるアプリの開発運用(トラブルシュート)
 ドリコム大仲氏のRailsDevCon2010での発表で使われた資料です
 はじめてゲームを作るという方にも向いていると思います
             http://www.slideshare.net/takafumionaka/ss-5852561




   ヒット!ソーシャルアプリの
• 大ヒット!ソーシャルアプリの裏側
 KLab 高田氏・新田氏のPHPカンファレンス2010での発表で使われた資料です
 企画から技術的な内容まで幅広く解説されています
             http://www.slideshare.net/klab/phpconf2010
おまけ
                スタッフ募集のお知らせ
株式会社インフィニットループでは、
一緒に楽しんでゲームを作ってくれるスタッフを募集しています
・ PHPプログラマ
・ JavaScriptプログラマ
・ ActionScriptプログラマ
・ データベースエンジニア
・ サーバエンジニア
・ ソーシャルゲーム企画
 
興味のある方は、直接声を掛けていただくか、
HPからお問い合わせください

More Related Content

What's hot

なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?ichirin2501
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装infinite_loop
 
サーバーのおしごと
サーバーのおしごとサーバーのおしごと
サーバーのおしごとYugo Shimizu
 
PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発
PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発
PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発infinite_loop
 
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~KLab株式会社
 
ソーシャルゲームにおけるAWS/MongoDB利用事例
ソーシャルゲームにおけるAWS/MongoDB利用事例ソーシャルゲームにおけるAWS/MongoDB利用事例
ソーシャルゲームにおけるAWS/MongoDB利用事例Masakazu Matsushita
 
大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側KLab株式会社
 
MySQLの運用でありがちなこと
MySQLの運用でありがちなことMySQLの運用でありがちなこと
MySQLの運用でありがちなことHiroaki Sano
 
負荷がたかいいんだから~♪(仮)
負荷がたかいいんだから~♪(仮)負荷がたかいいんだから~♪(仮)
負荷がたかいいんだから~♪(仮)Yohei Hamada
 
さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)Takanori Sejima
 
MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編Takanori Sejima
 
My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話saiken3110
 
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandMasakazu Matsushita
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦うYugo Shimizu
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますinfinite_loop
 
MySQLやSSDとかの話 後編
MySQLやSSDとかの話 後編MySQLやSSDとかの話 後編
MySQLやSSDとかの話 後編Takanori Sejima
 
自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方光晶 上原
 
MySQLバックアップの基本
MySQLバックアップの基本MySQLバックアップの基本
MySQLバックアップの基本yoyamasaki
 
MongoDB on EC2 #mongodbcasual
MongoDB on EC2 #mongodbcasualMongoDB on EC2 #mongodbcasual
MongoDB on EC2 #mongodbcasualYasuhiro Matsuo
 
DXライブラリでMMO作ったよ!
DXライブラリでMMO作ったよ!DXライブラリでMMO作ったよ!
DXライブラリでMMO作ったよ!h2so5
 

What's hot (20)

なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
 
サーバーのおしごと
サーバーのおしごとサーバーのおしごと
サーバーのおしごと
 
PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発
PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発
PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発
 
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
 
ソーシャルゲームにおけるAWS/MongoDB利用事例
ソーシャルゲームにおけるAWS/MongoDB利用事例ソーシャルゲームにおけるAWS/MongoDB利用事例
ソーシャルゲームにおけるAWS/MongoDB利用事例
 
大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側
 
MySQLの運用でありがちなこと
MySQLの運用でありがちなことMySQLの運用でありがちなこと
MySQLの運用でありがちなこと
 
負荷がたかいいんだから~♪(仮)
負荷がたかいいんだから~♪(仮)負荷がたかいいんだから~♪(仮)
負荷がたかいいんだから~♪(仮)
 
さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)
 
MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編
 
My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話
 
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦う
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
 
MySQLやSSDとかの話 後編
MySQLやSSDとかの話 後編MySQLやSSDとかの話 後編
MySQLやSSDとかの話 後編
 
自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方
 
MySQLバックアップの基本
MySQLバックアップの基本MySQLバックアップの基本
MySQLバックアップの基本
 
MongoDB on EC2 #mongodbcasual
MongoDB on EC2 #mongodbcasualMongoDB on EC2 #mongodbcasual
MongoDB on EC2 #mongodbcasual
 
DXライブラリでMMO作ったよ!
DXライブラリでMMO作ったよ!DXライブラリでMMO作ったよ!
DXライブラリでMMO作ったよ!
 

Viewers also liked

イラスト素材40個つき無料keynoteテンプレート「ぱん」
イラスト素材40個つき無料keynoteテンプレート「ぱん」イラスト素材40個つき無料keynoteテンプレート「ぱん」
イラスト素材40個つき無料keynoteテンプレート「ぱん」Pan Okada
 
KeynoteテンプレートOval
KeynoteテンプレートOvalKeynoteテンプレートOval
KeynoteテンプレートOvalTakahiro Ikeda
 
海外ゲーム技術勉強会#1 OGRE3D
海外ゲーム技術勉強会#1 OGRE3D海外ゲーム技術勉強会#1 OGRE3D
海外ゲーム技術勉強会#1 OGRE3DKazuhisa Minato
 
オフショア開発で心がけている5つの俺ルール
オフショア開発で心がけている5つの俺ルールオフショア開発で心がけている5つの俺ルール
オフショア開発で心がけている5つの俺ルールReimi Kuramochi Chiba
 
ベトナムオフショア開発を開始するマイクロステップ
ベトナムオフショア開発を開始するマイクロステップベトナムオフショア開発を開始するマイクロステップ
ベトナムオフショア開発を開始するマイクロステップSamurai Incubate Inc.
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題AimingStudy
 
PDCAを実現する、アクセス解析実践方法
PDCAを実現する、アクセス解析実践方法PDCAを実現する、アクセス解析実践方法
PDCAを実現する、アクセス解析実践方法Kennosuke Yamaguchi
 
マシな画面を作る
マシな画面を作るマシな画面を作る
マシな画面を作るokumasama
 
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話Takahiro YAMAGUCHI
 
データに振り回されて失敗した あんなことやこんなこと ~ゲームのために必要な本当の ビジネス・アナリティクス~
データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~
データに振り回されて失敗した あんなことやこんなこと ~ゲームのために必要な本当の ビジネス・アナリティクス~Daisuke Nogami
 
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事Manabu Koga
 
今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線
今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線
今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線Kazuhiro Iwai
 
Amebaソシャゲ分析事例のご紹介
Amebaソシャゲ分析事例のご紹介Amebaソシャゲ分析事例のご紹介
Amebaソシャゲ分析事例のご紹介Masanori Takano
 

Viewers also liked (14)

イラスト素材40個つき無料keynoteテンプレート「ぱん」
イラスト素材40個つき無料keynoteテンプレート「ぱん」イラスト素材40個つき無料keynoteテンプレート「ぱん」
イラスト素材40個つき無料keynoteテンプレート「ぱん」
 
おためし
おためしおためし
おためし
 
KeynoteテンプレートOval
KeynoteテンプレートOvalKeynoteテンプレートOval
KeynoteテンプレートOval
 
海外ゲーム技術勉強会#1 OGRE3D
海外ゲーム技術勉強会#1 OGRE3D海外ゲーム技術勉強会#1 OGRE3D
海外ゲーム技術勉強会#1 OGRE3D
 
オフショア開発で心がけている5つの俺ルール
オフショア開発で心がけている5つの俺ルールオフショア開発で心がけている5つの俺ルール
オフショア開発で心がけている5つの俺ルール
 
ベトナムオフショア開発を開始するマイクロステップ
ベトナムオフショア開発を開始するマイクロステップベトナムオフショア開発を開始するマイクロステップ
ベトナムオフショア開発を開始するマイクロステップ
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題
 
PDCAを実現する、アクセス解析実践方法
PDCAを実現する、アクセス解析実践方法PDCAを実現する、アクセス解析実践方法
PDCAを実現する、アクセス解析実践方法
 
マシな画面を作る
マシな画面を作るマシな画面を作る
マシな画面を作る
 
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
 
データに振り回されて失敗した あんなことやこんなこと ~ゲームのために必要な本当の ビジネス・アナリティクス~
データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~
データに振り回されて失敗した あんなことやこんなこと ~ゲームのために必要な本当の ビジネス・アナリティクス~
 
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
 
今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線
今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線
今、ベトナムが熱い! ベトナムにおけるスマフォアプリ オフショア開発の最前線
 
Amebaソシャゲ分析事例のご紹介
Amebaソシャゲ分析事例のご紹介Amebaソシャゲ分析事例のご紹介
Amebaソシャゲ分析事例のご紹介
 

Similar to 地方企業がソーシャルゲーム開発を成功させるための10のポイント

SharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビューSharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビューHirofumi Ota
 
PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門じゅん なかざ
 
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
20120407 ASP.NET+C#で開発する大規模ソーシャルゲームhideyuki ikeda
 
20161027 hadoop summit Generating Recommendations at Amazon Scale with Apach...
20161027 hadoop summit  Generating Recommendations at Amazon Scale with Apach...20161027 hadoop summit  Generating Recommendations at Amazon Scale with Apach...
20161027 hadoop summit Generating Recommendations at Amazon Scale with Apach...Amazon Web Services Japan
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Masakazu Muraoka
 
はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発Yoshitaka Seo
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とToru Takahashi
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とToru Takahashi
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows AzureKeiichi Hashimoto
 
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていくRyo Mitoma
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshopDaisuke Sugai
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜Takahiro Inoue
 
既存システムへの新技術活用法 ~fluntd/MongoDB~
既存システムへの新技術活用法 ~fluntd/MongoDB~既存システムへの新技術活用法 ~fluntd/MongoDB~
既存システムへの新技術活用法 ~fluntd/MongoDB~じゅん なかざ
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Dai Utsui
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureGoAzure
 
とあるメーカーのRedmine活用事例
とあるメーカーのRedmine活用事例とあるメーカーのRedmine活用事例
とあるメーカーのRedmine活用事例agileware_jp
 
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在TomomitsuKusaba
 

Similar to 地方企業がソーシャルゲーム開発を成功させるための10のポイント (20)

SharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビューSharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビュー
 
PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門
 
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
 
20161027 hadoop summit Generating Recommendations at Amazon Scale with Apach...
20161027 hadoop summit  Generating Recommendations at Amazon Scale with Apach...20161027 hadoop summit  Generating Recommendations at Amazon Scale with Apach...
20161027 hadoop summit Generating Recommendations at Amazon Scale with Apach...
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
 
はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発
 
Zynga
ZyngaZynga
Zynga
 
Aws privte20110406 arai
Aws privte20110406 araiAws privte20110406 arai
Aws privte20110406 arai
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure
 
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
 
Eight meets AWS
Eight meets AWSEight meets AWS
Eight meets AWS
 
既存システムへの新技術活用法 ~fluntd/MongoDB~
既存システムへの新技術活用法 ~fluntd/MongoDB~既存システムへの新技術活用法 ~fluntd/MongoDB~
既存システムへの新技術活用法 ~fluntd/MongoDB~
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
 
とあるメーカーのRedmine活用事例
とあるメーカーのRedmine活用事例とあるメーカーのRedmine活用事例
とあるメーカーのRedmine活用事例
 
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
 

More from Kentaro Matsui

テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
20201113_バーチャルキャストが創り出すVRの未来
20201113_バーチャルキャストが創り出すVRの未来20201113_バーチャルキャストが創り出すVRの未来
20201113_バーチャルキャストが創り出すVRの未来Kentaro Matsui
 
Virtual Cast 設立資料
Virtual Cast 設立資料Virtual Cast 設立資料
Virtual Cast 設立資料Kentaro Matsui
 
札幌移住計画夏の企業見学会2018説明資料
札幌移住計画夏の企業見学会2018説明資料札幌移住計画夏の企業見学会2018説明資料
札幌移住計画夏の企業見学会2018説明資料Kentaro Matsui
 
札幌移住計画夏の企業見学会2017説明会
札幌移住計画夏の企業見学会2017説明会札幌移住計画夏の企業見学会2017説明会
札幌移住計画夏の企業見学会2017説明会Kentaro Matsui
 
札幌移住計画のご紹介
札幌移住計画のご紹介札幌移住計画のご紹介
札幌移住計画のご紹介Kentaro Matsui
 
Skypeボット マザーゆっくり
Skypeボット マザーゆっくりSkypeボット マザーゆっくり
Skypeボット マザーゆっくりKentaro Matsui
 
チーム開発をうまく行うためのコーディング規約論
チーム開発をうまく行うためのコーディング規約論チーム開発をうまく行うためのコーディング規約論
チーム開発をうまく行うためのコーディング規約論Kentaro Matsui
 
地方企業がリモートで首都圏のお仕事をこなすための10個のポイント
地方企業がリモートで首都圏のお仕事をこなすための10個のポイント地方企業がリモートで首都圏のお仕事をこなすための10個のポイント
地方企業がリモートで首都圏のお仕事をこなすための10個のポイントKentaro Matsui
 
「Html sql」で図書館hpにアクセスしてみよう
「Html sql」で図書館hpにアクセスしてみよう「Html sql」で図書館hpにアクセスしてみよう
「Html sql」で図書館hpにアクセスしてみようKentaro Matsui
 
Gps座標を短い文字列で扱えるGeo Hashが面白い
Gps座標を短い文字列で扱えるGeo Hashが面白いGps座標を短い文字列で扱えるGeo Hashが面白い
Gps座標を短い文字列で扱えるGeo Hashが面白いKentaro Matsui
 
PHPを使って3分で作る3キャリア対応ケータイサイト
PHPを使って3分で作る3キャリア対応ケータイサイトPHPを使って3分で作る3キャリア対応ケータイサイト
PHPを使って3分で作る3キャリア対応ケータイサイトKentaro Matsui
 
モバイル版Googleマップのちょっと進んだ使い方
モバイル版Googleマップのちょっと進んだ使い方モバイル版Googleマップのちょっと進んだ使い方
モバイル版Googleマップのちょっと進んだ使い方Kentaro Matsui
 
ケータイサイトのはなし(入門編)
ケータイサイトのはなし(入門編)ケータイサイトのはなし(入門編)
ケータイサイトのはなし(入門編)Kentaro Matsui
 

More from Kentaro Matsui (15)

テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
20201113_バーチャルキャストが創り出すVRの未来
20201113_バーチャルキャストが創り出すVRの未来20201113_バーチャルキャストが創り出すVRの未来
20201113_バーチャルキャストが創り出すVRの未来
 
Virtual Cast 設立資料
Virtual Cast 設立資料Virtual Cast 設立資料
Virtual Cast 設立資料
 
札幌移住計画夏の企業見学会2018説明資料
札幌移住計画夏の企業見学会2018説明資料札幌移住計画夏の企業見学会2018説明資料
札幌移住計画夏の企業見学会2018説明資料
 
札幌移住計画夏の企業見学会2017説明会
札幌移住計画夏の企業見学会2017説明会札幌移住計画夏の企業見学会2017説明会
札幌移住計画夏の企業見学会2017説明会
 
札幌移住計画のご紹介
札幌移住計画のご紹介札幌移住計画のご紹介
札幌移住計画のご紹介
 
Skypeボット マザーゆっくり
Skypeボット マザーゆっくりSkypeボット マザーゆっくり
Skypeボット マザーゆっくり
 
チーム開発をうまく行うためのコーディング規約論
チーム開発をうまく行うためのコーディング規約論チーム開発をうまく行うためのコーディング規約論
チーム開発をうまく行うためのコーディング規約論
 
地方企業がリモートで首都圏のお仕事をこなすための10個のポイント
地方企業がリモートで首都圏のお仕事をこなすための10個のポイント地方企業がリモートで首都圏のお仕事をこなすための10個のポイント
地方企業がリモートで首都圏のお仕事をこなすための10個のポイント
 
「Html sql」で図書館hpにアクセスしてみよう
「Html sql」で図書館hpにアクセスしてみよう「Html sql」で図書館hpにアクセスしてみよう
「Html sql」で図書館hpにアクセスしてみよう
 
Gps座標を短い文字列で扱えるGeo Hashが面白い
Gps座標を短い文字列で扱えるGeo Hashが面白いGps座標を短い文字列で扱えるGeo Hashが面白い
Gps座標を短い文字列で扱えるGeo Hashが面白い
 
PHPを使って3分で作る3キャリア対応ケータイサイト
PHPを使って3分で作る3キャリア対応ケータイサイトPHPを使って3分で作る3キャリア対応ケータイサイト
PHPを使って3分で作る3キャリア対応ケータイサイト
 
20090828 Webconlocal
20090828 Webconlocal20090828 Webconlocal
20090828 Webconlocal
 
モバイル版Googleマップのちょっと進んだ使い方
モバイル版Googleマップのちょっと進んだ使い方モバイル版Googleマップのちょっと進んだ使い方
モバイル版Googleマップのちょっと進んだ使い方
 
ケータイサイトのはなし(入門編)
ケータイサイトのはなし(入門編)ケータイサイトのはなし(入門編)
ケータイサイトのはなし(入門編)
 

Recently uploaded

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Recently uploaded (10)

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

地方企業がソーシャルゲーム開発を成功させるための10のポイント

  • 1. 地方企業が ソーシャルゲーム開発を 成功させるための 10のポイント 株式会社インフィニットループ 松井 健太郎
  • 2. 自己紹介(1) 松井 健太郎 ・ 株式会社インフィニットループ 代表 ・ ke-tai.org 管理人 ・ LOCAL PHP部(札幌のPHP勉強会グループ) 部長 ・ コーラが好き
  • 3. 自己紹介(2) http://ke-tai.org/ ケータイプログラマのためのコ ミュニティサイト。 携帯電話・スマートフォン向け サイト開発に関する記事・情報 を紹介している。
  • 4. 本日の内容 • 会社紹介、開発実績の紹介 • ポイント1. 仕事の取り方 • ポイント2. リモートコミュニケーション用のツールを活用する • ポイント3. リモート作業の限界を見極める • ポイント4. 使用する技術を選ぶ • ポイント5. 外注スタッフを活用する • ポイント6. チーム編制 • ポイント7. チーム内のルール作り • ポイント8. 基本をしっかりと • ポイント9. 設計が大事 • ポイント10. 楽しむことが一番大切
  • 6. 開発実績 [ブラウザ三国志] ブラウザ三国志] 三国志 運営(株)AQインタラクティブ 開発ONE-UP(株) プログラム開発を(株)インフィニットループが担当 2009年7月正式サービス開始 AQI公式のほか、mixi、Yahoo!モバゲー、ハンゲーム、 ニコニコアプリなど多くのプラットフォーム・チャネリングに対応、 海外にも展開中 [英雄クエスト] 英雄クエスト] クエスト 運営・開発ONE-UP(株) サーバ側プログラム開発を(株)インフィニットループが担当 2010年10月正式サービス開始 Yahoo!モバゲーにて運用中
  • 7. ブラウザ三国志について 特徴 ・ インストール不要でブラウザ上だけで遊べるゲーム ・ 三国志の武将がカードとして多数登場 ・ 他のプレイヤーと同盟を組み、都市を育てたり戦争を行う ・ いわゆる村ゲーと言われるジャンル ・ 基本的にHTML(PHP)とJavaScriptのみで製作されている
  • 8. 英雄クエストについて 特徴 ・ クエスト進めて英雄(ヒーロー)をレベルアップしていくゲーム ・ スキルの獲得や、武器/防具の収集と合成を繰り返し、 自分だけの最強ヒーローを育成していく ・ 他プレイヤーと協力して、一人では倒すことのできない 強大なボスに挑み、連携して戦っていく ・ Cityモードでは、他プレイヤーと同盟を組み、 協力して領地を広げていく
  • 9. はじめに 地方企業にありがちな特徴 • 人員が限られていることが多い → 数の上でも、スキルの上でも、不利なことが多い • 予算も限られていることが多い • 大規模・高負荷開発や運用の経験が少ない → 大手はポータルサイトなどで、大規模開発を経験し、    そのスキルをベースにして、開発にのぞんでいる → そのような案件が地方には少ない ↓↓↓ これらのマイナス点 これらのマイナス点を補う マイナス 独自の工夫が必要になる 独自の工夫が必要になる
  • 10. ポイント1. 仕事の取り方(1) • 地方企業にとって、首都圏の案件を受注することは、 仕事の安定供給、作業単価などの面から多くのメリットがある • 地方経済の活性化や、雇用の創出にも繋がる • 発注側にも開発コストが押さえられるなどのメリットも
  • 11. ポイント1. 仕事の取り方(2) 弊社の場合は・・・ Googleの検索で、運良く見つけて貰った • SEOが大事 (地方名+仕事内容のキーワードで上位になること) • ホームページからの問い合わせが一番多い • 勉強会の開催および、イベントなどへの積極的な参加や発表 • 会社の技術ブログなどでのアピール
  • 12. ポイント1. 仕事の取り方(3) • ゲーム開発の実績は無くても大丈夫 • いまソーシャルゲームを作っている技術者の多くは、 ゲームの開発経験はなかった • Webアプリケーションの基礎をしっかりと理解していること → HTMLやJavaScript, CSSに関する知識 → DBの設計やインデックスに関する知識 → DBのロックに対する知識 → サーバに関する知識 • 大量アクセスに対する負荷対策の経験があるとなお良い
  • 13. ポイント2. リモートコミュニケーション用の ツールを活用する(1) • メインコミュニケーションツールは「Skype」 • チャットでの利用がメイン • チャット上でやり取りを行うことで、 チーム全体に情報が共有される • IRCなどの他のツールでも良いが、 Skypeはセットアップの敷居が低い • 電話機能はあまり使わない • たまにビデオチャットとして使う • ただしセキュリティ上利用が出来ない会社も多いので注意
  • 14. ポイント2. リモートコミュニケーション用の ツールを活用する(2) • プレイステーション3を利用する • 多対多のビデオ会議用 • PLAYSTATION Eyeを購入するだけで 業務用ビデオ会議システムにも負けないツールとして大活躍 • 6拠点まで対応可能 • 会議室に備え付けておく
  • 15. ポイント2. リモートコミュニケーション用の ツールを活用する(3) • 重要だったり周知が必要な内容で、 チャットだけでは足りない場合は、メーリングリストを活用 (情報共有のため個人宛メールは使わない) • Redmineなどのトラッカーでバグやタスクの管理を行う • 情報共有のためのWikiを設置する • 共通のファイル置き場を用意する • 共通のレポジトリを用意する
  • 16. ポイント3. リモート作業の限界を見極める(1) • リモートで作業を行えるといっても、 直接会ってのコミュニケーションは大切 • 特に最初の顔合わせは大事 • リーダー同士はリアルで顔を合わせること、できるならスタッフ同士も一 度は顔合わせをしたい (無理ならビデオチャットだけでも) • 不思議なもので、知っている人だと腹がたたないようなことでも、 知らない人にはイラっときたりする • リモート作業がまわりはじめてからも、全く顔を合わせないのは良くない (せめて年に2回くらいは会いたい) • 何気ない雑談で浮かび上がる問題点というのも多い
  • 17. ポイント3. リモート作業の限界を見極める(2) • さすがに各スタッフ全員が自宅作業というのは難しい • 機能や要件ごとに、ある程度まとまった範囲で動くと良いようだ (企画チーム、運用チーム、Flashチーム、  サーバサイドプログラムチーム、インフラチームなど) • バラバラでも問題なく作業できる場合もあるが、個人のスキルやコミュニ ケーション能力に大きく依存する • 業務の内容や社風などによる限界もある
  • 18. ポイント4. 使用する技術を選ぶ(1) • その地方の人口規模を踏まえたうえで、 使用する技術(言語など)を選定することが大事 • 例えばPythonは素敵な言語かも知れないが、 地元に何人の技術者がいるかを考えると、採用は難しいケースも • 開発規模の変化に合わせて、リソースを柔軟に提供できることが大事 • 求人や外注で人材を集めやすかったり、 習得が比較的容易な開発言語を選択するとよい
  • 19. ポイント4. 使用する技術を選ぶ(2) 弊社では開発言語にPHP、DBにMySQLを使用している [ PHP ] • 安定のLAMP構成(Linux + Apache + MySQL + PHP) • 数多くの高負荷運用の実績がある • 書籍やWebの情報量も多い • 地方でも開発スタッフ集めが比較的容易 • 処理速度がそれなりに高速、 APCなどのアクセラレータでさらにスピードアップ • もちろんダメな部分も多くある、 またPHPだけが特段ゲーム向きの言語というわけではない
  • 20. ポイント4. 使用する技術を選ぶ(3) [ MySQL ] • 無料で使え、パフォーマンスが良い • 数多くの高負荷・大規模運用の実績がある • 書籍やWebの情報量が多い • レプリケーションが容易 • 経験のある技術者が多数いる • ソーシャルアプリの実績も多い
  • 21. ポイント5. 外注スタッフを活用する • 外注スタッフの利用は避けて通れない • ソーシャルゲーム案件は、おおむね超短納期 • 口コミやランキング入りなど、登録数増加は突然やってくる、 急激なリソースの増加要望に対応できなくてはならない • しかしながら、外注スタッフのスキルや作業品質には、 過度の期待をしてはならない
  • 22. ポイント6. チーム編制 • チームはエースプログラマを中心に編制する • しかし首都圏と比べると、どうしてもそんなにエース級はいない • なるべくエースに頼らない開発体制を目指す • 適材適所を意識したリソース配分を • 例えば管理画面などの関係者用の画面は、多少のバグがあっても問題 がないケースも多い、そのような機能はスキルの低い人へ
  • 23. ポイント7. チーム内のルール作り(1) • 経験が浅かったり、外注のスタッフでチームを編制しなければならないた め、しっかりとしたルール作りが必要になる • ソーシャルアプリは生き物、他案件と比べると日々の変化が大きい • 制作方針が一本化されていないと、バグ修正や機能追加がものすごく大 変になる • 不特定の人が増えるにつれ、びっくりするようなコードを書く人が出てくる • 特にコーディング規約は明確なものがあったほうがよい
  • 24. ポイント7. チーム内のルール作り (2) コーディング規約についての考 コーディング規約についての考え方 規約についての • スキルの低い人の救済が目的 • コード品質の安定化、バグの削減に繋げたい • コンビニチェーン店のようなマニュアル化が理想、 教える側も教わる側も楽ができる • 既知のバッドノウハウを避け、作業を効率化する • grep(検索)しやすく、目的のコードを漏れなく発見したい • 毎日眺めるコードなので、気持ち悪い書き方は避けたい • PHPならではの問題(比較演算子の特殊性、自動キャスト)など、 ハマりやすい部分をなるべく意識しなくてもよいように
  • 25. ポイント8. 基本をしっかりと(1) • ソーシャルゲームの開発には、 とにかく基礎となる技術をしっかりと身につけることが必要 • 必要とされる技術は、一般的なものが多く 足りない部分があっても、書籍やネット検索などで手に入る • 特化した技術があるとなお良いが、 地方でそのような人材を確保するのはかなり難しい • 専門化を進め、分業できるところは分業するのがよい
  • 26. ポイント8. 基本をしっかりと(2) • サーバに関する知識 → LAMP構成が1からきちんと組めること → 設定とチューニングが行えること → 知識が足りない場合は、本職のインフラエンジニアに任せる → ただしプログラマであってもサーバを理解することは重要 • HTMLやJavaScript, CSS → デザインはデザイナーがやるとしても、一通りの知識は必要 → PC向けソーシャルアプリの場合、JavaScriptは必須 • Flashゲームの場合はFlashに関する知識
  • 27. ポイント8. 基本をしっかりと(3) • DBの設計に関する知識 → (基本的には)ゲームならではの特殊な設計があるわけではない • SQLに関する知識 • DBのレプリケーションやトランザクション、分離レベルに関する知識 • DBのロックに関する知識 → 互いの情報を更新し合うことの多いソーシャルゲームには必須 → テスト環境では問題なく、同時アクセスの多い本番環境でのみ問題が 起こるといった場合も • DBのインデックスに関する知識 → 負荷対策に必須 • 書籍やネットで常に情報収集を行う
  • 28. ポイント8. 基本をしっかりと(4) • 負荷対策の知識が必ず必要になる → Webサーバの負荷対策 → DBマスターの負荷対策 → DBスレイブの負荷対策 → 転送量の削減 • ただし負荷対策のテクニックは経験がものをいうことが多い • 基本的な負荷対策の手法を、 日頃から書籍やネットなどで情報収集しておく • 多大な負荷がかかるということは、 商業的に成功しているということなので、予算もあるはず。 サーバを増強したり、ヘルプを頼んだりできっと何とかなるはず?
  • 29. ポイント9. 設計が大事(1) 陥りがちな状況 りがちな状況 • とりあえず仕様を満たすように制作を進める • 開発が完了し、テストもパスしてオープンした • 利用者が増えるにつれ、負荷の増大が起きる • サーバ台数を増やすなどして対処するが、設計上の問題からボトルネッ ク発生し、ある一定数以上の接続数はどうしても捌くことができない • 慢性的に重い状態となり破綻
  • 30. ポイント9. 設計が大事(2) なぜこうなるのか • 時間さえかければ、とりあえず仕様を満たしたものを 作成することは可能 • テストの段階で、本番に近い負荷をかけるのは非常に難しい • 負荷や同時操作系の問題は露見しづらく、優れたテストチームがいたと しても、問題の発見は難しい • どこがボトルネックになるのかを予測するには、 知識と経験が必要
  • 31. ポイント9. 設計が大事(3) 基本方針 • 運用後どれだけ利用者が増えるのか予測がしにくいので、 いつ人が増えても破綻をきたさない設計が必要 • 「利用者が増えてきてから対処」ではチャンスを逃し間に合わない • サーバを追加することで対処可能なようにするのが基本 → Webサーバ、 DBスレイブの追加 → DBマスタの分割 → 仕様が許せばワールド分割 • 落とさないサーバ作りは大変 → 重要なサーバのみを守り、他はどんどん落とすという方針で
  • 32. ポイント9. 設計が大事(4) ブラウザ三国志のサーバ構成 ブラウザ三国志のサーバ構成 三国志 EC2上に構築 Amazon EC2 HTTPアクセス ・ Linux(CentOS) ・ squid, varnish(ロードバランサー) ロードバランサ HTTP振り分け ・ Apache ・ ・ ・ ・ PHP+APC バッチ処理サーバ Webサーバ Webサーバ Webサーバ (Apache) (Apache) (Apache) ・ MySQL DBアクセス キャッシュサーバ EC2によるオートス ・ memcached (memcached) ケーリングで 台数が増減する ・ syslogd(ログサーバ) DBマスター (MySQL) ログサーバ レプリケーション (syslogd) ・ ・ ・ DBスレイブ DBスレイブ DBスレイブ (MySQL) (MySQL) (MySQL)
  • 33. ポイント9. 設計が大事(5) DBの設計は DBの設計は特に重要 • テーブルの設計は重要 • インデックスの設計も重要 → 参照系と更新系のバランスを考慮 • DB容量の増加はなるべく抑えるようにする → 保存期間を定めるなど、仕様レベルから意識する必要がある • オンメモリでの動作を意識する • 仕様上マスタ分割が必要なら、更に慎重な設計を
  • 34. ポイント10. 楽しむことが一番大切 • ゲーム開発というお仕事を楽しむということが一番大切 • 参考ゲームをしっかりプレイして、面白さを理解すること • 出来上がった自分のゲームを、しっかりプレイすること • 自分の好みと合わないなどで、面白さが理解できない場合でも、どうやっ て面白くしようとしているのか、どの部分が悪いのかを考えながらプレイ することが重要 • ゲーム作りは難しいけど面白い
  • 35. まとめ(1) • ポイント1. 仕事の取り方 → WEBや勉強会で技術力をアピール → ゲーム開発の経験がなくても大丈夫 • ポイント2. リモートコミュニケーション用のツールを活用する → SkypeやPS3などのツール類を活用する • ポイント3. リモート作業の限界を見極める → 限界を見極めて、リアルのコミュニケーションを使い分ける • ポイント4. 使用する技術を選ぶ → 人口規模や案件内容に合わせた技術を選ぶ • ポイント5. 外注スタッフを活用する → ソーシャルゲームは超短納期
  • 36. まとめ(2) • ポイント6. チーム編制 → なるべくエースに頼らないチーム作りを目指す • ポイント7. チーム内のルール作り → チーム内ルールやコーディング規約重要 • ポイント8. 基本をしっかりと → 特別な知識はいらない、基本をしっかりと身につける • ポイント9. 設計が大事 → 負荷対策は設計が重要 • ポイント10. 楽しむことが一番大切 → ゲーム作りは難しいけど面白い
  • 37. おわりに • いろいろと偉そうなことを書いてきましたが、 トラブルもよく起こしてますし、実践しきれてない箇所もあります • それでも、それなりにうまくまわせていけているのは、 パートナーさんの協力があってのこと • いつも感謝の心を忘れずに
  • 38. おすすめの書籍やサイト(1) PHPで大規模ブラウザゲーム 開発してわかったこと ブラウザゲームを • PHPで大規模ブラウザゲームを開発してわかったこと 今回の内容と重なる部分もありますが、より技術的なことが書かれてます http://ke-tai.org/blog/2010/06/28/osc2010slide/ ソーシャルゲームのためのデータベース設計 のためのデータベース • ソーシャルゲームのためのデータベース設計 Linux- システム構築 構築/ • Linux-DB システム構築/運用入門 DeNAの松信氏の発表資料と書籍 MySQLを使ってソーシャルゲームを開発する場合のバイブル的存在 http://www.slideshare.net/matsunobu/ss-6584540 http://www.amazon.co.jp/dp/4798120723/
  • 39. おすすめの書籍やサイト(2) とあるアプリ 開発運用(トラブルシュート) アプリの • とあるアプリの開発運用(トラブルシュート) ドリコム大仲氏のRailsDevCon2010での発表で使われた資料です はじめてゲームを作るという方にも向いていると思います http://www.slideshare.net/takafumionaka/ss-5852561 ヒット!ソーシャルアプリの • 大ヒット!ソーシャルアプリの裏側 KLab 高田氏・新田氏のPHPカンファレンス2010での発表で使われた資料です 企画から技術的な内容まで幅広く解説されています http://www.slideshare.net/klab/phpconf2010
  • 40. おまけ スタッフ募集のお知らせ 株式会社インフィニットループでは、 一緒に楽しんでゲームを作ってくれるスタッフを募集しています ・ PHPプログラマ ・ JavaScriptプログラマ ・ ActionScriptプログラマ ・ データベースエンジニア ・ サーバエンジニア ・ ソーシャルゲーム企画   興味のある方は、直接声を掛けていただくか、 HPからお問い合わせください