タグ

Perlとperlに関するmasasuzのブックマーク (348)

  • NVD - CVE-2011-0761

    Official websites use .gov A .gov website belongs to an official government organization in the United States. Secure .gov websites use HTTPS A lock () or https:// means you've safely connected to the .gov website. Share sensitive information only on official, secure websites.

  • 運用におけるエラーログの重要性もしくはLog::Minimalってモジュール書いた話 - blog.nomadscafe.jp

    追記 CPANにアップしました http://search.cpan.org/dist/Log-Minimal/ /追記 アプリケーションサーバでエラーが起きていたり、レスポンスが遅かったりする場合に、Operation Engineer(インフラエンジニア)がまず見るのは、エラーログです。エラーログにでているメッセージを手がかりに原因を探ります。 サーバでエラーが起きている時には、データベースに接続ができなかったり、外部のAPIからレスポンスが得られない、またプログラムのBugが原因となっている場合もあるでしょう。またエラーにならなくても、複数台あるデータベースのスレーブサーバうち一台が落ちて接続をretryしていたり、APIのレスポンスが遅い際にはサーバ全体のパフォーマンスが低下します。 エラーログに障害の原因を探る情報があれば、Operation Engineerは素早く対応を開始で

  • dotcloud で Amon2 をつかう! - tokuhirom's blog

    Perl5 の PSGI アプリケーションが死ぬほど簡単につかえる dotcloud の beta 版がリリースされ、一部の Perl monger に invitation がばらまかれているとともに、id:miyagawa さんがdotcloud に join したというニュースもあり、ゴールデンウィークまっただなかの日Perl Mongers のあいだでは空前のコンフィブームとなっています。 というわけで、DotCloud で hello world をやる方法。 sudo easy_install dotcloud dotcloud create tokuhirom dotcloud deploy --type perl tokuhirom.hello mkdir hello cd hello echo "sub {[ 200, [ 'Content-Type' => 'te

  • Perl5 用の Rake っぽいのできたよー - tokuhirom's blog

    http://frepan.org/~tokuhirom/Daiku-0.01/ Rake みたいなの、Perl にも欲しいね、って5年ぐらい前からおもってたけどいいのができたって噂をきかないので自分でかいた。 #! perl use Daiku; use autodie ':all'; task 'all' => 'foo'; file 'foo' => 'foo.o' => sub { system "gcc -c foo foo.o"; }; rule '.o' => '.c' => sub { system "gcc -c foo.o foo.c"; }; build shift @ARGV || 'all'; こういうかんじでつかえる。簡単でしょ。 以下設計のメモ。 基的には Rake とインターフェイスをあわせめでつくってる。巨人の肩に云々。 DSL を DSL としてゴリゴ

  • わいえむねっと - 2011/04/03

    オライリー自身が提供してくれていたので利用してみました。 スクリプト 例によって Perl です。 use strict; use warnings; use Crypt::RC4; use Digest::MD5; use Encode; use JSON; use LWP::UserAgent; undef $/; my $pass = ''; my $url = 'http://www.oreilly.co.jp/books/%s/biblio.json'; my $ua = LWP::UserAgent->new; while(<*.pdf>) { next unless /-(\d{13})/; my $bookinfo = get_bookinfo($1); open my $in, $_ or die; open my $out, '>', $bookinfo->{title

  • わいえむねっと - 2011/03/30

    オライリーのebookから余白を除去して、Kindleで快適に読む方法 - ただのにっき(2011-03-28) http://sho.tdiary​.net/20110328.h​tml#p01 電子書籍端末向けにPDFを加工するには、テキストデータを抽出する方法や、PDFをそのまま加工(crop)する方法があるが、オライリーのPDFはDRMがかかっているのでいずれもうまくいかないようだ。 歯を磨きながら Ebook のバイナリをぼけと眺めてみたのですが、CropBox の書き換えは特に問題なさそうな気がしたので試してみました。 スクリプト 例によって Perl で。 use strict; use warnings; # left, bottom, right, top my @offset = (20, 20, -20, -20); while(<*.pdf>) { next if

  • GNU Parallelがすごすぎて生きるのがつらい

    皆さん今日もたくさんのサーバを相手にされていることかと思いますが、いくつかのサーバにアクセスして 1 秒間の統計情報(例えばvmstat 1 2)を集めてパッと表示したい時ってどうやってますかね?shell script を学びはじめたばっかりの僕はこんな感じで書いてました。 $ for i in host1 host2 host3; do ssh $i "vmstat 1 2 | tail -1"; done 0 0 0 329004 210836 14275360 0 0 0 2424 1410 1828 0 0 100 0 0 0 0 0 3716112 587704 25921684 0 0 0 488 1643 2026 0 0 100 0 0 1 0 0 555440 265560 14015548 0 0 0 4204 1534 2392 1 0 99 0 0 vmstatと

    GNU Parallelがすごすぎて生きるのがつらい
  • CountDown LastFM Rankingというサービスをリリースしました。 - 車輪を再発明 / koba04の日記

    CountDown LastFM Rankingというサービスをリリースしま(した|す)。 http://koba04.com/cdlm/track/jp 正直α版にもいかないくらいのクオリティなのですが、クオリティが上がるのを待っていたらいつまで経ってもリリース出来ないし、リリースすることでちゃんと改善していこうという意識が高まるかなと思いリリースすることにしました。(君のラジオに触発されたこともあり) なにそれ? Last.FMでは国ごとに再生された上位50位のランキングを毎週APIで公開しているので、その上位50位の曲をYouTubeから取ってきてカウントダウンしながら連続再生するというウェブアプリです。 今のところ自分が見たい日アメリカのイギリスのランキングだけを取得してて、それぞれ下記で公開しています。 http://koba04.com/cdlm/track/jp http

    CountDown LastFM Rankingというサービスをリリースしました。 - 車輪を再発明 / koba04の日記
  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
  • NetAddr-IP-4.079 - Manages IPv4 and IPv6 addresses and subnets - metacpan.org

  • Net::IP

    Net::IP - Perl extension for manipulating IPv4/IPv6 addresses SYNOPSIS use Net::IP; my $ip = new Net::IP ('193.0.1/24') or die (Net::IP::Error()); print ("IP : ".$ip->ip()."\n"); print ("Sho : ".$ip->short()."\n"); print ("Bin : ".$ip->binip()."\n"); print ("Int : ".$ip->intip()."\n"); print ("Mask: ".$ip->mask()."\n"); print ("Last: ".$ip->last_ip()."\n"); print ("Len : ".$ip->prefixlen()."\n");

    Net::IP
  • 【Oct . 13, 14, 15】YAPC::Asia Tokyo 2011 "Evolution" - Japan Perl Association運営ブログ

    【Oct . 13, 14, 15】YAPC::Asia Tokyo 2011 "Evolution" のお知らせ | Announcing YAPC::Asia Tokyo 2011 "Evolution" ( English announcement follows Japanese ) こんにちは、櫛井です。 去年に引き続き、YAPC::Asiaを担当させていただくことになりました。 周到に仕組まれた罠により、気付いたらイベントをやることになった 前回とは違い、JPAの理事会に呼ばれたと思ったら 「次回のYAPC::Asiaの草案よろぴく」とカジュアルに言われたので 今年も頑張ろうと思います。皆様の協力あってのYAPC::Asiaです。 宜しくお願いいたします。 ■テーマと方向性について 今回のテーマは「Evolution」、Perlの先端を行く人をメインにすえたいと

  • perl - 「優れたPerlプログラマを見分ける27の質問」回答例 : 404 Blog Not Found

    2011年03月01日18:00 カテゴリLightweight Languages perl - 「優れたPerlプログラマを見分ける27の質問」回答例 これは良問。 How to Identify a Good Perl Programmer - Modern Perl Books, a Modern Perl Blog 「優れたPerlプログラマを見分ける27の質問」の日語訳 - Islands in the byte stream というわけで回答例。あくまでも解答例。There's more than one way to do it はここでも例外ではないので。 Perl5において変数のシジルが示すものは何か 変数の基型。$scalar、@array、%hash、&code、*typeglob。&codeの&は省略可能かつ省略推奨。これ以外の型はオブジェクトを作ることで作れ

    perl - 「優れたPerlプログラマを見分ける27の質問」回答例 : 404 Blog Not Found
    masasuz
    masasuz 2011/03/02
  • リソースモニタリングツール「CloudForecast」入門 - As a Futurist...

    kazeburo さんが開発をされているサーバリソースの可視化ツール「CloudForecast」ですが、個人的に使ってみていてとても使いやすいなと思っています。もっと使ってくれる人が増えるといいなと思い、自重せずに入門エントリを書いてみました。 CloudForecast って何? そもそも何なの?という話ですが、CloudForecast とはリソースのグラフ作成ツールとして有名な「RRDTool」の薄いラッパーとして作られています。記述言語は Perl ですので、Perl と RRDTool の使い方が大体分かっている人にとっては導入さえしてしまえばかなりかゆいところまで手が届く=カスタマイズが簡単かつ自由自在なツールだと思います。とりあえずのイントロとしては kazeburo さんの YAPC::Asia 2010 でのこちらのスライドをご覧頂ければと思います。 RRDTool っ

    リソースモニタリングツール「CloudForecast」入門 - As a Futurist...
  • Devel::NYTProfからコールグラフを生成する - Shohei Yoshida's Diary

    ソースコードを追っかけるときにコールグラフが分かっていると便利です。 時間が十分あるのであれば、自分でじっくり追いかけるというのもありかと 思うんですけど、事前にコールフローが分かっている方が、確実に追いかけることができます。 以前作成した Google URL Shortener APIを使う - syohex’s diary のコールグラフを見てみようと思います。 準備 KCachegrindをインストールします。Qtが使われているので、Ubuntuなんかの GNOMEが使用されているディストリだと大量のライブラリが入りますけど、 そこは我慢ということでインストールしてください。 % sudo aptitude install kcachegrind当たり前ですが、Devel::NYTProfもインストールします。 % cpanm Devel::NYTProf プロファイル結果の出力

    Devel::NYTProfからコールグラフを生成する - Shohei Yoshida's Diary
  • Should we avoid C implementation? - Islands in the byte stream

    先日のPycon mini JPでは、Tenjinのトークが好評だったようでした*1。 How to Create a Highspeed Template Engine in Python このスライドの中で述べられているのは以下のような事です。 Web Appの実行時間の中でViewコンポーネントが占める割合は意外と大きい テンプレートエンジンをCで実装する必要はない 様々な言語*2のテンプレートエンジンの実行速度を比較してみると、Perlが最速だった Djangoのテンプレートエンジンは遅い このスライド、見せ方が非常にうまいので一見なるほどという感じがしますが、この二番目の「テンプレートエンジンをCで実装する必要はない」という結論には疑問があります。 このスライドの前半にあるような最適化手法は私もずいぶん熱心にやったものです。しかし結局のところスクリプト言語はCには敵わないので、

    Should we avoid C implementation? - Islands in the byte stream
  • Why Xslate is so Fast - Islands in the byte stream (legacy)

    (There is the Japanese version bellow) There are reasons why Xslate so fast, so this article explains them, which will be added to the Xslate document. Taking precompiling style Template engines which precompile templates are always faster than line-by-line interpreters. Almost all the engines implemented in scripting languages (e.g. Template-Toolkit or Text::MicroTemplate) takes precompiling styl

    Why Xslate is so Fast - Islands in the byte stream (legacy)
  • Perl のモジュールローダー選定委員会 - tokuhirom's blog

    UNIVERSAL::require$module->require() or die $@ ってかけるのが cool という話ではあるのだが、UNIVERSAL をつかうのに抵抗があるかもしれない。 そして、Module::Load にたいする優位性はとくにないので、最近はあまりつかってない。 Class::Load上記2つにくらべると、機能がおおい。これは Moose から派生したパッケージで、Moose の is_class_loaded 相当の機能もそなえている。 Moose 由来ということで、%INC の中にはいっていなくても、package がすでにつかわれていれば、ファイルをよみにいかないという点がすぐれている。具体的には package Foo; sub bar { } package main; use Class::Load qw/load_class/; load_c

  • 第39回 DBIx::Skinny:DBIx::Classに不満を感じたら | gihyo.jp

    DBIC以降の選択肢 今回はデータベース話の締めくくりとして、DBIx::Class以降に登場したいくつかの選択肢についてざっくりまとめておきます。これらはいずれも若く、DBICに比べてユーザ数も少ないためドキュメントなどの整備が遅れている部分もありますが、今回とりあげるものの多くは日人がつくっているものですから、英語圏で開発が進められているものより疑問や要望は送りやすいはず。気になることがあったらぜひそれぞれの作者氏に伝えていただければと思います。 DBIx::Skinny nekokakこと小林篤氏のDBIx::Skinnyは、今回紹介するもののなかではもっとも実績豊富なものといってよいでしょう。開発の動機については氏のブログによくまとまっていますが、標準で用意されているCRUDメソッドを使うときだけでなく、速度を稼ぐために生のSQLを書いたときでもinflateなどの補助機能を使え

    第39回 DBIx::Skinny:DBIx::Classに不満を感じたら | gihyo.jp
  • Perl Hackers Hub:第5回 Xslate 次世代テンプレートエンジン(1)|gihyo.jp … 技術評論社

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回は藤吾郎さんで、テーマはXslateです。 はじめに PerlとWebアプリケーションとの相性の良さは周知のとおりです。そして、Web開発にはテンプレートエンジンが欠かせません。テンプレートエンジンは、プレゼンテーションとロジックを分離し、デザイナとプログラマの分業を可能にし、MVC(Model-View-Controller)のV(View)を担う重要な要素です。 今回は、そんなテンプレートエンジンンの一つであり、筆者が開発しているXslateを紹介します。Xslateは2010年4月に開発を始めた新しいモジュールですが、速度・安定性・機能ともに高い水準になってきました。また、牧大輔氏や松野徳大氏をはじめとしたShibuya.pmの面々に多くのアドバイスをいただき、既存のテンプレートエンジンを置き換えられるくらい実用的に

    Perl Hackers Hub:第5回 Xslate 次世代テンプレートエンジン(1)|gihyo.jp … 技術評論社