タグ

ブックマーク / freak-da.hatenablog.com (2)

  • URIに使ってよい文字の話 - RFC2396 と RFC3986 - 本当は怖いHPC

    POSTするデータを、(プレビューのために)javascriptでGETアクセスするような処理を書いていてハマった話。 発端は、textareaに'(シングルクオートまたはアポストロフィー)が入ると、Railsがそこから先のパラメーターを無視しちゃうっていうこと。いろいろ調べた結果、以下のことがわかった(Railsのバージョンは2.0.2)。 URIを定義する2つのRFC URIの構文はRFCで定義されている。これには2つあって、従来のRFC2396(1998年発行)と、RFC3986(2005年発行)だ。 RFC3986によれば、 This document obsoletes [RFC2396], which merged "Uniform Resource Locators" [RFC1738] and "Relative Uniform Resource Locators" [RF

    URIに使ってよい文字の話 - RFC2396 と RFC3986 - 本当は怖いHPC
    suginoy
    suginoy 2015/06/15
    "2008年にリリースされたRails2.0は、RFC3986にしたがってURIのパラメーターをパースするようだ" "Javascript(ECMAScript)のencodeURIComponent関数はRFC2396に従ったエンコード処理をするので、「!'()*-._~」の記号はエンコードしない。"
  • 高層ビルのエレベーターホールには、なぜ階数表示がないのか - 本当は怖いHPC

    以前に高橋幸雄先生の授業で聞いて非常に面白いと思ったこと。 オフィスビルとかホテルとか、エレベーターが何基も設置されているビルの場合、エレベーターホールに階数表示が無いことが多い。エレベーターホールで画像検索してみればわかると思う。 これはなぜだろうか。 その理由は、「客がいても、その階を通過することができるようにするため」だ。 基的に、多数のエレベーターを効率よく動かすのは難しい。工夫された高度なアルゴリズムが使われていることが多い。目標は「客の平均待ち時間を短くする」ことだ。ある階でボタンが押された場合、どのエレベーターがその客を迎えに行くか、という判断が平均待ち時間に大きな影響を与える。難しいアルゴリズムの中で、この点がもっとも重要なところだ。 高層ビルの場合、エレベーターはかなりの速度で走っている。既に客を乗せて走っているエレベーターが他の客を乗せるために停止すると、減速→停止→

    高層ビルのエレベーターホールには、なぜ階数表示がないのか - 本当は怖いHPC
  • 1