Google Maps Hacks

先週の目覚まし勉強会でid:Pasta-Kさんの Google MapsAPI使う話とか勉強会カレンダーから地図を作る話とかあって、自分に何かできないかと思って以下の本を手に取ってみる。
Google Maps Hacks 第2版 ―地図検索サービスをもっと活用するテクニック

実はオライリーの ○○Hacks って大体陳腐化が速くて、あんまり好きじゃなかったんですけど、メディアリテラシについて意外な収穫があった。
Hack #41 地図で見たことをすべて信じてはいけない
になんて、考えたことがなかった。
衛星写真なら主観が入る余地がないと思っていたが、実はいつ撮影したかを選ぶことにより、主観を込めることが可能であると指摘している。
例えば、普段は寂れているグラウンドでも、イベントがある時の衛星写真を使えば、会場のそばの駐車場が満杯になっていて栄えているように見える。
栄えるように見えた方が何となく印象が良くなる。


また、日本語のサポートページでサンプルの実例がリンクされており、非常に素晴らしい。
http://www.marlin-arms.com/support/gmh2/

神戸セキュメロ

半年近く放置してしまった。
参加した勉強会ぐらい、少しでも良いので書いていこう。
2009/01/10 神戸セキュリティメロン参加。
神戸セキュメロは勉強会というよりディスカッションがメインなちょっと異色な勉強会。
その場で全然違った立場の人や、学生や一般の人たちと話せるのが楽しい。

今年は、さらに変えようと模索しているので期待大。

今回は Web APについて実体験。
言葉だけ知っていた脆弱性を体験することができた。
あんまり書けないけど、答えをきいて実際やってみると本当にあっけなくできてしまう。
珍しい体験させてもらいました。

手を動かすことができるので楽しいけどPCが無いと退屈だったかも。
PC貸し出してくれてたけどなるだけPC持って行ったほうがいい。
ディスカッションのまとめにも使えるし。

ディスカッションはテーマだけ投げて、その場での雑談になるのでまとめが大変。
まとまらなくて「こんな話になりました」になる場合が多い。
簡単に解決できないテーマでもないし、いろんな意見を聞いたり、ぶつけたりして
考えていくことが大事なんじゃないかな。結果よりも過程が大事だし。

伊藤直也さんトークイベント「私と技術書」

8/23日の昼からジュンク堂伊藤直也(id:naoya)さんのトークイベント。

まず、前に並べられた本の写真。

  • 数ページぐらいの文章ならPCでも良いが、PCで読むとネットをしたり、ゲームしたりして気が散る。
  • 本を読みながら、対象のことをじっくり考える。
  • あることを2,3時間続けて考え続けることは普段はあまりない。
  • 良い本は自分と共に成長する。何度読んでも、読むたびに新しい気づきがある。
  • 人生のいろんな場面にで本に助けられた。
  • ハウツー本はすぐに内容が陳腐化する。良い本は難しいが、何年経っても読める。
  • 人との出会いが重要。
    • すごい人と会っただけで満足してしまう
    • ひがみや嫉妬

という落とし穴に気をつける。

  • 自宅にTVもPCもないので、本を読むしかない。
  • ある程度深くなると孤独になる。話をしても興味を持ってくれない。カーネルの話とか。
  • でも、技術的な本質がわかると強い。
  • 近頃は科学、数学系に興味がある。
  • Webアプリから徐々に下のレイヤに移っていき、カーネルや、数学、アルゴリズムと、普通とは逆のルートをたどっている。
  • 技術は10%、20%変えるのではなく、100倍変えることができる。
  • 趣味の時間が無くなっている。
  • 世界を良くしていきたい。

Q.同じ分野でもいろんな本があるがどうやって選ぶか?
A.知り合いとか、詳しい人に聞く。でも、みんな、一番難しい本を薦めてくる。ムカツクwww。


Q.積ん読ばっかりになっちゃいますが何が違うんでしょう?
A.自分も積ん読ばっかりであんまり違わないと思います。


「なんか、さっきから『悩んだ時期もありました』ばっかりですね」と言われてたように、意外と悩みの連続でした。
悩むたびに努力されていたのが印象的でした。
あんなすごい人でも努力しているのに、オレなんかが努力しないでどうすんだ。
もっとがんばろう。

Vim勉強会#3

vim勉強会#3に行ってきた。

テキストとなっている「vim完全バイブル」が、かなり酷い。
ヒド過ぎて逆に味わいになっている箇所も。

みんなで間違いを指摘しあう。
やっぱり、知らないこともあって勉強にはなる。

Vimの極め方

やはり本命はkanaさんの「Vimの極め方」

  • とにかく :elp (: と省略可能)
  • チュートリアルやリファレンスとしては非常に優秀だがノウハウについては今ひとつ。
  • ノウハウはWebで調べる
  • 「Ctrl+]」でリンクをたどり、「Ctrl-T」 で戻る
  • helpの日本語が許されるのは初心者だけ
  • vimスクリプト書くならきちんとドキュメントを書け。(その方が作者にもユーザーにも良い)
  • ヘルプをよむなら、以下を少しずつ。
    • otions
    • quickref
    • tips
  • 量が多いので、一度に読もうとせずに、少しずつ。
  • vimrc は
    • すぐに開けるように。→グローバルマークを活用
    • すぐにリロードできるように(リローダブルに書く)
    • 不便だと思ったことはすぐにメモする
  • リローダブルにする場合良くあるミス
