developer's diary

最近はc#のエントリが多いです

fwd:ソーシャルゲーム運営地獄

ソーシャルゲーム運営地獄を読みました。

あっそうだよな。。と勉強になったので、fwd記事*1を書いてみます。

MMORPGよりもソーシャルゲームは運用が難しい。

もともと何十万人規模の接続をさばくには、MMORPGなどのオンラインゲームよりもシビアであり(普通、MMORPGでもワールドがわかれていて、1つのサーバーの常時接続人数は数千人規模に収まるので)、大人数になったときにうまくスケールアウトするように設計するためには、ゲームシステム自体がそのへんを考慮してうまく練られていないといけない。

ほんとその通りだと思いました。 MMORPGやる人は結構ゲームをする人でパターン認識力が高く、各サーバの負荷状況を確認しながらゲームしてることを思い出しました。

↓(MMORPGのサーバ選択イメージ)

参加中の人数 収容可能人数 選択
400 500 このワールドでプレイする
32 500 このワールドでプレイする
132 500 このワールドでプレイする
331 500 このワールドでプレイする

↓(ソーシャルゲーム)

参加中の人数 収容可能人数
895 不明

もちろん、不明な状況でサービス開始するとまずいのですが、こういう部分って実際にサービスを提供したことある人じゃないとなかなか分からないと思います。

プログラマーのキャリアって俳優さんのキャリアに似ている。

この記事を読んで、プログラマのキャリアって俳優さんのキャリアに似てるなぁって思いました。 何が似てるかって、作品と共に成長して行く所です。そういう意味ではすごく運です。

  1. スケールアウトする仕組みが必要なプロジェクトに関わった事があるか?
  2. スケールアウトする仕組みが必要なプロジェクトに関わった事のある人から面と向かって話を聞いた事があるか?
  3. スケールアウトする仕組みが必要なプロジェクトの対談や雰囲気が書かれた本や雑誌を常日頃読んでるか?

映画制作(俳優さん)も、システム制作(プログラマ)も、結局は最終的なゴールがあってそこに向かって走る方法論を監督やプロマネは考えていて、その作り方や方法に関わる事で成長する。 もちろん関わっただけで何にも考えてなかったら駄目ですが。

知っているか知っていないか。些細な違いだけどその違いはとても大きい。

そもそも意識していないパラダイムは考えようがありません。 考えようがない事は経験してみないと分からないです。

少しでも分かってたらその手がかりを元に、必死になって調べると思います。

もしも万が一「ソーシャルゲーム運営地獄」のプログラマーが「アクセスが増えるとどうなるか」「スケールアウトという方法があるらしい」「RDBMSはスケールアウトが難しいらしい」ということを知っていたら、その部分を深く理解していないことが社長に伝わっていれば。ゲーム運営地獄には陥っていないのかもしれない。むしろ「よくわかっていない奴に任せられるか」って普通の社長さんだと考えると思います。 そういう意味では「ソーシャルゲーム運営地獄」のプログラマーは他人のお金で良い経験をさせてもらえた幸せ者なんだと思います。

考えてるだけでも駄目で、実際に手を動かしてナンボ。

考えてるだけでも駄目で、情報収集するだけでも駄目で。 頭と体は上手くバランスよく動かさないといけないなぁと感じます。

*1:最近個人的に書いてます