このページは大阪弁化フィルタによって翻訳生成されたんですわ。

翻訳前ページへ


hide-k.net#blog
The Wayback Machine - http://web.archive.org/web/20100301080828/http://blog.hide-k.net:80/

界王拳がスムースに変換でけへんんについカッとなっちうことえりをホッてATOKに乗り換えたんや。結局辞書登録してるんや。お晩どす。

さて、このたび DeNA Technology Seminar #1 ちうのを会社で開催するっちうことになちう、その中で Inside mbga Open Platform ( Gadget Server ) ちうお題で話すことになったんですわ。

OpenSocialちうとアプリケーションの作り方とかの話がようけて、裏側の話ちうんはなかいなかな思うのでよかったら聞きにお越しおくんなはれ。会社を首にならへん程度に話せたらなー思うで。

まだ詳細は決まってへんねんが、懇親会もあるんでよかったらわいと握手!

あと、zigorou先生が気合いを入れてもろたエンジニアブログも始まったんや。わいもそのうちネタができたら書けたらなーとか思うてよるさかいに、ウチも是非。

年始から5kgほど減量したんやけど、先日飲み会で某メガネダンディーなエンジニアに「ホンマに痩せたのー?」と嫌ちうほど首の肉をつまんまれ泣きそうになったんですわ。お晩どす。

今更感がとってもおますが栗原はんに触発されて、Arduinoをこーたんや。

RIMG0509.JPG

Arduinoとはフィジカルコンピューティングのためのオープンソースプラットフォーム...アラフォー的に一言でぬかすとなんちうか、ようみなはんいわはるとこのマイコンや。

デジタルIOピンとアナログIOピンを備えてて、ここにフィジカルデバイスをないで遊べるゆう代物や。

今風なのがブレッドボードをつこうたパッチングでデバイスをつなぐのでハンダ付けがいらへんことと、USBポートを備えてて、ここからスケッチと呼ばれるプログラムをアップロードしたり電源を取ることができまんねん。

また、シールドと呼ばれる拡張キットもあって親亀小亀よろしゅうピンをバイパスして乗っけて拡張するっちうことができまんねん。

RIMG0511.JPG

ソフトウェアの方はプログラム...とちごてスケッチをファミコン...おっとちゃうわ、パソコン上のIDEでProcessingちうCに似たような言語で書いてUSB経由でアップロードする事ができまんねん。

公式ライブラリだけやのうて、有志がライブラリを書いて発表してくれてて、DHCPやとかMIDIコントロールやとか、Twitterクライアントまでおます。ライブラリはC++で書くみたいちうわけや。

で、最初に買ったんが


Arduinoをはじめようキット
スイッチサイエンス
売り上げランキング: 619

本体のArduino Duemilanove 328、ブレッドボード、ジャンパワイヤ、抵抗、LED、スイッチ、光センサが入ってまんねん。これだけあれば十分遊べまんねん。4200円。


Arduinoイーサネット・シールド
スイッチサイエンス
売り上げランキング: 5375

やっぱりインターネッツと繋がりたいですわや。4200円。


Arduinoをはじめよう
Arduinoをはじめよう
posted with amazlet at 10.02.11
Massimo Banzi
オライリージャパン
売り上げランキング: 3193

Arduino自体にはマニュアルとかは一切ついてへんや。Arduinoの哲学から例、リファレンスまでついとるからあってもええ思うで。オライリー。2100円


ぜええんぶひとつのこらず合わせても1万円ちょいちうわけや。安いちうわけや。

実際に使うにはまずArduino IDEをダウンロードしてPCにインストールしまっせ。
後は本体に色々デバイスをないで、PCとUSBで接続して、スケッチを書いてアップロードするだけ。超簡単。

拡張ライブラリを使いたい場合にはダウンロードしてArduinoのディレクトリに展開しまっせ。(Macやったら /Applications/Arduino.app/Contents/Resources/Java/libraries/)。

