ログ: 2009/02

家は一段落,のはず

一月下旬から動いていた家捜しの件.昨日やっと決まったぜ.ふう.

友人っつーかじゃんくが引っ越しで忙しくてさー,みたいなことを昨年いつだったか忘れたが言っていた時にはおいおい家捜しだのなんだのだけでそんなに忙しいのか? みたいな感じでナメてたんだけどなかなかどうして大変だった.

今住んでるとこは 3 年前,合格発表見に東京に出てきていたついでに,下調べも検討もなんにもせずに,まあ大学まで電車一本で行ければいいよ,とだけ条件にして決めた糞物件で,後悔したくなかったから 「いや,この部屋は防音性もあるし俺にはワンルームで十分だし」 みたいに今までは自分に言い聞かせて来たんだけど,今回わかったのは,正直ゴミ以外のなんでもなかったということね,ここ.

ま,前回そうやって適当に決めちゃった残念さをふっしき*1するためにも今回はがんばって探そうっつーことで大変したんだよね.

賃貸不動産屋いくつも回ってみるとか web で提供されてる各社の物件情報マージして比較するとかは当然として,現地に自分のチャリ持っていって,物件紹介されるたびに住所メモって google maps 開いたノート PC 片手に自分で駅からチャリで向かってみて距離感確かめる,とかいうことやってたんで,もう引っ越し先の街のどこに何があるかとか大体頭に入っちゃってるからね.頑張ったね,としか言いようがないよ.

で,そんだけ探した結果見つけた物件はどんな感じなのよ,と言われると,すっっっっっっっっっっげー高いのね*2.俺ってばこの家賃払えるのかしらん,みたいな高さね.

でもそれに見合う以上の価値を感じる,というか,絶対的に見ると学生にとっては高いけど,同クラスの物件中相対的に見ると破格値ってレベルじゃねーぞな感じ. 実際に引っ越したら盛大に自慢することにしましょうね,ええ.

  1. なぜか変換できない@ATOK2005.高校では「ふっしょく」「ふっしき」どっちで読んでもいいと習ったはず,っていうか広辞苑には両方あるけど今はふっしょくが主流なのかね,とかそういうことがいちいち気になる. []
  2. JIS かなだと「っ」の連続の入力は気持ちがいいなぁ.ローマ字打ちでは感じられない不思議な気分良さだ.多用しようとは全く思わないけど. []

職業プログラマにはなりたくないが

趣味グラマ最強説は信じていて,仕事でコード書き出したら人生終了しそうだなあとは思っている.俺にとってって話だけど.

ゴミのようなコードをしかし必要だから仕事だからという理由で書き続けなければならないというのはマジ自殺するレベル.イケイケな感じのベンチャー系だと,クリテイティブげなことはできるっちゃぁできるんだろうけど,それはやはり型にはまったクリエイティブさであろうことが想像に難くなくて,やっぱ仕事は仕事,比較的すぐに飽きるんだろうしなぁ.いつまで働けるかわからんって問題もあるし*1.そこまで身投げする気があるなら自分で起業でもして死ねばよくねっていう.

とまあ正社員としてのそれに夢を感じてはいないんだが,学生の身分で適当にバイトする分には効率がいいので,仕方なく最近そういうバイトをはじめますた.

「Windows にべったりな感じの開発はあんまり……ええ,win32 API 叩いたりしたくないす.DB とかサーバ内部のことでなんかないっすかねー.あー,win クライアント開発でも今どきの .net なら少しは……」 みたいなノリで話をしたら,じゃぁこれよろしく,と投げられた仕事の言語が, VB6 だった.

C# とか C++/CLI ならまあ趣味にスキル流用できなくもなくていいか,と思って .net の例を挙げたら VB6 が来るっていうイミフさ.しばらく空いた口がふさがらなかった.業務で VB6 とか,あるとは知っていたけど,2010 年を間近に控えてマジかよっていう.しかし,まあ,しょうがないので*2,6 年だか 7 年だかの時を経て懐かしの VB6 を書いてます.

