タグ

ブックマーク / hakobe932.hatenablog.com (15)

  • LiveCoding #5に行ってきました - はこべにっき ♨

    昨日、大阪で開催されたLiveCoding#5に行ってきました。 まず、ひと大杉ワロタ。50人ほど。こんなマニアックなイベントにこれだけ人が集まるというのはすごい。これもujihisaの求心力のなせる技か。さらに、忘れてはならないのはポイントは小飼弾さんがゲストとして参加していたこと。まじかで感じたの弾節は、壮絶でありました。言語のキワイ話やライフゲームのお話など盛り上がれたりして、楽しかった。ぜひ、またお会いしたいところです。 今回僕は、Coderとしては参加せず、基的に、プロジェクタの横でustream配信のお手伝いをしていました。カメラの性能が悪くてディスプレイがあまり見えなかったのと、マイクの方向がいまいちだったため、伝わりにくかったかもしれません。雰囲気だけでも伝わったかな? 見ていた方で、次回の参考のために指摘があればおねがいします。 このLiveCodingのCoderは5

    LiveCoding #5に行ってきました - はこべにっき ♨
    kdaiba
    kdaiba 2007/12/03
    才能のある人達ってのはうらやましいもんです
  • iPod touch向けのニコニコ動画のPodcastを生成する - はこべにっき#

    iPod touchが届いたー! この連休は家から出られなくなったので、iPod touchをいじり倒す予定です。 せっかくなので、Plaggerを使って、ニコニコ動画のマイリストから動画Podcastを生成してみました。ニコニコ動画 => Podcast => iTunes => iPod touch が自動できるようになるので、いつでも素敵動画が持ち歩けるように! 実際にやってみた ではまず、おもむろにお気に入りの動画をマイリストに登録します。いかにも怪しげなマイリストです。 このマイリストのRSSをもとにPlaggerで動画Podcastを生成します。Plaggerの野良プラグインに、Filter::FetchNicoVideoとFilter::FFmpegがあるのでこれを利用します。詳しくは後述。 できあがったPodcastiTunesではこんな感じに見えますよ。 ここまでくれば

    iPod touch向けのニコニコ動画のPodcastを生成する - はこべにっき#
    kdaiba
    kdaiba 2007/09/25
    お役立ち
  • GoogleCodeSearchで指定URL以下のコードを検索する - はこべにっき ♨

    はこべにっき# - GoogleCodeSearchでブログ上のコードを表示で触れたように、GoogleCodeSearchで、あるURL以下のソースコードを取得するのは少々メンドウです。 しかし、少し検索クエリを工夫すると、そこそこ正確にあるURI以下のソースコードを見つけることができます。たとえば、以下のようなキーワードを用いてGoogleCodeSearchで検索すると、このブログの記事を見つけることができます。 ^hakobe932/ package:"http://d.hatena.ne.jp"検索結果を見ると、このブログのコードが表示されているのがわかります。packageでドメインをしぼるのと、正規表現を用いてURLパス以外がマッチしないように、表現を限定しています。 この機能が簡単に利用できるようにブックマークレットを作ってみました。Google Code Search b

    GoogleCodeSearchで指定URL以下のコードを検索する - はこべにっき ♨
    kdaiba
    kdaiba 2007/09/03
    codesearch
  • GoogleCodeSearchでブログ上のコードを表示 - はこべにっき ♨

    未踏ユースでやってたブログ+コードな話題の関連で。未踏ユースのほうの成果は、今ちょっとごちゃごちゃしているのでまたの機会に。 みんな大好きGoogleCodeSearchですが、実はCVSやSubversionなどのソースコードリポジトリだけでなく、ブログに書かれているソースコードも検索できるんですね。しかも、それだけではなく、あるURL以下のソースコードの一覧の表示等もできるようです。これは、ちょっと面白い。 例えば、GoogleCodeSearchでは以下のようなページを表示することができます #はこべにっき内のソースコード はてな(http://d.hatena.ne.jp/)のコード さらに、このページのソースコードひとつひとつを見てみると、ちゃんと言語が判別されているんですよね。例えば、このページの最下部をみるとちゃんとPerlで書かれたコードであると判別されているのがわかります

    GoogleCodeSearchでブログ上のコードを表示 - はこべにっき ♨
    kdaiba
    kdaiba 2007/08/30
    ほんと,API公開して欲しい
  • CustomFeed::Nowaをあえて使わない方法 - はこべにっき ♨

    ナニシテル?がいらないなら、CustomFeedせずに自分のフレンドのRSSを集めてきて、Subscription::File => SmartFeedでも良い気がした。 plugins: - module: Subscription::File config: file: /tmp/nowas.txt - module: SmartFeed::All config: title: '[nowa] 新着記事' あーこれするとAtomのauthorがnobodyになるのかー。おしい。 CustomFeed::Nowaは「何分前」とかいう文字列から現時刻からの相対時間で日付を算出してるので、取得のタイミングによって日付が変わってしまう問題がある。Dedupedがうまくできなくなったりして困る。 ナニシテルはともかく、記事に関してはscrapeすれば日付情報とってこれると思うんだけど、RSSある

    CustomFeed::Nowaをあえて使わない方法 - はこべにっき ♨
    kdaiba
    kdaiba 2007/05/17
    参考になる
  • Web::Scraper便利! - はこべにっき ♨

    naoyaのはてなダイアリー - Web::Scraperを見て。 これはよさそう。ソース読んでみると単純に値を取得する以外にも、どうやら、配列で結果を受け取ったり、サブルーチンを渡して処理を委譲したりできるようなので、ためしにやってみよう。 use strict; use warnings; use Web::Scraper; use URI; use YAML; use Encode; my %result; sub parse_title { my $node = shift; my $text = $node->as_text; my $left = decode_utf8('『'); my $right = decode_utf8('』'); my ($nth, $title, $date) = $text =~ m/^\[(.*?)\]\s+$left(.*?)$right(.

    Web::Scraper便利! - はこべにっき ♨
    kdaiba
    kdaiba 2007/05/10
    使い方
  • Module::Starter::PBP - はこべにっき ♨

    週末のネタに向けてモジュールのスケルトンを作成。せっかくなので、Module::Starter::PBPでPBP validなコードを。 実際にスケルトンの作成をするのにはいくつか儀式が必要だった。まず、$HOME/.module-starter/configに以下のように書く。 author: YoheiFushii email: your@email_address plugins: Module::Starter::PBPこれで、楽する準備はできた。Module::Starter::PBPを使うにはテンプレートも必要なので、$HOME/.module-starter/で $ perl -M'Module::Starter::PBP=setup'とすればOK。あとは、 $ module-starter --module='Pretty'などとすれば、モジュールのスケルトンのできあがり。

    Module::Starter::PBP - はこべにっき ♨
    kdaiba
    kdaiba 2007/02/20
    やっぱこれからはこっち使うかな
  • MacPortsでステキなUNIXツールをインストール - はこべにっき#

    2011/5/22追記: 最近のオススメは、homebrewです。ぼくもいまはhomebrew使ってます。 先日、研究室にあたらしいMac Book Pro 17"が届いた。各種操作がいちいちキビキビ動いて快適すぎる。 このMacにも、うち的最重要MacアプリケーションのひとつであるMacPortsをインストールした。 MacPortsはFreeBSDのportsというパッケージ管理システムと似たようなことを、Mac OS Xでも行うためのソフトウェアだ。有名なコマンドラインツールはほとんどこれを使えば揃えることができる*1。うちが普段使っている、perlvimもzshもscreenも全部MacPortsでインストールしたもの。 Macでライブラリやツールがなくて困ったときはとりあえず、MacPortsに聞いておけばなんとかなることも多い(例: pygameってMac OS Xで動くんだ

    MacPortsでステキなUNIXツールをインストール - はこべにっき#
    kdaiba
    kdaiba 2006/12/11
    普段はソースからコンパイル
  • PlaggerとHyperEstraierでWeb履歴を検索 - はこべにっき ♨

    一日の大半をWebブラウジングに費やしているような人は、その知識がWeb上の文章が対応しているといっても過言ではない。いや、これは言い過ぎですね。 上のは言い過ぎにしろ、中途半端な知識があって「あー、それどっかのWebページでみたんだけどなー、どこだっけなー」とイライラするってのはありがち。そこで、自分の観たWebページの内容をインデクシングして、すべて検索できるようにすれば快適に違いない。より抽象的に言うと、自分の頭ん中に入りきらなかったものを溜め込んでおく、シンクのようなものがあれば便利だよなー、って感じ。 というわけで、Plagger + Subscription::BrowserHistory + HyperEstraierを使った、観たWebページ検索ツールを作ってみた。 実は、このツールを使うと、わりと危険なことが起こる可能性がある。このエントリー最後に書いた注意を読んでから試

    PlaggerとHyperEstraierでWeb履歴を検索 - はこべにっき ♨
    kdaiba
    kdaiba 2006/11/18
    ブックマークしたものから検索すればいいんでない?
  • Twistedをちょっと - はこべにっき ♨

    Perlを勉強する合間に、分け合って(というか授業の関係で)Twistedを使うことになった。しかし、あまりにも日語のドキュメントがなくて悲しい思いをしたので、自分のために肝の部分だけココにメモっておこうかと思う。 TwistedについてははTwistedスプリント - Python Developers Camp 2006 Summerが日語でくわしいところのかなり上位っぽい。 ほんとはTwistedはかなりいろんなことができるようなのだけど、うちも使いはじめたばかりなので、一番基的っぽいTCPによるサーバクライアントなコードをてっとりばやく書くのに必要なポイントだけを。 使うもの 以下の三つがあれば、とりあえずクライアントとサーバが書ける。 Protocol Factory reactor 最低限Protocolのコードを書けば良くて、Factoryとreactorは使うだけでも

    Twistedをちょっと - はこべにっき ♨
    kdaiba
    kdaiba 2006/11/13
    日本語解説の少ないのが難点
  • wantarrayの返り値 - はこべにっき ♨

    Perlベストプラクティス 5.8章のメモ。 wantarrayはコンテキストによって返り値がかわる。コンテキストには、リスト、スカラー、voidコンテキストがあるが、それらに対してwantarrayは、真、長さ0の文字列、undefを返す。なので、voidコンテキストであることを調べるには、definedを使わないとだめ。 croak 'Useless use of this in void context' unless defined wantarray;voidコンテキストでの不適切な構文の仕様を警告する例外を書くのは、Perlの世界ではヨクアルコトらしいけど、知らんかったんで。てか、voidコンテキストてほとんど意識してないわ。

    wantarrayの返り値 - はこべにっき ♨
    kdaiba
    kdaiba 2006/11/02
    考えたこともない
  • Google Docsの共同編集機能をつかってみた - はこべにっき ♨

    Google買収されたWritelyが先日からGoogle Docsとして利用できるようになってた。今日は学校の課題にグループで出すのがあったんで、このGoogle Docsを使った共同作業でレポート作成してみた。 機能的にはやはりよくできているなー、という印象。右クリック動作なんかもGoogle Docsがフックしてて、ちゃんとドキュメント内の画像右クリックするとGoogle Docsのメニューが出てくる。あとRevisionが自動的に管理されてて、単なる変更履歴だけじゃなく、複数人で編集してるときはだれが編集したのかもきれいに表示される。 で、このGoogle Docsの共同編集機能をつかって5人のメンバーでレポートを作った。この共同編集機能はなかなか洗練されてるんだけど、やはり複数人でひとつの文章つくるのはなかなかたいへんだった。以下、共同作業のためのメモ。 コミュニケーション重要

    Google Docsの共同編集機能をつかってみた - はこべにっき ♨
    kdaiba
    kdaiba 2006/10/16
    これが二人にとって最初のオンライン共同作業(違
  • SVN::Webいいねコレ - はこべにっき ♨

    SVN::Webいいよ、コレ。いや、超有名なのかもだけど。知らんかったので。 "Subversion repository web frontend"ということで、私のように、tracを単にWebリポジトリビュアーとしてか使ってない人には手軽でおすすめ。SVN::Web自体のリポジトリがSVN::Webでみれます。 シンプルゆえに設定もわかりやすくて、コマンドラインでsvnweb-installしたあとで、config.yamlに repos: myrepos: '/path/to/my/repos' yourrepos: '/path/to/your/repos'とか書くとすぐ使える。リポジトリを全部同じディレクトリに入れてる人は、 reposparent: '/path/to/repos/parent'とやると、/path/to/repos/parent以下のリポジトリを全部見てくれて

    SVN::Webいいねコレ - はこべにっき ♨
    kdaiba
    kdaiba 2006/10/06
    なるほど
  • Googleパーソナライズドホームに口を - はこべにっき ♨

    足してみた。 むしゃくしゃしてやった。それなりに後悔してる。

    Googleパーソナライズドホームに口を - はこべにっき ♨
    kdaiba
    kdaiba 2006/09/26
    GTalkに併せて口が動いたり,しない?
  • Catalyst進化してる - はこべにっき ♨

    結局学校の画題を作るのにCatalystを使うことにした。で、かなりひさしぶりにCatalyst触ったんだけどなにかと強力になってるね。以下は現在CPAN最新の5.7001の話。 Viewのレンダリング 昔のCatalystだと自分でRoot.pmのendアクションにViewにフォワードするように書かないとダメだった。 sub end : Private { my ( $self, $c ) = @_; $c->forward('MyApp::View::TT') unless $c->response->body; }という風。しかし、今のバージョンだと、 sub end : ActionClass('RenderView') {}とするだけで、よかれと思われるViewにforwardしてくれて、かなり簡単になった。Using RenderView for the Default Vie

    Catalyst進化してる - はこべにっき ♨
    kdaiba
    kdaiba 2006/09/21
    cssも作ってくれるんだ
  • 1