タグ

ブックマーク / www.artonx.org (4)

  • なぜUnixはUnixなのか(Unix考古学を読み始めた) - L'eclat des jours(2016-04-27)

    _ なぜUnixはUnixなのか(Unix考古学を読み始めた) アスキーの鈴木さんにUnix考古学を頂いたので読み始めて、シェヘラザードの代わりに寝台の脇に置いて何夜か過ぎて大体半分読んだ。 抜群におもしろい。単なる読み物としてもおもしろいのだが、おおそういう理由でそうだったのか/こうなっているのかという説明が(あとがきを読むと、筆者は類書をネタにしているのではなく(ゼロではないだろうけど)、当事者たちのログや論文を読むことで事実関係を掘り起こして推測して結論づけたりしている。なるほど、その作業は電子の地層から掘り起こして塵を払ってつなぎ合わせて当時を復元していく作業にそっくりだ。それで「考古学」なのだな)なかなかに快刀乱麻で読んでいて実に楽しいのだ。 まずまえがきにぶっとぶ。 読み進めて次の文章に腰を抜かした。 人づてに聞いた話だが、著者の藤田氏は1970年代生まれよりも若い年代に書を

    toshiwo
    toshiwo 2016/04/27
  • L'eclat des jours(2013-10-25)

    _ WebMVCと設計パターン WebMVC(面倒なので以降はただのMVC。J2EEのMVCがSmalltalkのMVCと異なるMVCだということは既に10年以上の歴史があるのだから、今更どうでもよろしい)というのは、Transaction Script PatternとDomain Modelの間にまたがるスペクトラムだ。これがMVCの最大の特徴であり利点なのだが、なぜか、Transaction Script PatternとDomain Modelの両極端の声の大きい人が自分の視点を叫ぶ(実際に前者で声が大きい人はいない。彼らは沈黙のうちにコードを広める)。そこで混乱が生まれ、最悪のTransaction Script Pattern実装(貧血)と最悪のDomain Model実装(血 )が幅をきかせることになる。といっても、最悪のDomain Modelは普通は作れないのでそれほど

    L'eclat des jours(2013-10-25)
    toshiwo
    toshiwo 2013/10/25
  • 伽藍、バザール、ノウアスフィア、おなべ(3) L'eclat des jours(2012-04-11)

    _ 伽藍、バザール、ノウアスフィア、おなべ(3) さてやっと1998年春を迎えて『ノウアスフィアの開墾』だ。おそらく、伽藍とバザールにくらべてがくんと知名度は落ちる(つまり、みんな2項対立は大好きだけど、協調の話や未知の用語には興味がないんだろうなぁと勝手に推測しているおれだった)。 ノウアスフィアとは、『ヌースフィア』(でぐぐれ)のことで、ぐぐればわかるが、すさまじく怪しい用語だ。もっともこの論文の中ではソースコードが存在する思考空間を意味している。 この論文のテーマは、なぜハッカーはソースをオープンにするのか、なのだが、内容はむしろ、「なぜオープンソースは、ソースの自由な改変を許すライセンスなのに、改変したソースが元に戻るのか?」の解明に軸足がある。 推測だが、ネットスケープをはじめとする企業が自社のコードベースをオープンにした場合に、そこから知らないうちにフォークされてもっとうまいこ

    toshiwo
    toshiwo 2012/04/13
  • L'eclat des jours(2007-08-07) フィボナッチミュージック

    _ フィボナッチミュージック やってみた。 #!/usr/local/bin/ruby -Ku require 'rjb' #JRubyじゃなくてrjbを使うのはおれにとっては自然 def fib(n) #遅い if n<2 n else fib(n-2)+fib(n-1) end end MidiSystem = Rjb::import('javax.sound.midi.MidiSystem') synthesizer = MidiSystem.getSynthesizer() #システム既定のシンセサイザー synthesizer.open channels = synthesizer.getChannels() #16チャネルとか32チャネルとかある。多声を使うなら使える。 cha = channels[0] #とりあえずモノフォニーでいいや p = 56 if ARGV.size

  • 1