こんなに便利な開発環境はないよ,とか思った頃があったのが嘘のよう.びっくりするほど書きにくいわ.

しばらくは一日 10 時間くらいそんな感じで働くつもりなんであんま時間ないお.

  1. とても東大生的な発言. []
  2. この,自分で思考・選択する権利が全くない 「しょうがなさ」 が働きたくないでござるの最大の理由なんだが.もうちょっと権限与えてもらえればと思うが,バイトにそんな権利はないよね常考. []

FFFTP 終了のお知らせ

2009/02/11 | ごみ | コメント (0)

ゴミのようなエントリ三連投で悪いんだけど,ようやく俺の中で終了したのでお知らせ.

別に今さら終了するもクソもない程度にカビの生えまくったクライアントだけど,win 環境ではなんか惰性で,ひたすら惰性で,使ってたんだよね.「FTP クライアント」 とかでぐぐっても別に完璧な代替案が見えなかったっつーか,NextFTP とか RootFTP とか SmartFTP とかもいつか使ってみたことはあったけど似たり寄ったりでいまいち糞って感想で,less is more 的に FFFTP が最有力扱いじゃんって印象だった*1.そして FFFTP に触れてから約 10 年が経過した.

若干機密性のあるファイルを転送する必要があったので,いつもは自宅サーバから scp なんですけど,気が向いて, scp とか sftp か ftps とかなんかできろよ馬鹿と思い捨てることを決意.

WinSCP もいつかは若干使ったことがあったけど,インタフェースが絶妙にいまいちで,多分個人的なものだけど,使いにくかったので,それ以外……なると FileZilla らしい.

これもダメだったらどうしようかと思ったんだけど,こちらはしっくり来て,無事に乗り換えた.WinSCP にあった転送時のもっさりダイアログとかなく軽快で FTPS も SFTP も SCP もいけてよいです.少なくとも上の方で言ってた個人開発フリーソフトよりは間違いなくベター,オプソ万歳といった感じ.

昔はイケてるフリーソフトを使いこなそう! みたいな,ソフ板住民みたいなこともしてたんだけど,最近はなんかもう完全に食傷状態で,必要なものは必要なだけあって普段何かで困ることってそうないし,win 環境ぐちゃぐちゃ弄り回すのも面倒だし*2,という保守的なスタンスになってしまったなぁ*3,と思っていたけど,今回のことで,探せばよりよいものはあるなという希望が再燃した感じ.

  1. 今だとそれぞれどうなのか知らんけど. []
  2. といいつつコマンドランチャとか mayu とか秀丸とか win 的フリーソフト文化にはお世話になってるが. []
  3. 歳食ったとも言うらしい. []

mod_rewrite で query string の扱い

2009/02/11 | めも | コメント (0)

評価対象のパス文字列中に含まれるもんだと思ってたら違って若干嵌ったので俺メモ.

/hoge/dir/file を hoge.cgi?d=dir&f=file に向ける的処理はありがちで問題ないんだけど,例えば hoge?a=b を unko?file=hoge&a=b に向けたいときとかに,? 以降全マッチさせるようなルールを書くと残念なことになる.

調べてみるとクエリー部分は %{QUERY_STRING}*1に入るそうなんでそれを向ける先に使って,

RewriteRule ^[a-zA-Z0-9_-]+$ unko?file=$0&%{QUERY_STRING}

という感じでやるとできる.

……のだが,それもまだ無知な感じで,[QSA] オプションつけると自動的にクエリーを保存再現してくれるようで.

RewriteRule ^[a-zA-Z0-9_-]+$ unko?file=$0 [QSA]

より平易.知ったかしてなんとなくで使わないでちゃんとドキュメント読みましょうという話.

  1. ? は含まれない. []

だめだって言ってるのに

2009/02/11 | ごみ | コメント (0)

しばらくはおとなしくしてようと思った途端にまた例の天邪鬼癖でやっちゃった件.

