DBアクセス関数について

だいたい新しい言語だとDBにアクセスするのにどの関数使ったら良いかよくわかんなかったり、取ってきたデータがどういう形式かよくわかんなくて躓くことがよくあると思います これはひとえにライブラリ作ってる奴らがクソなのが悪いです
PHPもご多分に漏れず(とはいってもだいぶ簡単なのですが)、方法が色々あって、理解の足りない人にはとても大変です
多分最短距離は、過去記事に書いてる

$sql = 'select id, name from hoge';
$rs = $db->query($sql);
$hoges = pg_fetch_all($rs);
$smarty->assign('hoges ', $hoges);

だとおもうのですが、コネクションも含めるとすげーめんどくさいですね
殆どの場合、ほしいのは結果の連想配列の配列であって、リソースIDなんていらんので、これはラッピングしてしまいましょう
うちではオレオレフレームワークに絡めてDBアクセスライブラリも自作しておりまして、こんなかんじになります

$sql = ' select id, name from hoge ';
$smarty->assign('hoges', DB::getdb('hogedb')->query_rows($sql));

connectionstringをini化して名前で呼び出せるようにしているのは大前提です
それなりの複雑なシステムではDBは2つ以上あると思いますが、複数のDBコネクションを同時に扱うとき、大体のシステムではDBクラスのインスタンスをぼこぼこ作って散らかす事が多いように思います
$db_hoge = DB('hoge');
$db_fuga = DB('fuga');
ださいですので、DBクラス内にDBインスタンスキャッシュリストを作っておくわけです
query_rows()はquery()とpg_fetch_all()をラップしています 空だとfalseが戻ります
関数を作るときは、異常系の正常系ならばfalseが戻るのが一番よいです
smartyの場合はfalseであれば無視してくれますし、通常のロジックであっても

if ($rows = DB::getdb('hogedb')->query_rows($sql)) {
  foreach ($rows as $row) {
    //なんかしょり
  }
}

のようにできます
ちなみにPHPでは空の配列もfalseとして評価されるので、SQLがおかしくてエラーでも、SQLは正しくて結果が0件でも、どちらでもロジックには影響がでません SQLがおかしいのは適当にあとでエラーログを見てちまちまデバッグしてね

ちなみに結果が一行であることが明白な場合はquery_row(), 1行1カラムというのが明白ならquery_value(), 1カラム複数行で1次元配列が欲しい場合にはquery_values()など作っておくと後加工がいらずとても便利でよいです

というようなライブラリをもうかれこれ5年くらい使ってるのですが、井の中の蛙なのか、これより簡単なDBアクセスライブラリに出会ったことがないので、もししぬほど簡単なのがあったら教えて下さい

公衆無線LANマップがwi2 300に対応しました


実は、もうずっと前から、wi2の中の人や、一般ユーザからのおたよりで追加リクエストがあったのですが、つい放置してました。
なんとなくやる気になったので金曜土曜を使ってえいやーと作業したところ、元々20000件くらいしかなかったところに30000件も増えてまじわろた。
そんでうちの近所みたら超便利そうなんですけど。もうBBモバイルポイント解約することにします。
そしてまた気が向いたらどんどんサービスの種類追加します。

あと、最近OAuthの使い方とかも覚えて、置くだけ簡単ライブラリみたいなものも作ったので、機会を見てtwitterログイン機能とかつけばいいなあ。

ありむーが知人にセクシー写真集を貰って悩んでいる

ありむーが、知人である喪服ちゃんに妄撮をもらって悩んでいる。
http://lunaticprophet.org/archives/5405
なぜ「知人がズリネタになる=格下げされる」のだろう。これはありむーがsexにネガティブに捉えているからにほかならない。なぜsexに対してネガティブなのか。それはありむーが童貞だからである。

ありむーにとって童貞はアイデンティティである。童貞がアイデンティティであるありむーにとって、sexは天敵である。アイデンティティを保つため、ありむーはsexを永遠に敵視しなくてはならない。

しかし、俺はこれはおかしいと思う。そもそも「童貞」なんて、アイデンティティたりえるのだろうか?

ありむーをはじめ、「童貞」にアイデンティティを持つ男共の成り立ちはこう推測できる。