とりあえず本に書いてあるもんを一通りやるだけでもごっつう楽しいや。
イーサーネットシールドがあればclouderはんがやっとるみたいにプロキシーを走らせて、それと通信さしたら一々ArduinoでプロトコルをしゃべることもなくIRCなんかとつなげんのも簡単にできるのでこれまた楽しいや。

逆にサーバーのライブラリもあるんでサーバーとして動かす事も可能。試しにクライアントがつながったらLEDを点灯させるサーバーを書いてみたらこないな感じ。シンプル。

#include 

#define LED = 13

byte mac[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
byte ip[] = { 192, 168, 0, 1 };
byte gateway[] = { 192, 168, 0, 254 };
byte subnet[] = { 255, 255, 255, 0 };

Server server(1919);

void setup() {
  Serial.begin(9600)
  pinMode(LED, OUTPUT);
  Ethernet.begin(mac, ip, gateway, subnet);
  server.begin();
  Serial.println("Server Start");
}

void loop() {
  Client client = server.available();
  if (client && client.connected()) {
    degitalWrite(LED, HIGH);
  } else {
    degitalWrite(LED, LOW);
  }
  delay(100);
}

久々に秋葉原行ってセンサーか何ぞこーてこようやろか。

相変わらへんし、題名にセンスがおまへん。お晩どす。

さて、ようやっとローンチしたモバゲーオープンプラットフォームやけど、そやけどアンタ、仕組み的にはmixiはんのモバイル版とほぼ同じアーキテクチャで Gadget Server がプロキシー的な役割をする感じになってまんねん。

図面1

大人の事情がごっつう反映された仕組みなんやけど、この仕組みでどエライ重要なのがGadget ServerからのリクエストをSAPがいかに信頼するかちう部分や。なんちうか、ようみなはんいわはるとこの 2-legged OAuthでAuthorizationヘッダに含まれるOAuth Signatureの検証する部分。その部分のコードスニペットをご紹介。(mixi 用んは公開してええかどうかわからんのでモバゲー向けだけ)

use OAuth::Lite::ServerUtil;
use OAuth::Lite::Util qw/parse_auth_header/;
use CGI;

my $consumer_secret = 'YOUR_CONSUMER_SECRET';

sub validate_signature {

    my $cgi = CGI->new;

    my ($realm, $params) = parse_auth_header($ENV{HTTP_AUTHORIZATION});

    for my $key ($cgi->url_param) {
        $params->{$key} = [$cgi->url_param($key)];
    }

    if (uc $cgi->request_method eq 'POST'
        && $cgi->content_type =~ m{^\Qapplication/x-www-form-urlencoded})
    {
        for my $key ($cgi->param) {
            $params->{$key} = [$cgi->param($key)];
        }
    }

    my $util = OAuth::Lite::ServerUtil->new(strict => 0);
    $util->support_signature_method('HMAC-SHA1');

    return $util->verify_signature(
        method          => $cgi->request_method,
        url             => $cgi->url,
        params          => $params,
        consumer_secret => $consumer_secret,
        token_secret    => $params->{oauth_token_secret},
    );
}

Apacheで動かす場合にはCGIからAuthorizationヘッダを取得するっちうことがでけへんので mod_rewriteで

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP:Authorization}  ^(.*)
RewriteRule ^(.*)$ $1 [e=HTTP_AUTHORIZATION:%1]

こないな風にせな環境変数からは取れへん。

Net::OAuthちうモジュールもあるけど個人的にはlyokato氏謹製のOAuth::Liteの方が圧倒的に使いやすいのでこっちをつこうてまんねん。

で、このまんまmixiはんで動くかちうと、そうでもなく両者の間には若干差があって、mixiはんは純粋な 2-legged OAuth なんやけど、モバゲーの場合は若干パラノイア的で、Gadget Server がリクエストごとに発行する Access Tokenが含まれるため、それも含めて検証する必要がおます。あとPOSTの場合の挙動がちーとばかしちゃうかも。

ちうか、この部分って毎回検証する必要があんねんから、WAFやApplicationちうよりはmod_auth_*とかPlack::Middlewareとかで何とかするレイヤーな気がしてならへんさかい、そのうち作りたいな。