サークルのお仕事に関連して,ブロックスタイルの YAML とか JSONP とかふーんって見てないでちゃんと使って使い心地知りたいなぁと思ったのでテストに,っていうのが動機でどうしてこうなるのかがわからないけど,童心で遊んでるといつか身を滅ぼすよなぁ.

見本のネトランとか雑誌の山を当時誇らしく保管しておいたのが既に黒歴史であるように,デベロッパーとしては黒歴史しか生成してないから困る.性分がガキなんだよね.社会性を無視していいなら個人的には喜ばしいことなんだけど,TPO とかいうものもありましてね.

まあいいけど.

八重タイピング関連レス兼メモ

2009/02/09 | つくる | コメント (6)

色んなとこでとりあげていただいてどうも. 個別にレスとかして回るのが普通だと思うんだけど,見通し悪いなあっつーことで,失礼ながらここにまとめさせて頂きますわよ*1

長いので本文は畳んでおくか.

-

  1. jis かなで typo した.気に入ったので残す. []
  2. もっと前衛的なこともできるんだけど,そういう書き方はほとんどしてない(以前にできない). []
  3. 目に見えない文字使うのはさすがにないw []
  4. win で mayu とかだとダメでその辺は残念なんですが. []
  5. どこの誰だったか失念さーせん. []
  6. っつっても,10ms とかの世界で. []
  7. 理由のひとつは本家っぽくするためで,もうひとつは 60 fps でやると負荷が割と無視できない感じだったため. []
  8. 端から見るとほんとなんでそこまでクローンに情熱注げるのって感じだろうなあw だがそれがいい. []
  9. どっちかってーと e-typing でなくて教育機関なり企業なりへのシステム提供で食ってるはずだけど,e-typing での広告収入も無視できるほど少なくはないはず. []
  10. いや,一般公開してソースやワードセットまで配るとか全然自粛のうちに入らないといわれればそれはそうだけどね.怒られたら反省する子なので,いきなり東京地方裁判所に引っぱっていくのは勘弁してくれると嬉しいなあ.これ以上金なくなるとマジ卒業できなくなっちゃうよ. []

八重タイピング正式版

2009/02/07 | つくる | コメント (6)

今タイピングソフトウェア開発がアツい! キャンペーンを脳内実施したところに燃料投下する感じで,α版から丸 1 年経ったらいきなり正式版が公開! っていう.今までのやる気ゼロさと今のやる気マックスさを見せつけた形.

1 月半ばから,エタイに向かってる時間を開発に割けばこんなのすぐじゃね,と思ってちょくちょくやってたら全然だめだったので,ごりごりっと一気に書いた.後に書いたコードほどどうしようもなく汚いっていう,ありがちなこと.まあコーディングって一気に何時間とかは割いた方が効率いいよね.8 時間とかになってくると微妙だけど.

しかし前のはまあなんとかあれだけど,こうなってくるとさすがにアウアウな感じなので,ごにょごにょ進行でよろしく,と言わざるを得ない.

どうでもいいけど開発中デバッグにずっと擬態語打ってたら 700pt とか割と出たので今度擬態語来たら記録狙ってみよう.

やっぱ練習効率が全然違うよ自画自賛だけど.

しかし元々の開発動機が 「エタイとかあんなクソみたいな練習環境でタイピングして何が嬉しいの?馬鹿なの? 俺だけ手元でクローン使って練習してライパルに差をつけ CHAO ☆」 だった気がするから,まあ,うん,知ってる人だけ得をするというずるい品であればいいと思います.

さすがにストイックなの*1しばらくいいわ,という感じなので次はエンタテイメント性の高いものに着手したいね. 1 月頭に Tsuikyo, 2 月頭に yaet と来たんで,まあひと月にひとつくらいは何かコミットする感じで.

追記: 絵はなんか有志の人が送ってくれたので使わせてもらいました.俺が描いちゃいないのであしからず.

  1. このフレームワークでもっとカッコイイ描画いくらでもできるのにピクセル単位でクローンに徹するとか. []

もう今年は大丈夫

