タグ

2013年3月9日のブックマーク (11件)

  • Starlet の次期バージョンは少し速くなる - Hateburo: kazeburo hatenablog

    3/8に開発バージョンの0.17_1が出ましたが、このバージョンはひとつ前の0.16に比べて少し高速になっています。 local $SIG{...} = sub {}が使われていた部分を最適化してリクエストの前後でsystem callを減らしました。straceでみると before 23:02:27.213488 accept(4, {sa_family=AF_INET, sin_port=htons(32851), sin_addr=inet_addr("127.0.0.1")}, [16]) = 5 23:02:28.500636 ioctl(5, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff0140fd80) = -1 EINVAL (Invalid argument) 23:02:28.500710 lseek(5, 0, SEEK_CUR) =

    Starlet の次期バージョンは少し速くなる - Hateburo: kazeburo hatenablog
  • 職業プログラマーなら必ず読むべき「Code Complete」 - $shibayu36->blog;

    Code Completeの上下巻を読んだ。 CODE COMPLETE 第2版 上 完全なプログラミングを目指して 作者:スティーブ マコネル日経BPAmazonCODE COMPLETE 第2版 下 完全なプログラミングを目指して 作者:スティーブ マコネル日経BPAmazon 読んだ感想としては、職業プログラマーなら必ず読むべきだなと感じた。 このではソフトウェアコンストラクションに関する話題を扱っている。このの中でソフトウェアコンストラクションとは、詳細設計、コーディングやデバッグ、単体テストなどなど、要求定義が終わった後、ソフトウェア製作に必要なプロセス全般のことを指している。 主なテーマとして、どうやってソフトウェアにおける複雑さを減らすことが出来るのか、について書かれている。そのテーマをいろいろな観点から説明されている。例えば以下の様な観点がある。 上流工程の欠陥による

    職業プログラマーなら必ず読むべき「Code Complete」 - $shibayu36->blog;
  • [閲覧注意]ゼリーをストロー型で作ると大変なことになることが判明

    ゼラチン質を熱して溶かし、型に流し込んで作るのがゼリー。流し込むものや型によっていろいろとユニークなものが作れますが、ストローを型にするとちょっとすごいものができあがります。 こんな感じに、紅で色をつけたゼリーを立てたストローに流し込むと…… ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ こうなります。 お楽しみください。 レシピなどはソース記事からどうぞ。 ソース:Bowl of Worms Anyone? – Viewing Comments 1-40

    [閲覧注意]ゼリーをストロー型で作ると大変なことになることが判明
    issm
    issm 2013/03/09
    食事中にクッソw
  • CPAN Testersの紹介 - Islands in the byte stream (legacy)

    最近Perlのネガティブな話が話題ですが、ちょっとCPANまわりのサービスの自慢をさせてください。それは CPAN Testers です。 CPAN Testers *1 とは、CPANに公開したモジュールがどの環境で動きどの環境でどういうエラーがでるのかを集積するサービスです。 よく「Perl/CPANは枯れている」といいますが、それを支えているのはPerl歴史とかPerlerの性格といった形のないものではなく、この CPAN Testers なのです。これがすごくいいんですよ。 特徴をざっと並べるとこんな感じ: Social testing service for CPAN Testerたちがモジュールを手元の環境でテストしてそのレポートをサーバに送る CPAN.pm のプラグインとしてレポートモジュールが存在する 同じ環境でもビルドオプションが違うパターンもあるので、自分ひとりで様

    CPAN Testersの紹介 - Islands in the byte stream (legacy)
    issm
    issm 2013/03/09
  • 今日は Hokkaido.pm#9 の日です - Pixel Pedals of Tomakomai

    実家に帰るついでに、久々にHokkaido.pmへふらっと立ち寄ります。 マイクスタンドを借りたのでライブコーディングでも安心です。 cpanfile / @aloelight さん cpanファイルとは? Ruby Gemfileの移植 依存モジュールのバージョン cpanmとcartonで利用可能 アプリ向け cpanfile以前は、Makefile.PLへ書いていた cpanm -L local --installdeps -n . -Mlib::core::only -Mlib=local/lib/perl5 LWP6.02からLWP::protocol::https が分離されて使えなくなったりする(<= 指定ができない) cpanfile では requires で '== 6.00' みたいな指定ができる carton install、もしくは cpanm -L local

    今日は Hokkaido.pm#9 の日です - Pixel Pedals of Tomakomai
  • Don't release experiments to CPAN | NeilB [blogs.perl.org]

    I'm proposing an explicit community convention where experimental code isn't released to CPAN, but is shared on github, perhaps with an associated blog post, or discussion on PrePAN. This addresses just one of CPAN's problems, which have also been raised today by Brendan Byrd. Motivation There are many modules on CPAN which appear to be the result of some experimentation. Once the author has demon

    issm
    issm 2013/03/09
  • cpanfile

    7. 依存の定義 use strict; use warnings; use ExtUtils::MakeMaker; WriteMakefile( PREREQ_PM => { 'LWP' => '6.00' } ); 8. Installと実行 $ cpanm -L local --installdeps -n . $ perl -Mlib::core::only -Mlib=local/ lib/perl5 get.pl 501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)

    cpanfile
  • Teng でトランザクション処理 & はまった点 - amari3の日記

    前回は、Teng で一通りの CRUD の仕方を紹介したんですが、トランザクション処理を考慮していなかったので、Teng でトランザクション処理をする方法を紹介します。 準備 テーブルは前回使用した memo テーブルを使います。 事前に以下の様なデータを入れておきました。 mysql> select * from memo order by id; +----+-------+---------+---------------------+---------------------+ | id | title | body | created_at | updated_at | +----+-------+---------+---------------------+---------------------+ | 1 | Hello | World | 2011-11-24 23:0

    Teng でトランザクション処理 & はまった点 - amari3の日記
    issm
    issm 2013/03/09
  • 僕がPerlを使う理由 | /var/log/azumakuniyuki

    ワンライナー(cat,cut,grep,awk,sed,sort,uniqとか) ワンライナーが長くなる OR 何回も使う時はシェルスクリプトにする シェルスクリプトで面倒な処理はPerl(/usr/bin/perl+標準モジュール)で書く Perlの標準モジュールで足りない場合はcpanで入れる どんなUNIX系OSでも入っているPerlと書きましたが、最初に触ったUNIXであるSolarisやNEWSにPerlがどんなPATHで入っていたのかは覚えてません。しかし、今までPerlが入っていなかったシステムというのも記憶に無いので、どんなシステムでも入っていると言っても差し支えないと思います。 あと、シェルスクリプトで面倒な場合はCで書いてコンパイルするという選択肢もありますが、コンパイラが入っていないサーバに出くわすと詰むのでやはりPerlです。 また、たまーに出くわすのですが、お客さ

  • ファイルの読み込み開始位置と終了位置を指定して書き出す〜seek、read - WEB開発初心者の成長記録

    ●ポイント ◎seek([ファルハンドル], [起点からの位置(スタート地点になる)], [起点]); 起点は、0だとファイルの先頭、1だと現在の位置、2だとファイルの末尾になる。(0, 1, 2以外は入りません) 例), seek($fh, 20,0); →ファイルの先頭から20バイト進んだところが読み込み・書き込み位置になる。 ◎read([ファイルハンドル], [読み込んだ情報を格納するスカラー変数], [読み込む情報の終点])●お題 こんな↓ファイル(test_yoko_ryouri.eps)があるとします。 プレビュー情報を読み取って、TIFFファイルのみを抽出して保存してください。 #! /usr/bin/perl use strict; use warnings; #何度もこのスクリプトを回して大丈夫なように、既に抽出したTIFFファイルがあるときは消去しておく system

    ファイルの読み込み開始位置と終了位置を指定して書き出す〜seek、read - WEB開発初心者の成長記録
  • PerlでSTDIN/STDOUTを任意のファイルハンドルに置き換える - たごもりすメモ

    いま書いてるコードで、forkしてexecするんだけど、execする前にSTDIN/STDOUTを任意のファイルハンドルに置き換えたいなー、もっというとexecするプログラムのSTDINにソケットのREADから流れてくるデータを流し込んで、STDOUTの出力をソケットのWRITEに流し込んでやりたいなー、というようなことを考えていた。 で、これが例えば今のプロセスのSTDOUTの出力をファイルに置き換えるには、以下のようにすればいい。 open(STDOUT, '>', '/path/to/file'); シェルスクリプトでも簡単。*1 exec >> /path/to/file さて、STDIN/STDOUTとconnect済みのソケットを結合したい。connect済みのソケットはファイルディスクリプタは持っているがファイルパスを持っていない、ので、普通にopenし直すだけではうまくいか