Write and Run

it's a simple way, but the only way.

AngularJSは今すぐ生まれ変わるか死ね

mizchi 氏のエントリを踏まえて。

Angularが嫌い - mizchi's blog

何をやるにもググって解決しなければならないぐらいには一貫性がない

マジでこれ。設定が多すぎる。特に directive 定義。どうやら Web Components の流儀に沿うようになっていて、将来的には Web Components に乗っける、ということらしいが、そもそもの Web Components の仕様が汚いし、救いようがない。

参考: AngularJS: Developer Guide: Directive

制御構造と要素を分離してねぇせいで replace とかいうオプションが生えてるし、tranclude との組み合わせでより複雑なことになるし、isolated scope な directive は併用できないとか、ng-repeat で作られた scope の下に他の directive の scope が入るように優先度とかいう暗黙的な値があったり、マジでクソ。その優先度はコードのどこに見えるんですか!!! ドキュメントと本体の実装ですかそうですか!!! ライブラリの知識がないとコードの意味がわからないから雇用が守られていいですね!!! 100 飛びで優先度を振ってあるから横入りしやすくて便利だと思います!!! N88 BASIC の行番号じゃねぇんだぞ死ね!!!

AngularJS の不健全さを知るためには、とりあえず restrict オプションを見とけばいいと思う。directive を attribute でマッチするか、element でマッチするか、class name でマッチするか、というオプションなんだが、それを "A" "E" "C" という文字列の「連結」で表現する。つまり、attribute と element なら "AE" という文字列を指定することになる。なんだそれ。マトモな脳ミソなら { element: true, attribute: true } にするよな。getUserMedia だってだいぶ前に直ったんだぜ?

とにかく、AngularJS の設計が気に食わない。なんでどこもかしこもアドホックなルールだらけなんだ。犯人がわかったと思ったら後出しでアリバイが出てくる推理小説かよこれは。

AngularJS は今すぐ生まれ変わるか死ね。あと Object.observe を AngularJS のためだけに Chrome に先行実装してゴリ押しするのやめろ。

やりたいこと

レイアウトエンジンを作りたい。GUI のレイアウトエンジンを作りたい。HTML + CSS組版としてはそこそこだが、GUI レイアウトエンジンとしてはやはり中途半端であるので勉強も兼ねてつくりたい。

こちらからは以上です。

CSS flexible box は WPF の StackPanel と同様の表現力を持つ

週末の実験結果。かなりわかりやすくレイアウトを組めることがわかった。しかし WPF の Grid と比較するとまだまだ表現力が足らない。細かいことはまた今度書く。

ちなみに CSS の display プロパティに grid という激ヤバな値が導入された*1。現状 IE10+ のみだが、Chrome の Nightly とかにも入ってる、らしい。IE11 では確認した。しかし gird が導入されても依然としてセンタリングは難しく、人類が100%幸せになることはなさそう、というところ。

さて、StackPanel もどきをベースに UI を構築できる何かを考えるか……

プロダクトに向かって「ゴミだ」って言って炎上させるのはいいけど

ダイオキシンのことも考えろよな。

2014年を迎えて(なお2013年は終わった模様)

あけましておめでとうございます。旧年はお世話になりました。今年もよろしくお願いします。(ここまでが台本です)

KOBA789の2013年まとめ

年のはじめからいろいろあったといえばあったのですが、どれも悪いことではなく、とても良いことのほうが多かったという印象です。振り返ってみると、ここ数年で1番平和で純粋に幸せな年でした。具体的には、ゲヒルンに Join したり、文化祭で無茶言いまくって暴れたり、筑波大に合格したりしました。

2014年とは

2013年の次の年で、2015年の前の年です。まぁ例によっていろいろあると思います。

2014年の目標

2013年がだいぶ平和だったので、2014年はおかしな年になって欲しいなぁという感じです。というわけでして、周囲の皆々様、心の準備をお願いします。

問題解決能力について

問題解決能力とは、筑波大学アドミッションセンターにおいてアドミッションセンター入試に合格するために必要な能力として説明されている能力のことである。この説明だけではわかりづらいため、この能力がどんな時に必要になり、役に立つのか、いくつかの例を用意した。

問題を解決しなければ友達の家で寝ることもままならない。

終電を逃した場合、往々にして問題解決能力は必要となる。

このように、問題解決能力とは生きるために必要な力であると言える。「終電を逃さないように早めに帰宅しよう」というのは回避であって解決ではないと考えられるので、これに該当しない。つまり、問題解決能力を備えた人物は日頃から終電を逃していると結論づけられる。

また、問題解決能力が発揮されるのは終電を逃した時だけではない。私が筑波大学に願書を提出する際、最も難しかったのは期限であった。そこで、郵便局のシステムを調べ、どこなら遅くまで受け付けてくれるかを調べた。

こうして、8月5日必着の資料を8月4日の19:40頃に発送しても間に合わせることができたのである。問題が解決されていることが確認いただけると思う。

以上のような事例からわかるように、問題解決能力を備えた人間は終電に限らず日頃から「ギリギリ」の生活をしていることがわかる。つまり、自分をピンチに追い込むことでこそ、問題解決能力が発揮されるということである。土壇場で焦るのは悪いことであると考えられがちであるが、常に身を危機に晒しておくということは、問題解決能力を高めるために必要なことなのである。