Home → 2011-2012 winter, since 2009-12-01

2011-2012 冬

20 December 2011

  1. 最近の忙しさからscalpingも相場の分析もできないので、長期的展望に基づいて10月からユーロのショートポジション(EUR/USD 1.33)を作っていた。ところが米QE3観測だのEFSF承認だのでなんと1.41まで上昇、下手をすると1000pipsくらいやられるところだった。
  2. それでも前回と同規模のQEはないと踏んでいたし、結局ユーロ圏の財政問題は何も解決していないので、そのまま天井知らずということはあり得ないと確信していた。
  3. 試験勉強等々で忙しくて余裕がなかったため含み損を確認したわけではないが、多分資金の20%程度はやられていたと思う。レバレッジ300倍で失敗したときの50%というあの損失以来の幅だ。
  4. 試験には無事合格して余裕が出てくると相場の方も反転。現在は5%程度の含み益となっているが、冷や汗ものではあった。
  5. 長期的展望に基づいていることが重要で、今回のはいわゆる塩漬けとは違う。だから今も額を考えれば年末の利益確定としたいところだが、この展望が消えるまでは保有するつもりだ。チャート上では今後もかなりの幅で上下に振れそうだが、そんなものに一喜一憂したり分析を繰り返したりする余裕がない。だからこその長期ポジション。とりあえずそういう戦略を組める稀な情勢だと踏んだ。
  6. 一昨年の春、碁をやってみようと思って初段の人に星目で打ってもらって以来、勉強する暇どころか打つ暇さえなかったが、11月に試験が終わってからは、ようやく時間も作れるようになってきた。川上とも子さんが亡くなったのをきっかけにヒカルの碁も読み、結構やる気が出てきたところで、一応初段に星目で勝てる程度には上達。
  7. 「ハイパーメディア学習法」を今回の試験勉強で試してみた結果、ボーダーラインの150%の得点で合格できた。通常、学習時間は1年程度が目安と言われているが、2か月半に圧縮。ハイパーメディア教材の基礎部分の作成に2か月程度かかってはいるし、その作成過程も学習時間に入れれば4か月半ということになる。
  8. 当然、碁の勉強にもこれを使いたいのだけど、ずっとPCに向かいながら棋譜並べというのはなかなか難しいし、何よりつまらない。碁石を触ってこそ楽しめる部分というのがある。そこで、40Vのフルハイビジョンテレビを(家族を騙して)購入。「碁の勉強をするため」という真の目的は隠しつつ、「とっくにパススルーなんだから地デジチューナー付きのテレビならJ:COMのチューナー(セットトップボックスのこと)は要らなくなる」とか、「40Vを4万円台で買えるのは今しかない」とか、色々な方向から説得を試みた。
  9. そして1,000円で入手した5mのHDMIケーブルを使って40Vのテレビ画面にPCをつないで電子書籍(碁の教材)を眺めつつ、碁盤と碁石を使って棋譜を並べる、という毎日が始まった。まあ毎日はできないけど。
  10. というか、3歳児が猛烈に邪魔をしてくる。何かというと「囲碁やろ」と言ってくるが、奴がやり始めるのは囲碁ではなくてただ気に向いたところに石を置く石並べ遊びであり、交互着手のルールすら守らない。一応アタリくらいは理解させてみたものの、そのうち飽きるだろうからあまり熱を入れたくないところ。
  11. 以上がここ数週間から数か月の出来事。ウェブパブリッシングに使う時間が全然なかった。ウェブをぶらつくことすら殆どしなかったな。完全に目的志向でしか使わなくなりつつある。まあこれが普通のユーザーの姿だ。応用力が若干違うので普通のユーザーとはちょっと話が合わない、しかし普通のエンドユーザー。それが今の自分。
  12. で、ようやく生活もリズムを取戻し落ち着いてきたかと思っていた矢先、転勤してきた係長が俺の作ったソフトウェアに目をつけ、色々なところで吹聴して回ったらしく、怪しげなプロジェクトに参加することになってしまった。
  13. 時間が欲しい。

22 December 2011

  1. Chrome拡張のSmooth Gesturesをインストールするとサイト内の広告が置き換えられてしまう : akiyan.com
  2. 池田信夫 blog : Winny事件で日本が失ったもの - ライブドアブログ
  3. 池田信夫 blog : 中山信弘氏の情熱 - ライブドアブログ
  4. 逆に言えば、著作権なるものに違和感を抱けない感覚とは、どれほど鈍いものなのかを示唆している。