set backupdir+=/foo 

追加なのでどんどん増えていく。

独自コマンドと関数名がぶつかると上書きできないので定義するときは command!、 function! で。

特に:utocmdは常に追加されるのでリロードのたびに追加される。

augroup MyAutoCmd
    autocmd!
    autocmd bufEnter *
    autocmd bufLeave *
augroup

のように
autocmd!
で一度リセットして追加する。


反省点

ネット環境持って行けば良かった。
何となく、エディタの読書会でネットワークが必要という意識がなかった。
次回は持って行こう

懇親会

終わった後の懇親会も、参加。
あちこちに話が飛び火して、何の話をしていたのかわからなくなる。
セキュアOSについて話していると、id:naoyaさんがカーネルソースを確認しはじめる。(ググらない!)
インストールできないモジュールの相談やら、ごちゃごちゃと大変勉強になる。

ゲスト用無線LANを借用できたのでソースをダウンロードしたり、話題を確認でき、大変便利でした。
場所の提供など、はてな様、ありがとうございました。

kansai.pm#10に参加した

kansai.pm#10に参加したメモ

セキュアコーディング

hashyさんのマシントラブルのおかげで、
突如、AzureStoneさんのセキュアコーディング勉強会の話が聞けた。

Plaggerプラグインの作り方

一言で言えばソース読め。なんだけど、実例を説明。
無線LANを貸していもらえたため、ソースを coderepos からのチェックアウトして、
そのソースを見ながら聞けた。プロジェクタだけだと難しかったかも。

SereneBache

ブログツール(MTみたいなの)
SereneBach 標準では1ブログのみだが、再構築速く軽い
Collapsing entries AND COMMENTS(いわゆる「続きを表示」) のプラグインの作成方法

CGI::Application

比較的あっさりしたフレームワーク?。順序に注意。

Error.pm

die だったらそこで止まっちゃうので、継続したいとき。
エラーの原因をログに書き出したい、DBに出したい。とか。
止まらずに救済も欲しいときに使用。
以前、dieで止めたくないときは warn でごまかしてた。
次からは使ってみよう。

続脱KENT様方式

他人に勧める場合、きちんとした理由を。
理由がないまま勧めても、反発か主張しかなく、平行線になってしまう。

我流タッチ vs ブラインドタッチ、
右利き vs 左利き
といった慣れの問題と同じ。
目標や理由がないと移行は苦痛でしかない。
自分と相手が常に同じと思わないこと。
自分が肌で感じない限り説得力がない。

(Perlに限らず、どんなコトにでも言える話だと思う)

大きなコトよりもまず問題集をやってみよう。
お金がなければWebページもあるよ。
(あれ? 前回はググらずにちゃんとオライリー読もうよ! って結論だったんじゃ?)

自宅環境の紹介があったが、とても一人暮らしの個人の部屋とは思えない。

Thift

クロス言語RPCフレームワーク
XS,SWIGとの違い
・XS,SWIG ライブラリレベルでの結合
・Thriftサービスレベルでの結合。(CORBAに近い)

PersistentPerl

FastCGICGIにしか使えないが、コマンドでも継続化する方法として
persistentperl がある。(以前はSpeedyCGIといってたらしい)
起動処理に時間がかかる場合はシャレにならないほど速くなる。

Emacsの設定

といいながら、オチはこれからvimerになる宣言。
おもしろそうなのは、vimでないか調べてみよう。

今すぐ使わないだろうけど、引き出しが増える話が多い。

Xen に挑戦して失敗

家庭用サーバにするなら、消費電力の少ない、ノートPC か VIA の CPU。
VIA C3 のマシンに Xen をインストール。

なぜか Grub で仮想化カーネルで起動しようとすると落ちる。
CentOS でも、Xenoppix でも、Debian でも同じ。
結論から言うと、最近の Xen は CPU の 物理アドレス拡張(PAE) という機能を使用していて、VIA の C3 は PAE をサポートしていないためでした。

検索用にエラーメッセージも書いておこう。

Booting 'CentOS (2.6.18-92.1.6.el5xen)'

root(hd0,0)
Filesystem tipe is ext2fs, partition type 0x83
kernel /xen.gz-2.6.18-02.1.6.el5
[Multiboot-elf,<0x100000:0xad49c:9x51b64>,sh
module /vmlinuz-2.6.18-92.1.6.el5xen ro root=LABEL
[Multiboot-module @ 0x200000, 0x470c88 bytes]
module /initrd-2.6.18-92.1.6.elxen.img
_

で再起動

Debian の場合、最後の方が

(XEN) Brought up 1 CPUs
(XEN) *** LOADING DOMAIN 0 ***
(XEN) PAE mode mismatch between Xen and MOD0(xen=no dom0=yes)
(XEN)
(XEN) ************************************************
(XEN) Panic on CPU 0:
(XEN) Could not set up DOM0 guest OS
(XEN) ************************************************
(XEN)
(XEN) Reboot in five secounds...

な感じで再起動