第2回 WAZA CTOセミナー 『技術系サービスができるまで”日本発の検索エンジン”』 【7月29日(土)14:00~】
以下のようなセミナーで話をすることになってしまった!緊張しまくりっす!
検索関連で実績のある方がいっぱい来るそうなので、下手なこと言えないよ。。。どうしよう。
今更ですがコソ勉します。
まだ若干名の空きがあるようなので、もしよろしければ声をおかけください。
第2回 WAZA CTOセミナー
『技術系サービスができるまで”日本発の検索エンジン”』
後援:情報大航海プロジェクト・コンソーシアム
●パネラー
・Team Lab株式会社CTO 青木俊介「Sagool」http://sagool.jp/
・paperboy&co. 大日田貴司「Qooqle」http://qooqle.jp/
・経済産業省八尋俊英(情報大航海プロジェクト・コンソーシアム責任者)
・筑波大学情報学類吉田光男「CEEK.JP」http://www.ceek.jp/
●コーディネーター
・早稲田大学理工学術院教授山名早人
2006年7月29日(土) 14:00~
@国際フォーラム会議室G408
http://www.insprout.com/company/news_release/2006/20060710_release.pdf
ジダン
「W杯は見ない!」と宣言しましたが、結局本当に1試合も見なかったです。
見てても出れるわけじゃないですし。。。誰かが言ってましたが所詮は他人の祭りなんですよね。
ところで、ジダンが決勝戦で頭突きをしてくれたそうですね。やはりジダンです。さすがです。一世一代の大舞台でレッドカードを食らうなんて素敵です。しかも人生最後のW杯!
彼がヒヨって頭突きもできないような男であれば、彼はスーパースターのジダンではなく、W杯にも出ていない無名選手のジダンだったでしょう。 スーパースターのジダンだからこそ頭突きしたのであり、頭突きをしてしまうような男がジダンなのです。
だから、頭突きに対して「もったいないことをした」とか「がまんすればいいのに」という批判は無意味!!
人が思想を作り、思想が人を作る。そして思想は、一瞬の無意識の価値判断にこそ鮮明に現れるのだと思います。
ジダンの才能を花開かせた思想が、ジダンに頭突きをさせたのです。ジダンの才能を愛でるためには、彼の頭突きをも受け入れなければならないのです。ジダン万歳!
Windows上で複数ファイル内一括置換とか
Windows上で、Perlワンライナーと dos の for文を組み合わせるといろいろできることがわかったよ。
①サブディレクトリ以下全てのjavaファイルにgrepをかけたいとき。("pattern"という文字列でgrep)
for /R .\ %A in (*.java) do perl -ne "++$line;if(/pattern/){ print '%A ('.$line.'):'; print; }" %A >> grep.txt
②サブディレクトリ以下全てのjavaファイル内で置換をかけたいとき。("before(***)"を、"after(***)"に置換)
for /R .\ %A in (*.java) do perl -i.bak -pe "s/before\((.+?)\)/after\($1\)/g;" %A
やっぱCygwinを入れるべきなのだろうか。。
仕事について考えるときの本
仕事について悩んでいるのだけど、何か役に立ついい本はないだろうか、という相談を受ける機会があったので、僕が読んだ本の中から、本当に役に立った本をまとめてみた。
以下、自分が影響を受けたと思う順番に、アマゾンのURLと感想を載せておきます。
「7つの習慣」スティーブン・R. コヴィー
http://www.amazon.co.jp/gp/product/4906638015/503-6066555-4291135
習慣こそが力をもっている。自分を変えるとは習慣を変えることである。習慣を変える力を持つ人間のみが成功できる。
「自分の中に毒を持て―あなたは“常識人間”を捨てられるか」岡本 太郎
http://www.amazon.co.jp/gp/product/4413090101/503-6066555-4291135
自分自身を徹底的に追い込んで爆発させてきた、岡本太郎の厳しくて温かい言葉が詰っている。
”自分はだめな人間なんだとか、こうやったらきっとだめになるだろう、それならそのマイナスの方に賭けてみるんだ。一度でいいから思い切ってぼくと同じにダメになる方、マイナスの方の道を選ぼう、と決意してみるといい。そうすれば、必ず自分自身がワァーと盛り上がってくるに違いない。それが生きるパッションなんだ。”
「プロ論」B-ing編集部
http://www.amazon.co.jp/gp/product/4198619611/503-6066555-4291135
インタビュー記事をまとめたものなので、内容はそこまで深くない。だが、一流の仕事をしている人たちの話だけあって、どの言葉の中にも迫力がある。僕が特に感動を覚えたのは、宮内義彦、平尾誠二、養老孟司、井筒和幸、のインタビューだった。わずか数ページの内容でも、鳥肌が立って涙がでるほど。
「巨富を築く13の条件」ナポレオン ヒル
http://www.amazon.co.jp/gp/product/4877710698/503-6066555-4291135
古典的な成功術の本。教材の強引なセールスからあやしいイメージを持たれがちだが、ナポレオン・ヒル自身の書いている本書の内容はいたってオーソドックスで示唆に富んでいる。
要は、成功に最も必要なのは強い願望と信念だと説いている。願望と信念が異常に強い人間が成功しているということは、ナポレオン・ヒルが自分で集めたデータから確信したようだ。そして、願望と信念を強めるために、手帳に自分の願望や信念を書く、等の手法で無意識に働きかけるべきであると述べている。これと似たような手法は現在、ナポレオン・ヒルとは直接関係ないところでも、スポーツ選手や経営者の間で広く行われている。(中村俊輔はナポレオン・ヒルの言葉をそのままノートに書いているようです。)
「リクルート流仕事ができる人の原理原則」中尾 隆一郎
http://www.amazon.co.jp/gp/product/4861360129/503-6066555-4291135
パフォーマンスを上げるために、実践的で役に立つ習慣を紹介。これだけの習慣を発見した著者には尊敬を覚える。
”自分のやりたいことは周りに言い続けろ”、”数値化せよ”、”選択肢のないことを悩むな”、”一度やった仕事を転用してROIを上げろ”、”完成度80%でレビューを受けよ”、”最高の結果をイメージせよ”
「iモード事件」松永 真理
http://www.amazon.co.jp/gp/product/4043566026/503-6066555-4291135
社会的インパクト、やりがい、メンバー、全てが申し分ない理想的なプロジェクトの様子。楽しそう!
「iモード以前」松永 真理
http://www.amazon.co.jp/gp/product/4000220098/503-6066555-4291135
iモードの仕掛け人、松永真理の成長記。フツーの女の子がいきいきと働く様子が描かれていて楽しい。仕事って何だろう、誰のためにしているんだろう、会社って何のためにあるんだろう、という原点を考えさせてくれる。特に女性がよめばモチベーションUP間違いなしだと思う。
「リクルートという奇跡」藤原 和博
http://www.amazon.co.jp/gp/product/4163589007/503-6066555-4291135
仕事と会社に熱い思い入れをもった男の、魂の仕事記!こんな人間を生み出すリクルートという会社に憧れた。
「かもめが翔んだ日」江副 浩正
http://www.amazon.co.jp/gp/product/402100081X/503-6066555-4291135
巨大メディア企業、リクルートを一代で築きあげた学生ベンチャーの元祖、江副氏が自ら書いた回想記。立ち上げから、会社が成長していく様子、リクルート事件まで、読みごたえ満点。人は、窮地にあるときにこそ真価が問われるものだ、ということを実感した。
Perl ワンライナー その3
さらにワンライナーを使ってみた。
①ハッシュの値でソートできる!
perl -lane
'$a{$F[1]}=$F[-2];$b{$F[1]}=$F[-1];END{foreach(sort{$a{$b}<=>$a{$a}}keys
%a){print $_."\t".$a{$_}."\t".$b{$_};}}' test.txt
test.txt中の、行末から2番目の項目の逆順でソート。
ふふふ、awkでやろうとすると結構大変なんじゃないかな。さすがPerl。
(sortコマンドを使えばスマートにできそうだが。。)
②BEGINでファイルをオープンできる!
perl -lane 'BEGIN{open(IN,"<test1.txt")||die"file not
found";while(<IN>){@E=split();$a{$E[1]}=true;}close(IN);}if($a{$F[2]}){print;}'
test2.txt
test2.txt中から、test1.txtの行頭から1番目の項目を含んでいる行のみを表示。
ここまでは、awkでもできまい、、と思ったのだが、どうだろう?
こんなときはDBを使ってテーブルをJOINしたいですね。
おまけのシェルスクリプト。
ディレクトリ内のファイルの拡張子を .htm から .html に変える。ここでもPerlを利用してみた。
for i in *.htm ; do mv -i $i `echo $i | perl -pe 's/htm$/html/'` ; done
Perl ワンライナー その2
Perl でも awk の"BEGIN", "END" が使えることが判明!完璧じゃん!(←ちゃんと調べようね)
- n オプション、および -p オプションをつけたときに、使えます。こんな感じ
perl -pe 'BEGIN{ print "---begin--- \n";} END {print "---end---\n";}' test.txt
これによって、先日のワンライナーを書き換えると
perl -lane '$x=exp(0.5*int(2*log($F[-1]+1e-20))); $a{$x}++; END{ foreach (sort {$a <=>$b} keys %a){ print $_."\t".$a{$_}."\n";}}' test.txt
になります。こっちのがベンリ!
参考:Perlのコマンドラインオプションの公式ぽい解説
http://search.cpan.org/dist/perl/pod/perlrun.pod
メモ
やろうと思ったことのメモ
・スタイルシートを修正して見やすく
・アクセスカウンタつけてみようかな
Perl ワンライナー
Perlのワンライナーというのが、すんごく便利!と今日初めて知りました。秀丸の正規表現と同じぐらい、手軽につかえるよ。
仕事でテキストデータの整形が必要で、awkというのを同僚に教えてもらっていたんですが、データがデカすぎるらしく異常終了してしまう。何かいいやり方ないかねーー、そういやPerlで -e つけるとなんかできたっけ・・・と調べてみたら、お手軽に動いた!エラーも出なくて没問題!
ここに、コマンドラインオプションをメモっておこう。これさえ覚えとけば、すぐ使えるはず。
- n オプションは、以下の意味
while(<>) {
....
}
- p オプションは、以下の意味(-nと違って自動で出力してくれる)
while(<>) {
....
print $_;
}
- l オプションは、chomp
while(<>) {
chomp($_);
....
}
- i オプションは、ファイル内の置換!これは便利。
perl -i.bak -pe 's/,/\t/g' test.csv
のように、-iの後に拡張子をつけてあげると、自動バックアップ。
- a オプションは、split してくれる。結果は、自動で@Fに入ります。(こいつを一番使った。)
- F は区切り文字の指定。awkと一緒ですね。例) -F':'
以上を使うと、例えば、
perl -lane 'if($F[-3] ne "0"){ print "$F[-3] $F[-2] $F[-1]"; }' test.txt
⇒「行ごとにスペース区切りで分割、最後から3番目の要素が"0"以外だったら、最後から3番目・2番目・1番目の要素を出力する」
こんな使い方ができちゃいます。
いろいろといじって、今日の最後にできたものがこれ。
perl -e 'while(<>){ @F=split(); $x=exp(0.5*int(2*log($F[-1]+1e-20))); $a{$x}++; } foreach (sort {$a <=>$b} keys %a){ print $_."\t".$a{$_}."\n";}' test.txt
⇒「行ごとにスペース区切りで分割、その最後の要素を、Logのスケールで連想配列%aに集計、最後に%aのキーの値の大小でソートした順番に、集計結果を出力する」もの。値のレンジが大きい場合は、Logスケールがわかりやすい、ということでこういう集計をしてます。データの分布状況のチェックなどに使ってみてください。
結局あんましワンライナーぽい書き方じゃなくなっちゃいましたね。awkのENDにあたる処理が、Perlにはなさそうな気配だった(「Perl ワンライナー その2」を参照)ので、こんな書き方をしておきました。もしかして、もっといい書き方があるのでしょうか。誰か教えてください。
眠いけどがんばってまとめときました。ではおやすみなさい。
カルロス・ゴーンの言葉
カルロス・ゴーンのインタビューをテレビで見たのでメモ。
好きな言葉は、
『透明性』
『コミットメント』
普段心がけていることは、
*発言にブレがなく、わかりやすいこと
*背水の陣をしいて、覚悟を伝えること
*思い、情熱のみが人を動かす
*責任逃れの体質を徹底的に排除する
強い思い入れなしに、人は動かないし、よい仕事は生まれないと思う。
ただ、組織の中で、強い思い入れを持つことはとても大変なことだ。
強い思い入れには、その分だけの責任が発生する。
例えば自動車メーカーで、「流行のSUVを開発せよ!」という命令がトップから開発陣に下ったとする。
その際、組織の中で特に強い思いが共有されなかった場合、以下のような仕事になりがちだと想像できる。
開発陣の中では、「またこの会社は流行を追ってるなぁ、お蔵入りになりそうだ」というムードが漂いはじめる。
デザイン部門は、各社のSUVを比較し、また流行も少々取り入れつつ無難なデザインを仕上げる。
開発部門は、無難な部品を採用して、無難な性能の設計を提出する。
マーケティング部門は、無難なタレントを起用したCMをうち、無難な価格設定をする。
結果、非常に無難で、可もなく不可もないSUVができあがる。
もちろんあまり売れない。
でも、特に誰かが悪かったというわけでもない。
以上はとてもありがちな状況だと思う。自動車会社の場合は想像ですが、似たような状況には少なからず遭遇した。
誰もが思い入れを持って仕事をしたいはずだ。
でも、強い思い入れを持って意見を表明するということは、このような大きなプロジェクトであれば余計に、その分相当な責任が発生する。
無理に意見を通したはいいものの、最終的に売れなかった場合は、全責任を自分(あるいは自分の部門)が負うことになりかねない。
それを恐れて、無難な仕事をして、自分の責任を少しでも減らすことを考え、逃げ腰になる。防衛的な仕事をするようになる。
みな自分の意見を潜めて、日和見をするようになる。
何が足りないのか。自分は、組織に『リーダーシップ』がないのが原因だと考える。
組織のトップが自分の意見をわかりやすく発言し、かつその意見にコミットメントをする。
コミットメントとは、発言を覆さないこと、発言が本気であることを示すこと、そして発言を責任を持って実行に移すこと。
本気を見せるためには、背水の陣を敷く、自分の退路を断つしかない。
トップの人間が本気になっているのを見て初めて、人間は動き始めるものだと思う。
トップの言葉が信頼できれば、人は安心して責任を取れるようになる。最終的な責任は、トップがとってくれると考えるからだ。
自分の意見に思い入れを持って表明できるようになり、冒険的なアイデアも出せるようになる。
カルロス・ゴーンの言葉には、組織のトップがあるべき姿のエッセンスが見事に詰まっている。
7行テトリス
<body onKeyDown=K=event.keyCode><script>X=[Z=[B=A=12]];h=e=K=t=P=0;function Y() {C=[d=K-38];c=0;for(i=4;i--*K;K-13?c+=!Z[h+p+d]:c-=!Z[h+(C[i]=p*A-Math.round(p/ A)*145)])p=B[i];!t|c+4?c-4?0:h+=d:B=C;for(f=K=i=0;i<4;f+=Z[A+p])X[p=h+B[i++]]=1 if(e=!e){if(f|B){for(l=228;i--;)Z[h+B[i]]=k=1;for(B=[[-7,-20,6,17,-9,3,6][t=++t %7]-4,0,1,t-6?-A:-1];l--;h=5)if(l%A)l-=l%A*!Z[l];else for(P+=k++,j=l+=A;--j>A;) Z[j]=Z[j-A]}h+=A}for(i=S="";i<240;X[i]=Z[i]|=++i%A<2|i>228)i%A?0:S+="<br>",S+=X [i]?"■":"_";document.body.innerHTML=S+P;Z[5]||setTimeout(Y,99-P)}Y()</script>
わーーーおーーー!すげ!!
今すぐコピペして、tetris.htmlとか保存して、ブラウザで開いてみましょう!!!
解説はこちら↓
http://www.isl.cs.gunma-u.ac.jp/~shingo/make/7line/7line.html