2012/05/31


やったーJavaScriptの動くMySQLできたよー - 愛と勇気と缶ビール

しばらく 積ん読 していたこの本をちょっと眺めてみたら、 MySQL のUDFって簡単に作れるんだなー、と思った && そういや V8 って ライブラリ として簡単にリンクできるはずだな、と思い出した...

http://d.hatena.ne.jp/zentoo/20110925/1316961032
Big Sky :: やったーJavaScriptの動くSQLiteできたよー

正誤表を書くのにしばらくこの本をちょっと眺めてみたら、SQLiteのUDFって簡単に作れるんだなー、と思った && そういやV8ってライブラリとして簡単にリンクできるはずだな、と思い出した ので、つい...

http://mattn.kaoriya.net/software/lang/c/20110926141218.htm
まぁ、単なるUDFですが。
mattn/mysql-mruby - GitHub
https://github.com/mattn/mysql-mruby
これをコンパイルしてpluginとして配置すると mysql> SELECT mrb_eval('[1,2,3].map {|x| "hello" + x}');
+-------------------------------------------+
| mrb_eval('[1,2,3].map {|x| "hello" + x}') |
+-------------------------------------------+
| ["hello1", "hello2", "hello3"]            |
+-------------------------------------------+
1 row in set (0.00 sec)

こんな事出来て幸せ!

あなたも matz テーブルの mruby フィールドに何か書き込んでみませんか!
Posted at by



2012/05/30


ソーシャル化したbit.lyの恥ずかしいリンクの消し方 - ぼくはまちちゃん!(Hatena)

こんな記事がありました! Big Sky :: bit.ly がソーシャルに生まれ変わって、皆とっても恥かしい事になる...

http://d.hatena.ne.jp/Hamachiya2/20120530/bitly
既に800件以上あるのでやってられなかったの巻。
今年もYAPC::Asiaは盛り上がりそうですね。僕行った事無いけど...
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use Config::Pit;
use JSON;

my $config = pit_get('bit.ly'require => {
    username => 'username on bit.ly',
    password => 'password on bit.ly',
});

my $req = HTTP::Request->new(
    POST => 'https://api-ssl.bitly.com/oauth/access_token');

$req->authorization_basic(
    $config->{username},
    $config->{password},
);

my $ua = LWP::UserAgent->new;
$ua->env_proxy;

my $res = $ua->request($req);
my $access_token = $res->decoded_content;

my $offset = 0;

my $base_url = "https://api-ssl.bitly.com";
my $url = "$base_url/v3/user/link_history?access_token=$access_token&limit=100";
while (1) {
    my $history = from_json $ua->get("$url&offset=$offset")->decoded_content;
    my @items = @{$history->{data}->{link_history}};
    last unless scalar @items;
    for my $item (@items) {
        unless ($item->{private}) {
            my $link = $item->{long_url};
            print "$link\n";
            #$res = $ua->get(
            #    "$base_url/v3/user/link_edit"
            #    ."?access_token=$access_token&link=$link&edit=private"
            #    ."&private=true");
        }
    }
    $offset += 100;
}
コメント外したらprivateになる予感。
試したこと無いので誰か試して...
あとsleep入れた方がいいと思うよ(最初から入れろコラ)。
Posted at by




githubのJSON APIを使って、リポジトリのコミットログを取得してバッヂを作ってみました。
呼び出しは $(function() {
    $('#github-badge').githubBadge({ repos : [
        {author: 'mattn',    name: 'gist-vim'  },
        {author: 'mattn',    name: 'gtktwitter'},
        {author: 'miyagawa', name: 'remedie'   },
        {author: 'otsune',   name: 'plagger'   }
    ]});
});
こんな感じ。
現状、スクリプトではcssを当てていません。外部cssで適当に弄って下さい。
現状APIからgistは取れなさそうなので、対応していませんがそのうちAPIが出来るやもしれませんね。
これからもう少しカッコよくして行くつもりですが、よろしければどうぞ。
実行画面は以下
mattn/jquery-github-badge @ GitHub
ソースはこの辺にあります。
Posted at by