Saturday 31 May 2014

Mongo DB source code

いつもの修士の授業でのソースコード読み会です。

予行演習に MeCab と Mercurial を読もうとしたんですが、あまりうまく読めなかった。MeCab は大分あれなC++。Mercurial は Python ですが、なかなか repository に行きつけなくて。

Mongo DB は学生に準備を頼んだら、

lldb + vim

で読もうと。え〜、それでも別にいいけど、もう少し工夫しない? ってことで、

Eclisep に C++ plug in

を入れて。Eclispe から gdb 経由で attach できるらしい。よしよし。

でも、テレビが 4K なので、

小さくて見えない Eclipse のfontを大きくする

ってのが Preference からだと Editor のしかできなくて。Package Explore のfontを大きくするのは、css ファイルの変更とかいろいろやる必要があるらしい。

とかいいながら、なんとか設定出来ました。で、これを

TreeVNC で Retina に配信

と。おぉぉ、それになりに快適。なんだが、1時間に一回フリーズするみたいな。うう、なんだろうなぁ。

* * * *

Mongdo DB は、ポインタが

void *

え? まさか逆エンジニア避け? とか思ったが、DBの中は、割と普通のC++でした。

boost 使いまくり
smart pointer 使いまくり

だけど、まぁ、こんなものだろう。thread pool とかも使ってないし、標準的な書き方かな。要するに

BSON を hash に入れてるだけ

ね。でも、今日は insert の途中まででした。

lock は RWrwX のレベルがあるらしい。お疲れ様です。この辺りは、Posix thread 自体が持つべき機能だと思うけど。

笑えたのは、BSONのheaderの最初にある長さをチェクするところで、

if (len == 542393671 )

ってコードがあったこと。これは16進だと、

20544547

つまり、

<sp>TEG

Mongo DBのportに browserからアクセスが行くと、長さに "GET " が入るので、それをチェックしてるわけね。はいはい。

明日も10時から頑張ります。

Friday 30 May 2014

日本の紅茶の悲惨な状況

紅茶ですが、

そもそもない

魔法珈琲とか、紅茶の選択肢がないので頼めない。

米国では紅茶は子供の飲み物ということになっているらしい。で、デフォルトがアイス。そこで、ホットを頼むと…

作りおきのアイスティーを温めて出してくる

いわゆる「色水」ですね。香りもへったくれもないという。まぁ、あるだけましか?

ミルクがない

紅茶は濃く入れて、牛乳を入れて飲むものなんだけど、

コーヒークリーム

とかが出されてしまう。まぁ、良いんだけど。いや、良くないか。なんかフレーバーが付いているクリームとかだと最低です。

ポットで出してくれるところが珍しい

まったくないわけではないですが。

あってもフレーバーティー。アールグレイ一択

アイスティーならアールグレイでも良いんだけど。一時期ハマったことはあるんですけどね。でも、アッサムやダージリンぐらいの選択肢があっても。知られてないってことか。

何故かイギリスやフランスのお茶

何故、インドからヨーロッパ経由で来たお茶を飲まないといけないの? 緑茶と同じで新しさが重要なんだけど。アッサムとかダージリンとかあっても、

Key コーヒーの紅茶

これが日本の紅茶のレベルを下げている元凶なんじゃないかなぁ。なんで、あんな干からびた味なんだろう。Musica 使ってくれれば文句はないんですが。でも、Mofg Mona ぐらいしか Musica 使っているところがない。

シリンダーのガラスポット

うううう、なんで、こんなのが流行っているのか理解できないです。ウェッジウッドとは言わないが、せめて金属のポットにしてくれないかな。ところが、

出てくる時には中に葉っぱがないことが

え? どうやって入れてきたの? もしかして、葉っぱを布で漉した? おいおいおいおい。まぁ、その方が掃除が楽なのは理解できますけどね。あの金属の蓋が大きいポットだと楽なんだけどな〜

紅茶の入れ方自体は、そんなに難しくなくて、

人数分+1の葉っぱ
陶磁か金属の広いポットを温める
沸騰したお湯で入れる
3分待つ
新鮮な牛乳と一緒に出す

だけなんですけどね。

