Perl

Perl Advent Calendar Japan 2011 Casual Track 4日目に Groonga Casual Tutorial を POSTしました。

Perl Advent Calendar Japan 2011 Casual Track 4日目でGroongaを使った簡易チュートリアルを投稿しました。groongaをmysql経由で使うのではなく、groongaをhttpサーバーとして起動しておいてhttpリクエストでやり取りをする方式での開発方法を紹介していま…

はてなブログ書いてみた。

http://okamuuu.hatenablog.com/

Plack::Builder+Plack::Middleware::Staticで Plack::App::Directoryみたいな事をやってみる。

そんなわけでとりとめもない記事です。 ディレクトリ構成 こんな感じ static.psgi root/ root/index.html root/xxx.html root/hoge/index.html root/hoge/xxx.html psgi % cat static.psgi use Plack::Builder;builder { enable "Plack::Middleware::Static"…

hachiojipm#10に行ってきた

場所 私は2度目の南米ペルー料理でした。 1度目と違ってビールとかチョリソとかお肉とかパスタとかタコの刺身とかがつがつして食ってました。もうすでにhachiojipmの常連? LT 1.norry_gogo さん 最強の学習法について。「試して失敗するという過程」は無駄…

フィボナッチ数をPerlで実装できますか?

フィボナッチ数をPerlで実装できますか?そもそもフィボナッチ数が何なのかまったくわからなかった。くやしいです。 くやしいので勉強してみた。 フィボナッチ数とは くわしくはwikiを参照http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A3%E3%83%9C%E3%83%8…

Hachioji.pm #8

0からはじまってるので今回が9回目の開催となるhachiojipmに行って参りました。 ごはん 今回は沖縄料理屋さんでした。ゴーやチャンプル美味しかった。 おしゃべり 今回もPerlやらPHPやらJQuery-MobileやらGANCやら、いつもどおり幅広い話をしておりました。 …

Hachiojipm #6

Hachioji.pm #6というけでカレーを食べに行きました。http://atnd.org/events/17018 ごはん 貸し切りのはずが人数不足に陥った為、[twitter:@uzulla]さんの奥さんが代打出場してくれてました。カレーダイニングvery wellちなみに僕は道に迷ってしまい何度も…

Module::Setupで身に付けるよい習慣

あらすじ 前回[twitter:@hachiojipm]で行われた[twitter:@norry_gogo]さんのLTで次のような発言がありました。 自分が書いたPerlコードを添削してくれる人が周りにいなくて困ってる 添削したったでーhttps://github.com/okamuuu/Twitter-Reader おすすめのフ…

昔書いたPOST,GETの違いについて追記した

たいした事ではないのですが、GETとPOSTではアクセスログにパラメータが記録されているのでそこの点でもちがうよね、というのに突如気づいた。http://d.hatena.ne.jp/okamuuu/20100525/1274800489そんだけ。

shipitのはじめかた

あらすじ macbookairを新調してから初めてshipitコマンドを実行したんですが、いろいろと忘れている事があったので備忘録を書いておきます。 Shipitを用意 インストールします。 % cpanm ShipIt設定ファイルを用意します。 % vi ~/project/your-Dist/.shipit…

テスト駆動開発のすすめ

hachiojipmに行ってきたのですが#4でも#5でもTestを書くのが難しいという声が聞こえたので「テストは書いてみると簡単」「テストがあると開発が楽」という事を伝えてみようと努力する試みです。ということでサンプルコードを書いてみました。https://github.…

Hachioji.pm #5

前回に引き続き八王子に行ってきました。http://atnd.org/events/15857 ごはん http://www.hotpepper.jp/strJ000765160/とりあえず焼き肉屋さんで楽しく食事できたのでよかった。 んー晩ごはんにビール飲みながら焼き肉たべれるなんて幸せの極みだなーと思っ…

PlackとGroongaでblog作ってるときにつまづいたこと

groongaでboolなカラムをfalseに変更する場合falseとかnullとか0を渡せばいいのですが、なぜかtrueになるのでなんだろう、という話です。 結論 Plack::Request->parametersから受け取ったハッシュが以下のようになっている $VAR1 = { '_key' => 'ho', 'name'…

Router::Simple悩み中

※追記あり以下のようにRouter::SimpleをつかうとUserのRequestから実行すべきController、actionを判定できます。 かつ、ユーザーがどの年月を指定しているかといった情報も知る事ができます。 use strict; use warnings; use Router::Simple; use Data::Dum…

八王子にいってきた

南米ペルー料理のお店でした 人生初の八王子。iPhoneのおかげで無事到着。 全員はじめまして、こんにちは。Perlよりもサーバーサイドの話題が多い感じで割とのんびりと話してました。 参加した目的 今後大勢の前でしゃべる必要があるので練習するために参加…

Amon2を試そう

Amon2を試そう 最近iPhoneの開発に挑戦しています。結果、異なるフレームワークに触れる事によっていろいろな発見がある事を発見。 というわけで他人のフレームワークを試そう。 とりあえずドキュメントが豊富なものを試す。今日はこれにする。http://amon.6…

XRI-Resolution-Liteのtestがこける

ちなみに大した話じゃないです。 OpenIDを使ってログインできるようにしたいといわれたのでなんとなくOpenID-Liteというネーミングに惹かれて使ってみようかなと思った。ちなみに自分はRelying Partyです。このモジュールでいいのか悪いのかまだ調査中。 そ…

俺とModelとAPI

概要 APIという名前空間についていろいろな意見もあると思いますが、私はこんな風に実装していますよ、という一人言です。 私が説明するのが下手なせいか、今まで誰にも理解されなかったという俺流APIの使い方です。 実装例 はい、ドーン package MyApp::Api…

Mac上でRedmineとGitを連携させてみた

SEE ALSO http://d.hatena.ne.jp/ntaku/20090526/1243327903 環境 マシンはMacBookAir % sw_vers ProductName: Mac OS X ProductVersion: 10.6.6 BuildVersion: 10J567ruby, railsは標準のものを使っています。 % ruby --version ruby 1.8.7 (2009-06-12 pat…

Macでnginx+redmineを設置してみたので手順を記した

はじめに こちらを参考にしました。 http://redmine.jp/guide/RedmineInstall/ http://doruby.kbmj.com/8y/20100628/Redmine_nginx_Passenger_ http://blog.ntrippy.net/2009/07/home-made-nginx-phusion-passenger-dep_01.html インストールするマシン 使っ…

JSONを返すHTTPサーバーでFirefox3だと文字化けしないが Google Chrome8だと文字化けした場合

こうなってたから ### Plack::Response $res->content_type('application/json'); こうした ### Plack::Response $res->content_type('application/json; charset=UTF-8'); 以上、他愛もない話でした。

俺は諦めていた。でも、もう諦めない。

YoutbeのAPIで複数のEntryをとってくる時なんかに、一度に50件しかとれないので繰り返して取得したりする処理を書いたことがありませんか? 取得に失敗した後、しばらくたってから再取得する処理が面倒だなーと思って、しれっと気づかないフリをしていたりし…

集合知プログラミング第2章を演習してみた

概要と宣伝 この本の第2章の話です。集合知プログラミング ピアソン関数 こんな感じの問題があるとします。 ある学校の生徒であるAさんとBさんがいます。 この二人の成績からどれぐらい似ているかを求めなさい。ちょっと意味不明な問題ですが、こういう問い…

groongaを非対話モードでload --tableするときにエスケープしないで済む方法を考えている

訂正 件名があべこべだったので修正 2011-01-08 13:00 s/対話モードで/非対話モードで/ 記事の概要 DB操作でいうところのinsertに相当するloadの処理でちょっと悩み中。Groonga::Clientっていうgroongaを使ったPerlのサンプルスクリプトをたくさん用意してお…

MacBook Air 2010 の再インストール

MacBookAirを年末に大掃除をしたので記録しておく 準備 .ssh以下のKeyをバックアップしておきます。 インストールする事がわかっていて、ダウンロードに時間がかかるものを予め用意しておきます。 これらをUSBディスクを買ってきて、MacOSのインストーラと一…

Groonga::Client version 0.02

ヴァージョンがあがりました。といってもテスト書いただけです。https://github.com/okamuuu/Groonga-Client ↓こんな記事があったので、なんとなくcommit logを英語で書いてました*1http://d.hatena.ne.jp/tokuhirom/20101124/1290595272 そしたら外国人がwa…

Groonga::Client version 0.01

コマンドを実行するだけの最小構成を考えたhttp://github.com/okamuuu/Groonga-Clientdecode_jsonぐらいつけたほうがいいとおもいつつ、jsに渡すだけの用途だったらそれも不要のケースがあるのかないのか、とりあえずアプリ作りながら考える予定

Test::Groonga version 0.01

プライベートで作成するWebアプリは大抵テーブル1個のシンプル構成なのでSQLiteで事足りるんですが、KVSでもいいんじゃないかと思っている今日この頃。そんな事を考えつつ、groongaどうなの調査をしてました。そしたらgroongaなんか良さげ。冬休みにこれを使…

I use DBI module like this.

↓の記事のほうがスースコード少ないですが、秒数が欲しい場合もあるのでhttp://d.hatena.ne.jp/tokuhirom/20101201/1291196584自分はこんな風にDBIのラッパーを用意してます。 確かZigorouさんの記事を見て真似したんだと思いますが記憶があいまい。 package…

AnyEventはじめました(2)

beginとend beingとendはセットで使います。beginで呼び出された回数分だけ、endを実行するとイベントループを抜けたい処理を書く場合はこれを使います。AnyEventの内部にカウンタがセットされていて、それを++するのがbegin(),--するのがendだと思えば良い…