タグ

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

  • ウノウラボ Unoh Labs: jQueryのパフォーマンス最適化に関するTips

    こんにちは、山下です。 今回は、jQueryのパフォーマンス最適化について説明したいと思います。 軽量と言われているjQueryですが、いろいろな機能を実現しようとして複数のプラグインを導入すると、だんだんと動作が重くなってきます。サーバ側をいくらチューニングしたところで、ブラウザ側での処理に時間がかかっていたら、せっかく訪問してくれたユーザに重いサイトとして認識されてしまいます。以下に、ウノウで運営している「映画生活」で実際に行っている方法を紹介します。 1. Packed版ではなくMinified版を使う jQuery1.1まではPacked版のみだったのですが、jQuery1.2からMinified版もダウンロードできるようになりました。Packed版よりもMinified版を使うことをお勧めします。どう違うのかというと、Packed版はファイルサイズを極限まで削減するために静的辞

    gotin
    gotin 2008/03/05
  • ウノウラボ Unoh Labs: FFmpegで変換した3GPP動画をNTTドコモiモーションのストリーミング再生に対応させる (for Linux)

    isogawaです。 さまざまな形式の動画を携帯電話向けに変換して配信するサービスでは、変換処理をFFmpegで行っている例が多いと思われます。しかしFFmpegが出力する3GPPファイルは、NTTドコモiモーションの、ストリーミング(プログレッシブダウンロード)方式での再生はできません。QuickTime Proや携帯動画変換君で作成した動画はストリーミング再生も可能ですが、変換処理をLinux上で行っている場合には、これらを利用するわけにもいきません(できないことはないですが)。ではどうしたらいいでしょう?という小ネタ。 なにが問題なのか +--ftyp +--free +--mdat +--moov +--mvhd +--trak | +--tkhd | +--mdia +--trak | +--tkhd | +--mdia +--udta 3GPPのファイルフォーマットについては、

    gotin
    gotin 2007/11/11
  • ウノウラボ Unoh Labs: daemonsで簡単デーモン

    komagataです。 mongrelを入れるときに一緒に入るdaemonsというライブラリが気になったので調べてみました。 daemonsは大まかに、サーバープログラムをstart/stop/restartなどのおなじみのやり方で操作できるようにするラッパーの機能とプログラム中で使って自分のプロセスをデーモンにする機能があるそうです。 引数を出力し続けるプログラムをデーモンにしてみたいと思います。 puts_arg.rb: #!/usr/bin/env ruby loop do puts ARGV.inspect sleep(1) end 実行結果。 $ ruby puts_arg.rb a b c ["a", "b", "c"] ["a", "b", "c"] ["a", "b", "c"] (略) これにdaemonsを使ってラッパーを用意します。 puts_arg_control.

    gotin
    gotin 2007/10/25
  • ウノウラボ Unoh Labs: Rubyでネットワークサーバを書く

    尾藤正人(a.k.a BTO)です 先日公開したブラウザだけでネットワーク対戦ゲームができるサイト「プラッシュ」では、 フラッシュとネットワーク通信を行う専用のXMLSocketサーバを開発しました。 このXMLSocketサーバはrubyで書かれています。 LLでデーモンを書く需要が、それほどあるとは思えませんが、デーモンを書く際に気をつけた点、工夫した点をまとめてみたいと思います。 なぜrubyを選んだのか rubyを選んだのには理由は2つあります。 Railsを採用した LLで早く開発をしたかった 僕も昨今のRailsブームにのって個人的にRailsを使い始めていました。 プラッシュは完全に新規プロジェクトで環境を選択する事ができたので、迷わずRailsを選択しました。 では、なぜCのようなコンパイル言語で書かなかったのか。 速く動くものを開発するよりも、早く開発をしたかったからです

    gotin
    gotin 2007/10/03
  • ウノウラボ Unoh Labs: dRuby/Rinda/Ringでジュークボックス

    komagataです。 最近社内ではiTunes専用のPCを用意して社内BGMを流しています。 「コマンドラインから曲のリクエストを出せないかな」と思って、勉強がてらRubyを使ってジュークボックスサーバ、ジュークボックスクライアントを作ってみました。 必要な機能は、 簡単に曲のリクエストを出せるクライアント 複数のクライアントから曲のリクエストを受付け、保持し、順次再生するサーバ クライアントが自動的にサーバを見つけるためのネームサーバ などで、考えてみるとかなり面倒臭そうです。iTunesはDAAP(Digital Audio Access Protocol)というプロトコルで音楽をやり取りしたり、mDNS(Multicast Domain Name Service)というネームサービスを使ってサーバを見つけたりしているそうです。 今回は、dRubyを使って曲をやり取りし、Rindaの

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

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

    gotin
    gotin 2007/07/02
  • ウノウラボ Unoh Labs: RackでWebアプリのWebサーバー依存を無くす

    rack-logo posted by (C)komagata komagataです。 仕事でも使う必要が出てきたのでRubyの勉強をしています。WebアプリケーションでRubyを使おうとしていきなり躓いたのがApache、WEBrick、Mongrel等、実行環境毎の設定やAPIの違いです。 Rubyを普段使っている人には常識過ぎるのか情報が少なく、FastCGIで単に「Hello, World」を表示させるのにも一苦労でした。(Railsでは簡単に動くのが悔しい) そんな実行環境毎のAPIの差を吸収してくれるRackというライブラリを知ったので試してみました。 RackはRuby版WSGIと呼ばれているそうです。WSGIとはWeb Server Gateway Interfaceの略でWeb ServerとWeb Applicationの間のInterfaceを定めたPython界の仕

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

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

  • ウノウラボ Unoh Labs: エラスティック・レイアウトのご紹介

    yamaokaです。 エラスティック・レイアウトというwebサイトのレイアウト手法をご存知でしょうか?  「エラスティック(elastic)」とは、ゴムのように弾力性がある状態のことです。 言い換えると「伸び縮みするレイアウト」になるでしょうか。 webサイトの代表的なレイアウト手法として、次の2つが挙げられるかと思います。 固定幅レイアウト リキッド・レイアウト 固定幅レイアウト 固定幅レイアウトでは、 コンテンツを格納するボックスの幅を以下のように絶対値で指定します。 div#container { width: 800px; } 固定幅レイアウトの場合、ウィンドウや文字のサイズが変更されてもレイアウトの枠は変わりません。 したがって、ウィンドウを大きくすると表示されるエリアが小さくなってしまったり、 文字のサイズを変更すると外枠が変わらないので読みづらくなってしまったりします。 リキ

  • ウノウラボ Unoh Labs: コマンドラインで作業する上で知っておくといいテクニック

    ちょうど入社から半年で有給発生しつつも日が退職日になりましたjokagiです.もう花見の季節ですね!! ちょうどラボブログの当番のようで,退職記念にjokagiが普段の開発で使っているテクニックとは呼ぶにはおこがましい小手先の技をつらつら書いてみたいと思います. これを覚えればjokagi程度には仕事をこなせるかも!? コマンドの使い方を覚えよう 基的なコマンドの使い方やコンソールなどの使い方は書籍やいろんなサイトで覚えてください. ここでは一応一通りなんとなくでもコマンドを扱える人がさらに覚えるといいかもしれないことだけを記述します. -03-20T23:59+0900"> また,これからの解説はシェルはbash,その他のコマンドの多くはGNU Toolsと呼ばれることのあるGNU findやcoreutilsなどを用いた環境でのオプション例や実行例になります. echo いわゆる指

  • ウノウラボ Unoh Labs: はじめてでも簡単、Mac OSX用ウィジェットの作り方

    Mac OS X 10.4(Tiger)から追加された機能にDashboardというものがあります(右図)。F12キーを押すと現在のデスクトップ画面上に重ねてウィジェットというユーティリティが表示されます。電卓やカレンダー、天気予報など、ちょっと使いたい時にいちいちアプリケーションを起動することなく、これらの機能が利用できるので、とても使い勝手がよいです。 このウィジェットですが、中身はHTMLCSSJavaScriptといったお馴染みの技術でできていて、実は簡単に作ることができます。また先日にベータ版ではありますが、Appleからウィジェット開発環境のDashcodeというソフトウェアが公開されました。次期Mac OS XのLeopardにバンドルされる予定のものなのですが、このソフトを使うと1行もプログラムを記述することなしにウィジェットを作成することができます。 Dashco

    gotin
    gotin 2007/01/10
    dashboard widgetの簡単な作り方
  • 1