タグ

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

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

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

  • ウノウラボ Unoh Labs: ImageMagickでGIFアニメをリサイズ

    ウノウでは特に最近、積極的にエンジニアを採用しています。 採用ページをご覧になり興味のある方、ぜひご応募ください!! こんにちは、いそがわです。 PHPでアニメーションGIFを操作しようとすると、GDはアニメーションGIFをサポートしていないのでImageMagickを利用することになるかと思いますが、いかんせんImageMagickはメソッドの数がベラボーで分かりづらく、Imagickに至ってはまだまだドキュメントがスッカスカで、間違ってたりもするためなのか、意外とアニメーションGIFのリサイズ処理に混乱が見受けられるようなので、ご存知のかたには今更な話題ですが、あらためて。 ImageMagickでアニメーションGIFを“お手軽に”リサイズする基的な手順は以下のような感じです。 シーケンスのイメージの“結合”(coalesce) 各イメージを順次リサイズ 最適化(必要なら) このう

  • ウノウラボ Unoh Labs: yumのローカルミラーリポジトリを構築する方法

    naoya です。 フォト蔵などのサービスは、社内にあるサーバ群で運用しています。現在、サービスの規模が成長するにつれて、サーバの台数も約20台強くらいになってきました。 すべてのサーバには、Fedora Core 5がインストールされていて、すべてのサーバにまったく同じパッケージがインストールされています。パッケージの更新には、Fedora Core 5に付属しているyumを使ってすべてのサーバを定期的に更新をしているのですが、yum-fastestmirrorをインストールしている状態でもパッケージの更新に時間がかかるようなってきました。 そこで、一台のサーバにyumのローカルミラーリポジトリを構築してパッケージのダウンロード時間を減らしてみました。今日は、yumのローカルミラーリポジトリを構築する手順を紹介します。 1.必要なパッケージのインストール yum-utilsとcreate

  • ウノウラボ Unoh Labs: 開発に集中するための3つのWebアプリ徹底活用

    季節の変わり目にものの見事に風邪をひかされたyukiです。今日は普通にライフハックネタをお送りします。すでにみなさん実践されていることも多いかと思いますが、自分なりにちょっとアレンジしてあったり、微妙に使い方を変えていたりするので、何かひとつでも参考になればと思います。 スケジュール管理はGoogleカレンダーで一元化 まずひとつめ、身も蓋もないですがGoogleカレンダー 使いましょう。モバイルにアラートメールくれたり、早朝に当日の予定をメールで送ってくれたり、とても便利です。 ウノウではサイボウズを使ってスケジュール管理しているので、「Cybozu Office 6のカレンダーをGoogle Calendarで表示する 」を使って自宅サーバーへ取り込み、それをURL追加して利用しています。 また、Googleカレンダーはモバイルでも見られますが1週間表示固定だったりと色々と使い勝手

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

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

    kozo-ni
    kozo-ni 2008/09/27
  • ウノウラボ Unoh Labs: シェル(bash)スクリプトを書くときのTips

    尾藤正人(a.k.a BTO)です UNIXを使う時にはシェルスクリプトをよく使います。 ちょっとしたコマンドを実行するには、シェルスクリプトは非常に便利です。 今回はシェルスクリプトを書くときに覚えておいた方が便利なTipsを紹介します。 非互換性 ここで紹介するものは基的にbashで動作するものになります。 伝統的なBourne Shellでは動作しないことが多くあると思います。 しかしながら最近はbashがメインで使われることが多いので、"だいだいの環境で動くからおk"ぐらいのノリで使ってもらえればと思います。 $(...) コマンドを"$(", ")"で囲むと実行結果をコマンドラインに代入してくれます。 一見これは"`"(バッククオート)と同じに見えますが、"$()"にはネストができるという利点があります。 例えばシェルスクリプト自身の絶対パスを取得するのは次のようにで

  • ウノウラボ Unoh Labs: ircdをインストールしたのでメモ

    Keitaです。 個人的にはIRCをかなり使っていて、会社でも使えたらなーとおもってインストールしてみました。 とはいえ残念ながら僕ともう一人がちょこちょこ使ってるレベルですが、とりあえずインストールしてみたので、そのメモ書きです。 手元でさっくり動く個人のローカルのテスト環境が今Fedora8なのでそれで説明したいと思います。 まずインストールですが、Fedora8の環境でRPMが用意されていてさっくりうごくのが、ircd-hybridなのでこれで入れてしまいます。 sudo yum install ircd-hybrid とりあえずインストールので、初心者な僕は、立ち上げてログインしてみようと思いました。 sudo service ircd start 立ち上がったように見えますが、実際には起動してないように見えます。 とりあえずログを見てみます。 /var/log/ircd/ircd

    kozo-ni
    kozo-ni 2008/08/13
  • ウノウラボ Unoh Labs: 続・Emacsを自分で拡張するためのTips

    今年の春頃からトリプルディスプレイで仕事しているbokkoです。なんだか同僚の視線が気になりますが、あえて空気を読まないことにしています。 前に「EmacsLispを自分で拡張する際のTips」という記事を書きましたが、今回はその続きです。 EmacsLispは難しい? EmacsLisp(以下、elisp)は難しいという意見をたまに耳にしますが、elisp自体はそれほど難しいものではありません。ただ、関数名がバラバラでややこしかったり、マニュアルが巨大でどこを見ていいのかわからず、目的のことをするための関数が見つからない、といったようにユーザが難しいと感じるのはelispという言語そのものではなく、環境(OS、ウインドウ、バッファなど)とのインタフェースにあるため、結果的にEmacsLispは難しいと感じてしまうことが多いようです。 実際、elispでプログラミングしていて感じるのはウ

  • ウノウラボ Unoh Labs: Emacsを自分で拡張する際のTips

    ウノウでは少数派なEmacsユーザのbokkoです。 今回は自分でEmacsLisp(以下、elisp)を書いてEmacsを拡張する際のTipsについて紹介します。 拡張する際に気に留めておくこと Emacsを拡張する上で覚えておくべきなのはEmacs上で行える対話的な動作は「M-x 関数名」で実現できるということです。例えば、C-bはカーソルを1文字分左へ戻しますが、これは「M-x backward-char」とタイプすることと同じです。もしC-bが押しにくい(多分私だけです)のであれば、以下のようなelispを評価してキーバインドを変更することができます。 (global-set-key "\C-l" 'backward-char) Emacsではこのようなキーバインドに限らず、あらゆる操作をelispを使って変更したり、新たに定義することができます。関数名もしくはキーバインドの一方し

  • ウノウラボ Unoh Labs: Webブラウジングを快適にするAutoPagerize

    こんにちわ、山下です。 Software Design 10月号にサーバ監視ツールCactiについての記事を書きました。この号のNagios,Swatch,Wiiの記事もウノウ・エンジニアによるものですので、ぜひ興味のある方はご覧ください。 さて、今日はWebブラウジングを快適にするAutoPagerizeというツールを紹介します。AutoPagerizeはGreasemonkey用の拡張スクリプトで、今、自分のまわりで爆発的に流行っています。先日の出張 Shibuya.js 24でも作者の方が発表されていたのでご存じの方も多いのではないでしょうか。 念のために何をするツールかを説明しておくと、Googleなどの検索結果で次のページを表示するときに「次へ」ボタンを押さなくてもページ下部までスクロールすると、勝手に次のページを読み込んでその下に付け足してくれるものです。なかなか文章では伝わ

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

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

    kozo-ni
    kozo-ni 2008/05/22
  • ウノウラボ 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開発環境を整えよう

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

  • ウノウラボ Unoh Labs: Emacsでソースコード解析

    週末に眼鏡と財布が壊れて踏んだり蹴ったりなbokkoです。 最近、週末に他の人が書いたソースコードを解析したりして遊んでいるのですが、 今回はその際によく使っているツールについて紹介したいと思います。 moccur-edit.el これはソースコードを全体を検索する際によく使っています。 findとgrepをパイプでつなぐだけでも十分な気がしますが、 moccur-grep-findとmoccur-grep-gotoを組み合わせて使うと、 すぐさま該当箇所にジャンプできたりするので、楽々検索できます。 また、moccur-edit.elにはほかにも複数のファイルに散らばっているキーワードを 1つのバッファ上で編集できるなど非常に強力な機能が備わっているので、 Emacsを使うなら必ず入れておくのがオススメです。(tramp経由でmoccur-grep-findを実行するとすご

  • ウノウラボ Unoh Labs: ブラウザ上で翻訳ファイルが編集できるソフト「Pootle」

    komagataです。 アプリケーションを国際化する場合は大体gettextを使ってPOファイルを作って、MOファイルを作ってという感じですが、エンジニアでない人に使ってもらったり、複数の人と共同で翻訳作業をしたい場合に敷居の高さを感じてしまいます。 もっと手軽に翻訳作業が出来るソフトが無いかと思って探したところ、Pootleというソフトを知りました。 Pootleの特徴: ブラウザ上でPOファイルの編集。 CVS, Subversion, darcsといったバージョン管理ソフトとの連系。(updateやcommitができる) 複数プロジェクトの管理。 ブラウザ上でユーザー管理。 プロジェクト毎にユーザー単位の細かい権限管理。 単数系・複数系への対応。 Fuzzyへの対応。 Python製。 BitTorrentやFirefox, GNOME, KDE, OpenOffice.orgの一部

    kozo-ni
    kozo-ni 2007/09/29
  • ウノウラボ Unoh Labs: 5分でできるウェブサーバのセキュリティ向上施策

    こんにちは、naoya です。 先日、ウノウが公開しているサービスの中にいくつかの脆弱性が見つかったため、社内で「脆弱性発見大会」を開催しました。この大会は、二人一チームに分かれてウノウが公開している各サービスの脆弱性を見つけることを目的とした大会です。結果は、いくつか各サービスに脆弱性が見つかり、すぐに修正することができました。 僕のチームは、ウノウのホームページやラボブログなど細かいサービスを担当しました。その中で、いくつかのウェブサーバにセキュリティ上あまい設定がありました。 今日は、ウェブサーバのセキュリティ向上のための設定方法についてエントリします。なお、ウェブサーバはApache 2.2系を前提としています。 サーバ情報の表示しない ウェブサーバ(Apache)で、404などのエラーページを表示したとき、ヘッダやページの下にApacheやOSのバージョンが表示されます。こういっ

    kozo-ni
    kozo-ni 2007/08/26
  • ウノウラボ Unoh Labs: viを使おう

    ウノウでは指定のエディタやフレームワークというのはなく、サクラエディタ やvi、emacsなど個々に使いやすいエディタを使用しています。 vi派、emacs派に分かれて、いかに優れているか度々論争になりますが、ウノウではどうもvi派が優勢なようです。 さて、その多数派のviですが、初心者向けとは言いがたくとっつきにくい面があります。 かく言う私もずっとサクラエディタ派でしたが、今ではviの移動コマンドに慣れてしまいブラウザでもjやkをタイプしたりCtrl+bしたりしてます。 またカスタマイズすることでどんどん使いやすくなり、もはや手放せないモノになってきます。 そこで、私が使っているのはvimですが、使っているvimの設定を一部ご紹介しようと思います。 .vimrc set autoindent #オートインデント set number #行番号表示 set incsearch 

    kozo-ni
    kozo-ni 2007/08/19
  • ウノウラボ Unoh Labs: 職場をフリーアドレスにしてみませんか

    こんにちはmatsudaです。 ウノウの職場はフリーアドレス(座席の場所が決まっていない)を採用しています。最近では大手の企業も採用したり、また導入しようと考え中の企業も多いようです。 ただ、これまでの環境もあったり、“何を用意すればできるの?”と疑問をもったりと、なかなかフリーアドレスに踏み切れない会社もあるようですので、今回はウノウの環境(写真)もまじえ、フリーアドレスに最低限必要なものをご紹介します。 ●机とイス 机とイス posted by (C)フォト蔵 これがないと始まりません。職場のカラーを決める部分でもあるので、カフェっぽくしたいのであれば、それなりに。オフィスっぽくしたいのであればアスクルに。といったセンスが必要になってきます。 ●ノートPC ノートPC posted by (C)フォト蔵 ノートPCのみで仕事をします。デザイナーさんはマシンパワーの大きいデスク

    kozo-ni
    kozo-ni 2007/08/19
  • 1