タグ

ブックマーク / dankogai.livedoor.blog (21)

  • perl - でWindows用のzipファイルをUnixで作る : 404 Blog Not Found

    2010年09月06日23:00 カテゴリLightweight Languages perl - でWindows用のzipファイルをUnixで作る 何度目の車輪の再発明かわからないけど、見つからなかったものは見つからなかったので。 Windowsで文字化けしないZIPファイルをMacで作る : ライフハッカー[日版] ezip.pl 新規に作成する場合は、こちら。 #!/usr/bin/env perl # # $Id: ezip.pl,v 0.1 2010/09/06 13:52:00 dankogai Exp dankogai $ # use strict; use warnings; use Archive::Zip qw/:ERROR_CODES/; use Getopt::Std; use Encode; use Unicode::Normalize; # to handl

    perl - でWindows用のzipファイルをUnixで作る : 404 Blog Not Found
  • tips - GIMPでJPEGの蚊を退治して"PNG"化する : 404 Blog Not Found

    2012年09月05日03:00 カテゴリTips tips - GIMPでJPEGの蚊を退治して"PNG"化する このためだけにGIMPをインストールしておく価値あり。 可逆対非可逆 我々がふんだんに画像や音楽や動画をネットでやりとりできるのは、非可逆圧縮(Lossy compression)のおかげ。これがなかったらとうの昔にネットはパンクしています。静止画や音声はとにかく、動画ともなれば無圧縮ではネットどころかハードディスクすらついていけないほど。 うぶんちゅ! 瀬尾浩史 たとえば以下の画像。片方が可逆圧縮(Lossless compression)のPNG、そしてもう片方が非可逆圧縮のJPEGで圧縮してありますが、どっちがどっちだかおわかりいただけますか?画像をクリックした先に1246x1635ピクセルの元画像があるのでそちらも確認してみてください。 ぱっと見た目にはまるで同じ画像

    tips - GIMPでJPEGの蚊を退治して"PNG"化する : 404 Blog Not Found
    larker
    larker 2012/09/07
    モスキートノイズを選択的ガウスぼかしフィルターで自動除去
  • perl - 勝手に添削 - utf8環境でperl::Jcodeのtrが使えないとき : 404 Blog Not Found

    2011年06月10日20:30 カテゴリ perl - 勝手に添削 - utf8環境でperl::Jcodeのtrが使えないとき CPANモジュールガイド 冨田尚樹 前世紀まではそれで正しかったのですが… utf8環境でperl::Jcodeのtrが使えないとき - satoru.netの自由帳 要はtrの中の文字のエンコードをeucにしないとだめらしい。なーんだ単純 21世紀ではEncodeを使っていただいたく。 Perl 5.8.1以降であれば、標準のPerlだけで出来ます。 こんな感じに。 use strict; use warnings; use utf8; binmode STDOUT, ':utf8'; my $str = 'あいうえおぁぃぅぇぉ'; print $str, "\n"; $str =~ tr/ぁ-んヴ/ァ-ンヴ/; print $str, "\n"; ポイント

    perl - 勝手に添削 - utf8環境でperl::Jcodeのtrが使えないとき : 404 Blog Not Found
    larker
    larker 2011/06/12
    文字コード変換とEncodeの黒魔術変換
  • perl - 勝手に添削 - ターミナル内で画像を表示するコマンド : 404 Blog Not Found

    2010年08月04日13:00 カテゴリLightweight Languages perl - 勝手に添削 - ターミナル内で画像を表示するコマンド 面白い。 ターミナル内で画像を表示するコマンド - デー でもスクリプトが「重い」。 なんでaview起動するのにふつうにsystem()使わないで手でfork()しとんの? つーか、それ以前に一時ファイルって必要? というわけで書き直したらこうなった。 #!/usr/bin/env perl use 5.00801; use strict; use warnings; use Imager; my @cmd = qw/aview -reverse/; my $file = shift or die "usage: $0 image\n"; my $img = Imager->new(); $img->read( file => $fil

    perl - 勝手に添削 - ターミナル内で画像を表示するコマンド : 404 Blog Not Found
    larker
    larker 2010/08/04
    ターミナル内で画像を表示のdankogai版
  • C - で私も素数を数えてみた : 404 Blog Not Found

    2010年07月26日18:30 カテゴリMath C - で私も素数を数えてみた 世間は夏休みだそうだし、連日の猛暑で体調も底だし、というわけで私も素数を数えてみた。 10兆までの素数のリストを作ってみませんか? - 記者の眼:ITpro もしあなたがプログラマだったら、プログラムを書いて10兆までの素数のリストを作ってみてほしい。情報システムの開発に携わる人であれば、10兆までの素数のリストを出力するシステムの見積もりを考えてみてほしい。費用はどれくらいかかるか、納期はどれくらいか、あなたはどんな答を出すだろうか。仕様書はうまく書けるだろうか。 プライムナンバーズ David Wells / 伊知地宏監訳 / さかいなおみ訳 [原著:Prime Numbers: The Most Mysterious Figures In Math] といっても原田記者と同じように書いても芸がないので

    C - で私も素数を数えてみた : 404 Blog Not Found
  • iPad - なんちゃってAjaxマンガビューワー : 404 Blog Not Found

    2010年05月31日00:15 カテゴリTips iPad - なんちゃってAjaxマンガビューワー いや、落ち着いてない。 404 Blog Not Found:news - iPad入手なう で、どうやってマンガをiPadに入れて読むかだが、試行錯誤の結果iMacをWebサーバーにしてそこにzipを転がしておき、そこにSafariからアクセスして任意のアプリで開くというというところに落ち着いた。 これも出来ればダウソなしにしちゃいたい。 というわけで、こさえたのが、これ。 http://colabv6.dan.co.jp/~dankogai/ubunchu01/ 使い方 Safari 4 iPad向けですが、他でも動きます 画面の右側をクリックすると次のページ、左で前のページ 中央をクリックすると「なんちゃってコントローラー」表示/非表示切替 なんちゃってコントローラーをクリックする

    iPad - なんちゃってAjaxマンガビューワー : 404 Blog Not Found
    larker
    larker 2010/06/01
    zipでまとめた画像ファイルをhtml表示させるスクリプトかな
  • tips - zfs raidz修復の実際 : 404 Blog Not Found

    2009年04月17日03:00 カテゴリTips tips - zfs raidz修復の実際 というわけで、zfs導入以来初の「当」のディスク破損&修復のレポートです。 導入に関しては、以下を参照してください。 404 Blog Not Found:雨降って地固まり、geom mirrorが壊れてZFSを導入する 気がついたきっかけは、ディスク操作が遅くなったこと。 おや?と思ってdmesgを見てみると、こんな状態に。 ad8: TIMEOUT - READ_DMA48 retrying (1 retry left) LBA=802513599 ad8: TIMEOUT - READ_DMA48 retrying (0 retries left) LBA=802513599 ad8: FAILURE - READ_DMA48 timed out LBA=802513599 で、zpoo

    tips - zfs raidz修復の実際 : 404 Blog Not Found
  • 404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10

    2007年11月26日18:15 カテゴリMathLightweight Languages プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10 ぎくっ あなたが一番好きなアルゴリズムを教えてください。 また、その理由やどんな点が好きなのかも教えてください。 - 人力検索はてな なぜぎくってしているかというと、実はすでにアルゴリズムの発注を受けているからなのだ。いつまでも伏せておくのもなんなので、ここにえいやっとdiscloseしてしまうことにする。 アルゴリズム大募集! C&R研究所 - トップページ その下書きもかねて、そこでも紹介しないわけに行かないメジャーなアルゴリズムをとりあえず10個紹介しておくことにする。 ユークリッドの互除法(Euclidean algorithm) その昔(数百年ほど前)は「アルゴリズム」といえば、「手順一般」を指すのではなく、この「互除法

    404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10
  • 404 Blog Not Found:あなたが正しいと思っていることが間違っている26の理由

    2007年05月30日04:05 カテゴリ翻訳/紹介Psychoengineering あなたが正しいと思っていることが間違っている26の理由 MixClips経由で見つけた記事なのだけど、実はWikipediaのコピペ。 26 Reasons What You Think is Right is Wrong List of cognitive biases - Wikipedia, the free encyclopedia これってどこのPOP*POPだよと思いつつも、内容そのものは面白いので超訳的注釈をしてみることに。ただし私は心理学と社会学は筒井康隆に教わった点をよろしく割引のほどを。 バンドワゴン効果 Bandwagon effect - 周囲の人が信じていることを、自分もいつの魔に信じてしまう効果 偏向の盲点 Bias blind spot - 自分自身の認識偏向(cognit

    404 Blog Not Found:あなたが正しいと思っていることが間違っている26の理由
  • 404 Blog Not Found:perl - POO と goto

    2007年04月24日00:45 カテゴリLightweight Languages perl - POO と goto というわけで、番。 404 Blog Not Found:perl - 万能なnewの書き方 ここからが面白くなるのだが次のEntryへ譲るここに着目していただきたい。 sub init { my $self = shift; $self->{$_} = $default{$_} for keys %default; $self->SUPER::init(); } 初期化に限らず、自分で何かをしたら次のメソッドに振るというのは、OOでは非常によく見られる光景だ。特にpluginなどを使っている場合、それが著しい。 しかし、このコード、次のメソッドに振っているのはいいのだけど、振ってから戻ってくるのだ。メソッド呼び出しも関数呼び出しに過ぎないのだから、当然といえば当然だ

    404 Blog Not Found:perl - POO と goto
  • 404 Blog Not Found:perl - 万能なnewの書き方

    2007年04月23日22:45 カテゴリLightweight Languages perl - 万能なnewの書き方 Perl 5のOOは、慣れてしまうと簡単だ。 継承とか考えずに、普通にクラスを作りたければ、必要なのは以下の二行だけ。 package Klass; sub new { bless {} }; これだけでは何もできないので、とりあえずnameというアクセサーを追加してみる。これだけ。 sub name { my $self = shift; $self->{name} = shift if @_; return $self->{name}; } しかし、上の形式だと、継承をサポートしていない。だから、 package Klass; sub new { bless {} }; package Klass::Sub; our @ISA = qw/Klass/; # new

    404 Blog Not Found:perl - 万能なnewの書き方
  • perl - 勝手に添削^2 - loop control : 404 Blog Not Found

    2007年04月19日04:15 カテゴリLightweight Languages perl - 勝手に添削^2 - loop control 他にもつっこみどころはあるのですが今回は、loop controlに的を絞って。 Perl Best Practices Damian Conway [邦訳:Perlベストプラクティス] ここギコ!: 安易なループは慎むべきですね jnaoyaのはてな日記 - 添削その2 [H.Iさんのコメントを受け加筆訂正アリ] まずは、DCONWAY先生の一言から。Loopに関する黄金則です。Perl以外でも有効。 Reject As many iterations as possible, as early as possible. 繰り返しは排除せよ、それもなるべく早い段階で 以下をご覧下さい。 jnaoyaのはてな日記 - 添削その2 while (m

    perl - 勝手に添削^2 - loop control : 404 Blog Not Found
  • 404 Blog Not Found:perl - to goto or not to goto, that's the continuation

    2007年04月18日06:45 カテゴリLightweight Languages perl - to goto or not to goto, that's the continuation Perlでもgotoを使えば、当の継続(continuation)が可能であることを示す。 継続ってなんのことだかさっぱりわからない一は、以下にあらかじめ目をとおしておいていただきたい。 なんでも継続 なんでも継続、Perl で。 : torus solutions! 404 Blog Not Found:継続は力なり Tociyuki::Diary - Perl 5.8 で似非継続 Perl 5のgotoには、3種類ある。 goto LABEL こちらはCなどで見られるgotoと等価である。 goto END; print "Hello\n"; END: print "Goobye\n"; G

    404 Blog Not Found:perl - to goto or not to goto, that's the continuation
    larker
    larker 2007/04/18
    gotoと継続
  • 404 Blog Not Found:perl+apache - LWPを責めないで

    2007年04月10日18:00 カテゴリLightweight LanguagesBlogosphere perl+apache - LWPを責めないで これはPerl Mongerとして一言言っておかねばなるまい。 Googleにもアクセス拒否され、スパム送信源と化した「libwww-perl」とは? - GIGAZINE スパム対策をして気がついたのですが、どうやらスパムトラックバックを送信してくるリモートホストIPアドレスなど)はバラバラであっても、ユーザーエージェント、いわゆるブラウザの名称部分に「libwww-perl/5.805」というように「libwww-perl」と入っているものが多く、結果として、Googleなどは検索結果ページに対してこのユーザーエージェント名の一部「libwww」が含まれているとアクセス拒否しているようです。LWPことlibwww-perlは、We

    404 Blog Not Found:perl+apache - LWPを責めないで
    larker
    larker 2007/04/13
    LWP
  • 404 Blog Not Found:perl - warn()とdie()の振る舞いを変更する

    2007年04月12日01:30 カテゴリLightweight Languages perl - warn()とdie()の振る舞いを変更する こういった場合の対処法です。 shag の日記 - inetd 経由で起動されても peeraddr は取得可能 ところで Perl で inetd 起動のスクリプト書くと STDIN から入力を読み取って, STDOUT に出力すれば良いだけなんだけど、実は STDERR も inetd を通してネットワークストリームに出力されるので use warnings; する人は注意が必要です。これは、例を見てもらうのが一番速いでしょう。 #!/usr/local/bin/perl use strict; use warnings; use Fcntl; # for sysopen our $LOGFILE = 'warn.log'; warn $0;

    404 Blog Not Found:perl - warn()とdie()の振る舞いを変更する
  • 404 Blog Not Found:perl - パッチなしでパッチする

    2007年04月09日16:15 カテゴリLightweight LanguagesTips perl - パッチなしでパッチする Perlに限らず、動的に名前空間を書き換えることができる言語ならコンセプトはパクれるはずのtips. 状況 人様が書いたモジュールにバグ発見! バグ直した パッチも送った でも作者が$VERSION++してくれない さあどうする? オレバージョンのモジュールをつなぎでつかう? でも標準でないものをイントールするのはいやん サブクラス作ってメソッドをオーバーライドする? でも問題のモジュールが継承をサポートしているとは限らないし そもそも問題のモジュールOOじゃなかったりもするし 代替モジュールを書いてCPANにうp? -- i.e. JSON::* でも元々のモジュールがあまりによく使われているし うpは簡単でもサポート大変そうだし.... 実例 See Al

    404 Blog Not Found:perl - パッチなしでパッチする
  • java + perl - QRCodeを読み取るCGI : 404 Blog Not Found

    2007年03月19日02:00 カテゴリLightweight Languages java + perl - QRCodeを読み取るCGI こちらにインスパイヤされて作りました。 spiritlooseのはてなダイアリー - QRコードデコードライブラリlibdecodeqrを使ってみた デコードライブラリはいままでなかったような。 Demo: URI of QRCode Image: Text: ただし、インスパイヤとあるのは、今回はlibdecodeqrではなく、こちらを採用したから。 Open Source QR Code Library Preface spiritlooseのはてなダイアリー - QRコードデコードライブラリlibdecodeqrを使ってみた あれ。。。認識力が・・・ 俺の環境かしら。サンプルの画像もほとんど認識しない。 認識率の点で、こちらの方が上だったので

    java + perl - QRCodeを読み取るCGI : 404 Blog Not Found
    larker
    larker 2007/03/19
    QRCodeを読み取るCGI
  • 勝手に添削 - PerlによるCSVファイルの高速集計 2 : 404 Blog Not Found

    2007年03月07日01:00 カテゴリLightweight Languages 勝手に添削 - PerlによるCSVファイルの高速集計 2 前回に引き続き、今回も引き続きcodezineさんの添削。 添削後のコード #!/usr/local/bin/perl use strict; use warnings; use Text::CSV_XS; my ($rfh, $wfh, %name_of, %addr_of); my $tc = Text::CSV_XS->new({binary=>1}); # to handle non_ascii; my $addr_file = shift or help(); my $q_file = shift or help(); my $out_file = shift; open $rfh, "<", $addr_file or die "$a

    勝手に添削 - PerlによるCSVファイルの高速集計 2 : 404 Blog Not Found
  • 404 Blog Not Found:perl - 顔を認識するcgi

    2007年03月08日22:45 カテゴリLightweight Languages perl - 顔を認識するcgi というわけで、やってみた。 spiritlooseのはてなダイアリー - OpenCVを使って画像の物体認識をするPerlモジュール作った これでとりあえずPerlのみで顔認識のWebサービスとかつくれると思います。 Source http://www.dan.co.jp/~dankogai/img-objdetect/detect_face.src 仕様上の注意 顔検出したい画像のURLを、 http://www.dan.co.jp/~dankogai/img-objdetect/detect_face.cgi/ の後ろにつけるだけ。 完全なα版。「動かない」「検出しない」とか文句を言わないように。 FreeBSDで動かすのはちょっと大変だった。ports版のopenc

    404 Blog Not Found:perl - 顔を認識するcgi
    larker
    larker 2007/03/09
    顔認識
  • 404 Blog Not Found:勝手に添削 - Ajaxでデバッグしよう - @IT

    2007年03月07日11:00 カテゴリLightweight Languages 勝手に添削 - Ajaxでデバッグしよう - @IT 記事そのものはまあいいのだけど、CGIの部分があまりにひどいので。 Ajaxでデバッグしよう - @IT 私の仕事の現場ではJavaを開発言語として使用することが多いので、JSPやServletとして実装していますが、今回はレンタルサーバでも利用しやすいようにPerlで作成しました。以下のソースを参考にしてください。 Before まあご覧下さい。前世紀末においてすら[これはひどい]レベルです。著者はJava屋さんとのことなのでその点を甘く見ても、一体何を参考にして書いたのか是非お聞かせください。 local %params; # エージェントはGETメソッドだけを使用するのでPOSTは考慮しない # リモートログエージェントから送られてたログ情報を環

    404 Blog Not Found:勝手に添削 - Ajaxでデバッグしよう - @IT