29 December 2011

  1. 私が乗っているホンダのバイクは、調子よく走っているときは一切のインジゲーターは点灯しない。何かランプが点灯しているということは、それに対処する必要があることを示している。

    別に、異常なときだけ赤点滅くらいで良いと思う。緑色のランプが邪魔で仕方が無い。このETCの設計思想は間違っていて、安全運転上支障がある。見るたびに気分が滅入る。

    何も点灯していない機器には動作しているかどうかのフィードバックがない。バイクは「調子よく走っている」という明らかなフィードバックがあるな。

30 December 2011

  1. 「違和感」といってもピンキリ。経験の不足しているアマチュアの「直観」と、高段者の「大局観」は全然違うでしょうが。
  2. 碁を打とう。

1 January 2012

  1. 喪中なんで。
  2. ついつい相棒を見てしまった。ついつい引き込まれて最後の方まで視聴してしまったが、犯人の2人の描き方があまりに稚拙で残念だった。

2 January 2012

  1. 「USB接続のHDD」が僕の用途では向いているかも知れない
  2. 去年から狙ってはいるがどうも思ったように価格が下がらない。\5k/1TBくらいにならないものか。
  3. だだもれを読んでいて、育児に関して共感できる部分多数あり。
  4. 家の育児の方針は、考えすぎないこと。怒りを覚えたら怒ればいいし、抱きしめたくなったらそうすればいい。ただ、子はこうあるべきだという社会通念上の像と子を照らし合わせたときの相違から生じる類の怒りによって子を叱るのは駄目だ。それは自然の姿ではなく、歪みを生じるはずだから。
  5. しかしそういった歪みから生じた人格によって表出される「怪物」が、良かれ悪しかれ世に大きな影響を及ぼしてきたことも事実であり、そこに葛藤を感じないでもない。
  6. 本の価値 - Nothing ventured, nothing gained.を経由してまた日経の嫌な記事が目に入ってしまった。
  7. 子供同然の本を、見ず知らずの人の手でいいようにされることに憤りを感じるって、身売りしたくせによく言う。
  8. 自分の子供に安い値段をつけて不特定多数の他人に売っておいて、見ず知らずの人の手でいいようにされることに憤りを感じる。これは気が狂っているとしか言いようがない。気違いだ。人の親だからわかる。
  9. 全く同じ理屈で、本を愛する人間が本を裁断する行為も気が狂っているとしか思えない。
  10. 別に裁断なんかしなくても電子化できるんだが、俺がやっているのは所謂自炊ではないのか。やたらと手間がかかるのは確かだが、出来上がった電子書籍はハイパーメディア化の過程で再生産されており、(自分にとって)それはもう素晴らしいものだ。
  11. なんで俺って世間の人と話が全然合わないんだろ。気違いにしか見えないんだよどっちも。

10 January 2012

  1. 「リスク評価」と「リスク管理」を混同する放射線医 - satolog
  2. 「200人」というのは、100mSv の被曝すると、生涯でガンで死亡するリスクが0.5%高まるというICRPの公式見解をなぞったものであり2mSv上乗せされれば当然、200万人×0.5%×2÷100=200人の癌患者の増加という「目安」が出る。「目安」に意味がないとしたらICRPは何のために「目安」を示したのか意味不明になってしまう。

    科学的証拠に基づかないが心理的な負担を軽減するという意味で、そういう「目安」が出てくる。リスク評価は当該事象の発生確率とその影響の大きさを定量化したものだが、リスク管理というのはリスク評価を含め、様々な外的要因を踏まえたうえで最適解として決定される(べき)ものであり、当然その外的要因をどこまで含めるかによって様々な違いが出てくる。

  3. 抽象的な思考が(苦手ではなくて本当に)できない人というのは、いる。それも極一般的な存在として普通にいる。そういう人とどうやって対話し、どうやって相互に理解していくのかというのは、人類のテーマなのかもしれない。すなわち論理的に話をしても分かってもらえないとき、我々はどうしたら良いのだろうかという問題がである。