年に一度くらいしか風邪とかひかないよ俺,というのが自慢のひとつだったのにもう風邪をひいた.

まあまだ寒いっつーのに薄着で出歩いてるのが悪いんだけどね.

いやもう回復したんだけどさ.ここ数日割と寝てたよ.

で? っていう感じだよね.他人が疲れたー,とか,病気したー,とか言っているのほど興味のわかない文章もない.まさにどうでもいい.対岸の火事ですらないっていう.このパラグラフを書いたことによってなんとか情報量生まれたかしらとか,そういうレベル.

手首への負担

2009/02/03 | ごみ | コメント (1)

自転車>>>>>>>>タイピング

家捜しのために昨日今日で 5 時間少々チャリ乗ってただけで手首が終了したのでタイピングおよびコーディングはおやすみ.

体弱くなったよなぁ,とはつくづく思う.

指番号ってどう振るとベターかね

運指をテキスト上で示すために,指に短い名前があると便利という話は,多分大昔からあって.

ビートマニア文化だと(詳しくないが)右人とか,左薬とかって普通に右左と指名を省略したものをつなげて表記していることが多い.

てもそれだと,「hogerattyo は 右人右薬左人左中左人左小左人左人右人右薬と打つ.」 みたいなひとつの例を挙げれば瞬く間にわかるように長くて見にくい.可読性のために半角スペースとかカンマとかを区切り文字として入れるとまだ読めるけど,それをいちいち挿入しつつ表記するのは面倒.

そこで,指って 10 本だし 0~9 割り当てればばっちりじゃね,というのがごく自然な発想.とりのさんもかする話をしていたな.だがしかし,そうすると今度は指にどう番号を振るのかが気になってくる.

俺の場合,この問題は考え出すと割と悩ましいので,今まで数字表記にはせず上記ビーマニ表記でやってきたって経緯がある.

……んだけど,yaet に本家同様の指表示を実装するにあたり差し迫って指に番号を振る必要が生じたので,いい機会と軽く考えた.

(A) 案

09020101.png

とりのさんが使っていた一例.1 オリジンで左から順に. 0 はもちろん 10 をイメージして.

長所は,なんといっても一般の人にはとても直感的に理解してもらえるであろうという点.「キーボードに手を置いたとき,左から順に 1, 2, 3……だよ.あ,10 のことは 0 って書くね」 と言えば旧帝大医学部生でも理解できる*1

しかし計算機的にはやっぱり気分がいまいちよくなくて*2,次のが出てくる.

(B) 案

09020102.png

0 オリジン版.馴染みがある人にはこっちでも問題なく使えると思うけど……普通の人の感覚的にどうなのかは BASIC を離れて n 年経った今ではわからない.

まあ多分,プログラマがあんまり何も考えずに番号振ったらこうなる.

じゃあ他に考慮するべきこととして何があるのかというと,右手と左手の対称性*3

要は,こうやってキーボードに手を置いて上から見る分にはいいけど*4,右手と左手が鏡像関係にあることが数字から伝わって来ないよなと. 毎回左から 1, 2, 3 ……って頭の中で考えてしまいそうな感じ.

「(右手左手問わず)人差し指は運指範囲が広い」 とか 「(右手左手問わず)小指の担当分は少なくしたい」 というような表現があることを考えると,「指」に注目して抽出するときにも数字が綺麗に,わかりやすく取れると嬉しい*5.で,次へ.

(C) 案

09020103.png

(B) 案の左手をひっくり返した.「上から見て,左から順に……」 というわかりやすさが犠牲になって,代わりに mod 5 で「指」が取り出せる. 7 = 5 + 2 的な 5 基準の感覚は割と一般的にみなさん持っていると思われるので, 1 と 6 が同じ 「人差し指」 を指していることはぱっとわかる.

若干覚えにくくなった感はあるけど,まあ, 「親指から小指に向かって番号が大きくなる」 とか言えばまあ理解できる範囲だと思う.指折り数えるときの順も,これと同じになる人が多いと思う.

