2008-02-29 (金)
*[就活] Google
落ちたっぽい. どうするかなぁ….
ここに書かれていることは現実とは限りません. 怪しい記事の多くは,私の夢の中の出来事や,妄想です.写真っぽい画像もCGもしくは念写です.
とりあえず,少し飽きてきてしまったのでα版を公開しておきます.
dsbrows.zip ダウンロードのページに移動
寝る前に少し更新. 表示スタイルを多少調整. div,strongに対応. あと,DL,DD,TR等でそれらしく改行するように.
呼ばれたので行く.
予想通り,png_set_read_user_transform_fn()で指定した関数に渡される データのポインタを確認したらアドレスが奇数だった….
libpngを書き換えてやろうかと思ったけど,ライブラリのバージョンアップ時に面倒くさそうなので, バイトごとに読み書きするように修正したら,問題がなくなった. ただ,エンディアン依存のコードになってしまったのが残念.
エミュレータではPNGが表示できるのに,実機で表示できない問題はどうやら,データのアライメントっぽい. ARMでは,16ビットのデータを読み書きする場合にはアドレスに気をつけなければいけないので…. 試しにアドレスを1バイトずらしてみたら,正常っぽくなった. どこで問題が起きているのかは,まだ分からない. どうも,ピクセルフォーマットの変換関数に渡されるポインタが怪しいような….
昨日は実家に泊まったので,今日長野に帰る.
新幹線のダイヤが大変なことになっていた…. いつまで待っても来ないので,払い戻してもらって在来線で大宮まで行こうとしたら,こっちも止まる. 仕方ないので,今度は高崎まで行ったら,1時間40分遅れの新幹線に乗れました.
明日の午前9時までとか書いてあったので送る. 英語がかなり怪しい. ところで,9時ってGMTじゃなくてJSTですか?
ロボコンのことを書こうと思ったのだけど, 「情報創造プロジェクト」ってどう英訳するんだ.一番悩んだ. もう少し英語で書きやすい科目名にしてください.
行ってきました.
特に何も書かれてなかったので,私服で行ったのですが,スーツの人も多かった. でも,やっぱり私服で問題無い雰囲気だった. さすがGoogle.面接も私服でOKと言ってました.
Tech Talkと違って採用関係の話が多かったですが, あまり雰囲気は変わらず,質問する側は技術的なものも多かったです.
説明会の後は質問タイム. 開発環境の話が多かったので,リポジトリの管理に何を使っているのか聞いたのですが, PERFORCEらしい (「Google perforce」でぐぐったらたくさん情報があるのでここに書いてもOKでしょう). 個人的には独自のものだと思っていたので,少し意外でした. それにしても,全てのソースが1つのリポジトリで管理されているというのは興味深い. というか,中身を見てみたい. 個人的には,Googleの全ソースが読めるというだけでも,Googleに入る価値は十分なんですが…. 問題は,明後日の朝までに必要な書類を送ることと,面接ですね…….
帰りの電車で無線LANのアクセスポイントのSSIDを収集しながら帰ってみる. 思ったより,たくさんのアクセスポイントが存在していました. ノートパソコンを開くのも面倒くさいのと,意外と受信感度が良いのでNintendo DSで. 収集に使ったDS用の自作ソフト(というかDSブラウザ)の都合上, 十数個しか一度に見れないのですぐにいっぱいになってしまいます.
民家があまり無いような山間部でも,ぽつぽつとアクセスポイントが見つかりますね. しかも,同じ機種と思われるアクセスポイントが集まっている箇所がかなりありました. 「隣の○○さんと同じのなら安心だな」という理由で決めたんでしょうか?
ただ,更に山間部に入ると,民家の密度は殆ど変わらないのに, ある地点からアクセスポイントが全く見つからなくなりました. ブロードバンドが来ていないのか,単に調子が悪かっただけなのか….
PNGファイルに対応…したつもりだったけど,一部の画像の色がなんだかおかしい. 1バイトずれてしまっているような感じ. でもエミュレータ上では正常. もしかして,libpngはそのままではNDSで動かない?
IMGタグとJPEG画像に対応.libjpeg大きすぎ. デコードだけなのでもっとコンパクトに実装できるかも…. あと,壊れたJpegを渡すと内部で勝手にexit()するのがデフォルトなのもいただけない.
読み込みに時間がかかるのでデフォルトでは画像を表示しないように. マルチスレッドにするか…って,NDS用のスレッドライブラリとかあるのかな. それとも,読み込みはARM7側に任せるか.
必要な了解が取れたので,送る.
返事が来た.23日に説明会か.ってか今週だし.
JISコード(iso-2022-jp)に対応. JISコードはASCIIとかぶってるので,変換してからでないとパース出来ない. でも,文字コードはMETAタグから取ってくるので,パースを始めないと文字コードが分からない. パースしている途中で切り替えるしかないか.いままで,HTML内の文字列オブジェクトを 生成するときに変換していたのでパーサ内で変換するように変更. 一時的なwstringを作るようになったので,少し遅くなったかも・・・.
これで,ShiftJIS,JIS,EUC-jp,UTF-8に対応となったので,文字コードで困ることは あまり無いはず.
あと,一部の実体参照に対応.
それと,いままでLIがあったのにULが無かったので,ULタグを追加.
プログラムサイズは267K...なるべくコンパクトに作っているんだけど. JISとUnicodeの変換テーブルが結構大きいな.
DS用のSDLを発見してしまった. これ使って実装した方が汎用的でいいかも.
タッチパネルが動かない…っと思ったら,ARM7側のコードに処理が書かれてなかった….
タッチパネルでスクロールとリンクの選択が出来るように.これでかなりマシになりました. あと,NDSに登録されてないアクセスポイントにも接続できるように. SSIDとWEPのキーを列挙したテキストファイルを読み込んで使えるようにしただけ.
なんとなくLI実装(UL,OLはまだ無かったりする).あと,ShiftJISに対応. 一応,HTMLで指定されている文字コードを認識するように. 文字コードの変換のタイミングで悩んでます. 今はHTMLをパースしながら変換してますが,パースした後のHTMLのソースは捨ててるので, 文字コードを変更したいときはリロードする必要があります. かといって,レンダリング時に変換すると表示がさらに遅くなりそうだし, 変換前のデータを持っているとメモリを食うし….
次は,戻る・進むの機能かな? もう少ししたらα版を公開します.
そういえば,gccの sizeof(wchar_t)は4なんですね.-fshort-wchar をつければ2になるのか. すぐに気づかなければ,変なバグに悩まされるところだった.
書き終わった. 明日出せるかな….
そういえば,今まで書いたソフトの中でSTL率が一番高い. RAMが4MBしか無いからちょっと心配…… プログラムサイズは大きくなってもメモリはあまり食ってないと信じよう.
euc-jp対応.これでhttp://www.kstm.org/のwikiとかも表示できます. 文字コードを自動認識しないので,手動で選択+リロードという面倒くさい手間がかかりますが….
なんだか,データが欠けることに気づいた…. 昨日の時点でそんな雰囲気があったけど. 常に先頭から4096バイト目付近が数バイト消えてるっぽいので, データのダウンロードに失敗してるのかな?
今日こそは書くことにする. 8ページ目が殆ど真っ白だけど,8ページ以内だから,これでいいですか? あとは,英語のAbstractを書かないと….
骨格部分は昨日のうちに出来ていたので,今日はいくつかのタグに対応.
A,BR,P,H1~を実装.文字コードはUTF-8のみ. このサイト内ならこれでなんとかOKなはずです(笑).
そんなわけで,実機で動かしてみる. WiFiライブラリの使い方を思い出すのに時間がかかった.
このサイト内を色々表示してみたけど,レンダリング速度は大丈夫そう. リンクからGoogleに飛んでみたけど,JavaScriptで画面が埋め尽くされる….
……論文進んでない.
DS用のブラウザを書き始める.
オープンでコンパクトなHTMLレンダラが無いか探していたのだけど見つからない. 仕方ないので,全部書くことにする. 基本的なタグだけの実装ならなんとかなるでしょう.
研究室へ.先生と少し論文の話を.
説明会に申し込んでみた.実は日程が学会と重なっていたりするので考えていたのだけど, 自分の発表は前の日だから途中で抜けてもいいか.
職種ごとに日程が違うけど,ゲームプログラマとシステムプログラマは「プログラマ」で 一括りなんですね.
Yahoo! JapanもOpenIDに対応したのか.
研究室の机を片付けたら出てきた. 数ヶ月前までは,私の席の横の壁に貼ってあったものだけど,何かの拍子に半分剥がれてしまったので, 壁から外して置いておいたものです.
2000年4月と書かれています. この時代だと,100Mbps以上の回線を持っているところは大手のプロバイダくらいだったようです. いまなら,100Gbps以上が普通なので,8年間で1000倍になってますね. ADSLが普及する直前だと思うので,このころは家庭でも64kくらいだったはずなので やっぱり1000倍の伸びと考えて良いでしょう.
一見,問題が無いようですが,インターネット人口の増加を考えると,バックボーンの 回線速度がもっと速くなっていて欲しいような…….
大学の講義室等で接続に使えるポートが限られているときに,pfwdを使ってSSH経由で接続すると便利です. 同じネットワークに信頼できない人がいて,迂闊に暗号化されてない通信が出来ない場合にも有効です.
[SSH] Host=www.kstm.org User=ksk [FORWARD] 01=D1080
というように,pfwd.iniを設定すればよいでしょう.あとは公開鍵の設定とか適当にやっておけば大丈夫なはず. ポート名にDを付けるのがミソ.これでダイナミック転送が有効になって,Socksで接続できます. PuTTYでトンネルの設定をしても同じことが出来ます.
駅前の平安堂で本を数冊買う.
このシリーズも,だんだんと他のシリーズに重なっていくのか. そういえば,Gシリーズはどうなったんでしょう?
テレビを見ると,環境問題を意識した番組が結構あるけど, 見ていると,そんな悠長な…という感想を持ってしまうのですが,どうなんでしょう?
京都議定書の効力って今年からですよね?
論文を書くためにデータを集めてたら,ふとした変更で,(特定分析対象に対する)再現率(recall)が100%になった. なんで,今まで試してみなかったんだ…….
ただ,再現率が上がらない原因を見て,条件を甘く設定してしまったので, ある意味ではダメダメです.
つまり,100%になるのは,たぶん今回使ったデータに対する結果だけです.
……論文に書く時はどうしよう.
論文の内容の確認. とりあえず,14日までに内容を書き上げよう.
鏡の夢を見ました(意味不明). 朝起きて少し考えてみたのだけど,3次元の鏡像は回転しても重ねることは出来ませんが, 4次元上で回転させれば重ねることが出来ます.
どこかに,鏡は左右が反転するのではなく,前後が反転していると書きましたが, そもそも反転していないという考え方も出来そうです.見えない軸(?)に対する回転で表せます.
もう少し考えて,4次元の鏡は中身が詰まっていることに気づいたところで, 目が覚めてきてしまったので起きました.
数学が得意な人には,だから何?と言われるだろうけど.
昨日のうちから話があったのだけど….どうやら本当らしい. ロボ研に行ってみる.
Windowsに繋いでUSBパケットを眺めてたら, シャッタースピード(?)を設定するっぽいレジスタを発見したので, 昼間もまともに見えるようになりました…….
明るいところでSN9C101のカメラを使うと真っ白になってしまって悩んでいる人は, I2C経由で
0x30, 0x11, 0x00, 0x00, 0x47, 0x00, 0x00, 0x14
というようなデータを送ってみると幸せになるかもしれません.0x47を変化させると明るさも変わります. 1~4fでシャッタースピードを調整できるようです.それ以外の値を入れると,すごく長くなるっぽい?
殆どのLinux用ドライバは0220のレジスタをいじってるのですが,これだけだと室内くらいにしか対応できません. 他にも,0080とかにも書き込んでますが,これはまだ調べてません.
適当にそれっぽいパケットを投げて反応を見るとか凄い開発方法ですね……. Windows用ドライバを解析してしまうのも手ですが,ライセンス違反っぽいし. ちゃんとしたデータシートがあれば楽なのですが.
話は変わりますが,I2C通信ケーブルが欲しくなったときに, 1000円くらいのUSBカメラからセンサー制御用のI2Cを引き出すのも良いかも.
usbd_get_string()の引数増えてる….文字列のバッファサイズを渡してやればいいのかな?
モータを分解したり,ペットボトルを削ったり,コイルに電流を流したりしてました.
「defineって何型?」という怪しい質問をしてくる後輩がいるという話に, 「defineってCの予約語じゃないからtypedefとかで自由に定義できるよね?」と返したら, 「C++のテンプレートってincludeの<>っぽい」とか出てきて, どれだけ変なコードになるかという話に.
発表.
研究室のサーバに(勝手に)繋いであるWebカメラをちゃんと使えるようにしておく.
SN9C101って,AE未対応っぽい? 仕方ないのでWindowsに繋いだときにキャプチャしたパケットを参考に,I2C経由で固定値を設定. 野外を写すときは一番暗くしておくので大丈夫そう.
最近,またPHPが言語としてどうかという話が色々なところで盛り上がってますね. 個人的に,PHPは「--Perl+ε」という感じです(ぇ.
言語としてどうかは別として,PHPは手軽で便利なのは確かだと思います. でも,世の中に穴だらけのWebサービスが山ほど生み出されてしまったのも, これが原因な気もします.
acsuの件はmeshi経由でセンター中の人に伝わったみたいです. ただ,直すのはベンダーの方らしいので,しばらくかかるでしょう.
先生と少し話す. 論文は,8日に内容を確認. 19日あたりまでに仕上げる.
もう発表会のプログラムが出てるらしい. そうか,こんなタイトルの論文をこれからでっち上げないといけないわけですね.私は.
Perl6を少し見てみる. 演算子が色々変わってるけど,やっぱり分かりやすくなっているから,いつかは移行したいな. 個人的には正規表現の変更が一番大変そうだなぁ.
「^..^」…ネコ演算子が正式名称で決定ですか?
論文を書き始めてみる. まだ,全体の構成も決まってないけど.
昨日は書き忘れたけど,acsuにログインするとスケジュールが管理できそうな画面がある. 誰か私に,あれの使い方を教えてください. スケジュールの一覧は表示できるのだけど,私にはスケジュールを入力する方法が分かりません. いや,使うつもりは無いのだけど……. いつも「予定はありません」がひたすら表示されているのが気になる.
「kukiki.cgi」とかがあると,「kukiki」にアクセスしたときに「mod_rewrite」に処理が渡らないで困った.
拡張子を自動補完する機能なんて無かったはず……というか,そもそも404 Not Foundになっている. 原因はMultiViews. ファイルを探して,見つからないとリクエスト自体が失敗してしまうっぽい.
しかも,.htaccessでOptions -MultiViewsするとエラーでるので, Apacheの設定を変えようかと思ったけど,Options Allで逃げる. 「-」で設定を無効にするのはデフォルトで全て許可して欲しい.
httpsが用意されているのに,httpでアクセスしても同じコンテンツが表示されるのか.
URLにホスト名を入力してアクセスしたら自動的に補完されて, http://~になっていて,気づかずにそのままログインしてしまった. いつもと何か違うな…とは思ったのですが. こちらの不注意ですが,httpsの方に飛ばすか何か警告を表示して欲しかった. 少なくとも,「Secured by GeoTrust」のロゴは消すべきだと思うのですが…….
しかも,Cookieにsecure属性が付いてないので,ログインしている最中に http://acsu.shinshu-u.ac.jp/へのリンクを踏んだりすると,暗号化されないで セッション情報が送信されてしまうので注意が必要.
あと,証明書の組織名がacsu.shinshu-u.ac.jpなのも気になる. 他のホストの証明書は「Shinshu University」になってるのに.
そろそろ,スパム対策への対策としてドメイン認証を導入してみようかと色々調べる. DKIMもRFCになってしばらく経つみたいだけど, DoCoMoはSender IDなのか.
というか,なんで去年の11月のタイミングでDKIMじゃなくてSender ID/SPFを 採用するかな…….しかも注意書きを見ると,
SPF(TXT)レコードの確認には、メールヘッダのFROMフィールドを使用します
いや,それはもうSPFですらないから. なんで,勝手に独自規格に改変するんだ. こんなことされると,メーリングリストとかだとどうしようも無くなってしまうんじゃないですか? しかも,調べてみるとSPFの記述を真っ当に解釈してないっぽいし….