基本的には童貞は捨てたいものである。sexとかしたいし。人間は理想と現実に乖離があるとストレスを感じるので、sexしたいのにできない男は「俺はなんと無能なんだ」と苛まれるが、ギャップを補正できないと、理想を現実に合わせようとする。理想=童貞とすることで己のストレス源を絶つわけである。こうなると童貞こそが正しいわけだから、sexはネガティブなものとなる。しかし、もしありむーが妄撮をネガティブ視するのであれば、喪服ちゃんの活動のほとんどは否定されなければならない。

  • 喪服ちゃんは、なぜありむーにセクシー写真集を渡したのか?

喪服ちゃんはsexをポジティブにとらえている。ゆえに、セックスアピールは正義で、自分が男性の目に魅力的に映ることは正義であり、そうなるよう努力することも正義である。喪服ちゃんは常日頃から男どものセックスシンボルなることで、自分に価値を見いだしている。そんな彼女が、自分の魅力を凝集した「すばらしい」写真集を、「わたしこんなにすばらしいよ!ほめてほめて!」と知人に好意を持って配るのはごく自然なことである。

個人的には、童貞をアイデンティティにすることには全く意味を感じない。何故かというと、全ての男は童貞を経験するからである。つまり、童貞にはレアリティはまったくといって良いほどない。もちろん、高齢童貞という話があるが、それだって別に珍しくはない。童貞アイデンティティというのは、いわばRPGで最初の街から全く進もうとせずひたすらスライムだけ狩り続けているのを自慢しているようなものである。

  • sexはポジティブか?ネガティブか?

結論としては個人の価値観によるとしか言いようがないのだが、私はあくまでsex=ポジティブの立場で考察を行いたい。なぜsexがポジティブかというと、
・そもそも本能である
・人を好きになることってポジティブだよね?
・エッチは気持ちいいよね
これだけのポジティブな事象を否定するのは、並々ではない。例えばキリスト教では、セントラルドグマにおいてこれを否定している。そこまでしないと否定できないわけである。

  • ありむーはどうするべきか

さっさと脱童貞するべき。人間は成長すべきである。一つ言えるのは、これだけ童貞に拘泥してきたありむーだからこそ、脱童貞したときに得るものは、他の男共とはまた違うのではないかと思う、そして、今まで30年の人生をかけて守ってきたものがいかに小さいものか(例えば、夜カサカサ音がなるので、すわゴキブリか! と電気を付けたら実はビニール袋が風で軋んでいたような)ということに気づき、知人女性から妄撮を貰えば喜ぶ男になってほしい。



※個人的にはsexは肯定ですがセクシャルを商売にするのはあんまり好きではないので、風俗みたいなメイドカフェとか品性の低いアイドル商法とかも好きではないです。妄撮もあんまり好きではないです。自分で脱がせたほうがよっぽど楽しいです。

公衆無線LANマップ、大幅アップデートしました


http://pixy.in/hotspotmaps/

  • アップデート概要
    • ログイン機能
      • アカウントを登録してログインできるようにしました。
    • 無線LANスポットの追加・編集・削除機能
      • ログインすると誰でも自由に情報を編集できます。
    • 1つの無線LANスポットへ複数のサービスを関連づけできるようになりました
      • これまで、1つのスポットで複数のサービスを利用できる場合、地図上に重複がありましたが、1つのスポットに「複数のサービスが利用できる」情報を登録できるようになりました。
    • UI改善
      • スポット詳細情報画面を見やすくしました
  • 今後開発したいこと
    • パスワード再設定機能(なるはや)
    • お気に入り、コメントなどソーシャル要素
    • google maps api v3へのバージョンアップ
    • プレミアム会員(主に無線LANを設置しているお店の経営者向け)
    • 編集履歴の公開
    • 特定サービスによらない無線LANカテゴリの追加
  • 最近の動向

3/11はみなさんご無事でしたでしょうか。被害に遭われた方にお見舞い申し上げます。
当時、自分の会社や、友達の運営するwebサイトが軒並みアクセスを下げる中、公衆無線LANマップだけアクセスが倍増しました。緊急インフラとして少しばかり世の中のお役に立てたようで、大変開発者冥利に尽きる思いでした。

元々公衆無線LANマップは、3年前に自分用に作ったのが始まりです。
せっかく作ったので公開しましたが、モバイル回線が躍進しており、無線LANなんてもう滅びるよねーと放置しておりました。たまに外部で紹介頂くと、こんなサイトを使ってくれる人がいるんだ、申し訳ないなー、とちまちまメンテしたり。

そんな感じで3年過ぎ、当初の見込みではもうとっくに無線LANなんか廃れているはずなのですが、なぜか利用者数は大変有り難いことにじわじわ増え続け、月間アクセスが10万PVを突破してしまいました。