目の前で入れる方が、紅茶の香りが楽しめるし、ホスト側の見せ場にもなります。研究室でお茶会でもやるか…

Thursday 29 May 2014

4K 65inch

HDMI⇔Thunderbolt のアダプタを新しく買って、めでたく 4K で表示できたのですが、

字が小さすぎて、Eclipse が使えん〜

まぁ、そうなるよな。

3480 x 2160

ですか。Retina でも、2880 x 1778 だからな〜

解像度下げて使うのもあれだが、Eclipse ってfont大きくするの面倒なんだよな。

General->Apearance->Font and Colro

か。Monaco 11pt から 18pt で、十分なみたい。

でも、Package Explore が大きくならない。あだだだ。css 直せとかあるけど、だめだな。

Retina 側は 2880 x 1778 で慣れてしまったのですが、4K 側は、まだ少し試行錯誤が必要なみたいです。

別に1080で使っても罰は当たらないけどね。

写真も4Kの解像度に追いつく写真を撮るには、それなりの装備でないとだめだな。

まぁ、でも出力デバイスが変わるのは面白いね。

Tuesday 27 May 2014

4TB HDD

毎度のバックアップの話題です。バックアップ用に買いました。結構笑っちゃうんですが、

5月以降に価格が下落

あの「消費税値上げ前の大人買い」騒ぎはなんだったんだ。

うーん、でも Seegate かぁ。先月に突然死したHDDもSeagate。2年ぐらい。

「HDDつながーるKit」なるものを引っ張り出してきて partition 切ったのですが 1.8TBしか認識しない。どうも、

古いSATAチップだとダメ

らしい。え〜 LBA 後も容量の壁があるってか。でも、さすがにUSB 3 なケースでは認識しました。でも、Time Capsule から Archive すると、

2日と13時間

かかるらしいです。Bitcasa だと4TB一ヶ月ではすまないがな。

Mac OS X では、省エネルギー設定でHDDをスリープに設定すると、ファイルシステムが壊れることがあります。そして、スリープしないに設定すると、

HDDケースがあっちっちに

まぁ、壊れても sudo umount -f して mount しなおすだけでいけるらしい。ただ、mount しなおしを command line からやる方法が良くわからず。しかも、

fsck しないと復旧しない場合もある

あだだだ。いずれにせよ、

バックアップ上等

ですね。HDD は6TB出る説もあらしい。まぁ、本体SSDでバックアップがHDDってのが妥当かな。そして、Bitcasa と併用すると。

まぁ、Bitcasa の未来があるかどうかはわかりませんが。あれば素晴らしいとは思う。でも、それに賭ける気にはならないな。

Monday 26 May 2014

コードのコピペ

学生にやるなとしつこく言うのだけど、、ちょっと目を離すとやられてしまう…

一部だけ直したいのだろうけど、

コピペして、一部だけ修正する

ということをするわけね。で、片方だけ修正するとはまるというパターンです。

なんだけど、「コピペして、一部だけ修正する」とこまでは動く。それがダメなんだよね。で、やられちゃったのを修正するわけなんですが、

目の子で、変更されたところを見つける
必要なら if 文なりで

ということになるのだけど、ここが間違えやすい。地獄のように間違えやすいです。ここ間違えて三日止まるとかやったことがある。たまに変になるみたいな症状になることが多くて。

というわけで泣きながらなおしてました…

今は学生が書いたコードは、だいたい公開されているので、下手なコード書くと苦労すると思うんだけどな。もっとも、就職が決まってからなら

いくらたこなコードを書いても迷惑するのは研究室の先生と後輩だけ

ってことではあるか。気を付けないとな〜 油断大敵だ。

これ、さっさと片付けたいのだが、学生がいない時にがんがん変更するのが気が引けるので遠慮しているのだが、なんとなく我慢できないのでガンガン変更してしまうという、いつものパターンだ〜 あと、もう少し。

Sunday 25 May 2014

とあるシリーズ

OSCも終わったのとは関係ないんですが、

とある科学の超電磁砲S
とある魔術の禁書目録 エンディミオンの奇跡

を見ました。

