タグ

ブックマーク / labs.unoh.net (93)

  • ウノウラボ by Zynga Japan: フォト蔵、そしてウノウラボ

    こんにちは。お久しぶりです、yamaokaです。プライベートなブログにも書きましたが、現在は株式会社デジタルガレージで写真コミュニティサイト「フォト蔵」の制作・運営をしています。 この半年でフォト蔵が変わったこと フォト蔵がデジタルガレージに事業譲渡されたのは2012年4月でした。もう4ヶ月が経つのですね。その前後からいくつかの変更を行ってきているのでまとめて紹介します。 スマートフォンへの対応 2月にwebのスマートフォン版をリリースしています。もともとフォト蔵ではTwitterからのご利用が非常に多く、スマートフォンへの対応は急務でした。実は制作には非常に長い期間がかかっているのですが、リリースできて当によかったと思っています。そして現在、アップロードを簡単に行える方法がない(メールでのアップロードのみサポート)のでアップロードをサポートするためのアプリの開発を進めているところです。

    se-mi
    se-mi 2012/07/17
    ウノウラボ総括。ZyngaJapanを離れた人だから書けるのかも。
  • ウノウラボ by Zynga Japan: PHPで利用出来るテストと開発に便利なツール

    こんにちは。yukiです。 今日はテストや普段の開発に便利なツールのご紹介をしたいと思います。PHP限定のツールですので、ご了承下さい。 ZyngaJapanでは、昨日リニューアルオープンした「ファームビレッジ」でも、Jenkins(旧Hudson)によるCIを行って開発しており、TDDやJenkinsでのCIを利用する文化がだんだんと浸透してきています。Jenkinsのプラグインとして利用できるものも多くありますが、当然ながらコマンドラインからも利用出来ますので、コミット前に自分のコードをチェックすることもできます。 phpcpd コードの中でコピー&ペーストで記述されている部分を検出してくれます。 どの程度の重複から検出するかを柔軟に設定できるので、まず大きな部分から修正するなど判断ができ便利です。 $ phpcpd /path/to/project phpcpd @package_v

  • ウノウラボ by Zynga Japan: 都市伝説の検証!Flash CS5のswfはCS4よりファイル容量が大きい!?

    flashエンジニアのnaoです。 ディスカバリーチャンネルの番組に「怪しい伝説」(Mythbusters)ってのがありますよね。そう、"ワイヤーが切れて自由落下するエレベーター、地面に衝突する寸前に中でジャンプしたら助かるんじゃね?"とか、あほう 希少な検証をやるあの番組です。 ちょっと考えればわかりそうな事を真面目に検証する彼らを生暖かく見守る私ですが、この度自分自身、都市伝説に遭遇いたしました。 その都市伝説というのが、標題の「Flash CS5のswfはCS4よりファイル容量が大きい!?」なワケであります。 私の所属するプロジェクトでは、前任のflashエンジニアがFlash Profesional CS4で開発を行い、私を含めた後任のチームはCS5で開発を行っております。 この時に、前任からの引き継ぎ注意事項として 『swfファイルはCS4で書きだしたほうが軽くなる』 とい

    se-mi
    se-mi 2011/01/28
    なにこれこわいw
  • ウノウラボ by Zynga Japan: レディの嗜みについて ~ PHP と Membase と MessagePack と私

    こんにちは mayutan です。 ラボブログを書かないとクビだと脅されたのでクリスマスに泣きながら書いておりますが 皆様いかがお過ごしでしょう。 今回のレディの嗜みですが、 レディたるもの、キーバリューストアくらい扱えないとなりません!!!!!!111 という事で membase についてご紹介しようと思います。 最近も杓子もソーシャルソーシャルわっしょいわっしょい!といった感じで、 これまでのシステムとはまた違った独特の工夫を皆様されていると思うのですが、 memcached を使っている方はかなり多いのではないでしょうか。 ここにプラットフォームから取得した情報や、あまり更新されない情報などを保存して、 DB やプラットフォームへのアクセスを極力減らす、という使い方がメジャーだと思います。 そして、同時に「これ永続化できたらもっと便利なんじゃないの?」って皆思ってるで

    se-mi
    se-mi 2010/12/27
    ラボブログを書かないとクビ
  • ウノウラボ Unoh Labs: FarmVilleの開発 - FacebookのNo.1ゲームを5週間で作りあげスケールさせた手法

    こんにちは、五十川です。 2010年12月1日に、ウノウがジンガジャパンとなってから初めてのタイトルとなるファームビレッジがリリースされました。ファームビレッジはFacebookで永らくNo.1の座にあるFarmVilleの日語版ですが、先月そのFarmVille開発のリーダーで、現在はZyngaの共有テクノロジーをリードしているAmitt Mahajanが来日していました。 今回ご紹介するのは、そのAmittが2010年3月のGame Developers Conference(GDC)で行った、Rapidly Developing FarmVille - How we built and scaled a #1 Facebook game in 5 weeksと題したプレゼンテーションです。今回Amittの許可を得てそのときのスライドの日語版を作成しましたので、それに解説を加えてご

  • ウノウラボ Unoh Labs: アジャイルな開発をチームでやってみた(2010年版) - その2

    テストコード書いてますか? HIROKIです。 murahashiに続いて、テストファーストを導入してみての振り返りをします。 まず、どうやってチームにテストファーストのスタイルを持ち込んだのか。 1.テストが重要だという共通認識を持つ。 前のプロジェクトではテストコードは、ほとんどありませんでした。 その中で、開発になれていない人や新たに人が投入され、 極少数ですが、デグレーションが起きました。 その経験を元にテストが重要だという共通認識を持つことができました。 2.プロジェクト開始時からテストファーストに踏み切る気持ちが必要 テストコードを書かなければコミットさせない。ぐらいの気持ちが必要です。 実際に何度も、格的な実装が始まる前から口にしていました。 「うちのチームはテストを書かなければコミットを許さない。」と。 3.でも、テストコード書いたことないよ? テストコードを書いたことの

  • ウノウラボ Unoh Labs: アジャイルな開発をチームでやってみた(2010年版)

    こんにちは murahashi です。 アジャイルな開発をチームでやってみている(2010年)のですが、いざやってみると結構ハマリどころがありました。やってみたことを共有しておこうと思います。 かたちから入ろう 朝会 アジャイルな開発と言えば朝会なので、朝会から始めました。 開始時刻をメンバーで決めて、それぞれが昨日やったこと、今日やること、おしらせ、困っていること、を共有しました。 さらに、朝会前に社内wikiにメモ書き程度の項目を書いておきます。これにあらかじめ目を通すことで、一番の課題に時間を集中することができました。 アンチパターン・決めた時刻を守らない 11時から朝会始めようと決めたのに、11時過ぎに汗だくで飛び込んできて「遅れてすみません」「wiki書いてません」「wiki読んでません」というのは、チームの空気を悪くするだけでなく、単純に全員の時間を無駄にしてしまいま

  • ウノウラボ Unoh Labs: 今からはじめるCassandra入門

    こんにちわ、7月に入社したばかりの@emorinsです。 題名の通りですが分散データベース『Apache Cassandra』を紹介したいと思います。 少し前はHadoop(とHBase)と比較されることの多かったCassandraですが、最近はHadoopの人気に押されつつあるようにも感じます。 しかし、CassandraとHadoopは特徴が異なり、よく言われるのがCassandraはリアルタイム処理に向き、一貫性のかわりに可用性を重視し、またHadoopとは違って単一障害点もありません。 今日はそんなHadoopとは違った魅力のある分散データベース『Apache Cassandra』をはじめてみましょう。 目次 Cassandraとは アーキテクチャ Cassandraの特徴 コンシステンシレベル データモデル MemtableとSSTable セットアップ storage-conf

    se-mi
    se-mi 2010/08/12
    あとで
  • ウノウラボ Unoh Labs: Androidアプリ開発環境を構築する

    4月にウノウ入社しました、takaと申します。 ウノウではまだまだなAndroidですが、敢えてMacAndroidアプリ開発環境を整えてみようと思います。元々はWindowsユーザでしたがウノウではMacを使って作業していますので、慣れる目的もあります。AndroidアプリはJava、Eclipseを用いた開発が主流だと思いますのでWindowsでもほぼ同様の手順で構築可能なはずです。 JDK6 Mac OS Xでは標準で入っていたので特に作業無し。 Eclipse 3.6 Helios http://www.eclipse.org/ http://www.eclipse.org/downloads/ Pleiades http://mergedoc.sourceforge.jp/ Windowsの場合は「Pleiades All in One」など使用すると各種プラグインも入っていて

  • ウノウラボ Unoh Labs: symfonyを使ってみた所感

    こんにちは、オマタです。 4月に入社したばかりでここに書ける小ネタがないのですが、 symfonyを使い始めてみて便利だなと思ったことを書いてみたいと思います。 jobeetが用意されているところがすごい symfony初心者は、jobeetと言われるチュートリアルを参照しつつ、 説明の通りに自分の環境で動かしながら使い方に慣れていくのが一般的です。 このjobeetがとてもよく出来ていて、これを一通りこなすだけでインストールから エンジニア求人サイトの正しい作り方までを勉強することができます。 途中、日語訳の説明文に間違いや分かり辛いところがあったりしますが、 そのときは個人blogに書かれているjobeet正誤情報が助けてくれます。 ちなみにウノウではjobeetの14日目までが習得推奨となっています。 jobeetへのリンク symfonyコマンドがすごい sym

  • ウノウラボ Unoh Labs: オープンソーシャルモバイルのAPIアクセスで注意しているポイント

    こんにちは。中村です。 ウノウで運用しているまちつく!はモバイル向けソーシャルアプリとしてmixi版、モバゲー版をそれぞれ展開しています。 開発するにあたって通常のウェブサイトとはいくつか違うポイントに注意しています。プロフィールや友達などの情報を取得するためにプロバイダが提供するAPIを利用することになりますし、通信も「携帯電話 <= プロバイダサーバ => SAPサーバ」という経路になるため、様々な箇所でプロバイダを意識した開発を行う必要があります。 今回は特にAPIを利用する際に注意しているポイントをいくつかピックアップしたいと思います。 APIアクセスをできるだけ減らす オープンソーシャルモバイルに限らず基的なことですが、APIへのアクセスを可能な限り減らすことでSAP・プロバイダ双方の負荷軽減になり、かつリクエスト毎のレスポンス向上に繋がります。まちつく!ではプロバイダからキャ

  • ウノウラボ Unoh Labs: subversionリポジトリでもgitが使えるgit-svn

    yukiです。 空前のGitブームもだいぶ落ち着き、最近はGit記事をあまり見かけなくなりましたが、今日は空気を読まずにGit、それもgit-svnについて利用例を挙げつつご紹介しようと思います。 さらっと紹介されている記事は多いのですが、実際にこう使っている、などの例があまりなかったので、今回利用例を含めてご紹介していけたらと思っているので、もっと便利な使い方があるよ!という方の突っ込みをお待ちしております。 まずgit-svnについてご紹介すると、その名の通りgitとsubversionをつなぐ役割を果たすもので、subversionのリポジトリからgitでcloneして利用出来るというものです。 インストールはyum一発で簡単に入ります。 # yum install git-svn よくある例としては、業務で使うリポジトリはSubversionのまま使い続けているけど、個人

  • ウノウラボ Unoh Labs: PHP版 Parallel::Prefork で奥一穂さんと親に感謝しよう

    こんちにわ、去年末に入社した「ちわ」です、こんにちわ。 Perl には CPAN というものがあり、そこには様々なライブラリが登録されています。国内の方々も多くライブラリを登録されていますがその中で牧大輔さんの Queue::Q4M、奥一穂さんの Parallel::Prefork を PHP に移植したので今回は奥一穂さんの Parallel::Prefork のPHP版を紹介したいと思います。 弊社が提供しているサービスの「まちつく!mixi版」、「まちつく!モバゲー版」の地図を生成、Amazon S3 への転送をキューを使って処理していまして、そのキュー処理に Q4M を導入することになりました。キュー処理の主な流れは下記のようになります。 主な処理の流れ Web やバッチで生成キューをエンキュー 生成デーモンがデキューし地図を生成 正常に地図を生成できたら転送キューにエンキュ

    se-mi
    se-mi 2010/03/19
  • ウノウラボ Unoh Labs: 日本と海外の携帯や携帯コンテンツ市場について色々(個人的)な感想

    はじめまして、1月入社のBrandonと申します。 シンガポール出身で日ではまだ一年ほどしか働いた経験がないので、 もし日語で変なところがあったらお許しください。(ご親切にご指摘頂ければさらに幸いです)。 入社したら周りがすごい人達ばかりで、もともと自分がまだまだだなーと思っていたとこをさらにまだまだだなーと思わせる人たちばかりです。 一応エンジニアですが、エンジニア経験はないに等しいもので、このブログを読んでいる人たちに技術系の話をしたら失礼な気がします。 とは言うものの、近いうちに技術系の話はしたいと思っています。 (教えるという立場より、ご指導や意見を頂ければという立場、もしくは教え合おうという立場から) でも今日は日海外の携帯市場についてのちょっとした感想というか、思いついたことの小まとめをみんさんとシェアしたいと考えております。 あくまでも個人的な感想ですの

    se-mi
    se-mi 2010/03/09
  • ウノウラボ Unoh Labs: PECL::oauthでxAuth

    yamaokaです。 TwitterのBasic認証によるユーザー認証が6月に廃止されるようですね。 認証はOAuthで行ってください、とのことなのですが OAuthの認証画面を表示するためにブラウザを起動するのがふさわしくないケースや、 そもそも貧弱なブラウザでうまく利用できないケースもあります。 そうした場合の解決方法として、xAuthという仕組みがTwitterに実装されています。 詳しくは次に紹介するweb上の記事を参照してください。 s-take Blog.: Twitterによる簡易版OAuth: "xAuth" OAuthでデスクトップアプリがブラウザを経由させたくないときのxAuth - Codin' In The Free World the.hackerConundrum: Sneak peek at Twitter's browserless OAuth creden

    se-mi
    se-mi 2010/02/25
  • ウノウラボ Unoh Labs: Flash Lite初学者の為のまとめ

    おはようございます。内田です。 最近はmixiアプリモバイルやモバゲー上のゲームのようなソーシャルゲームが流行ってるようですね。 私もソーシャルゲーム&Flash Lite案件を手がけることになったので、その時に参考にしたサイトを紹介します。 開発の前に覚えること 最初にFlash Liteの仕様とケータイ開発の障壁ともいえるキャリア間の差異を知る必要があります。 Flash Lite ことはじめ。 我らがryosuke氏のエントリー 仕様とキャリア毎の情報が分かりやすくまとまってます。 [Flash Lite 1.1]制作前に知っておきたいことをQ&A形式でまとめてみた 上記エントリーと重複する部分も多いですが、Q&Aの形で調べやすい。 「一般的なガイドラインが知りたい!」を厳守すれば3キャリアで動作するswfがつくれそうです。 コンテンツの作成 Flash Liteコンテンツのつく

    se-mi
    se-mi 2010/01/20
  • ウノウラボ Unoh Labs: Tokyo Tyrantを使ってみて

    yamaokaです。 通常のデータベースとしてではなく、Key-Valueストアの選択肢として Tokyo Tyrantを少しずつ使ってみています。 実際に運用するにあたって、いくつか行ったことを書いておきます。 ちなみに、現在の構成は1台のみでの運用です。 マルチマスター構成やレプリケーションなどは行っていません。 PHPのクライアント Tokyo Tyrantを利用するのはPHPのアプリケーションからです。 最初はmemcachedプロトコルを利用して PECL::memcacheを使っていましたが、 データの大量更新を連続で行うとデータの取得が正常に行えなくなる現象が発生したため、 Net_TokyoTyrantを一部改変したものをライブラリとして利用しています。 パフォーマンスではPECL::memcacheに負けますが、クリティカルな処理をしていないこともあり、 今のところ問題に

    se-mi
    se-mi 2009/10/28
    やっぱセッションに使いたい
  • ウノウラボ Unoh Labs: PHPで暗号化して、Flashで復号してみたときのメモ

    Keitaです。 もう、半年くらい前になりますが、画像をFlashとPHPの間だけデータを暗号化できないかなーとおもって試したことがあります。結論としては、Flashで解読できているということは、Flashをうまいことやればデータが抜き出せるし、そもそも、暗号化する意味が個人的に皆無だったのと、画像ほど大きいデータになると解読に時間がかかってしまったので、「あー、まぁほかにやることもあるし、いいや」とおもって、忘れることにしました。 でも、まぁ昔こういうことやって遊んだなぁという記録と、もしかすると誰かの役にたつかと思い記事にさせていだきます。 環境は、サーバサイドはPHP5で、クライアントは、Flex2で作成しました。 PHP側でデータをこんな感じに暗号化して、それをクライアントで受け取る感じにしました。 暗号化形式は、Blowfishを利用しました。 まず、データの暗号化の

    se-mi
    se-mi 2009/04/24
    CryptBlowfishで暗号化してAs3Cryptoで複号。ゲームで便利そう。
  • ウノウラボ Unoh Labs: OpenSocialを始めよう!第1回

    こんにちは五十川です。 先日、gooホームとmixiアプリが立て続けに公開され、いよいよ日でもOpenSocialが注目を集めるようになりました。そこで今回は、これからOpenSocialアプリケーションの開発を始めるにあたっての基礎的な内容をまとめてみたいと思います。 OpenSocialとは Google Code - OpenSocialの冒頭には、OpenSocial は複数のウェブサイト間で使用可能な、ソーシャル アプリケーションの共通 APIの定義であると書かれています。 あるOpenSocial対応のウェブサイトで動作するプログラムは、他のOpenSocial対応アプリケーションでも動作する — 例えばmixiアプリ用のプログラムは、gooホームやMySpaceなどでもそのまま動作する可能性があるというのがOpenSocialの重要な点です。もちろんウェブサイトごとに細部の

  • ウノウラボ Unoh Labs: Flashの新しい可能生 Asynchronous Flash + XMLSocket

    尾藤正人(a.k.a BTO)です 昨日ラボプロジェクトとして実験的に開発している新規プロジェクト「プラッシュ」をβ公開しました。 簡単に説明するとプラッシュはFlashとXMLSocketを使う事でブラウザだけでネットワーク対戦ができるゲームポータルサイトです。 今回はプラッシュで使われているFlashとXMLSocketを使ったアプローチについて考察してみたいと思います。 はじめに 正直に告白すると僕はFlashを一行も書いた事がありません。(汗) なので、Flashの部分に関してはFlash側の開発者であるyossyに聞いたり、Webで調べた情報がほとんどです。 不正確な情報が含まれてる可能性がありますが、その辺を考慮していただければと思います。 FlashのXMLSocketで何ができるのか FlashのXMLSocketを使うと直接ソケット通信を行う事ができます。 AjaxやCo

    se-mi
    se-mi 2009/03/30