また、こういった情報集積型webサービスは、最初から誰でも編集できるようにして「さあおまえら登録しろ!」としても情報は集まらないもので、公衆無線LANマップにおいては、自力で情報を集めるのを最優先にして、借りれるかどうか判らない猫の手のような「だれでも編集機能」は作りませんでした。

ところが意に反して最近ではメールでのお問い合わせ(情報が間違ってるよ!)(うちの店を追加してください!)(雑誌に載せてもいいですか?)などをちらほら頂くようになり、しかし基本的に放置プレーなので迅速に対応できず、大変申し訳ない思いでいっぱいでした。

ある意味、全てのことがらにおいて当初の見込み(無線LANなんて滅びるし、誰も情報なんて寄せてくれない)と逆方向に進行しており(意外と無線LAN滅びないし、情報寄せてくれる人がいる)、利用してくださる方の要望に、サイトのシステムと管理人のモチベーションがお応えできない状態が続いていました。

ちなみに、今までお寄せ頂いた情報を自分で登録するための管理画面すらなく、データベースを直接ちまちま弄っていたのですが、あまりに面倒なので、最近になってやっと管理画面を作りました。
すぐにでも公開したかったのですが、やはり悪用の可能性を考え、データを無差別に消去されたり改竄されても復旧できる仕組みをちまちま開発しておりました。
同時に、データ構造やUIの見直しなど含め、ようやく暫定的に公開できるかなー、というところまできましたので、アップデートすることにしました。
まだまだgdgdですが、少しでも便利に使って頂けるように、少しづつ機能強化していきますので、今後とも公衆無線LANマップを宜しくお願い致します。

缶詰大量に買ってきた

うちにはもう震災のずっと前から、常に数ヶ月分くらいの食料を備蓄していて、普段からちまちまローテーションしているんだけど、メインを張ってるのがインスタント、レトルト食品で、これ停電すると食べれないんだよね、ってことで、究極のサバイバル食品である缶詰を色々買ってきた。普段は日本酒のアテになるしいいよね

ファッションマンガ界のダークホース、「あつらえ王子きせかえ姫」

いいかげん漫画の表紙買いにも限界がきたので、最近はファッション漫画を絨毯爆撃している。


Elasticで最近紹介されていた、新しいファッション漫画「繕い裁つ人
http://taf5686.269g.net/article/15938237.html
が大変面白そうなので、本屋をしらみつぶしにあたっているのだけど、全然ない。新人の発連載で入荷が少なく、さらに震災の影響で発行数が少なく、しかもElasticなんかで紹介されたもんだから全部売れてしまったんじゃないかと思う。
しょうがないので、最近ひそかに発見した、すごいダークホース胡桃ちの「あつらえ王子ときせかえ姫」を紹介する。


多分、普通の人が今「ファッション漫画」ときいて思い浮かべるのは、
メンズなら「王様の仕立て屋
王様の仕立て屋 1 〜サルト・フィニート〜 (ジャンプコミックス デラックス)
レディースなら「Real Cloths」
Real Clothes 1 (クイーンズコミックス)
じゃないかな
どちらも(もちろんギャグが入った場面でキャラがデフォルメされることはあるが)基本的に、服装を見せるべき場面では、ページぶち抜きの大コマで、等身大のリアルな絵柄を見せる漫画。


知っている人は「胡桃ちの」と聞いて、何を思い浮かべるであろうか、知らない人はこの表紙絵を見て何を思うだろうか。
あつらえ王子きせかえ姫(1) (アクションコミックス)
胡桃ちのといえば、極端なデフォルト、かわいいかわいい系の少女少女した絵柄。
少女系のファッション漫画といえばおそらく筆頭にくるのは「ご近所物語
ご近所物語 完全版 1 (愛蔵版コミックス)
だと思うが、ご近所物語のメイン題材はあくまでメインは恋愛であって、ファッションはネタにすぎない。いわゆる「ファッション漫画」にでてくる「うんちく」みたいなものはあんまりなく、作中のファッションについての見所は、登場人物たちの服装に終始する点で、おそらく他の矢沢あい漫画とさして違いがないし、つまりは「純然たるファッション漫画」とはいいにくい。


胡桃ちのの絵柄というのは、矢沢あいに輪をかけてデフォルメされている。そのうえ4コマである。ファッション漫画をやって映えると思える要素が(申し訳ないが)何ひとつない。しかしまあ、読んでみなければ始まらない、と言うので買ってみたら、いやはやこれが想定外に面白かった。


