ma38su.org
fatboy
- 2008-10-27 (Mon)
- Days
夏前にエミレーツ航空でロンドンまで行ったら、なんかキャンペーン中だったらしくて、しかも3等当選したらしくて、30,000円まで、エミレーツのショッピングサイトで買い物していいよっていわれてました。棚からぼた餅。
結構悩ましかったものの、fatboyというオランダのおおきなクッションを選んでみました。はてなで過ごして、おっきなクッションがほしくなっていたというのもあって。
で、今日届きました。なぜか着払いで。1000円強なのでたいした額ではないですけど、そんな話は聞いていなかった。とりあえず、箱からして超でかい。箱から出しても超でかい。ただでさえ狭い部屋がもっと狭くなる。失敗だったかなぁと箱から出しながら、そんなことを考えていたのですが、実際使ってみると超快適です。テントみたいな生地のナイロンの袋に、発砲スチロールが入ってるだけのクッションですが、立てると椅子っぽくつかえて、寝かせるとベッドっぽくもなります。んー、ただ真剣に部屋のレイアウトを考えないと、今夜布団を敷く場所がありませんorz
ちなみにこのfatboy、日本国内で購入することは難しいみたいです。オランダのfatboyのオンラインショップをのぞいてみましたが、日本への発送はしてくれないみたいで、marimekko柄がかわいくていいなぁと思ったりしたんですけど、まれに物好きな業者が仕入れて楽天で売られているのを狙うしかなさそうです。
- Comments: 2
- Trackbacks: 0
Double Array
- 2008-10-24 (Fri)
- Programming
高速なTrie実装として知られているDouble ArrayをRubyで実装してみた。インターンで実装したハッシュのTrieとの速度を比較してみるとおもしろそう。配列しか使ってないし、1byte単位で枝葉を構成していくので、メモリ効率は確実にいいと思うんだけど。まだ改良の余地はいろいろとありますが。
うまくコードが貼付けられない><
#!/usr/bin/ruby class Trie def encode(char) l = 0 u = @code.length - 1 while (l char u = m - 1 elsif @code< char l = m + 1 else return m + 1 end end return -1 end def initialize(file) @base = <1> @check = <0> @code = Array.new words = Array.new io = open(file) while line = io.gets line.chomp! words.push(line) line.each_byte {|c| @code = c } end io.close words.sort! @code.compact! _search(0, 0, words.length, 0, words) end def match(word) check = 0 base = @base word.each_byte do |c| i = base + encode(c) if (@check != check) break end base = @base check = i end return @check == check end def _search(i, l, u, parent, words) stack = Array.new tmp = Array.new sons = Array.new j = l p = nil while j < u word = words if i 0) base = 0 flag = 0 begin base += 1 tmp.each do |c| break if (@check != nil) flag += 1 end end while flag != tmp.length tmp.each do |c| @base = base son = base + c @check = parent @base = - 1 if c == 0 sons.push(son) end end stack.push(j) l = stack.shift if stack.length > 0 i += 1 (stack.length).times do u = stack.shift son = sons.shift _search(i, l, u, son, words) l = u end end end end
構築部分にバグがありそうな感じです。
- Comments: 0
- Trackbacks: 0
TeXのためのMakefile
- 2008-10-15 (Wed)
- Software
Previewだと,pdfでもxdviと同じように一度開いたファイルを自動更新してくれるので,pdfまで変換してしまうのもありかと思ってTeXのためのMakefileを書いた.
追記
依存関係を抽出するdep.plを書いたので,普通はDOCとBIBを設定すれば使えると思う.
DOC = paper # メインのTeXファイル名(拡張子不要) BIB = ref.bib # BibTeXファイル名(拡張子必須) SOURECE = $(shell perl dep.pl $(DOC).tex) LATEX = platex DVIPDFM = dvipdfmx BIBTEX = jbibtex RM = rm .SUFFIXES: .tex .dvi .pdf $(DOC).dvi: $(DOC).aux $(DOC).bbl $(SOURECE) $(LATEX) $(DOC) $(LATEX) $(DOC) .dvi.pdf: $(DOC).dvi $(DVIPDFM) $< $(DOC).aux: $(DOC).tex $(LATEX) $(DOC) $(DOC).bbl: $(DOC).tex $(BIB) $(BIBTEX) $(DOC) pdf: $(DOC).pdf clean: $(RM) -f $(DOC).dvi $(DOC).toc $(DOC).aux $(DOC).blg $(DOC).bbl $(DOC).log $(DOC).pdf *~
dep.pl : 依存関係を抽出するためのスクリプト
use strict;
use warnings;
parse_tex($ARGV<0>);
sub parse_tex {
my ($file) = @_;
my $fp;
open($fp, $file) or die "IOError: ". $file;
while () {
chomp;
if (/^<^%>*<\\¥>includegraphics\*?(?:\<[^\[\>]+\])?\{(<^\{\}>+)\}/o) {
printf("%s ", $1);
} elsif (/^<^%>*\\input{(<^\{\}>+)}/) {
my $texfile = sprintf("%s.tex ", $1);
parse_tex($texfile);
printf("%s ", $texfile);
}
}
close($fp);
}
exit(0);
あんまり賢くないけど、これで大体の画像ファイルなんかの依存関係も把握できるんじゃないかな.
- Comments: 0
- Trackbacks: 0
Google東京オフィスにお邪魔させてもらった。
先週月曜のデベロッパー交流会は、たまたま都合が合ったので参加したのだけど、そこで金曜日のGoogle Maps API Hackathonも人数的に余裕があると聞きつけて勢いで参加してきた。金曜日まで一部ネットカフェ難民してた。そんなわけで東京オフィスに御邪魔させていただいた。
ハッカソンは勢いだけに任せて参加してこともあって、不慣れなJavascriptが不安だったけどid:secondlifeさんの講義を受けたとこなのでjavascriptは結構なんとかなった。でもAPIもクラシックなとこしか使わなくて、Googleオフィスでコーディングさせてもらうっていうメリットを全然生かせてない、ちょっともったいなかった。
オフィスランチをいただいて、Google Tシャツとかもらった。オフィスを少しみせてもらって、アンドロイドフォンまで触らせてもらったよ。Googleのパメラさんとか参加者のひととカラオケに行ったり。(夜行バスの時間とか野都合で途中で抜けさせてもらったけど)
せっかくなので、ちょこっとはてなとグーグルについて比較してみる。Googleははてなっぽいと思った。逆なのかもしれないけど、はてなを先にみてるからそうなった。Googleは本当の意味でグローバルで、そこらへんは日本の会社とはだいぶ違うけど、あんまりベンチャーっぽさはないかもなぁと感じた(ベンチャーとかいう言葉でお茶を濁すけど)。オフィスはほんの少し見学させてもらっただけなので、ほとんど何も分からないけどね。
Google東京オフィスのランチはビッフェ的な感じで品数が多かった。id:r_kurainみたいに食べられないものが多い人にはいいかも。はてなはみんなでご飯みたいな感じがよかったけど、Googleは意外と普通の食堂という感じだったかな。ご飯は、どっちもすごく美味しかったけどね。イメージわかない人はZDNetとかの写真をみてください。
ひがやすを飲み会も少なかったけど、今回は学生が僕だけでしたよ。もうちょっといた方がねぇ。
- Comments: 2
- Trackbacks: 0
第1回ひがやすを飲み会
- 2008-10-09 (Thu)
- Days
予定合ったのでid:higayasuoさん主催の飲み会に行ってきた。最近いろいろと面白いほど予定が合うよ。合わせてるのもあるけど。
僕は名刺を持ってなかったりで、id:hyoshiokさんに怒られてた学生です。
手抜きだけど感想は簡単に箇条書きにしてしまう。
- SIの人とオープンソースの人が多かった。
- 技術的な話というよりマーケ的な話とか、戦略みたいな話が面白かった。
- やっぱり、はてなとはだいぶ空気が違うなぁ。
- まだGoogleの人達のほうが近い部分があったかも。(月曜日飲んだ)
確かに水曜日はノー残業デーの会社ということになってるような会社も多いのかもしれないけど、忙しいはずの社会人の人がたくさん来られてるのに、学生すげー少ないよ。もっと多いかと思ってたのに。
いろんな人と話せるのはやっぱり楽しいので、なかなか予定とかうまく合わないと行けないけど、機会を作ってまた行きたいです。ありがとうございました。> 皆様
- Comments: 0
- Trackbacks: 0