タグ

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

  • ウノウラボ Unoh Labs: C/C++でFastCGIを作る

    こんにちは satoです。 現在 Ruby on Rails で書かれた アプリケーションの 一部のURIを高速化するために、lighttpd + FastCGI で 書き直しています。FastCGI は あらかじめ プロセスを常駐させておき、リクエストが来た際に、常駐しているプロセスに Unix domain socket あるいは TCP/IP で通信を行い プロセス起動時のオーバーヘッドを無くすことにより、処理を高速化します。今回は lighttpd + FastCGI で Hello word を作る 解説します。 まず lighttpd と FastCGI を 用意します 環境はCentOS5です。 lighttpd: yum install lighttpd FastCGI: wget http://www.fastcgi.com/dist/fcgi.tar.gz tar xz

  • ウノウラボ Unoh Labs: DjangoのURL逆引き機能

    Chihiroです。 今回は、Django 0.96以降から改善が進んでいるDjangoのURL逆引き機能に関して紹介したいと思います。この機能を上手く使うと、Djangoを使ったWeb開発において、URLの設計と維持にかかる手間を大幅に削減できます。 公式ドキュメントの日語訳にもこの機能の説明はありますが、説明が分散していて全体像が見えにくいと思いますので、この機能を使わない場合の問題点を指摘し、次に使った場合、ルーティング、モデル、ビュー、テンプレートがそれぞれどのように書けるかを説明したいと思います。 なお、動作確認はSubversionから取得した開発版Django(rev.6447)を使用して行っています。 Django0.96以前のURL定義の問題点 Djangoの大きな特徴として、「自由なURL設計」がありますが、一方でモデル、テンプレート、ビュー、ルーティングにおいて冗長

  • ウノウラボ Unoh Labs: Migrateのご紹介

    こんにちは、chihiroです。今回はデータベース・スキーマのバージョン管理ツールであるMigrateを紹介します。 Migrate http://erosson.com/migrate/docs/index.html インストール 開発版の方を使いますので、レポジトリからコードをチェックアウトしてインストールします。 $ svn co http://erosson.com/migrate/svn/migrate/branches/monkeypatch_removal migrate $ cd migrate $ python setup.py install もしくは、easy_installで直接インストールします。 $ easy_install http://erosson.com/migrate/svn/migrate/branches/monkeypatch_removal

    h1r05h1
    h1r05h1 2007/09/05
    便利そう。というか今すぐに必要。
  • ウノウラボ Unoh Labs: Rails風フレームワークPylonsで簡易Wikiを作ってみる

    Yet Another Sakatokuです。今回はPyhonで書かれたRuby on Rails風のフレームワークPylonsの使い方を簡単に紹介したいと思います。 PylonsはPythonのWebフレームワークとしては、現在のところ、Django, TurboGearsにつぐ三番手(以下)と見なされていますが、TurboGears 2がPylonsと合流して、Pylons上に旧TurboGearsのAPIを提供していくことが表明されましたので、今後大きな勢力になっていくと思われます。 サンプル・アプリケーション サンプルとして、簡易Wiki(CoCoWiki)を作ってみました。以下のURLからダウンロードできるので参考にしてみてください。 cocowiki.tar.gz Pylonsの開発サーバ上で動作させるには、ダウンロードしたtar.gzを解凍し、cocowikiディレクトリで"

  • ウノウラボ Unoh Labs: Pythonでメールを送信したい人のためのサンプル集

    chihiroです。 最近Pythonでのメールを送受信に試行錯誤することがあり、ようやく分かってきたので、ここにまとめておきたいと思います。 Pythonでメールを送信する Python標準ライブラリでメールを送信する場合、 emailパッケージを使ってMIME文書を作成 smtplibを使って送信 という手順を踏みます。 emailパッケージははじめはとっつきにくいのですが、 各クラスのインターフェイスは統一感があり、よく練られているので、一度分かってしまえば明快です。 国際化されたヘッダーやテキスト以外のコンテンツの扱いに関しても問題ないので、 "battery inside"なPythonのありがたみを実感できるパッケージだと思います。 基的な例 テキスト形式のメッセージをlocalhost:25から送信する例です。 # -*- coding: utf-8 -*- import

  • ウノウラボ Unoh Labs: MySQL5からのインデックス結合で1テーブル複数インデックスを使う

    komagataです。 Webアプリケーションのパフォーマンスの大半はデータベース、特にインデックスの使われ方にかかっている気がします。 仕事でもMySQLをよく使いますが、MySQLでは1テーブルに付き1インデックスしか使われません。PostgreSQLなどと比べてそのことが気になってMySQLでのパフォーマンスチューニングに全く自信が持てませんでした。 オライリーの実践ハイパフォーマンスMySQLには下記のように書かれています。 実際、UNIONを除き、MySQLでは、1つのクエリを実行するとき、1つのテーブルに付き1つのインデックスしか使用できない。この事実は、繰り返し述べるに値するほど重要である。「MySQLでは、1つのクエリを実行するとき、1つのテーブルにつき1つのインデックスしか使用できないのである。」 また、その制約を考えたクエリの書き方として下記の様に書いてあります。 my

  • ウノウラボ Unoh Labs: 色選びのコツ

    こんにちは! yamazakiです。 高度なプログラミング話だらけのこのブログには全く馴染まない話題でアレですが、今回は「色」について書いてみようと思います。 Webサイトを作っているとき、ちょっとした書類を作るとき、「どんな色を使おうかなぁ」というのは毎度結構迷うところです。今回はそんなときにもしかしたら少しは役に立つかもしれない、色選びのTipsです。 色の「トーン」を意識してみよう 色の基、というと大抵どんなを見ても「色相」「彩度」「明度」という三つのパラメータがまず出てきます。「色相」「彩度」「明度」というのは 色相…その色が「赤」なのか「青」なのか「緑」なのか、その色の「色味」 彩度…色の「あざやかさ」。 明度…色の「明るさ」。黒がもっとも暗く(明度が低く)、白がもっとも明るい(明度が高い)。 なのですが、この三つのパラメータをもとに色を考えていても、いまいち「どの色に

  • ウノウラボ 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: Python開発環境を整えよう

    こんにちは!4月から入社したYet Another Sakatoku、酒徳千尋です。今まで同じクラス、同じ職場に別の「酒徳さん」がいるのを経験したことがないので不思議な気分です。 ウノウでは新規サービスの開発を担当することになったのですが、言語やフレームワークの選択は開発者に任されているということなので、PythonとDjangoの組み合わせで開発を始めることにしました。 PythonでのWeb開発は、日ではまだメジャーではないと思うので、このウノウラボでtipsや、ライブラリ・フレームワークの使い方を紹介できればと思います。 今回は、僕が入社してから最初に行ったPython開発環境のセットアップについて書いてみたいと思います。 virtual-pythonで開発環境をつくる 開発にあたって様々なライブラリをインストールする必要が出てきますが、通常のPythonのホームディレクトリ、例え

  • ウノウラボ Unoh Labs: 個人でWebサービスを作る時に一番大変なこと

    komagataです。 最近、個人でWebサービスを作る人が増えています。 僕も個人(2人)で※Plnetというしがないサービスを作っています。Plnetを作るにあたって、もう一人の作者t-kawaduと目標に掲げたのが、 「とにかくオープンすること。」 なんて低い目標だと驚かれるかもしれませんが、仕事で作るのとは違って個人でWebサービスを作る上で一番大変だったのは“やる気を継続させること”でした。やる気を継続させるためにやったことを紹介したいと思います。 (普通こういうことは成功しているサービスの作者が言うものですが・・・) 寝る前にドメインを取る よく飲みながらこれこれこういうサービスを作ったら便利なんじゃないか、なんて話をしますが実際に作ったためしがありませんでした。自分の口ばっかり具合にうんざりしていたので、寝て気が変わる前にドメインを取りました。 寝る前にレンタルサーバを借りる

  • ウノウラボ Unoh Labs: デザインセンスの無い人がwebサイトを作成する際に参考にしているサイト

    こんにちは satoです。 いくら面白くて、高機能なwebサイトを作成しても、デザインがダサいとサイトの魅力や開発意欲は半減です。 僕もまったくデザインセンスが全く無いのですが、新しい物を作成する際には以下のサイトを参考にしています。 (1)Color Scheme Generator 2 デザインの大まかな配色等を決めるのに使用することがあります。 真似するだけで、Coolなサイトに見えるような気がします。 (2)Color Palette Generator ロゴ等の画像を指定すると、その画像に合ったカラースキームを 教えてくれます。 (3)Web 2.0 Colour Palette 有名なサイトのカラースキームの一覧があります。 (4)pmob.co.uk CSSや画面分割などのさまざまなサンプルや解説があります。 (5)logopond さまざまなロゴのサンプルがありま

  • ウノウラボ Unoh Labs: 携帯サイト作成時の注意点(SoftBank編)

    はじめまして。今月ウノウの一員になりましたharukです。 前職では携帯サイトを作っていました。 その際につまづいた点を少しまとめてみたいと思います。 SoftBank編です。 技術資料はこちらにあります。 http://developers.softbankmobile.co.jp/dp/tool_dl/list/ [HTTP編 2.0.0 2006-10-01] ●locationでのリダイレクトの回数は制限されている (P144) C型は2回、それ以外は3回まで できる限り、連続でリダイレクトは行わないようにしましょう。 ●metaタグでContent-Typeを指定する (P190) 指定をしておかないと、UTF-8になってしまってUTF-8のリクエストが飛んできたりします。 [HTML編 2.0.0 2006-10-01] ●使用してはいけないクエリ名がある (P

  • ウノウラボ Unoh Labs: Global standard programming with GNU Autotools

    尾藤正人です。 UNIXのソフトウェアをインストールするときに、よくやるのが ./configure make make install という手順ですが、この configure スクリプトや Makefile を自動的に生成してくれるツールは GNU Autotools と呼ばれます。 GNU Autotools は使うとすごく便利なんだけど、結構知らない人が多そうだった(実際あまり知らなかった)ので、昨日の勉強会の時に紹介しました。せっかくなので資料を公開します。 プレゼン資料(OpenOffice) プレゼン資料(PowerPoint) bat.tar.gz bat-0.0.1.tar.gz プレゼン資料はOpenOfficeで作りました。念のためPowerPoint用に変換したのもおいておきます。 単に説明だけだと内容がよく分からないので簡単な例として bat コマンドを作

  • ウノウラボ Unoh Labs: チームリーダーが心掛けるべき10のポイント(テストチーム編)

    こんにちはー! やまもと@テスト番長です。 現在ウノウのテスト専任のスタッフは自分一人です。 いわば一人親方(建設業界用語)状態なのですが、 前職では総勢6人のテストチームを組織しておりました。 その頃心掛けていた、チームリーダー心得を書いてみたいと思います。 1.聞き上手になる 組織はコミュニケーションが命です。 話しにくいリーダーだと、必要な情報がうまく伝わりません。 気軽に相談を受ける・噂話が耳に入ってくるようでなくてはいけません。 そのためには聞き上手に徹すること。特に批判的な態度は控えることが重要です。 そんな相手には、誰も何も相談しないでしょう。 2.「おいしい仕事」を独り占めしない。 重要な判断や、やりがいのある仕事はなるべくメンバーに廻すようにします。 一見、重要な仕事はリーダーがこなすべき事のように見えますが、 その裏で他のメンバーがつまらない仕事

  • ウノウラボ Unoh Labs: Web系エンジニアの目から見たMac OS X

    hideです。 僕がMac OS Xを使うようになって1ヶ月と少しが経ちました。最初は戸惑うこともあったのですが、だいぶ手に馴染むようになってきました。最近、オープンソース関係のイベントに行くとMacユーザがかなりの割合でいる理由が分かったような気がします。感想としては、 UNIXの良い文化を取り入れている DockやDashbordの動きがいちいちカッコいい VMwareやcoLinuxを使わなくてもローカルに開発環境を作れる 今更ながら、BSDベースにしてMicrosoft製のOSとの違いを出していくというAppleの戦略には関心してしまいました。Web系エンジニアの方は、Macを次に購入するPCの候補に入れてみてはいかがでしょうか。 というわけで、あなたがいつかMacユーザになった際に便利なように、最初にインストールするべき10のアプリケーションを紹介します。 1.Firef

    h1r05h1
    h1r05h1 2006/09/13
  • ウノウラボ Unoh Labs: ユーザビリティ・ガイドライン

    sashaです。 naoya君が前回のエントリーで振ってくれたように、ジョエルテストの話から、ユーザビリティ・テストをどこまで行うかという話になりました。 私が今まで見たユーザビリティ系の記事の中には、追求したら悟りが開けそうな、限りなく奥深いものもありましたが、適度に深く、満遍なくカバーしているユーザビリティ・ガイドライン(原文)を見つけ、以降これを参考にしています。少し前に翻訳しましたので、今日はそれをご紹介いたします。 一般ユーザー向けのWebサービスでは、全部のチェック項目が該当するわけではありません。個人的には、各項目のスコアより、「スコアの説明」という欄を重視しています。現状では何が問題であり、どう解決するべきなのか、そういった思考のプロセスが、「ユーザーのことを思うこと」だと思うのです。 いま、ウノウではフォト蔵のデザイン見直しを行っております。私たちのデザインを省み、

  • 1