タグ

ブックマーク / blog.yappo.jp (33)

  • YappoLogs: Perl 5.16 の面白そうな新機能を厳選して5つ紹介

    Perl 5.16 の面白そうな新機能を厳選して5つ紹介 日人が金環日で騒いでる待っただかにリリースされた事で有名な Perl 5.16 ですが、ちょっとまえに僕が Hokkaido.PM Casual で新機能の見所プレゼンしてて、折角なのでブログにも書いとこうと思いまして転載仕様かなーと。 More CORE subs are callable through references コア関数のコードリファレンスを取れるるようになります。たとえば文字列フィルタリングをユーザが差し替え可能なモジュールとか作る時に捗るって jsx が言ってました。 use strict; use warnings; use 5.016; # ここの関数テーブルをユーザの好みに差し替える # 基はコア関数を使う my %func_map = ( index => \&CORE::index, splic

    antipop
    antipop 2012/06/04
    カオス
  • YappoLogs: 「livedoor × DeNA 勉強会」 #LDeNA #1 開催してもらった & 発表資料

    「livedoor × DeNA 勉強会」 #LDeNA #1 開催してもらった & 発表資料 先々週にやってたのに書くのをすっかりわすれてた^^;; livedoor Techブログ : 「livedoor × DeNA 勉強会」 #LDeNA を開催しましたの通り最後なので合同勉強会を開いてもらいました。 IRC で nekokak さんと「やる?やるならマジで専門家にお願いするよ?!!?」とか言ってて、合同勉強会やるかやらぬか見たいな話が出始めて50分もしないうちに kushii++ さんが色々と格的に動いてくれて、すごい勢いで懇談会までの手配が整って感動の雨霰でした。 このフットワークは凄いです。 僕の発表としては、前回の yokohama.pm の続きの話と YAPC の LT で話せなかった事をやったんですが、 Twitter Streaming API と GrowthFo

    antipop
    antipop 2012/02/07
  • YappoLogs: YAPC::Asia Tokyo 2011 ぼくのかんそうぶん

    YAPC::Asia Tokyo 2011 ぼくのかんそうぶん かんそうぶろぐかけってことなので、ぶくますうがのびるきょうこのたいみんぐでこうかいします。 ここのついきはげつようあさなんですが、あっとうてきにつかれててしゅっしゃできるかわからないくらいかいふくしてないのです。 なんか、こうしたほうがいいんじゃね?とか書いてるけどスルー推奨です。 発表について なんか優等生トーク(内容ではなくて枠の使い方そのもの)ばっかりよりも、少し型を崩した時のほうが理解を深める事もあるんじゃないかなーと思ってた所で、makamakaさんのゲームのデモをやってるトークは当に良かった。(まったくみにいってないけど!) 伝えたい目的によっては、壇上の机の前に突っ立ってるより効率よく伝える方法が他にもあるかもしれないので、ちょっと考えてみるといいかもしれない。資料の朗読をしてるだけだと後でスライド見れば良いや

    antipop
    antipop 2011/10/17
  • YappoLogs: モテる Perl 女子力を磨くための4つの心得

    « LWP::UserAgent の HTTPS 対応は LWP::Protocol::https というパッケージに分離されました | Main | BPStudy#39 で Ficia の UI とテストに関する事を発表してきました » モテる Perl 女子力を磨くための4つの心得 こんにちは、毎夜 Perl コードでラブレターをコンパイルしては core 吐かれている Yappo です。 。私は学歴も知識もありませんしリア貧ですが、 Perl 恋愛に関してはプロフェッショナル。 今回は、モテる Perl 女子力を磨くための 4 つの心得を皆さんにお教えしたいと思います。 1.あえて 2~3 世代前の Perl を使う あえて 2~3 世代前の Perl を使うようにしましょう。そうですね5.6あたりが良いです。そして好みの Perl Monger がいたら話しかけ、わざとらしく P

    antipop
    antipop 2011/05/10
    酷過ぎるwww
  • YappoLogs: yappocall を作った。もしくは inside yappocall

    « OSDC.tw 2011 で Groonga 布教してきました/もしくは TOEIC スコア 100 未満の日人が国外カンファレンスで英語プレゼンする方法 | Main | iPhoneの移動履歴を再生するiPhone Tracker Stream作ったよ » yappocall を作った。もしくは inside yappocall もともとはヌーブラアプリを作るためにiPhoneの開発環境を作ったのですが、ちょっと気が向いてim.kayackみたいなのを作ってみました。 im.kayack使えば良いじゃんって話もありますが、着信音を僕の好きな音とか声とかにしたかったので作ったのです。 通知の時にならす時には、hoge.appを作った時に一緒にコンパイルされてないと駄目なんです。 同時にコンパイルされちゃってさえいれば、通知するサーバ側の都合で音声を選べるという感じ。 yappoca

    antipop
    antipop 2011/04/13
  • YappoLogs: AnySanで日本語の文章をzenrize(全裸化)

    AnySanで日語の文章をzenrize(全裸化) 日語の文章をzenrize(全裸化)するAcme::Zenraっていうのを作ったを見たので、折角なのでAnyEvent::IRC::Clientを直で使ってる部分をAnySanで書き換えました。 生で使ってる時と比べると、AnySanを使うとよりbot体のコードを書くことに注力できる事がわかるとおもいます。(まだまだAnySanでのAPIの洗練は必要だけど) let's enjoy irc hacking! Posted by Yappo at 2010年11月17日 13:11 | TrackBack | Perl

    antipop
    antipop 2010/11/17
    えにー△
  • YappoLogs: kumofs での Data::Model の使い方

    kumofs での Data::Model の使い方 スケート頑張りすぎて足首が痛いYappoですみなさまウインタースポーチュしてますか? 日kumofsが公開されたので、折角なので Data::Model から kumofs を実際にどうつかっているかを紹介しようかとおもいます。 kumofs については 分散Key-Valueストア「kumofs」を公開しました! - 古橋貞之の日記 を Data::Model::Driver::Memcached については dann さんによる Data::Model::Driver::Memcachedで超効率データ保存 - JPerl Advent Calendar 2009 を別途参照すると良いでしょう。 スキーマ定義 では実際に kumofs をつかった場合のスキーマ定義を下記に貼ります。 ちなみに、それらしいような定義をしてますが全部フ

    antipop
    antipop 2010/01/18
  • YappoLogs: Ajax アプリ等の為の JavaScript コードのテストツール JSTAPd を作ってるよ

    Ajax アプリ等の為の JavaScript コードのテストツール JSTAPd を作ってるよ Data::ObjectDriverをDISってる人の話題が三周目に突入した今日この頃ですが皆さんは何をDISってますか?Yappoです。 JavaScript にもテストツールが色々とあると思うんですが、 Ajax アプリの XHR リクエストとかも含めてラクチンにテストできるツールが見つからなかったので JSTAPd というツールを作りました。 http://github.com/yappo/JSTAPd 名前の通りテスト結果はTAPで出力してるのでproveコマンドとかを使ってPerlの作法でテストできます。 ブラウザの連携の設定をすれば prove -v foo/hoge.t とかをコマンドで打ち込めば勝手にブラウザ立ち上げてテストコード実行してブラウザ閉じて結果をコンソールに吐いてく

    antipop
    antipop 2009/10/29
  • YappoLogs: KVSでORマッパーを使うという事

    KVSでORマッパーを使うという事 ケイレキ.jpの中でケイレキ.jpに招待して欲しい人を呼びかけても絶賛スルーされてるYappoです。さて今回は今巷で大人気のKey Value StorageでORマッパーを使う事についてお話するのじゃ。 一般的にORマッパーとはオブジェクトとリレーショナルデータベースをマッピングする為の仕組みの呼び名だと言うのは知られている所です。はい、そうするとKVSってのはハッシュデータベースであるわけなのでおかしいですね。今回の話はData::Model::Driver::Memcachedを使う事を前提としてるので問題が無いのです。なぜなら「data/object mapper」とか書いてあるから。 いわゆるPerlなORマッパーってのは行データをHASHで管理します。それはRDBが一般的に表形式でデータを管理しているからなんだと思います。なんでKVSをオブジ

  • YappoLogs: Data::Model っていう ORM みたいの CPAN にあげたよ

    Data::Model っていう ORM みたいの CPAN にあげたよ あざーす。循環参照しすぎるとバターになる。。なんでそんなに人の目を気にするのだろうと、マジレス。 早速ですが Data::Model っていう O/Rマッパー 的な物を CPAN にあげました。 Data::Model http://github.com/yappo/p5-Data-Model/tree/master 元来は MVC モデルで言う所の Model を一括でまかなえるつもりで実装していますが、ロジック処理は普通の Perl のクラスで書いちゃった方が潰しが聞くため、主にストレージを Perl のオブジェクトにマッピングする ORM 的な使い方が主流となっています。 そして、 Data::Model の多くの実装や設計などは Data::ObjectDriver を参考にして開発しました。 他にも後述して

  • YappoLogs: yacc と lex で簡易言語の AcotieScript っての作ってみた

    « Iron Man Blogging Challengeに参加するよ、日Perlな人も参加しようよ | Main | HTTP::Engine is moved to GitHub » yacc と lex で簡易言語の AcotieScript っての作ってみた そろそろ梅雨入りするので急いでキュウリの苗植えたら安物のせいか根っこが弱っこくて少し心配な金曜日担当Yappoです。 Perlも飽きたし、ふと思う所があって、オレオレ言語を作ってみました。 http://github.com/yappo/AcotieScript/tree/master たぶんMacでしか動かないんじゃないかなとは思ってますが、普通にmakeすればコンパイルされる筈。 サポートされているシンタックスはコメントとprintとperlにあるような文字列同士のxorです。 "hoge" ^ "ugee"みたいので

    antipop
    antipop 2009/05/19
  • YappoLogs: はてなのお気に入りアンテナをTwitter Clientで見れるゲートウェイ「Hatetter」作りました

    はてなのお気に入りアンテナをTwitter Clientで見れるゲートウェイ「Hatetter」作りました 注意:ブックマークだけでなく、お気に入りアンテナのフィードを使うようになりました。 はてブのお気に入りリストってRSSリーダとかで見たりするのが多いんですが、もっとTwitterのようにカジュアルにウオッチしたいと思って、お気に入りリストのRSSTwitter API互換のFeedに変換するサーバを書きました。 Hatter - 太っ腹にソースコードも公開してるので、自宅サーバとかに置いて使うってのもできます。 たとえばid:acotieがお気に入りに入れてる人達のブックマークをTwitter風に変換したい時は http://hatetter.blogdb.jp/acotie/statuses/friends_timeline.json もしくは http://hatetter.b

    antipop
    antipop 2009/04/16
    Myはてなお気に入りアンテナも><><
  • YappoLogs: Q4MをMacPortsのMySQL環境に入れる方法

    Q4MをMacPortsのMySQL環境に入れる方法 macportsでmysql入れると /opt/local/lib/mysql5/mysql とかいう独創的な所にライブラリが入るので、そのまんまのQ4Mのconfigureじゃ./configureすら上手く動かないし、ググっても良くわからないのでてっとり早くconfigure.inを書き換えたよ。 パッチはhttp://gist.github.com/94339から 実行令とかは下記の通り。 $ patch < ../for-macports.patch $ autoconf # include ディレクトリを追加するのが必要 $ CPPFLAGS=-I/opt/local/include ./configure --with-mysql=/opt/local/var/macports/sources/rsync.macports.

  • YappoLogs: Shibuya.PM tech talk #10 の申し込み間に合わなかった人への提案とust時代の勉強会の関わり方

    Shibuya.PM tech talk #10 の申し込み間に合わなかった人への提案とust時代の勉強会の関わり方 昨夜に募集開始されたShibuya.PM tech talk #10ですが、夜に募集開始したのにも関わらず3時間足らずで定員オーバーとなりました。 wassrとか等を見ると行きたいけど間に合わないよーという話もチラホラでてます。 そこで提案なのですが折角ネット中継されるので「Shibuya Perl Mongersテクニカルトーク#10 パブリックビューイング」という催しを同時開催するのはどうでしょうか? ustで見れるから会場に来なくてもいい。という話ではなく、やはり現地にきたら現地に来たなりの何かが得られるので、というか一人で見るよりも同じ目的の人間が集まってワイワイ見た方がたのしいじゃんすか。 定員で参加出来なくて「現地で得られるもの」的な収穫は半減するかもしれないけ

  • YappoLogs: Math::Pari を Mac 環境で入れる方法

    Math::Pari を Mac 環境で入れる方法 Crypt::RSA を Mac で使いたくて Crypt::RSA を install 仕様としたら Math::Pari でこけた。 なにやっても入らない macports しても無駄。fuckfuckfuckfuckだったのですが、ようやく入れる事が出来た。 GCC の インライン最適化を仕様として全オブジェクトファイルに_overfllowというシンボルを作ってリンクできなかったかんじ? cd /tmp wget ftp://megrez.math.u-bordeaux.fr/pub/pari/unix/OLD/pari-2.1.7.tgz pari-2.1.7が必要 tar zxvf pari-2.1.7.tgz sudo cpan> look Math::Pari で 2.010800 を入れようとして shell に。 おも

  • YappoLogs: Term::QRCodeっての作ってみた

    Term::QRCodeっての作ってみた QRCode大好きclouderさんがText::QRcodeを作ったのをみたnipotanさんが早速terminal化した物をgyazoにうpしてたので、gazoのコードを見ながら脳内コピペして10分くらいでTerm::QRCodeを作りました。 http://svn.coderepos.org/share/lang/perl/Term-QRCode/ ターミナルで作業してる時に、不意にQRCodeが必要になっても落ち着いてQRCodeを参照できるようになりましたね! Text::QRCodeはCPANに上がってないけど、ネタでCPANに上げるかな Posted by Yappo at 2008年10月31日 13:13 | TrackBack | Perl Gold in WoW is usually called wow gold, whic

    antipop
    antipop 2008/10/31
    イカスなー
  • YappoLogs: List::Rubyish - hatena の DBIx::MoCo から fork した

    List::Rubyish - hatenaDBIx::MoCo から fork した DBIx::MoCoというhatena謹製のO/Rマッパは有名ですが、DBIx::MoCo::ListというRubyっぽいリスト操作を行ってくれるモジュールがあります。 概要はPerl のリスト操作を Ruby 風に - naoyaのはてなダイアリーが詳しいです。 DBIx::MoCo::ListはautoboxじゃないのにList::UtilやList::MoreUtilsを活用して実装してあります。 ちょっとしたリスト操作には使い勝手が良さそうなのですが、最大の欠点があります。 それはDBIx::MoCoに含まれるモジュールだという事です。DBIx::MoCoごと入れろと言われたらおしまいですが>< 実はDBIx::MoCo::ListはDBIx::MoCoの他のモジュールに依存する箇所がどこ

  • YappoLogs: Module::Setup - pmsetupをモジュール化した

    Module::Setup - pmsetupをモジュール化した Perlのモジュールをまず最初に作る時はpmsetupやModule::Starterなどを使うのが一般的です。 かく言う余もpmsetupでガリガリ書いてたんですが、はこべさんやらdannさんやらの最近の記事を見て思う所もあってpmsetupをモジュール化してみました。 http://svn.coderepos.org/share/lang/perl/Module-Setup/trunk/ 使い方は簡単!cpan Module::Setupでinstallして(まだCPANにあげてないよ!) $ module-setup Foo:Bar を実行するだけ! ほぼpmsetupと同等の挙動でひな形を作ってくれます。あらべんり! これだけじゃまったく意味が無いのでModule::Setupらしい所を。。。 flavor Modu

  • YappoLogs: antipopが入社してきた

    « HTTP::Engine - Perl版 WSGI のような物、 Catalyst::Engine を抜き出したような物 | Main | Moose のコードを探索して理解を深めた » antipopが入社してきた はてなに入社しました - antipop 突然ですが、5/1付でアプリケーションエンジニアとして、はてなに入社しました。これまでは、鹿児島県の奄美大島というところに住んでいましたが、これからは京都オフィス勤務です。これまでユーザとして、はてなの各サービスを愛用していたわけですが、今後は作る側からよりよいものにしていきたいと思っています。今後ともよろしくお願いいたします。 なんか隣の席ではたらいてるお! Posted by Yappo at 2008年05月02日 20:16 | TrackBack | 適当

    antipop
    antipop 2008/05/02
    超ウケるww
  • YappoLogs: CodeReposのコミット時のrule撤廃とか

    CodeReposのコミット時のrule撤廃とか 今までCodeReposにコミットする時はプロジェクトパスを入れろてきなルールが合ったのですが、hanekomuや自分を始めとする皆の不満がつのったし、そもそもそんなの機械的にやればよくね?という話も前からあったのでJesseがCodeReposに来たのを記念してルール撤廃しました。 そもそも何であんな変なのがあったかというと、ircbotやfeedで見た時にプロジェクト名がわかり易い方がいいって理由だけだったはず。 それなので、Commit Pingを受け取ってFeedを吐くサーバを書きました。 サーバのコードはhttp://svn.coderepos.org/share/websites/coderepos.org/feedmaker/ Feedはhttp://coderepos.org/feeds/share.xml でCodeRep