2010-02-01から1ヶ月間の記事一覧

数学ガール/ゲーデルの不完全性定理

気持ち良さそうだから勇気出して先っぽだけ突っ込んでみたらやっぱり気持ちよかった。 いやほんと、数学の世界って気持ちいい。理解できたら面白いのだろうけど、難しいから敬遠してた。だけどちょっとだけ数学の世界に行ってみたら思いのほかよかった。んで…

文字列内にSJISの「0x5c」があると文字化けする

PHP

2バイト文字の中に0x5cがあると1バイト文字の「\」とみなされて不都合が起きる。 PHP で文字列を SJIS エンコードして、それをファイル名として ZIP に圧縮、という処理をしてたらファイル名がおかしくなったことで判明。原因は SJIS の文字列に対して str_r…

学問のすすめ 現代語訳

1万円札の人は伊達じゃない。 130年も前に出版されたこの本、名著と言われるだけある。これほど先見の明を感じることができるのは出版された時より遥か未来の今本書を読めるからか。「天は人の上に人を造らず人の下に人を造らず」という有名な一節しか知らな…

ビューティフルアーキテクチャ

美しさを伝えるのって難しい。 ビューティフルコードのシリーズ第二弾。本書はコードレベルではなくアーキテクチャレベルでの美しさを説いた本である。ただし、抽象度がコードレベルよりずっと上かと言うとそうではなくてコードレベルのほんのちょっと上の程…

ハイパフォーマンスWebサイト

こいつはたまらん! ハイパフォーマンスWebサイトというタイトルを聞くとDBの最適化や分散構成でスケールアウトできるアーキテクチャなどを思い浮かべるが、この本は違う。システム内部の最適化ではなくブラウザとシステム間の最適化を行っている。 目次を見…

IEでテーブルのinnerHTMLを変更できない

IEでテーブルの中身を初期化したいとき、以下のようなコードでは動かない。 var tbl = document.getElementById('targetTable'); tbl.innerHTML = ''; FireFox や Chrome では動く。IEで動かないのは、テーブルのinnerHTMLが読取専用プロパティだから。 テー…

FREE 〈無料〉からお金を生みだす新戦略

経済の転換点というよりは、経済の変態。 「情報はFREEになりたがる」と説く本書は、デジタルのものは遅かれ早かれ無料になると断言しそれに伴なうビジネスの変化を鋭い視点で分析したとてつもない良書だ。情報はコピーができ、物質はできない。その結果情報…

困ります、ファインマンさん

面白さ衰えず、どころじゃない。 ご冗談でしょう、ファインマンさんと同様、ユーモアに溢れたエピソード集。違うところはファインマンが大人になったこと。今までのは子供から大学院を過ぎた頃までのエピソードだったが、今度はもっと大人のファインマン。マ…

PHP4でタイムゾーンのオフセットを取得したい

PHP

PHP5では DateTimeZone クラスがあるので簡単にオフセットを得られるが、PHP4では若干手間がかかる上に指定のタイムゾーンは得られない。 現在のタイムゾーンでのオフセットを得る場合以下の関数を使う。 function getTimeZoneOffset() { $tz = localtime(0,…

指定したサイズのファイルを作りたい

DOS

ネットワークの転送量を測定したいなど、中身に関係なく稀に巨大なファイルが欲しい時がある。 これはコマンドプロンプトの fsutil というコマンドで実現できる。 C:\> fsutil file createnew [ファイル名] [ファイルサイズ(byte)] 使用例 C:\> fsutil file …

週末起業サバイバル

起業がぐっと身近になった。 週末起業とは言うものの中身は週末に起業する方法ではなくて、副業の一種として起業するという選択肢を紹介してくれてる。 誰かに雇われて稼ぐより自分の力で稼いだ方がいつか役に立つ。 やりがいもある。 最初の軍資金は少なく…

IE6でFlash読み込み時に「Press OK to continue loading the content of this page」が出る

IE6限定でFlashコンテンツを埋め込んだページを閲覧すると Press OK to continue loading the content of this page とダイアログが出る。 調べてみるとこれはどうやら特許関係で出てしまうようだ。 これを解決するための手段が Adobe のページで紹介されて…

ふつうのコンパイラをつくろう

ふつうに難しい。だけど得られたものは大きい。 構文解析からアセンブル、リンクまでコンパイラが行うすべてを順序立てて解説してくれる。 実際にソースコードがコンパイルされてバイナリになっていく過程を知ることで今までブラックボックス同様だったコン…