S の方は、クローン編の焼き直しなのね。前日譚も入っているという感じか。えー、これ、また見るの? 橋のシーンもそのまま? そういうのあり? まぁ、嫌いな話ではないんですが。後半の話はレベルゼロを応援したくなる話。フェブリの扱いを丁寧にしてれば良かったとか?

レールガンの話は割と「実験動物的に扱われている人間に思い入れする」話だったりする。積極的に実験する方と邪魔する方と。レベル6の存在意義があまり明らかでないので、そこまで犠牲を払ってまで手に入れる価値があるのかどうかは。人類の命運がかかっているとかなら。まぁ、その幻想をぶち壊すのが面白い話なわけなので。

エンディミオンの方は、

黒子の怪我はいったいどこでどうなってそうなった?

アニメの方にはないよね? まぁ、それは良いけどさ。

宇宙エレベーターが出てくるのは良いんですが、

宇宙エレベータは壊れても、基本的に宇宙に飛んでいってしまう

のが良い所なんだけど。なので、僕は基点を大地に固定しない方が良いと思ってます。あと、

宇宙エレベータ登る時間

を軽く見積るのはどうかなぁ。ロケットと同じように考えてしまうのだと思いますが、数時間で登れる、そんなスピードが出せるなら、直接打ち上げた方が。

終わり方も「結局、今までと同じ」なので、ちょっと不満だな。まぁ、原作との調整もあるのでしょう。

学生には「なんで今頃?」と言われてますが、まぁ、周回遅れていいさ。

Saturday 24 May 2014

OSC 2014 Okinawa

ポスター作りとか、TreeVNCのデバッグとか、Agda の資料作りとか、前日は疲れはててました。

Agda の live programming みたいになったけど、

こいつ本当に簡単なものでも、なんで、こんなに通らないんだ

ってくらいで面白かったです。

今回は神戸さんに実際に会えたのが良かったかな。内輪の集まりだからな〜 天気には恵まれました。

お昼ご飯は毎年のピッツァ Togo でした。

これから懇親会行ってきます。(その前に風呂か?)

Friday 23 May 2014

65inch でペアプログラミング

グラボは4K対応だったらしいんですが、Thunderbolt ⇔ HDMI 変換器がたこならしく、まだ、2Kで使ってます。Retina でつなげると一応4Kでるらしい。でも、30Hz だそうです。 BRAVIA KD-65X8500A です。

なんだが、ゲームの設定で b/w で使うと明るすぎて目が痛い。調整しないとだめだな。

結局、ちょっと離れて見るので 45 inch とあまり変わらない気もする。でも、プロジェクタは、もういらないな。

この手の物は建物作った時に各部屋に造り付けにすると良いと思う。まぁ、時代遅れにはなるけど。

Retina の 2880x1778 pixels とかに慣れてると、2K は狭く感じるのだけど、4K でプログラミングするのはどうなんだろう。最初に2Kで console 使った時にも、それほど違和感はなかったが…

というわけでアダプタが来るのが楽しみです。

Thursday 22 May 2014

ハバ盛

カラムーチョの方が、どちらかというと好きですが、これはハバネロ。横の袋の粉を袋に入れて混ぜる方式です。袋が外しづらい。まぁ、

それほど辛くはなかった

です。ハバネロ、なんか、ものすごく辛いのが一時期出てたような気がしたが… ハリーズでも出してくれていた時期があり、あれは激辛だった。

週末は、OSC なので、ゼミネタを仕込んでいるところですが、うまくできるかな〜

Wednesday 21 May 2014

大謝名あたりのラーメン

牧港は、花月、天下一品、偶もとなり、辛部。そして、大謝名に、大勝軒、追風丸、笑和とあるので、激戦区。登竜門はつぶれてしまいました。

登竜門は笑和が出ていった後にできたお店でお酒とか出して居酒屋的にやろうとしていたようですが、ダメだったようです。そういえば、焼肉満福が追い出された後も埋まってない。最近の大謝名は、家賃を上げてお店を追い出すのが流行りなのか?

ちょっと多すぎるよね。まぁ、淘汰されるのだろうとは思いますけど。