忙しうて出られへんかった会社の新年会で牡蠣にあたってバタバタと人が倒れたと聞き、「天罰やったら...」と心の中で呟いてもうて反省してんわいや。お晩どす。

牡蠣と言うたら、先日広島のお土産でかき醤油なるもんをもろたんですわ。

RIMG0504.JPG

忙しうて自炊する暇へんかったのやけど、せっかくもろたので今日の朝飯の納豆に使うてみたちうわけや。

RIMG0507.JPG

ふーん。こないなもんかーと思て、ぺろっと直接なめてみると、意外としょっぱいちうわけや。醤油ちうか麺つゆに近いちうわけや。

やったらばと、豆腐があったんで冷奴にしてんだんや。

RIMG0505.JPG

な、なんやこれがホンマにってーな...?

うまい!

なんやろ。豆腐やとしょっぱいかいな思ったらさらさらそないなことあらへんし、ほんのり甘うてとにかくおいしおます。

こらと思て、目には目を、歯に歯を、牡蠣には牡蠣やろ。っちうことで牡蠣をこーてきたちうわけや。
ホンマは生でいきたかったんやけど、あたったらまじで笑えへんのでバターと白ワインでソテーにして食べたちうわけや。

RIMG0508.JPG

まいうー。そやけど、ちーとばかしバターが強すぎてようわからん。生牡蠣やともっともっともっともっともっともっともっともっともっとおいしい予感はぷんぷんしたさかい、もしやと思て刺身をこーてきたちうわけや。

RIMG0506.JPG

なんやこれ!超うまい!!!

ごっついおいしさにもう一回スーパー行って安くなりよった刺身こーてきてしもた。

ネットで調べてたら卵がけご飯にも合うらしおます。うん。合うやろな。直接なめたら結構辛いくせに、料理に合わせて出たり隠れたりする空気読める系の調味料っぽいちうわけや。

ちうわけで、かき醤油、調べたら280円くらいでリーズナブルやからお勧めや。


かき醤油 卓上用 | アサムラサキ

正月もとっくに終わっとるんに何を去年にしがみついてんねんやと言われそうやけど、そやけどアンタネタがあらへんので2009年に印象に残ったレコード10枚をご紹介。順不同や。


2010010701.jpg
Floor on the Intelligence / Untouchable [Extended Mix]
前に紹介した一枚。
メロディーと歌詞が泣けまんねん。


2010010702.jpg
Inner City Jam Orchestra / Sakura
これまたよりどエライ昔に紹介した一枚。
ピアノとストリングが相変わらず絶品。


2010010703.jpg
Michael Wood / Natural High [Dave Boynes Remix]
発売は2008年の暮れやった思うけど、去年通してかけてたんや。
この手のピアノトラックはアガるし使いやすいので重宝しまっせ。
他のよりボーカルが前に出てんねんこのリミックスがいっちゃん好きやろか。


2010010704.jpg
Lady GaGa / Poker Face [Space Cowboy Remix]
去年大ブレークしたLady GaGa。まさかのSpace Cowboy Remix。
あのキャッチーなメロディーをSapce Cowboyがミックスしてんねんさかい盛り上がりが尋常やないや。


2010010705.jpg
Calvin Harris / Flashback [Eric Prydz Remix]
80'sっぽいOriginal もええけど個人的にはあえてこっち。
中盤の引っ張り方とええ良うも悪うもEric Prydzなんやけど、このシンセは病み付きになったんですわ。


2010010706.jpg
Moony / I Don't Know Why [Jerome D'isma-Ae Remix]
Airplaneは去年も引き続きようけ買ったレーベルやった。
Moonyの伸びのあるボーカルははやっぱええや。


2010010707.jpg
Paul Keeley / Doormatica
去年はこのAnjunadeepちうレーベルを知れたのが大きかったや。
トランスレーベルやけど、結構メロウなのがようけて何枚かまとめ買いしましたわ。
中でもこらオノレのセットにも合うのでお気に入り。
トランシーなんはあんまり聴かいないのやけどこのレーベルんは好きや。