13 January 2012

  1. 長文をマルチカラム化して読む汎用的な方法

    長文をマルチカラム化したいとき、今まではユーザースタイルシートやスクリプトを使ってサイト単位でやってきたのだが、なんで気づかなかったのだろうか。(毎回ひと手間かかるが)誰にでもできるもっと簡単な方法があった。

    1. <body contenteditable="true"
          style="-webkit-column-width: 25em; -moz-column-width:25em;"
          ondblclick="this.contentEditable = false"></body>
      このようなテキストファイルをmulticol_blank.htmlなどとして保存し、ブックマークする。
    2. マルチカラム化したい文書に遭遇したら、Ctrl + Nなどでこのmulticol_blank.htmlを開き、そこに文章の一部または全部をドロップする。

    これだけだ。スクロールが発生しないように長さを調節することも、慣れればたやすい。開始点をクリックし、Shiftを押しながら終了点をクリックするなどして選択したのち、multicol_black.htmlにドロップする。

  2. いつも読むブログ記事なんかには面倒くさくて向かない。
  3. Twitterでも何でも見てみるがいい。生活言語しか話せない(のではないかと疑いを持たざるを得ない)者のなんと多いことか。我々はそんな人たちと議論し、理解し合い、同じ社会に生きていかねばならないのである。

14 January 2012

  1. bookmarkletにできそう。
  2. 当然作ってはみたのだけど、手動でドロップやペーストをするとテキストだけではなくスタイルも保持されるので、そっちのほうが読みやすかった。
  3. title要素つけてData URI化してみた。空白ページ(multicol)

16 January 2012

  1. IE7 が死んだらできるいくつかのこと( caniuse.com から見繕っただけ) - oogattaの勉強日記

17 January 2012

  1. このようなスクリプトでよいのではと思いました: https://gist.github.com/1620049 (Firefox用)
  2. 全文または選択範囲をマルチカラム化(Firefox用) — Gist
  3. 「確かにこれなら構造をコピーできます。手動ペーストでやる場合、スタイル情報もコピーされるのですが一長一短といったところで、大抵の場合そちらの方が良いかと思われます。」
  4. window.openやdocument.openでDOMオブジェクトを作ると、HTMLやCSSをいじる感覚でカスタマイズできなくなるのは欠点か。
  5. 2012年のMedia Queries - Weblog - hail2u.netは希望の光。ところがそのような理想的なウェブになって行かず、変な方向にずっこけるというのがこの10年のトレンドで、結局のところターゲット決め打ちという手法は常に主流であり続けるだろう。これからもうしばらくはこの本質的な誤りが続きそうだ。
  6. 例えば、テーブルレイアウトは死んだ。死んだが、それは決してテーブルレイアウトが何故誤りなのかという本質が理解されたからではなくて、単により便利な代替物(CSS)が十分使える形で現れるという表層的な利便が手に入ったからだ。彼らにとっては自分の目に映ったものが「ほとんど」全てで、WYSIWYG的な考えから脱却することが(したくても)できない。
  7. 有段者と6子局で打って初勝利。26目差。
  8. ところがネット碁をやると自分でも分かるような下手な手を打ちまくって自滅してしまう。ネット碁はどうも気が急いてしまって向かないかも知れない。
  9. 久しぶりにinvalidを食らったと思ったらはてなブックマークの target="_blank" をそのままコピーしていたらしい。まったく憎々しいぜ。
  10. というか、今日というか昨日、生まれて初めて口内炎ができた。痛くて熱いコーヒーが飲めない。こんな物が年がら年中できていて、よく平気な顔をしていられるもんだな普通の人は。
  11. 紙の新聞は、一つの記事を読むのにスクロールが必要ない。

