タグ

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

  • ウノウラボ by Zynga Japan: PHPで利用出来るテストと開発に便利なツール

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

    ryuzee
    ryuzee 2011/03/24
    phpdcdだけ使ってないや。あとでJenkins様で自動でやるように設定してみよっと
  • ウノウラボ Unoh Labs: アジャイルな開発をチームでやってみた(2010年版) - その2

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

    ryuzee
    ryuzee 2010/09/01
    テスト自動化の話。fixtureのところは工夫しないと、DBのスキーマ変えるたびにすごい苦労することになるので、最初にそれなりに時間かける&データ作るツールを作る、といったあたりがベストプラクティスかと。
  • ウノウラボ Unoh Labs: アジャイルな開発をチームでやってみた(2010年版)

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

    ryuzee
    ryuzee 2010/08/26
    ウノウさんでのアジャイル挑戦事例。ちゃんとハマり所にははまっているようで微笑ましい。最初はコーチを入れた方が良い。fixture周りは僕はPHPUnitのCsvDataSetだけど周辺ツールの開発は必要だしやっている。
  • ウノウラボ Unoh Labs: MySQLのチューニングのためのデータの集め方

    いつの間にか会社で古株になったyamaokaです。 webアプリケーションのバックエンドにMySQLを使っている場合、 クエリ(SQL)のチューニングをする必要がありますよね。 皆さんはチューニングの計画をどのように立てていますか。 もちろん、既に明らかに重いことが想定されているページがあれば、 その処理で使われているクエリを中心にEXPLAINなどを使って解析していけばいいと思います。 でもそうではなく、全体的にクエリの見直しやチューニングを行いたい場合は 実際に実行されているクエリを確認していくという作業が必要です。 そこで使うことができる3つの方法について書きたいと思います。 遅いクエリを記録する MySQLにはスロークエリログといって、 実行に時間がかかったクエリを記録する機能が最初から付いています。 /etc/my.cnfに次のように設定を書けば実行時間が1秒を超えたクエリが出力

    ryuzee
    ryuzee 2010/08/14
    基本はslow_queryのログとって、遅いクエリのチューニングしたり、クエリプランを見てインデックスが使われていないのを修正したり。ORマッパ全盛で、生のSQLのチューニングの仕方を知らない人が多くなったなぁ。。
  • ウノウラボ Unoh Labs: Vim: ちょこっと設定、ちょこっとプラグイン。

    ども。6月入社のjhoshinaです。 まだ入社したてのつもりだったのに、ラボブログ執筆がまわってきてあたふたしています。 何を書こうか迷ったのですが、環境も新しくなったことですし、設定しなおしたVimの設定・プラグインなどをちょこっと見ていこうかと思います。phpとsymfony関係を中心に見ていきます。 雑多な設定 特に変わったところもないのですが一応。 ~/.vimrc set nocompatible set showmatch showmode showcmd set laststatus=2 set statusline=%<%f\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}%=%l,%c%V%8P syntax on filetype on filetype indent on filetype plugin on ~

    ryuzee
    ryuzee 2010/07/30
    phpとsymfonyを書くのに便利なvimの設定。cakephp版もどっかにあるよな?Objective-C版もあるよな?python版もあるよな?
  • ウノウラボ Unoh Labs: PubSubHubbubとは

    yamaokaです。 Twitterのみならず、FriendFeedやFacebookなど よりリアルタイムに近い更新がwebで求められるようになってきています。 従来、更新情報の配信はRSSなどのフィードやAPIを通して行われてきました。 しかしその場合、配信している側のサーバーに 定期的にリクエストを投げないと更新があったかどうかわかりません。 サーバーへのアクセスが多くなった場合、結構な負荷になります。 さらにお行儀の悪いクライアントが存在すると、頻繁なアクセスを繰り返し、 あたかもDoS攻撃のような状況が起こることもありえます。 そこで考えられたオープンなHTTPベースのプロトコルがPubSubHubbubです。 Google ReaderとFriendFeedが対応している他、 日国内ではlivedoor Blogとliverdoor Readerがそれぞれ対応しています。 で

  • ウノウラボ Unoh Labs: WEBアプリのテストに便利なFirefoxのアドオン

    こんにちは! のりPと同い年ですが、クラブ通いは●年前に卒業しました やまもと@テスト番長です。 早いもので、もうお盆の帰省シーズンですね。 今年の夏は世間の騒がしい日々が続いておりますが、みなさんお変わりございませんでしょうか。 さて、Firefoxといえば豊富なアドオンですが、今回はテスター目線で WEBアプリケーションのテストに便利なFirefoxアドオンを並べてみたいと思います。 Firesizer ブラウザの画面サイズを整えることが出来ます。 InFormEnter 準備しておいた値を入力フォームにセットしてくれます。 MeasureIt 画面上のピクセルサイズを測ることが出来ます。 Regular Expressions Tester 正規表現での検索がその場で出来ます。 FireShot キャプチャにメモを書き込んだり出来ます。 Web Developer F

  • ウノウラボ Unoh Labs: ゼロからはじめる携帯サイト構築。

    こんにちは、日を妙に楽しみにしていたわりには見ようともしなかった ryosuke です。曇りで残念でした。曇りでも日と分かるぐらい暗くなったら嬉しかったのですが、東京ではそんな事は全然ありませんでしたね。 さてさて、そんな私ですが入社後半年が経過したところで、入社当初より携わって来た携帯サイト構築に関して得た知識(失敗談)をまとめてみようと思います。 初ラボブログ記事でも触れた様にそもそも格的な携帯サイト構築は経験に乏しく、バッドノウハウの塊の様な面倒な思いこみが先行しがちだったわけですが(実際バッドノウハウの塊ですが)、端末の機能や表現力が豊かになるのと同時に開発環境的なツールやライブラリの充実、ノウハウの蓄積と情報公開により随分すんなり入って行けた様に思います。 結局はキャリア感の差異を知り吸収する事がすべて いきなりですが、PCサイトと携帯サイトの違いで最も厄介な所はこれにつき

  • ウノウラボ Unoh Labs: Pythonのテンプレートエンジン

    こんにちは、chihiroです。今回はPythonのテンプレートエンジンを紹介したいと思います。 Pythonを使い始めた頃、PHPのSmartyや、JavaのVelocity/FreeMarkerに相当するテンプレートエンジンとして、Pythonにはどんなものがあるのか、どれを使えばよいのかよく分からなかった経験があるので、これからPythonを始める方の参考になれば幸いです。 テンプレートエンジンを使う目的の一つに、Webサイト構築・運営の容易化ということがあると思いますが、今回はテンプレートエンジンの性格をざっと紹介したいと思いますので、HTMLの出力ではなく、次のような単純なテキストの出力を例にとって話を進めていきます。 * Hello unoh!! ** Unoh services - photozou - eiga seikatu - video pop - sugu.cc C

  • ウノウラボ Unoh Labs: OpenSocialを始めよう!第1回

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

  • ウノウラボ Unoh Labs: テスト計画書のテンプレート

    こんにちは!やまもと@テスト番長です。 巷ではインフルエンザが流行っているようですが、皆さんお元気にお過ごしでしょうか。 さて、プロジェクトが立ち上がったとき、(特に受託案件の場合) テストのドキュメントはどうしようか?という話が出ると思います。 適当にやる訳にも行かないけれどIEEE829をベースにしたものだと重かったり、割と迷う部分です。 英語ですがテスト計画のテンプレートを配布しているサイトがあったので、ご紹介してみます。 Pragmatic Software http://www.pragmaticsw.com/ Software Development Templates http://www.PragmaticSW.com/Templates.asp テスト計画書 Test Design - http://www.pragmaticsw.com/Template_Te

  • ウノウラボ Unoh Labs: 見ないと損する ソフトウェアテスト関連サイト色々

    こんにちは!やまもと@テスト番長です。 今回は自分が普段チェックしている、ソフトウェアテスト系のサイトを色々ご紹介してみようと思います。既にご存知のサイトもあるかと思いますが、宜しくお付き合いください。 swtest.jp/wiki http://www.swtest.jp/wiki/index.php?swtest.jp/wiki 最近wiki化され、情報更新が活発になっています。必見です。 StickyMinds.com http://www.stickyminds.com/ コラムなどの読み物が充実しています。 Google Testing Blog http://googletesting.blogspot.com/ グーグルのテストチームのブログです。面白くないはずがありません。 Open source software testing tools http://www.

  • ウノウラボ Unoh Labs: 共同開発を効率よく行う方法

    尾藤正人です。 ウノウではおかげさまで順調にエンジニアの数が増えてきました。エンジニアが増えてくると、共同開発をいかに効率よく行うかが問題になってきます。n人の開発者がいれば開発スピードはn倍にはならず、n倍よりも落ちます。人数が多ければ多いほど、共同開発は難しくなり、ひどい場合には人数が増えたから開発スピードが落ちたということになりかねません。 ウノウでは共同開発を効率よく行うために様々な工夫を用いています。今回はウノウでどのようなステップで開発を行っているか紹介したいと思います。 subversion でソースコードを管理 ソースコード管理ソフトがなくては話になりません。ウノウではソースコードの管理に subversion を使ってます。subversion を使うことで過去の状態に簡単に戻すことができますし、個人の環境を完全に分離することができます。 subversion のコミット

  • ウノウラボ Unoh Labs: JavaScriptでクリップボードを使う(IE/Firefox)

    こんにちは、さかとくです。師走で忙しいですね。今回は、JavaScriptでクリップボードを使うプログラムを作ってみます。IEとFirefoxで動く簡単なライブラリを作ってみましたので、参考にしてください。 IEだけで動かすのは、簡単なのですが、FireFoxではクリップボードを操作する方法がありません。そこで、FireFoxでも使えるようにFlashを使って工夫してみます。 まず、参考までにIEでクリップボードを扱うJavaScriptを見てみましょう。IEなら以下のように一行書くだけです。

    ryuzee
    ryuzee 2008/05/18
    JavaScriptでクリップボードを使うプログラム
  • ウノウラボ Unoh Labs: Tracに QA(testing) のステータスを追加する方法

    2次元より3次元のほうが好きな hide です。 昨日のmasatoさんのエントリへのコメントで、Tracの話が盛り上がっていたので引き続きTracネタを続けます。今さらTracについての説明は必要ないと思いますが、どんなものかひと言で説明すると、BTSとWikiとSubversionリポジトリビュアーを合体したようなものです。この組み合わせ具合が絶妙で、Tracは様々なソフトウェア開発現場で使われています。有名なところでは、Ruby on Railsの開発にも使われています。 しかし、ウノウではBTSに影舞を使っています。何故かというと、標準ではTracのワークフローは次のようになっていて、testingのステータスがないからです。 最近は、ベータ・クオリティでもいいから、とにかく早くサービスを公開することが重要だという考え方が一般的になってきています。しかし、バグだらけのシステム

    ryuzee
    ryuzee 2008/05/17
    Tracでステータスに確認中みたいなのを追加する方法
  • 1