2010010708.jpg
Groove Invaderz / Keep Risin [Kid Massive Vocal Mix]
クラシックなボーカルハウスが好きなわいにストライクど真ん中。
Original もええやけど、そやけどアンタこっちの方がシンセが効いててアガるので好きや。


2010010709.jpg
Till West & Eddie Toneick VS Alexandra Price / Hi 'n' Bye
Alexandra Priceも好きなボーカルの一人。
大きい箱が似合いそうなアンセムやけど、どこぞ憂いを感じるメロディーは彼女の声にぴったり。


2010010710.jpg
World Sketch / Wonderful feat.Jonathan Mendelsohn [Daishi Dance DJ tour remix]
順不同って書いたんやけど去年のベストトラックはこれ。
キャッチーで大きな展開は何回聴いてもええす。
DD節全開のピアノトラックも気持ちええや。


去年は結構当たりが多かった...ちうかはずれが少へんかった印象や。
困ったんが忙しうていらへんのを売りに行く暇が作れのうてレコードがあふれてきたこと。
今年は整理せななぁ。

明けましておめでとうおます。

きょうび、blogさぼり気味や。
去年60半ばを過ぎてblogを始めたおとんは毎日更新してて、さすが元物書きだなぁと感服してん今日きょうびや。

さて、去年のわいはと言おりますと夏に人生3回目の転職をしましたわ。最初の職場から独立して以来、toB な仕事が多かったんやけど、そやけどアンタ、久々に toC な仕事に就きましたのや。しかも携帯がメインで結構なトラフィックを持っとるとこで、エンジニアリング的にもビジネス的にも前職とはほぼ対極にあるんで勉強になることが多いや。

今手がけてんねんんは新規事業やから、ごっつう刺激的なんやけど何ぶんスケジュールがごっつうタイトなおかげで日々忙しく過ごしてまんねん。

わて生活ではほぼ毎日のように某お酒大好きエンジニアはんと飲み歩いたおかげ、かどうかは定かやおまへんが5kgほどさらに増量しましたわ。ちーとばかしだけ危機感感じてまんねん。ちーとばかしだけやけど。

あと阪神とレッズは...今年は奮起を期待しまっせ。まじで。

今年はとうとう大台に乗る年でもあるんで、色々チャレンジして行けたらなー思ってまんねん。

ちうわけで、本年もよろしゅうお願い申し上げまんねん。

LIVE AT PACHA IBIZA mixed by sugiurumn&DJ EMMA
オムニバス
エイベックス・エンタテインメント (2008-08-06)
売り上げランキング: 76044


久々にmix CDを買ったんで久々に更新。

95年くらいに芝浦GOLDで DJ EMMA のプレイを聴いたのがわいと House の出会いで、本日この時までロックばっか聴いとったわいにはそらそら衝撃やった。おもちゃ箱をひっくり返したような選曲と mix やごく影響を受けたDJの一人や。Velvet や Yellow にもよう行ってたなー。

そないなEMMA と sugiurumn それぞれのmixを収録した2008年発売の二枚組み。

EMMA の方はプログレッシブなんから始まちう、テックハウスをははんで終盤にピアノもんでケツに The Wisperer in Germination で〆るゆう、EMMA House の王道のような mix。

sugiurumn の方はブリブリなプログレッシブハウスが中心で「らしい」選曲。EMMA のとは逆に頭からど派手な mix。

二枚ともIbiza の空気を感じられはる(行ったことへんけど) mix なだけに夏にこーておけばよかった思った一枚やった。

よりどエライ昔から個人的にLDAPを導入してまんねんが、意外と忘れがちやから備忘をかねてメモるんや。

昔のメモやから今と挙動がちゃうかもしれしまへんがご了承おくんなはれ。OSはCentOS 5や。

まずはOpen LDAPのインストールと設定をしまっせ。

関連パッケージのインストール

$ yum -y install openldap openldap-servers openldap-clients openldap-devel


ディレクトリマネージャのパスワードを生成する

$ /usr/sbin/slappasswd -h {SSHA}
New password:
Re-enter new password:

slapd.confの設定

/etc/openldap/slapd.conf
...snip...