要の後にできた、つけめん辛部は10倍頼んだけど、あまり辛くはなかった。ちょっと汁が少なすぎる感じ。海苔が良い。小盛と言ったつもりだが、大盛が来たみたい。なのだが、請求されるまで気が付かなかったくらいの大盛りなのでたか知れてます。

ラーメンの種類増やすより一種類の質を上げて欲しいと思うけど、なかなかそうはならないな。

追風丸花月はもうあまり行ってない。天下一品はおかずが良いかな。大勝軒、笑和、偶もとなり、辛部だと、もとなりが一つ抜けてるかも。と言いつつ、ラーフェスの時ほどはラーメン食べてないです。

真栄原のダメなラーメン屋さんと、いくつか入れ替えて欲しいです :-p

Monday 19 May 2014

TreeVNC

学生の置土産みたいなものですが、苦戦中です。動いてはいるんだが、Java の分散通信だからな。

アドホックにportを開けて通信しているので、複数のTreeVNCを同じホストで動かすとダメ

ってのがあるらしい。立ち上げ時のは直したんだが、他にも port 番号が直接書いてあるのが…

なるべくコードレビューするようにしているんですが、修論とかのタイミングで修正しにくい時にやられちゃうだよな〜

Java のschnronized理解してないから、busy wait したりしてるし。

createSocketAndSend みたいな method が複数。いや、そうではなくて、

何を送っているかが重要だろ?

英語ができない = 語彙が少ない = 同じような method 名になってしまうらしい。

英語ができないプログラマなんて要らないんだよ! と再確認しました。

Open Source Conference まで、これで潰れるのか?! いや、Open Source Conference は

Agda ネタ

です。ご期待ください。

Sunday 18 May 2014

最近の Safari の挙動

なんか、たまに、

command key が効かなくなる

Safari だけ。なんなんだ。Safariを立ち上げ直すとなおる。

そういえば、vim でTMPDIRに書けなくなるので、いちいちchmodするってのがあったな。これも、いつも起きるわけではなくて「たまに」なのが。

というわけなので、

copy & paste

がメニューからでないと動かないみたいなことに。なので、間違えて前のをコピーしてしまうことが。いろいろすみません。

Saturday 17 May 2014

でこぼこ道のバス

バス通勤な僕ですが、なんかバスが飛び跳ねて通っていた、琉大の自動車道沿いの道は、とうとう舗装しなおされました。少なくとも舌はかまなくなったな。

北口のバス停留所にあった大穴。

これも、舗装しなおし。良かったね〜

でも、停留所でぐるぐる廻る前に降ろして欲しいと思うが、それは車から文句が出るのだろう。

政策的にバスを優遇しなければバスに乗り換える人なんていないと思う。特に、

北部からの直行バスがない

のは、まだしも、

58号線から琉大行きに乗り換える手段がない

のは致命的。なんか学生がバスの路線の適合性かなんかを調べて「おおむね適合している」とかの結果を出していたが、

あんたの目は節穴か

というのが僕の意見だな。少なくとも330経由の98は、北口止まりでなくて琉大病院まで行くべきだと思う。何人もハマっている人を見かけました。北口で97に乗り換えれば良いのだが。

この辺り、見直すってな話を見かけた記憶もあるのだが…

バスナビは便利ですが、

http://www.busnavi-okinawa.com/map/

表示されないステルスバスはやめて欲しいなぁ。特に沖縄バス。チェックしてないんだろうと思うけど。知名度的にはどうなんだろう。

といいながら、豊見城から98で琉大まで通っている学生もいるみたいです。ご苦労様です。

Friday 16 May 2014

千円ステーキ

OS/ARCH研究会の会場だった船員会館の一階には、あやしい食堂が…

みすじステーキ1500円

とか書いてある。これは食べなければ! と思ったら、

お昼は600円バイキングのみ

ええぇ〜 あまりにもだるい内容。なので、研究会が終わった後に、学生と一緒に突撃してきました。

なのだが、

1500円ステーキはもうやってません

