タグ

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

  • ウノウラボ Unoh Labs: 快適なsshクライアント生活

    はじめまして、HIROKIです。 大規模コンテンツの開発に携わっていると数多くのサーバにsshでログインすることになります。その手間を軽減するために $HOME/.ssh/config を設定してみます。 sshコマンドを簡略化 例えば dev01.labs.unoh.netというサーバにsshでログインするのであれば、 $ ssh -i ~/.ssh/id_rsa.unoh hiroki@dev01.labs.unoh.net という感じのコマンドでログインしているかと思います。 これを $ ssh dev01 でログインできるように設定してみましょう。 Host dev01 User hiroki HostName dev01.labs.unoh.net IdentityFile ~/.ssh/id_rsa.unoh 秘密鍵を複数使いわけている人はIdentityFileを指定すると便

    poppen
    poppen 2010/03/16
  • ウノウラボ Unoh Labs: Tips for nginx

    何を今更と思うかもしれませんが、最近、英語圏に住んでいようがいまいが ソフトウェア開発で英語は必須だと改めて実感したbokkoです。 英語技術書を読んでいる 日人の開発者が作ったソフトウェアに付属している仕様書を読んだら英語で書かれていた 日人の開発者宛に英語でバグレポートを書いていることに気付く(フォーラム全体が英語だった!) 私も自分の書いたライブラリのドキュメントを書き始めましたが、 全部英語だったりします。(少し前に海外の方からライセンスに関する質問を「英語」で受けました) そして、今日紹介するnginxも開発元はロシアですが、英語のドキュメントが充実しています。 nginxとは nginxは高速軽量なWebサーバです。 基的なHTTPとしての機能に加えてSSLやFastCGIのサポート、 リバースプロキシ、バーチャルホスト、メールプロキシといった 便利な機能も

    poppen
    poppen 2010/03/08
  • ウノウラボ Unoh Labs: cacti の設定をコマンドラインから行う方法

    こんにちは。kyagi です。今回はサーバの監視/グラフ化ツール「cacti」の設定をコマンドラインから行う方法をお知らせいたします。 cacti とはサーバの監視/グラフ化ツールです。CPU使用率やロードアベレージ、その他様々な情報をカラフルなグラフで見ることができます。 設定は主にブラウザ上から行うのですが1台のサーバの設定でもSNMPの各項目を選択したり、グラフのデータ元であるデータクエリを設定したりなかなかの作業量になります。設定内容は全て把握していても 1 台につき、マウスでクリックする回数が多いので数十台の追加となると時間もかかりますし、指もかなり疲れます(また、ヒューマンエラーも入り込む余地が生まれます)。 実は cacti にもこういった設定をコマンドラインから行える php スクリプトが用意されています。標準ではこれらのスクリプトは /var/lib/cacti/cli/

    poppen
    poppen 2010/03/06
  • ウノウラボ Unoh Labs: 2009年版Python開発環境を整えよう

    なでしこの作者じゃない方のsakatokuです。 以前書いた「Python開発環境を整えよう」という記事からだいぶ時間が経ってしまったので、内容を更新したいなぁと思っていたのですが、ようやくその機会が来ました。 virtualenvで開発環境をつくる 開発環境をつくるにあたって次のような問題が生じると思います。 root権限がないためにインストールしたいライブラリが使えない 新しいライブラリをインストールしたり、既存のライブラリをアップグレードすることで、既に動いているアプリケーションを壊したくない 複数のバージョンのPythonを使って開発、テストを行いたい 自作したPythonパッケージのインストールのテストを行いたい 以前の記事ではvirtual-pythonという解決策を紹介しましたが、現在ではvirtualenvというツールが広く使われるようになってきています。 virtuale

  • ウノウラボ Unoh Labs: 英語が出来るように思わせてみる

    はじめまして、去年末に入社しましたkayです。 エンジニアとしてまだまだな私ですので、少し英語のお話でもしようと思います。 私自身、アメリカの大学に3年ほど通っており、ついこの間卒業したばかりなのですが、アメリカにいた頃はスラングだということすら知らずに使っていた英語もたくさんありました。 スラングというのはもともAfrican-Americanが使っている言葉として知られていたと思いますが、今は主に若者の言葉や外国の英語の教科書には載っていない用法のことを指しているのではないかと個人的に思っています。 そして、スラングはアメリカ人たちが楽するために使用されるものが多く、仕組みを理解することで外国人でもだいぶ楽して英語を扱える+英語が得意な人だと思わせられるようになります。 ただ、初心者がスラングばかり(特に文法的に間違っている文)を使っているとちゃんとした英語が身に付かない場合も

  • ウノウラボ Unoh Labs: PubSubHubbubとは

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

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

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

  • ウノウラボ Unoh Labs: やってみようBDD on Sinatra

    おはようございます。 うちだです。 みなさんテストコード書いてますか? 私はテストと言われると、どうもやる気がおこりません。 そこでBDD! 今回はBDD初心者の私が、やってみた過程を綴ります。ツッコミ大歓迎 BDDとは? Behavior Driven Development 振舞駆動開発 テスト駆動開発ではテストのためにコードを書く 振舞駆動開発では振舞(仕様)のためにコードを書く 結果的にやる事はほぼ一緒 言い方でモチベーションがかなり変わる スペック!スペック! 各言語のBDDフレームワーク Ruby RSpec .NET NSpec Java JBehave PHP PHPSpec 10ステップでやってみるBDD 1. インストール $ sudo gem install rspec 2. スペックを書く # spec/hello_spec.rb require 'hell

  • ウノウラボ Unoh Labs: 5分で分かるHaml

    先日、まちつく!が正式リリースになりました。よろしければ是非携帯でアクセスして遊んでみてください。 こんにちは、ryosukeです。 ラボブログの前々回のエントリーで ruby で実装された web application framework の Sinatra が紹介されていたのですが、私もあまりのお手頃感に触発されて少しさわってみました。 その時にふとモデルやビューにいつもは使わない物を使ってみようと思い立ち、 Sequel と Haml を選んでみたのですが、 Haml の構文が見た目に反して(?)思いの他わかりやすかったので、今更感もありますが私同様 erb 以外使おうとも思わなかった人も少なくないのでは無いかと思いご紹介させて頂こうと思います。 Haml は XHTML Abstraction Markup Language の略で...という所から説明するのが筋なのですが、あっ

    poppen
    poppen 2009/05/27
  • ウノウラボ Unoh Labs: シェルの仕組み(前編)

    尾藤正人(a.k.a BTO)です 社内勉強会でシェルの仕組みというのをやってみましたので、資料を公開します。 シェルはUNIXを使う上で、必ず使用される非常に身近なツールです。 毎日使用しているツールにも関わらず、具体的にどのような動作をしているのか知らない方も多いのではないのでしょうか。 シェルの使い方に関する情報はたくさんありますが、シェルの実装についての情報はほとんどないなと思ってシェルを題材に取り上げました。 シェルにはUNIXプログラミングのエッセンスがぎっしりつまっています。 シェルの内部の仕組みが分かるようになると、UNIXプログラミングが分かるようになると言っても過言ではないのかもしれません。 シェルの仕組み(前編) - Upload a Document to Scribd 社内勉強会中にustreamで動画を流していたのですが、動画を保存するのを忘れてしまいました。

  • ウノウラボ Unoh Labs: Macでのスクリーンショットの撮り方まとめ

    yamaokaです。 MacMac OS X)でスクリーンショットを撮る方法についてまとめてみます。いつも忘れてしまうので個人的な備忘録だったりしますが、同じことで悩んでしまう方にとって少しでも参考になれば幸いです。 「Command + Shift + 3」を押下 単純に画面全体のキャプチャ画像が必要な場合に使います。ショートカットキーを押した瞬間、デスクトップに画面全体のキャプチャ画像が保存されます(PNG形式)。 「Command + Shift + 4」を押下 マウスカーソルが十字(ヘアライン)に変わり、画面上の範囲を選択できるようになります。ドラッグして範囲選択した上でマウスのボタンを離すと、選択範囲のキャプチャ画像がデスクトップに保存されます(PNG形式)。 「Command + Shift + 4」を押下、さらに「Space」を押下 マウスカーソルがカメラの形に変わり、その

  • ウノウラボ Unoh Labs: MacPorts の使い方と開発方法について

    こんにちは、naoya です。 先日、社内の勉強会で MacPorts の使い方から Ports の追加方法まで幅広く紹介しました。MacPorts は、FreeBSD の ports が元になっていると聞いていましたが、バイナリバッケージまで作れるとは知りませんでした。 詳しくは、資料を参照してください。 なお、資料の中で Ports で追加している bat というプログラムは、Global standard programming with GNU Autotoolsで紹介されているプログラムです。

  • ウノウラボ Unoh Labs: 脆弱性検知ツールratproxyをCygwin上で動かしてみました

    こんにちは!やまもと@テスト番長です。 先日Googleからプロキシ型の脆弱性発見ツール「ratproxy」が公開されました。 これは触らないと!ということでCygwin上で動かしてみました。 ratproxy http://code.google.com/p/ratproxy/ cc1:error: unrecognized command line option "-Wno-pointer-sign" ので、 Makefileの23行目 CFLAGS = -Wall -O3 -Wno-pointer-sign -D_GNU_SOURCE のところから-Wno-pointer-sign を消して再チャレンジします。 すると今度はこの警告が出ます。 *** WARNING: flare-dist/flare binary is not operational. *** Plea

  • ウノウラボ Unoh Labs: 技術系勉強会が楽しくなるかもしれないこと

    Keitaです。 最近、世の中では勉強会に参加される方も多くて僕個人も勉強会に参加させてもらったり、開催のお手伝いをさせてもらうことが多くなりました。 勉強会にもいろいろあって、もはやカンファレンスじゃん?みたいなのもあったりするのですが、個人的には小規模なものが比較的好きです。 そこで、僕が技術系の勉強会に参加するにあたって、よりその勉強会を楽しむために何をしているかをさらしてみようかと思います。 ノートパソコンを持っていく ノートパソコンは技術系勉強会にいくとほとんどの人が持っていっています。 ちょこっと話している内容を試したり、ustで放送したり(ちゃんと許可はとりましょう)いろいろできて便利です。場合よっては電源や、延長コードとかももってくるといいでしょう。 インターネット接続環境を確保する インターネットに接続していたほうが何かと便利です。たとえば、発表中にわからない単語があ

    poppen
    poppen 2008/05/30
  • ウノウラボ Unoh Labs: いまさらコマンドラインの便利さを主張してみる

    尾藤正人(a.k.a BTO)です 僕の偏見かもしれませんが、Webプログラマの方の多くはコマンドラインをうまく活用できてないように感じます。 コマンドラインを使いこなすには最初にある程度の勉強が必要で、その敷居の高さのせいであまり便利さが感じられないのかも。 そこで、今更ながらコマンドラインの便利さを高らかに主張してみます。 ワイルドカード ワイルドカードという特殊文字を使うと特定パターンのファイル名を簡単にしてできます。 これは知ってる人も多いので、詳細は割愛。 ワイルドカードでうまくいかない場合は後述するfindコマンドを使います。 zshのワイルドカード zshのワイルドカードを使うと、ちょっとしたfindコマンドのようなファイル名のマッチができます。 簡単に紹介すると次のようなことができます。 echo **/foo # 再帰的に 'foo' にマッチ echo *(/)

    poppen
    poppen 2008/05/21
  • ウノウラボ Unoh Labs: Mercurialでバージョン管理

    stoplightで最大化したターミナル上でzshとscreenとEmacsを立ち上げ、 明朝体フォントでプログラミングするbokkoです。 今回はバージョン管理システムの1つであるMercurialについて紹介します。 ウノウではSubversionとTracを組み合わせて開発を行っていますが、 僕個人では今年の春ぐらいからEmacsやzsh、screenなどの各種設定ファイルをMercurialでバージョン管理しています。 Mercurialとは? Mercurialは分散型のバージョン管理システムです。 これに対して、CVSやSubversion(以下SVN)は集中型のバージョン管理システムにあたります。 分散型と聞くと難しそうなイメージがわくかもしれませんが、 CVSやSVNに比べてると、より手軽にバージョン管理を行うことができるというのが、 Mercurialに対する僕の印象です

  • ウノウラボ Unoh Labs: PythonのORMを研究してみる(1)

    Pythonで利用できるORMをざっと列挙してみると、次のようなものがあげられます。 SQLAlchemy SQLObject Django Storm Mother Dejavu GeniuSQL 実際に利用するとなると、ドキュメントの充実度とユーザ数でSQLAlchemyに一日の長があり、すでにPythonORMの標準になったという感があります。 また、Djangoアプリケーションという点に限れば、Djangoに含まれるORM(django.db)を使うということになるでしょう。 しかしながら、必要とする機能や実行速度、生成するSQLAPIの好みといった点で、SQLAlchemyとDjango以外のライブラリを選択することもありうるでしょう。 実行速度という観点からみると、少し古い記事になりますが、下記のURLの記事が参考になります。 Storm,SQLAlchemy,GeniuS

  • ウノウラボ Unoh Labs: プロセスの監視を行う デーモン monit

    こんにちは satoです。 monitは プロセスの監視を行うデーモンです。 条件とそれに伴うアクションを指定することができます。 条件とは例えば以下のようなものがあります プロセスが起動していなかったら 特定のプロセスのメモリの使用量が あるサイズを超えたら 特定のプロセスのCPUの使用率が 50%を超えている状態が 10分続いたら 特定のポートに接続できなくなったら など アクションには以下のような物があります 起動、再起動する アラートメールを送信する ユーザスクリプトを実行する など これらを組み合わせて、プロセスの監視を行います。とくにユーザが作成したプログラムの監視などに効果を発揮します。インストールは RedHat系なら yum install monit で入ります。(CentOSや商用のRedHatはrpmforgeをリポジトリとして追加する必要があります) 主な設定ファ

  • ウノウラボ Unoh Labs: システム自動管理ツールPuppetを使ってみた

    miyakeです。今日は、近頃話題のオープンソースなシステム自動管理ツール「Puppet」の小ネタをご紹介します。 今回使用した環境ですが、とりあえず試してみようという感じで、CentOS5.0(x86_64)にDAGリポジトリから0.22.4をインストールしています。現時点でのstable版は0.23.2なのでやや古く、設定や機能も変わっているため、エントリの内容が合致しない場合もあるかと思いますがご容赦ください。 インストールや基的な設定は、gihyo.jpにてペパボCTOのmizzyさんが執筆されている連載が大変詳しいので、そちらをご覧ください。 連載:オープンソースなシステム自動管理ツール Puppet|gihyo.jp puppet wiki (パペウィキ) Puppet公式 エントリでは、そうして試したみたところ僕自身が引っ掛かった部分などをご紹介します。 単にpuppe

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

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