access to attrs=userPassword
 by self write
 by anonymous auth
 by * none
access to *
 by self write
 by * read

...snip...

suffix      "dc=example,dc=com"
rootdn      "cn=Manager,dc=example,dc=com"

...snip...

rootpw さっき作ったパスワード

...snip...

ldapd.confの設定

/etc/openldap/ldap.conf
...snip...

URI ldap://127.0.0.1/

...snip...

slapdの起動と自動起動設定

$ /etc/init.d/ldap start
$ /sbin/chkconfig ldap on

既存アカウントの移行をします

移行ツールの設定

/usr/share/openldap/migration/migrate_common.ph
-- snip --
# Default base
$DEFAULT_BASE = "dc=example,dc=com";
-- snip --

base, passwd, groupをエクスポート

$ /usr/share/openldap/migration/migrate_base.pl > base.ldif
$ /usr/share/openldap/migration/migrate_group.pl /etc/group > group.ldif
$ /usr/share/openldap/migration/migrate_passwd.pl /etc/passwd > passwd.ldif

適当に整形してLDAPサーバにソーニュー(うひひひ...おっとカンニンや)

$ ldapadd -h localhost -x -D "cn=Manager,dc=example,dc=com" -W -f base.ldif
$ ldapadd -h localhost -x -D "cn=Manager,dc=example,dc=com" -W -f passwd.ldif
$ ldapadd -h localhost -x -D "cn=Manager,dc=example,dc=com" -W -f group.ldif

確認

$ ldapsearch -x -D "cn=Manager,dc=example,dc=com" -W -b "dc=example,dc=com" "uid=hide"
Enter LDAP Password:
# extended LDIF
#
# LDAPv3
# base <dc=example,dc=com> with scope subtree
# filter: uid=hide
# requesting: ALL
#

# hide, People, example.com
dn: uid=hide,ou=People,dc=example,dc=com
uid: hide
cn: hide
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
--snip--

PAM認証先をLDAPに向けまんねん

関連パッケージのインストール

$ yum -y install nss_ldap nscd

nscd(ネームサービス)の起動と自動起動の設定

$ /etc/init.d/nscd start
$ /sbin/chkconfig nscd on

認証をLDAPに向ける

$ /usr/sbin/authconfig-tui

            │  ユーザー情報         認証                          │
            │  [*] キャッシュ情報   [*] MD5 パスワードを使用      │
            │  [ ] Hesiod を使用    [*] シャドウパスワードを使用  │
            │  [*] LDAP を使用      [*] LDAP 認証を使用           │
            │  [ ] NIS を使用       [ ] Kerberos 5 を使用         │
            │  [ ] Winbind を使用   [ ] SMB 認証を使用            │
            │                       [ ] Winbind 認証を使用        │
            │                       [ ] ローカル認証は十分や    │
            │                                                     │

...次へ...

            │                                                     │
            │            [ ] TLS を使用                           │
            │  サーバー: ldap://127.0.0.1/_______________________ │
            │ ベース DN: dc=example,dc=com______________________ │
            │                                                     │

...OK...

LDAPサーバが落ちててもローカルで認証できるようにする

/etc/ldap.conf
--snip--
#bind_policy hard
bind_policy soft
--snip--

最初のログインでなあんもせんとホッタラかしといてもホームディレクトリをスケルトンから作るようにする

/etc/pam.d/system-auth-ac
--snip--
session     required      pam_mkhomedir.so skel=/etc/skel umask=0022

余計なお世話やけど、システム認証をLDAPに依存する以上、slapdが落ちたら一般アカウントでのログインが出来なくなるんですわ。また、通常rootアカウントでのsshのアクセスは認められておらへんさかい、コンソールからログインしてslapdを立ち上げる必要がおます。

次にWebDAV経由でのSubversionの認証をLDAPに向けまんねん

mod_authz_ldapのインストール

$ yum install mod_authz_ldap

mod_dav_svnの設定

認証はLDAPでdevグループにのみ閲覧・変更権限を与える

/etc/httpd/conf.d/subversion.conf
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

