タグ

ブックマーク / developer.aiming-inc.com (6)

  • [Ruby]うるう日の午前0時から9時までに起動したプロセスでのみ再現するサーバー障害

    原因調査 エラーの発生箇所の特定 このエラーIncorrect datetime valueはデータベースのdatetime columnに対して不正な値を書き込もうとしたことが原因で発生しています。通常のINSERT statementを使って、過去の時刻を書き込むことはほとんどありませんが、MySQLなどに用意されているINSERT … ON DUPLICATE KEY UPDATE statementを使って複数の行を更新するときには、過去の時間を使ったクエリが生成されます。 例えば、複数の消耗品を所持しており、1つのクエリで複数の所持数を変更するときは、下記のようになります。 // PK(user_id, item_id) SELECT * FROM items WHERE user_id = 123; user_id | item_id | quantity | created_

    [Ruby]うるう日の午前0時から9時までに起動したプロセスでのみ再現するサーバー障害
    rin51
    rin51 2024/03/12
  • 幻塔戦記グリフォンの AI で使っている Behaviour Tree

    こんにちは、クライアントエンジニアの Sindharta Tanuwijaya(シンダルタ タヌイジャヤ)です。 今更ですが、1月の社内の勉強会で、 Behaviour Tree という AI の手法を発表させて頂きました。当時は幻塔戦記グリフォンを開発するのにあたって、1つのフィーチャーを完成させるためにこの機能を作っていましたが、今はいろいろなフィーチャーで使われています。 Behaviour Tree とは思考 AI のアルゴリズムの1つで、比較的に良く知られているステートマシンと目的が似ています。それはゲーム内のオブジェクトをどう考えさせて、行動させることです。ステートマシンも良い手法ですが、 AI が複雑になってくるのにつれて、管理の難しさが倍に増えるデメリットがあります。そこで、 Behaviour Tree を導入してみたわけです。 当日発表したスライドは以下です。 また、自

    幻塔戦記グリフォンの AI で使っている Behaviour Tree
  • 第6回テックヒルズで自動テストについての発表を行いました

    こんにちは、エンジニアの黒木です。 先日の6月18日に六木ヒルズで行われた、CROOZ株式会社主催のITイベント「テックヒルズ」の第6回にて、「進行中の開発プロジェクトで増えていくテストを自動で回し続けるために行ったいくつかのこと」というタイトルで、自動テストについて発表しました。 当日発表したスライドが下記のものです。 時間の都合もあり、詳細に踏み込みすぎる部分など、当日お話できなかった内容もあります。いくつかはスライドの最後に追加してありますので、見てもらえたらと思います。 AimingではJenkinsをだいたいどこのプロジェクトでも日常的に使用していて、プロジェクトごとに使用方法が少しずつ違っています。 今回お話したのは主に私が関わったプロジェクトでのJenkinsの使い方でしたが、他のプロジェクトでの話もこのブログなどで出来たらと思っています。 今回の発表が、聴いてくれた皆さん

    第6回テックヒルズで自動テストについての発表を行いました
    rin51
    rin51 2013/06/20
  • JS 大規模プロジェクトの管理手法 – ロードオブナイツの実例紹介

    どうもこんにちは。 Aiming で東京開発グループのゼネラルマネージャをやっている小林です。 8月に mobage と Yahoo! モバゲー で ロードオブナイツ というシミュレーション RPG をリリースさせて頂きました。 そして、先週、 Yahoo! モバゲー版の PC ブラウザ専用デザインをリリースさせて頂きました。 今回リリースしたものは元々 Unity で作られていた iOS アプリ版 Lord of Knights を HTML5 で書きなおしたものです。 (今は Android 版 もあります) HTML のポチポチゲーをネイティブに移植したというのはよく聞く話ですね。 ですが、逆にリッチなネイティブアプリを HTML5 に移植し、かつスマフォブラウザと PC ブラウザで同じものを動かすなんてのは前例が見当たりませんでした。 技術的ハードルが高かったことに加えて期日がタイ

    JS 大規模プロジェクトの管理手法 – ロードオブナイツの実例紹介
  • Rails 3.2 リリースノートを翻訳してみました

    こんにちは、ほりいです。風邪が流行っていて体調管理が大変なシーズンですね。 先週 “Rails 3.2.0 がリリースされました”:http://weblog.rubyonrails.org/2012/1/20/rails-3-2-0-faster-dev-mode-routing-explain-queries-tagged-logger-store ね。 Rails を使った Web 開発チームでは 3.2 を使い始めていますが、社内でも結局どう変わるの? という声がありましたので、勉強がてらみんなで “Ruby on Rails 3.2 Release Notes”:http://edgeguides.rubyonrails.org/3_2_release_notes.html を翻訳してみようという試みを行いました。その成果を公開したいと思います。 注意書き: * 1章「Upgra

    Rails 3.2 リリースノートを翻訳してみました
    rin51
    rin51 2012/01/27
  • Jenkins Gerrit Trigger Plugin の使い方

    はじめまして。Aiming で C# を書いてるウェブっ子エンジニアの廣岡 (hirooka) です。 弊社ではすべての開発ラインでコードレビューAndroid 開発で有名な Gerrit という Google 製のツールを使っています。 今回は、この Gerrit と CI ツールである Jenkins を組み合わせて使う需要が社内で発生したので、公開社内向けドキュメントにしました。 Jenkins Gerrit Trigger Plugin Jenkins には Gerrit Trigger というプラグインがあります。このプラグインが行ってくれることは、 Gerrit にパッチセットをアップロードすると、そのパッチセットを Jenkins でビルド・テスト Jenkins 上でのビルド・テストの成功・失敗を Gerrit に通知 テストに成功していれば CodeReview +1

    Jenkins Gerrit Trigger Plugin の使い方
  • 1