でもここまでくるともう,「mod 5 なんていう微妙なもの使わなくても,もっと便利なものがあるじゃない! そう,偶奇だよ!」という気がしてくるわけで.

(D) 案

09020104.png

偶奇 (mod 2) で「手」,2 で割った値の切り捨て (/ 2) で「指」.

このレベルになってくると,「なんとなくわかるでしょ.覚えてね」 としかいいようがない雰囲気になってくるが,かなり合理的な振り方にはなってる.(C) 案もそうだけど,滅多なことでは使われないであろう親指に 0 とかいう番号としては馴染みのない感じの数が当てられているのも長所だと思う*6

合理的なだけはあって数字を見たときの理解も一見するよりはずっと楽.偶奇をみることは小学校卒業程度の学力があれば瞬間的にできて,あとは各手の偶奇さえ覚えていれば,直感的に手がわかる.指は,数字がでかい方が打ちにくい小指側だ.2 で割って切り捨てて指を求める,というと面倒そうだけど,2~3 が人差し指, 4~5 が中指, 6~7 が薬指, 8~9 が小指,というだけの話なので,これも慣れれば直感的にいける気がする.

でもなんかこれにしっくり来なくて. なんでだろうと思ったら,

(E) 案

09020105.png

俺は偶奇入れ替えたこっちの方がなんだかしっくりきた.右手と左手,どっちが偶数っぽいですか? といわれたら俺は右手だったという話.この辺は人によりけりだと思うけど.ちなみに yaet は今のところこう振ってある.

-

まとめると (A) から (D)(E) に向けてどんどん合理化してった感じね.(C) と (D)(E) の差は「手」と「指」どっちを商にしてどっちを余りにするかって話に過ぎないけども,どっちかというと (D)(E) の方が突き詰めた感がある.

参考のため,前出の hogerattyo を各案で表記してみる.

A : 7943414479

B : 6832303368

C : 6812141168

D : 3724282237

E : 2635393326

どれもわかりにくいわボケがと言わずに大人の右脳トレーニングだと思って取り組んでいただきますと.

A, B は学習量がほとんどゼロでもキーボード上でのだいたいの位置はわかるが 「指の動き」としてイメージしようとするとカッチリしない感じがするのに対し,C,D,E と行くにつれて読むのに若干の学習は必要だけどもその 「動き」 がしっかりわかる(実際にタイピングしている時の運指のイメージにつながりやすい)気がしませんかね.するといいんですけどね.

で,結論はというと,なくて.

取っつきやすさから言えば (A) 寄りの方がいいし,考察とかコード書くとかそこそここの表現を使って頑張るなら (C)(D)(E) の方が幸せになれるはずだし.どっちもどっちすぎて,これが最強とは言えない.

まあ,人間慣れれば慣れるもんなので,みんな慣れてしまうことを楽観視していいなら (D) か (E) が広まると学術的にはスマートなんではないかと.

っていうかわざとスルーしてきたけど,多分文献漁るとこんなのは昭和の時代にばーんと策定されてる気がするんで,どうしていいか困ったら伝統だの権威だのにすがって,既に決まってるものを使うのでいいんじゃね.

いちおう,タイピングではないが権威伝統として参考に挙げると,ピアノでは右手も左手も親指から順に 1,2,3,4,5 って番号振るようなんで,(C)(D)(E) 寄り.

なんか参考になる文献とかあったら適当にたれこんでくれると助かります.

  1. もちろん医学部コンプによる皮肉ですふひひ []
  2. 例えば「右手」を抽出する処理が美しくない. []
  3. 自発的対称性の破れ! とかいいたくなるけど無知を晒して恥をかくだけなので書かない. []
  4. 逆に言えば,「キーボード上でのだいたい位置が番号からわかる」を一番の目的と考えればこれが最適なわけだが. []
  5. この振り方でも式ひとつで「指」を示すことはできるけどさ,気分よくないよ. []
  6. 小指から親指にかけて大,にしない理由のひとつ. []