LDAPTrustedGlobalCert CA_DER /etc/pki/tls/certs/ca-bundle.crt
LDAPVerifyServerCert Off

  DAV svn
  SVNParentPath /var/repos

  AuthType Basic
  AuthName "subversion authentication"
  AuthBasicProvider ldap
  AuthLDAPGroupAttributeIsDN off
  AuthLDAPGroupAttribute memberUid
  AuthLDAPURL ldaps://localhost/dc=example,dc=com?uid?sub?(ObjectClass=*)

  Require ldap-group cn=dev,ou=Group,dc=example,dc=com

Auth*の部分は普通のhtaccessとして使えまんねん。

次にTracの設定や。

LdapPluginのインストール

 
$ svn export http://trac-hacks.org/svn/ldapplugin/0.10/ ldapplugin
$ cd ldapplugin
$ python setup.py install

trac.iniの設定

/var/trac/conf/trac.ini
... snip ...
[components]
trac.ticket.report.* = disable
ldapplugin.* = enabled

[ldap]
enable = true
host = 127.0.0.1
port = 389
basedn = dc=example,dc=com
user_rdn = ou=People
uidattr = uid
group_rdn = ou=Group
groupmemberisdn = false
groupname = posixGroup
groupmember = memberUid
manage_groups = true
store_bind = true
bind_user = cn=Manager,dc=example,dc=com
bind_passwd = リポジトリマネージャのパスワード
... snip ...

mod_pythonの設定

/etc/httpd/conf.d/trac.conf
###
### Sample Trac configuration taken from http://trac.edgewall.org/wiki/TracModPython
###

### The recommended Trac web interface requires mod_python


### Create your Trac environments as subdirectories of /var/trac
### They will appear in a listing on your website at /trac/, and be available
### at /trac/PROJECTNAME/

  SetHandler mod_python
  PythonInterpreter main_interpreter
  PythonHandler trac.web.modpython_frontend
  PythonOption TracEnvParentDir /var/trac
  PythonOption TracUriRoot /trac


### Use htpasswd to add Trac accounts to the AuthUserFile
LDAPTrustedGlobalCert CA_DER /etc/pki/tls/certs/ca-bundle.crt
LDAPVerifyServerCert Off

   AuthType Basic
   AuthName "trac"
   AuthBasicProvider ldap
   AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?sub?(ObjectClass=*)
   AuthLDAPGroupAttribute memberUid
   AuthLDAPGroupAttributeIsDN off
   Require ldap-filter objectCLass=posixAccount




再起動

/etc/init.d/httpd restart

LDAPスキーマの追加

/etc/openldap/schema/trac.schemaを追加

/etc/openldap/schema/trac.schema
# 1.3.6.1.4.1.15527 is reserved. Do not hijack it
# Please see http://www.iana.org/cgi-bin/enterprise.pl

# Attribute type definitions
attributetype ( 1.3.6.1.4.1.15527.143
                NAME 'tracperm'
                DESC 'Trac Permission'
                EQUALITY caseIgnoreMatch
                SUBSTR caseIgnoreSubstringsMatch
                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32} )

# Class definitions
objectclass ( 1.3.6.1.4.1.15527.8
              NAME 'tracUser'
              DESC 'Regular user with Trac permission'
              SUP top
              AUXILIARY
              MUST ( uid $ cn $ userpassword )
              MAY  ( tracperm $ sn $ description ) )
objectclass ( 1.3.6.1.4.1.15527.9
              NAME 'tracGroup'
              DESC 'Trac permission for groupofnames'
              SUP top
              AUXILIARY
              MAY  ( tracperm ) )

/etc/openldap/slapd.confを編集

/etc/openldap/slapd.conf
...snip...
include     /etc/openldap/schema/trac.schema
...snip...

slapdの再起動

$ /etc/init.d/ldap restart

tracの権限を与えるGroupのObjectClassにtracGroupを追加する

権限を与える

tracのホストで
$ trac-admin /var/trac/dev permission add @dev TRAC_ADMIN