18 January 2012

  1. 長文をマルチカラム化して読む汎用的な方法 その2

    DOM Rangeを使う北村さんの方法(全文または選択範囲をマルチカラム化(Firefox用) — Gist)を使って、自分なりにユーザビリティを追求してみた。

    まず、ポインティングデバイスで選択範囲を作成する(ことが多い)のだから、操作はポインティングデバイスで完結するのがベストだ。しかもそれは作成した選択範囲を扱っていると認知されるような適切な操作でなければならない。思い浮かぶのは次の二つ:

    • コンテクストメニュー
    • マウスジェスチャー

    どちらも大差はないだろうが、所謂ブックマークバーなどからスクリプトレットを選択するような操作は、選択範囲の喪失という誤操作を招きやすく、緊張感を伴うので駄目だが、何らかの事情を考慮し選択肢として用意しておくことは重要だ。

    マウスジェスチャーに登録

    個人的にはすでに拡張機能をインストールしてあるのでマウスジェスチャーが実装しやすい。大抵のマウスジェスチャー拡張には、カスタムジェスチャーという項目があり、ここにスクリプトレットを登録して具体的なジェスチャーに紐づけするだけだ。特に説明は必要ない。

    俺はとりあえずマルチカラムの「M」の文字をジェスチャとして紐づけてみた。覚えられれば何でもいい。

    コードを改変

    ①webkitに対応させ、②著者スタイルを尊重し、③document.open / window.openで作成した場合にマウスジェスチャが効かなくなるなどの問題を回避したのが次のコード。

    (function(){
    	var COLUMN_WIDTH = "25em";
    	var PREFIX = "webkit"; // or "Moz" where Mozilla
    	var sel = window.getSelection(),
    	body;
    	
    	if (!sel.isCollapsed){
    		body = document.createElement("body");
    		body.appendChild(sel.getRangeAt(0).cloneContents());
    		document.documentElement.replaceChild(body, document.body);
    	} else
    		body = document.body;
    	body.style[PREFIX + 'ColumnWidth'] = COLUMN_WIDTH;
    })()
  2. でもやはりカスタマイズ性を捨てきれず、足掻く。多少強引にData URI化。
  3. var HEADER = '\
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">\
    <title>マルチカラム化された【' + document.title + '】</title>\
    <script type="text/javascript"></script>\
    <style type="text/css">\
    body{-moz-column-width: 25em; -webkit-column-width: 25em;}\
    </style>\
    ';
    
    var sel = window.getSelection(),
    srz = new XMLSerializer(),
    body;
    
    if (sel.isCollapsed)
        body = document.body;
    else {
        body = document.createElement(body);
        body.appendChild(sel.getRangeAt(0).cloneContents());
    }
    location.assign(dataURI(HEADER+srz.serializeToString(body)));
    
    function dataURI(str){
        return "data:text/html;charset=utf-8;base64," + base64encode(str);
    }
    function utf16to8(str) {
        var i, len, c;
        var cc = String.fromCharCode;
        var buf = [];
        len = str.length;
        for(i = 0; i < len; i++){
            c = str.charCodeAt(i);
            ((c >= 0x0001) && (c <= 0x007F)) ?
                buf.push(str.charAt(i)) :
            (c > 0x07FF) ?
                buf.push(
                    cc(0xE0 | ((c >> 12) & 0x0F)),
                    cc(0x80 | ((c >>  6) & 0x3F)),
                    cc(0x80 | ((c >>  0) & 0x3F))
                )
            :
                buf.push(
                    cc(0xC0 | ((c >>  6) & 0x1F)),
                    cc(0x80 | ((c >>  0) & 0x3F))
                )
        }
        return buf.join("");
    }
    function base64encode(str) {
        var i, len;
        var c1, c2, c3;
        var Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");
        var buf = [];
        str = utf16to8(str);
        len = str.length;
        i = 0;
        while(i < len) {
            c1 = str.charCodeAt(i++) & 0xff;
            if(i == len){
                buf.push(
                    Chars[(c1 >> 2)],
                    Chars[(c1 & 0x3) << 4],
                    "=="
                )
                break;
            }
            c2 = str.charCodeAt(i++);
            if(i == len){
                buf.push(
                    Chars[(c1 >> 2)],
                    Chars[((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4)],
                    Chars[(c2 & 0xF) << 2],
                    "="
                )
                break;
            }
            c3 = str.charCodeAt(i++);
            buf.push(
                Chars[(c1 >> 2)],
                Chars[((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4)],
                Chars[((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6)],
                Chars[(c3 & 0x3F)]
            )
        }
        return buf.join("")
    }
  4. 著者スタイル尊重版のほうが良かったか。処理も速い。しかし何らかのバッティングが起こる可能性があって不安定かも知れない。
  5. カカオ栄養研究所 | 森永 CacaoFun

26 January 2012

  1. 池田信夫 blog : LNT仮説について* - ライブドアブログ。8億年前に哺乳類がいた!?
  2. 「データの入力時にユーザーによる上書きを許可する」。なんだと思うこれ?
  3. データを入力して上書きしようとしたときに、「必要条件」を満たしていないと警告が出るらしいのだが、その警告を無視して上書き可能にするのがこのチェック項目。
  4. 「警告を無視して上書き可能にする」でいいじゃねえか。上書き自体を禁止するための項目は別にあるんだから。
  5. FilemakerのGUIはこんな「なぞなぞ」の連続で、これを使いやすいという人間は宇宙人に違いない。
  6. オレオ1枚、たけのこの里一粒、明治抹茶チョコ一欠片。この順で続けて食べる。
  7. それぞれ異なる食感と風味がシームレスに繋がって、ダイナミックな味わいを感じることができる。
  8. こういう菓子の食べ方って、研究されていそうだけどね。
  9. Filemakerのサンプルデータベースを見てるんだけど、「納品遅延色フィールド」だって。俺そろそろ限界だわこれ。
  10. このFilemaker。フィールドのデータタイプを選択するドロップダウンリストがあるんだけど、いくら目を凝らしてもbooleanとかyes/noとかバイナリとかの論理値が見つからない。まあ数値で代用すりゃいいかと思ったし、そこは我慢した。
  11. しかし、データタイプに「計算」なる項目があるではないの。何この「計算」て。調べるとどうやら得体のしれない関数型言語チックなものを使って同一データベース内のフィールド値を引数に取った戻り値を値とするらしい。
  12. まあ要するに、人材管理データベースみたいなもので言えば、生年月日フィールドの他にFilemakerでは年齢フィールドがあって、年齢フィールドのデータは現在の日付と生年月日との差分を計算する式になっているという寸法だ。
  13. いいかい、ここでまともにデータベースを作ってきた人間なら「違和感」を抱くだろう。嫌悪感といってもいい。重要だと思わないかこの「違和感」。先日書いたのはそういうことだ。違和感を舐めてはいけないよ。確かにバカが嫌い嫌い騒いでいるケースもあるだろうが、自分の感覚はもっと信じていいはずだ。
  14. 問題は、ここでその違和感とどう付き合っていくかということだ。この例で言えばつまりは酷い冗長性と他のデータベース応用との互換性の欠如を睨んでデータベースを慎重に設計しなければならないことを結論づけることができる。そのへんのコストを測って運用するかどうするかを経済的に決定すればいい。「バカが嫌い嫌い騒ぐ」のと違うというのはこういうことで、バカは正しく結論を出せないしアクションを決定するための計算もせずにただ嫌いだから「使わない」で終わりだ。

29 January 2012

  1. Windows XP Modeに問題が発生して起動しなくなったら、エクスプローラにてWindows XP Mode.vmcxのコンテクストメニューで「設定」。

12 February 2012

  1. RAMディスクにエミュレータの本体を置いていたら、フリーズでセーブデータが全部消えた。迂闊だった。
  2. ああ畜生仕事に行きたくないぜ。
  3. 正確には、(仕事に行くために)今から寝たくない。ずっと起きていたい。
  4. 俺専用の開発環境とやらはできたのだろうか……。なんとなく(プロジェクトに)乗り気がしないのも寝たくない原因か。
  5. 俺が読んでいるブログは、手を加えないと大抵スクロールが発生するというか、短いやつはフィードリーダーで読んでしまう。
  6. うちの3歳児が部屋で走って転んで、額を何かの角にぶつけた。パックリ割れていて結構傷が深い。家庭の応急手当ではまともに治らないことは一目見てわかった。日曜だったが近所の整形外科に電話したところ、「いいよ、きてください」と言われた。一針縫ったが、事故から処置して帰宅するまで30分かからないという速さで事が済んだ。
  7. 思ったのだが、普段から「お医者さんごっこ」をやっておくべきだ。結構泣きじゃくったし、暴れて手がかかったのでね。家に帰ってから昼食を食べたのだが、そのとき歯になにか詰まったらしく、取ってもらいたい様子だったので、早速「お医者さんごっこ」を試してみた。
  8. 椅子を用意して名前を読んで、診療するふりをしてから歯ブラシを使って歯につまったカスを取る。普段なかなか言うことを聞かない子なのだが、結構喜んで神妙にしていたよ。

15 February 2012

  1. ファイナルファンタジーII - Wikipedia
  2. 回避率とか防具の重さとか、その辺のことは全く知らなかった。それでもかなりヌルいゲームだった記憶がある。カーズでラスボスも余裕だった気がする。
  3. Next:
己自身を知れ