だったらポスター貼っておくなよ 凸 (-"- )

というわけで、全員千円ステーキでした。味ですか? ジャッキーよりダメな、かんでもかんでなくならない、いつものやつですが、

A1ソースがあれば大丈夫

という感じでした。はい。

Thursday 15 May 2014

OS 研究会

水木で終了です。沖縄でやってくれるのは、学生の発表の機会としてうれしいです。

今回は船員会館で、立地の割に非常に安価。安価なのは良いんですが、

プロジェクタ、スクリーンなし

プロジェクタないのは、まぁ、そうかなと思うんですが、スクリーンがないのはちょっと。学科の人に聞いてみると、

なんと90inchのスクリーンがあるらしい

しかし、

2.5m の長さ

普通の車には乗りません。良くそんなもの買ったな〜 ジャンボタクシーを頼んでみようとしたら「利用料6千円」えええ、それは、ちょっと。軽トラ借りると千円ぐらいらしい。でも、

学生が乗っている車が商売車のバン

で、そこに楽勝に乗りました。金川さすがだ。

コンセントが二箇所にしかないとか、ネットは有線しかないとか、いろいろ、持ち込まないとだめなんですが、それも無事に終わりそうです。

一階にあるレストランは「1,500円ステーキ」があるらしいですが、お昼は600円バイキングのみ。がっかりです。がっかりだ。

さて、来週はOSC Okinawaだな。

Wednesday 14 May 2014

研究者のノート

というとSymphoniesの永山さんなので、大学で話してもらいました。

http://ie.u-ryukyu.ac.jp/news-ie/2014/05/12/fd/
工学部FD講演会:「インターネット時代の研究ノートシステム」

現在,研究者の倫理,研究リソースのエビデンスの観点から研究
ノート(ラボノート,実験ノート,卒研ノート)は,非常に重要
となっており注目されております.今後の研究ノートの最低限の
仕様統一や新システムでの運用も考慮に入れた,研究ノートに関
するFDが必要となっております.永山氏は,その経歴上,研究ノ
ートに関して造詣が深く,また,お話いただけるシステムは,青
山学院大学へ導入予定だったシステムをベースとして最新のノー
トシステムについてお話していただく予定です.

面白い話なので、他の大学でも話してもらうと良いと思います。

OS/ARCH研究会も、絶賛開催中です。

そして、久しぶりのプログラミング3の授業も…

(うん、これを乗り切れば…)

Sunday 11 May 2014

Let it go

アナと氷の女王のネタバレな感じで。

この歌は、ディズニーの久しぶりのヒットだとは思うんですが、最初聞いた時の印象は、

良くあるあれだよな。

でした。そもそも、Pops というのは、そういうものなのだけど。A whole new world も最初に聞いた時には「ま、こんなものだよね」という程度で。

ポピュラーソングというのは、いつものメロディーを、いつものシチュエーションで聞くものだから。研究と違って、

今まであるものの繰り返し

で良いんだよね。それが芸術の本質だと思う。毎回、違うなら、それは、偶然に過ぎない。即興の面白さも、

即興のはずなのに、知っているものとの共通点がある

という面白さでもあると思う。普遍性と新規性が同時にないとだめ。今までにないまったく新しい音を作ったとしたら、

それを音楽とは思わない

と思うんだ。でも、同じようなものばかりだとあきるけど。

そんな感じなので、Best hit USA とかを聞いてても、あまりピンと来ないほど年は取りましたが、この曲はそれなりに楽しめました。

Let it go は、映画の状況と並行して思い出されるようになると思うけど、出ていく人の開放感と、その後ろに残された迷惑との対照として思い出されるのかな。あるいは、才能の開花と、その代償という対照か。

Saturday 10 May 2014

琉大名物の霧

山のてっぺんにありますからね。高校の地学でフェーン現象の計算を「できるまえ帰っちゃダメ」でやらされたのを思い出します。

なので、湿気がね〜 玄関や階段がびしょびしょなんてことも。湿度管理して欲しいとも思うが、全体的に手抜きなビルだし。

冷房の排水が換気扇に流れて、そこで虫が繁殖とか笑えないです。昔は新築だったんだけどな〜

Friday 9 May 2014

阜(ゆたか)のロースカツ

http://tabelog.com/okinawa/A4703/A470404/47000894/

久しぶりに行ってみたら、ロースカツが復活してました。1150円なり。昔は、750円だったのだが。でも、妥当な値段かな。もっとも、既に、この量は多すぎるのだけど。最初から半分、持って帰る?

ハリーズのチキン野菜カレーも750円が900円に。Mou の「いつもの」も1680円から2010円に。

日本の外食は安すぎるとも思うので、そんなものかとも思います。でも、Mou の日月のランチは逆に900円に値下げしてた。中部商業のところの「なかよし食堂」は野菜炒めが500円。

Thursday 8 May 2014

毎日書くから日記

なんだけど、最近はさぼってるな〜

某Y先生のRAIDが飛んだという怖い話が。

そういえば、研究室のサーバのTime Machine用のHDDも飛んでしまいました。

HDD 大人買いするか?!

100TB分のHDDを購入すると必ずPS4がもらえるキャンペーン
http://akiba-pc.watch.impress.co.jp/docs/news/news/20140507_647075.html

Wednesday 7 May 2014

5月のイベント

OS研究会 5/14,15 沖縄船員会館
http://www.okisen.or.jp

OSC2014沖縄 5/24
http://www.ospn.jp/osc2014-okinawa/

らしいです。その間に、

大学院の授業のソースコード読み会

があるはず。なんとなく、Mongo DB 読む予感。

これが終われば平常運転ですね。

Tuesday 6 May 2014

gmail

学科のメールは gmail なんですが、油断してたら、

4万件

溜まってる。Mail.app でarchiveする必要もない(MH側にあるので)。まぁ、Mail.app か gmail に置いておくと検索には便利なんですが。

で、Mail.app 側で消しても gmail 側には残ってる。消すような設定にすれば良いのだろうけど。消そうと思ったら、

50件ずつしか消せないの?

と思ったら、50件選択すると「4万件選択する?」と出てるのね。それで消して、さらに empty trash すると。これで消えたようです。

まぁ、gmail は消さずにずーっと使うものなんだろうけど。

とかやってたら、Mail.app が立ち上がらなくなった :-p

Sunday 4 May 2014

gnuplot and date

最近、真面目に血圧付けてますが、unix time で付けてたりするので、他のWeb service とかとの相性がよろしくない。自分で作ると、どうしても Perl で script みたいなことするからなぁ。一般的なツールは一日一回とか朝夜とかが普通ならしいです。

gnuplot で unix time で表示しても、単位がおかしいだけで別に問題ないので気にしてなかったんですが、

using ($1/(3600*24*365)+1970):2

とすると、それっぽくでる。いや、もちろん誤差は出るんだけど。うるう年とか。とか書いてたら、gnpulot には日付の関数があるらしくて、

set xdata time
set timefmt "%s"
set format x "%Y"

とする良いらしいです。結果は変わらないんだけど。ついでに Aqua term ではなく X11 の方が拡大縮小が自由なことにも気がついた。

肝腎の血圧ですが、

年末年始に上がる

という傾向があるらしい。なので、最近は少し下がってますね。ま、一喜一憂しない。

Saturday 3 May 2014

久しぶりに C++

C++ で Cerium を書いたのは間違いでした。だめな部分に結構引っかかった。OOと並列処理の相性の悪さも。とか、ぐちっても仕方ない。もう寿命なコードでもあるけど、

* 動かないというからには直すしかない

なので、学生が捕まったので、テレビの前でデバッグ開始。SEGV なので、問題としては易しい方です。実際、簡単なテストで引っかかった。

「あれ、ちゃんと動いているはずなんだけどな」で、次の瞬間SEGV。可変長データの書き込みの大きさを考えてなくてオーバーランしたらしい。これは、refactoringした時のテスト不足だな。

もう一つは、タスクをコピーする時のミスだな。これは最初から入っていたらしい。他のミスと重なっていて、動く時は動いていたらしい。こういうのは謎だ。

いろいろ教訓はありますが、

Refactoring した時は test しろ

ってことね。あと、

  bisect

つまり、どの変更で動かなくなったかを、版管理システムの版の2分法で見つけるってのを学生に教えておくべきだとおもいました。それには一発コマンドテストを作っておかないと。

学生は自分のテストプログラムしか動かさないものだが、自分では気をつけていたつもりだったんだがな。

6時間ぐらいかかった印象があるけど、5時から9時の4時間だったらしい。