これでLDAPのdevグループに参加してんユーザーでTracにログインすると管理画面からLDAPのグループやユーザーに対して権限をマッピングするっちうことができるようになるんですわ。

個人的にはアプリケーション間でさえOpenIDだーなんやーとSSO化されてんねんんやから社内ツールなんかはみなLDAPで統合してまえばええ思うで。

ザ・テレビ欄 1975~1990
ザ・テレビ欄 1975~1990
posted with amazlet at 09.09.26
テレビ欄研究会
ティー・オーエンタテインメント
売り上げランキング: 11366


新聞記者の息子やから小さいころから家には主要4誌が溢れとったんや。
トコロがオノレはちうと真っ先に見るんはテレビ欄、続いてスポーツ欄、三面記事と漫画でケツに義務付けられとった天声人語を読んでおしもて、といった読み方をしてて、どんやけ親不孝者なんやといった感じやった。もともとリアルの世界より小説や物語の文章に惹かれるタイプやったんやけど、そやけどアンタ、もうちーとばかし読んでおけばよかったかいなとか思とります。

で、この本やけど、そやけどアンタ、そないなわいがこよなく愛したテレビ欄がひたすら載っとる資料的な本や。時代的にもオノレの世代にぴったりで中々懐かしかったや。コラムではその時の時代背景やらなんやらが取り上げられてて、「あーそうやて。そないなことあったよや。」と楽しめたんや。

個人的に興味深かったんがかったんが90年代初頭まで、毎日じぇったい何ぞしらのアニメが7時?8時のゴールデンタイムに放送されとったことや。時代によっては7時代に4本もアニメが流れとる時代もおました。そーいうたらそうやったな思うのやけど、今となっては考えられへんですわや。テレビがボウズの娯楽の王様やってんなちうことがようわかったんや。同様に懐かしかったんがプロレスがゴールデンタイムに毎週やっとったこと。これも娯楽の時代の流れを感じたんや。

あと地味におもろいのが3時代のワイドショーのタイトル。その時の芸能界やはやってたダイエット法やとか時代背景をちゃう角度から見れておもろいや。

この年代以外にも1954~1974 と1991~2005があるんで、オノレの世代に合わせて見るとおもろい思うで。

ザ・テレビ欄0 1954~1974
ザ・テレビ欄0 1954~1974
posted with amazlet at 09.09.26
テレビ欄研究会
ティー・オーエンタテインメント
売り上げランキング: 12994
ザ・テレビ欄 2 1991~2005
テレビ欄研究会
ティー・オーエンタテインメント
売り上げランキング: 22269

YAPC::Asia 2009でmodern Catalystと称してトークをしてきましたのや。

多分Perl史上良うも悪うも最もようけの人が開発、利用に携わったWeb Application Frameworkで、未だに現場でようけ使われとるCatalystがメジャーバージョンアップをしたさかいその辺を話してきましたのや。

Moose-ified = modernちう訳ではおまへんし、オノレはMoose廚ではおまへんがようけの時間を割く結果になったんですわ。ホンマは抽象化やTest周りやおすすめのPlugin/ComponentとかTipsとかDBIC周りにも触れたかったんやけど、そやけどアンタ20分では無理やったんで、またの機会に。ケツの方でちらっとだけPSGIにも触れさせてもうたのや。

今年もPerl hackersの祭典、YAPC::Asiaが始まったんや。


RIMG0383


スライドを1文字も書いておらへんんに前夜祭で盛大に飲んでしもて、朝何とか早起きして草稿を作ちう、発表の5分前まで書いて発表ちうとんでもへん綱渡りをしたんやが、何とかオノレのトークは終わったんや。スライドの方は後ほど公開したい思うで。

ちうわけで、猛烈に眠いんやけどここからは気楽に楽しもう思うで。

RYUDO
RYUDO
posted with amazlet at 09.08.31
Inner City Jam Orchestra
PICTUS (2009-08-26)
売り上げランキング: 7241


きょうびJapanese Houseしか聴いてへんやろ疑惑がおますが、そないなことおまへんよ。80's洋楽ブームがオノレの中で再来しててDuran Duranばっかり聴いとりまんねん。