多くのファッション漫画は、特徴が両極端に分けられると思う。

※敢えて言えば、この他に「どっちでもない系」というものがある。さしたるうんちくもなければ、登場する服のオシャレさで読者を魅了することもない(が、漫画の中ではなんだかすごいということになっている、記号化された「オシャレ」が題材の作品)「ジョシの制服」「海月姫」など


どちらも、偏りすぎるとよくない。ファッションについて色々うんちくをたれてるのに、全然絵柄に魅力がないなんてのはどうかと思うし(だってそれなら、絵いらないよね)、かたや、CROTH ROADなど、超オシャレな服が登場するけど、それだけ、というのはちょっと違うと思う。だって、南国アイスホッケー部はアイスホッケー漫画じゃないし、泣くようぐいすは野球漫画じゃないよね。


なので、ファッションにまつわるシナリオやうんちくがない漫画はファッション漫画ではないと思っていて、つまりCLOTH ROADは私の中ではファッション漫画ではないのだけど、うんちく系ファッション漫画というのも、それはそれでなかなか難しくて、どうしても似通ってしまう。


王様の仕立て屋やOrder-Made、こっとん鉄丸など、ほとんどのファッションうんちく漫画は、

  • 毎回違うお客さんと、課題が登場する
  • その課題を解決するにあたって、新しいうんちくが登場する

というプロットの無限ループになっていて、いわゆる「美味しんぼの焼き直し」である。
もちろん漫画というのは無数にあるので、まったく新しいプロットの形式なんてなかなか作れるものではなくて、別に読み手としてもそれを求めてるわけではないから、美味しんぼの焼き直しでも、別にそれなりの独自性があって、おもしろければそれでいい。
(たとえば、個人的には王様の仕立て屋はけっこう楽しく読んでいるが、Order-Madeなんかは「美味しんぼの焼き直し」どころか完全に「王様の仕立て屋+ナッちゃん」であって、しかも全体的に漫画力が拙いので、典型的な残念作だった)


この点、Real Clothsは、既製服業界の話なので、オーダーメイド業界の美味しんぼメソッドのように、必ずしも課題が人物に附帯するわけではないところに自由度があり、かつ「サラリーマン金太郎メソッド:会社の中で課題を解決していくことでのし上がる」で、この組み合わせはなかなか面白い。


さて、「あつらえ王子きせかえ姫」は「おようふくくらぶ」という、高校生の部活動のお話である。一般的に部活動漫画というとスポーツ物が多く、単純に言えば「インターハイ制覇」「日本一」「世界一」みたいな展開になる(YAWARAメソッドと言ってもいいかもしれない)最近のものだと「ちはやふる」「とめはね!」とか。
しかしこの漫画の題材はファッションなので、必ずしも誰かと対戦する必要はなく(もちろん対決もあるが)、つまりYAWARAメソッドをも取り入れつつ、「部活動漫画も試合ばっかりじゃないよ!」と、部活動漫画の枠組みを広げることさえ実現している。
自分たちで服を作るというシナリオはご近所物語に似ているが、ご近所物語よりもうんちくがしっかりしていて、かつ、一般的なうんちく系ファッション漫画のように、オシャレじゃない人をオシャレにしていく、という美味しんぼメソッドも部分的に取り入れられており、真面目にオシャレを作り上げている。(ご近所物語は、登場人物がみんなオシャレ最強なので、ファッションについては何も事件がおこらない)
かつ、前述した作品たちのように「作る服を着る人が決まっている」「誰が着るかわからない」の両方をうまく取り入れており、ともすれば本当に一本道のシナリオになりがちな課題型4コマにあって、ファッションのうんちくを縦横無尽にとりいれることに成功している。つらつら書いてきた、どちらか片方に偏りがちなファッション漫画の要素の多くを、たいへん美味く綯い交ぜにして使いこなしていて、実はかなり驚くべき作品である。


とはいっても、一番びっくりしたのは、この絵柄で「あー、たしかにこれはオシャレだ!」と思わせるコーディネートをたくさん登場させていて、うんちくばかりの頭でっかちでなく、ちゃんと読者の視覚にオシャレを訴えることができている点だった。漫画的要素だけでなく、文と絵のバランスもとってもいいのだ。


「あつらえ王子ときせかえ姫」すごくおすすめです。