トップ «前の日(12-02) 最新 次の日(12-04)» 追記   RSS 1.0 FEED  

Journal InTime


2001-12-03 (Mon)

_ JavaScript

「CGI/HTMLでほにゃららみたいなことできないですよね」とまつもとさんに聞くと 「JavaScriptならできるよ」とのこと。

まつもとさんからそういう言葉を聞くとは! (最近久野先生のJavaScript本を愛読されているらしい。)


2002-12-03 (Tue)

_ VAIO純正USBマウス

を購入して物欲をなだめた。

コードをマウス本体に巻き付けられるのはよいのだが、ボタンを押した状態にならないように するストッパーを付けないといけないのがうざい。 すごくなくしそうだ。

_ 給与明細

会社の机の引出に平成11/12年の給与明細がたくさん入っていたので 会社のゴミ箱に捨てた。 (玉湯町はゴミ袋が高いのだ。)

会社の人がこれを読むころにはすでにゴミ捨て場だろう。(たぶん)


2003-12-03 (Wed)

_ C#のparameterized type

今更ながら、 C# プログラミング言語の将来の機能 を読んでみた。

どうやら、Javaと違って、parameterized type(ジェネリクス)のためにVMを変更するらしい。 たしかにそれが一番効率がよさそうではある。

しかし、monoで実装されるのはいつになるのだろう。うーん、うーん。 (追記: Roadmapを見たら`Release target: Q4/2004.'らしい。)


2004-12-03 (Fri)

_ いくら

先日のいくら事件について、 社内MLに書いた記事を 転載。さらっと書くつもりが、思いのほか長くなってしまった。

----

先日、松江でゆうぞうさんの歓迎会(といいつつ雄也君の乾杯の挨拶ではゆうぞ うさんのゆの字も出ませんでしたが)の時のことです。

一通り料理が出尽くしたところで、追加の料理を頼むことになりました。 それまでの料理にはちょっと物足りなさを感じましたが、予算が二千円だった そうなので、致し方ないところです。

メニューを眺めていると、いくら丼なるものが目に付きました。いくらと言え ば、庶民の私にとって豪華な食材の代表格です。割り勘なので若干気は引けた のですが、飲まないんだからこれくらい食べてもいいだろ、と判断し、意を 決して注文することにしました。おでん屋さんというところが若干引っかかった のですが、まあ、いくらでそんなに失敗することもないだろう、と思っていた のです。その時には、後にあんなことになるなんて、想像だにしていませんでした。

皆で仕事の悩みなどを話していると、いよいよいくら丼がやって来ました。丼 を見ると、いくらでいっぱいでごはんが見えないほどです。しかも、おまけに ウニまで載っているではありませんか。私はうれしいと思う半面、値段が心配 になりました。メニューには値段が載っていなかったのです。まあ、正直な ところ、それほど心配していたわけではありません。そんなに高そうな店では ありませんでしたし、いつも割り勘負けしているので、たまにはこんなことが あってもいいだろう、とそれくらいに思っていたのです。

そんなことを考えながら、いくらを口いっぱい頬ばると、全身に衝撃が走りま した。それは私が今まで食べたどんないくらとも異なる食感でした。皮がとても 硬かったのです。たとえるならば、口中清涼剤のカプセル並に硬かったのです。 しかも、その皮を噛み砕いた後に口に広がる味も、私の中のいくらのイメージ とはほど遠いものでした。最初に思ったのは、これは何かの間違いに違いにない ということです。しかし、次にはこんな不安がよぎりました。私が今までいくら だと思って食べて来たものは、実はまがいものだったのではないだろうか。 これこそが本物のいくらなのではないだろうか。

おそるおそる隣のまつもとさんに聞いてみると、やはりまつもとさんも同様の 衝撃を受けていたようです。これで、そのような確率はずっと低くなりました。 とすれば、残された可能性は、目の前のいくらが偽物であるというものです。 いわゆる人工いくらです。ただ、最近は輸入物のいくらが安く入手できるため、 激安回転寿司ですら人工いくらは使わないと聞き知っていた私には、にわかに は信じられませんでした。それに、現代のテクノロジーをもってすれば、もう ちょっと本物の味(と私が信じているもの)に近づけそうなものです。

後に、私はWebで以下のような情報を手に入れました。

人工いくらはアルギン酸ナトリウム(海藻の成分)と塩化カルシウム(豆腐の凝固材等に使用)、サラダ油、着色料、調味料等から作られています。見分け方として、天然のいくらは中の目玉のような部分(胚盤)が固定されているのに対し、人工のものはオイルが浮いた状態なので、全て上向きになるとか。また天然ものはたんぱく質から出来ているので、熱を加えてみると白くにごりますが、色に変化がなければ、それは人工いくらということになります。

残念ながら、目玉の向きは覚えていません。本物はお湯に付けると白くなるとい うのは知っていたのですが、その時にはお湯が手に入りませんでした。

また、こんな情報もありました。

人工いくらは、一般的にはコピーイクラなどと呼ばれ、サラダ油と海草エキス の主成分に、いくらの風味と天然色素を加えたものです。本物より皮が少しかためで香りはありませんが、粒がそろっており植物性成分のためコレステロールが少ないという特徴があります。

皮はたしかに硬かったのですが、「少し」などというなまやさしいものではあり ませんでした。思うに、おでん屋さんではいくら丼はあまり出ないことと関係が あるのかもしれません。「劣化」という言葉が頭に浮かびますが、あまり深く 考えない方がしあわせそうです。

結局、あのいくらは何だったのでしょう。今も真相は藪の中です。値段も知らな いままです。ただ、その後に食べたインスタントっぽいお茶漬が妙においしかっ たことだけが、私の心の中に残っています。

Tags:
本日のツッコミ(全2件) [ツッコミを入れる]

_ しゅどう [昔、大学の生協で食べたいくら丼のいくらが、噛むと歯の間から逃げるくらい硬かったことがあります。ショックでした。]

_ yohgaki [固いと思うイクラは食べた事がありませんが、そんなイクラに出会ったら熱々の緑茶とかを頼んで浸けてみます。 # 浸けなく..]


2009-12-03 (Thu)

_ AWDwR3トークセッション

みなさんのご協力により、46人の方に参加いただき、無事トークセッションを終えることができました。

参加いただいたみなさん、また一緒にお話いただいた大場さん、松田さん、ありがとうございました。

Tags: Rails

_ プログラミングのための確率統計

トークセッションで、一点大事なお知らせを忘れていたのですが、みなさんぜひ以下の書籍を買ってください。

編集のSさんの言動から察するに、AWDwR3よりもずっと思い入れが強いようです。

私も献本いただいたのですが、(献本いただいたから言うわけではないのですが)とてもよい本だと思います。

アインシュタインのように「神はサイコロを振らない」という方にも、サイコロを使わない、神様の視点での説明があります*1ので、安心しておすすめできます。

何卒よろしくお願いします。

Tags:

*1  アインシュタインが信じたのはスピノザの神らしいのでちょっとイメージが違いますが。


2019-12-03 (Tue)

_ Textbringerの名前の由来

Textbringer Advent Calendar 2019の参加記事です。

Textbringerという名前はStormbringerに由来している。 StormbringerといえばDeep Purple第3期の佳作(邦題『嵐の使者』)を思い出す人も多いと思うが、エルリックサーガ( メルニボネの皇子をはじめとするマイクルムアコックの小説群)に登場する魔剣Stormbringerの方である。 殺した相手の魂を吸い取って、持ち主である病弱なエルリックに活力を与えてくれる強力な剣であり、我々定命の者の能力を拡張するテキストエディタの名前としてふさわしい。

なお、ムアコックの読者からはしばしば不吉な名前だと言われるが、Stormbringerが危険なのはstormをbringするからであって、Textbringerがbringするのはtextなので安心してほしい。

_ tDiary 5.1.0へのアップデート

tDiary 5.1.0へアップデートした。

リリースノートに従ってAmazonプラグインの設定をしたが、429 Too Many Requestsでどうにもならない感じだったので、以下のスクリプトでキャッシュを元にリンクするようにして、Amazonプラグインは使わないことにした。

#!/usr/bin/ruby

require 'rexml/document'

class AmazonItem
  def initialize(xml, parser = :rexml, label = nil)
    @parser = parser
    @label = label
    if parser == :oga
      @doc = Oga.parse_xml(xml)
      @item = @doc.xpath('*/*/Item')[0]
    else
      @doc = REXML::Document::new( REXML::Source::new( xml ) ).root
      @item = @doc.elements.to_a( '*/Item' )[0]
    end
  end
  
  def nodes(path)
    if @parser == :oga
      if @item
        @item.xpath(path)
      else
        @doc.xpath(path)
      end
    else
      if @item
        @item.elements.to_a(path)
      else
        @doc.elements.to_a(path)
      end
    end
  end
  
  def has_item?
    !@item.nil?
  end
  
  def title
    @label || nodes('*/Title')[0].text
  end

  def url
    nodes('DetailPageURL')[0].text
  end

  def to_rd
    %Q[((<"#{title}"|URL:#{url}>))]
  end

  def to_md
    "[#{title}](#{url})"
  end
end

CACHE_PATH = "/home/shugo/diary/cache"

def amazon_get(asin, label)
  country = "jp"
  cache = "#{CACHE_PATH}/amazon"
  s = asin.gsub(/-/, "")
  xml = File.read("#{cache}/#{country}#{s}.xml")
  AmazonItem.new(xml, :rexml, label)
end

ARGF.inplace_mode = ".bak"
ARGF.each_line do |line|
  line.gsub!(/\(\(% *(isbn|amazon)\w* *["'](?<asin>.*?)["'](, *["'](?<label>.*?)["'])?.*?%\)\)/) {
    item = amazon_get($~[:asin], $~[:label])
    item.to_rd
  }
  line.gsub!(/\{\{ *(isbn|amazon)\w* *["'](?<asin>.*?)["'](, *["'](?<label>.*?)["'])?.*?\}\}/) {
    item = amazon_get($~[:asin], $~[:label])
    item.to_md
  }
  print line
end
Tags: tDiary