とかええつつ、またまたJapanese House(でくくるんは失礼かいな)の紹介になっちゃおるんやけど、Inner City Jam Orchestraの1stアルバムが届きましたのや。

I.C.J.O.は牧野雅己氏を中心としたDJ、ピアノ、ストリングちう構成のライブユニットで、一回ライブに行ったことあんねんけど楽曲もさることながらパフォーマンスも圧巻で、是非ライブで見てほしいユニットや。

で、中身はちうと、1曲目は3rdシングルのSakuraやけど、そやけどアンタ、シングルとは違い美しいピアノのイントロがついててちーとばかしさぶいぼ物やった。4thシングルの空なんかも入って2枚組でお得なアルバムや。

が、個人的にはやっぱりWe Got The Love 2007 [DJ EMMA & SOBAJIMA remix]でんなー。オリジナルも含めて去年もリミックスが出とりますが、オノレのDJ EMMA贔屓を差し引いてもベストや。

9/5には渋谷のHARLEMでリリースパーティーが開かれるみたいやから行ってみてはいかがやんか。

このトコ、MySQL と Catalyst と 豆しば 関連のエントリをいろいろ書いとりますが、そら、スケールアウト可能で、かつ、Catalystで動くアプリケーションを、今まさに作っとる、ちう理由があるからや。

そやけど、ブログエントリやとどないしたかて細切れになるさかい、一連のモジュールやプログラムを組み合わせて、どないしてスケールするウェブアプリケーションを作るんかちう話を YAPC::Asia 2009 でさせてもらうことにしましたわ。

YAPC::Asia 2009 は9月10日(木)と11日(金)の2日間、東京工業大学大岡山キャンパスで開催されはります。今日からチケット販売も始まったんで、興味のある方はお越しもろたら、思うで。

【参考文献】

お台場のアクアシティで豆しば祭りやっとるらしいよ。

ちうわけで、これまた先週末のことになるちうワケやが、ガンダムついでにお台場のアクアシティに行ったら豆しば祭りやってたさかい行ってきて癒されてきましたのや。

色々グッズが売っとる中、豆しばCM映像がずぅぇえええぇぇええんぶ収録された限定DVDが売ってたさかいしっかりゲットしてきましたのや。

RIMG0361.JPG

お気に入りはこれやろか。

かわゆす。

きょうびCatalystをご無沙汰してたさかいリハビリがてらJPA セミナーでも紹介されとったCatalyst::Controller::ActionRoleをいろてんだんや。

要はこのコントローラを継承するっちうことでMoose::Roleで書いた機能をメソッド attributeで呼べるようになるんですわ。

lib/MyApp/ActionRole/Bar.pm
package MyApp::ActionRole::Bar;

use Moose::Role;

after execute => sub {
    my ($self, $controller, $c) = @_;

    my $body = $c->response->body || '';
    $c->response->body($body . 'Bar');
};

1;
lib/MyApp/Controller/Foo.pm
package MyApp::Controller::Foo;

use strict;
use warnings;

use parent 'Catalyst::Controller::ActionRole';

sub bar : Local Does('Bar') { }

1;

で、http://localhost:3000/foo/barにアクセスするとBarと表示されはります。

さらに

lib/MyApp/ActionRole/Baz.pm
package MyApp::ActionRole::Baz;

use Moose::Role;

before execute => sub {
    my ($self, $controller, $c) = @_;

    my $body = $c->response->body || '';
    $c->response->body($body . 'Baz');
};

1;

を追加して

-- snip --

sub bar : Local Does('Bar') Does('Baz') { }

-- snip--

とかして、アクセスするとBazBarと表示されはります。
こないな風にMoose::Roleとmethod modifiersを利用して実装を切り離して再利用するっちうことができまんねん。
ActionClassより大分エレガントや。

例あげたろか、たとえばやなあ


sub confirm : Local Does('Validate') { .. }
sub submit : Local Does('Validate') { .. }
 

とか使い方がありそうや。

プロフィール

アーカイブ

きょうびのコメント

flickr

www.flickr.com

Last.fm