タグ

2009年7月5日のブックマーク (9件)

  • セマンティックHTML? KISS!

    Keep It Simple, Stupid ウェブの文書とデータ 人間が読むためのウェブ文書にはさまざまな情報が詰まっている コンピュータ(エージェント/処理ソフト)はHTMLから文書構造の大枠を把握して提示できるが、内容(データの意味)は基的に関知しない コンピュータ処理用のデータは別途用意する? 両方まとめて、シンプルにしよう! HTML文書中のデータをコンピュータ処理も可能にする HTMLのシンプルさを生かすことが大切 しかしコンピュータにとっても明快でシンプルであること だからセマンティックHTML ウェブリソースの型と関係 ウェブ文書中のデータを明示するためには 文脈によらない識別(名前付け):何が同じで何が異なるかを明確にする データはどんなタイプ(型)か:文書について? あるいは文中の映画について? データどうしの関係:この日付は映画の封切り日? 映画を観た日? ウェブ文

  • Ruby 拡張モジュール入門 / SlideShare

    Web scale backups for MySQL, Алексей Копытов (Percona)

    Ruby 拡張モジュール入門 / SlideShare
  • 5年後に後悔しないJavaプログラムの書き方 - L'eclat des jours(2009-07-02)

    _ 5年後に後悔しないJavaプログラムの書き方 ここ数日、死ぬほど後悔しまくっているので、あらためて(というのは、数年前にも一度後悔しまくって、そのときの知見はあらかた処方箋とかコーディングの掟に書いているからだが)後悔しないための書き方をいくつか紹介する。 とにかく、ファクトリメソッドパターンを使うこと。 これは当に重要。しかも簡単でありながら効果は絶大。 だめな例。 public class FooBar { private Connection conn; ... protected void setup() { ... conn = DriverManager.getConnection(url); ... } urlを指定することや、DriverManagerの実装を交換すれば良いだろうと想定していても(というか、Connectionならそういう方法もあり得るが、そうはいかな

  • Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!

    kazuhoさんがやってくれました。 ずいぶん前からjsonをC++でパース(SAXじゃなくてDOM)するのに小さいライブラリないかなーと思ってました。個人的にはjson-cというのを使ってたのですが、幾らか気に入らない所があったりビルドが少し手間だったりしていました。STLしか使わなくてvectorとかmapで表現されるツリー構造な物が欲しいなぁって思ってたんです。 とあるIRCで昨日、kazuhoさんと「ほしいですよねー」という話から始まって、githubにあるjsonxxとかも物色しながら「いいのないねー」とか言ってたらkazuhoさんが「もすこし綺麗に書けそう」って言い出して朝から格的に書き始めてついさっき出来上がりました。速いw 名前はpicojson とても小さく、実装コードだと300数十ステップ程です。しかもヘッダファイルだけなので管理が楽です。 試しにwassrのpubl

    Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!
  • Kazuho@Cybozu Labs: 今更 C++ で JSON パーサ「picojson」を書いたわけ

    既に mattn さんが、「Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!」で紹介してくださっています (mattn さん、アドバイス&バグ情報ありがとうございます!) が、いまさら C++ で JSON パーサを作りました。それは、以下の3点を満たすものがなかったから。 ヘッダファイル only boost 等、他の重たいライブラリに依存しない array や object が STL にマッピングされる コードは、coderepos に置いてありますので、よろしければお使いください (picojson.h)。 なお、現時点での制限事項として、 \n や \r, \uXXXX といったエスケープの処理が未実装rev. 34232 で対応しました (含サロゲートペア) 空白文字の判断基準が RFC と異なるrev. 34277 で空白と

  • 転置インデックスを実装しよう - mixi engineer blog

    相対性理論のボーカルが頭から離れないmikioです。熱いわっふるの声に応えて今回はTokyo Cabinetのテーブルデータベースにおける検索機能の実装について語ってみたいと思います。とても長いのですが、最後まで読んだあかつきには、自分でも全文検索エンジンを作れると思っていただければ嬉しいです。 デモ モチベーションをあげていただくために、100行のソースコードで検索UIのデモを作ってみました。Java 6の日語文書を対象としているので、「stringbuffer」とか「コンパイル」とか「倍精度浮動小数」とかそれっぽい用語で検索してみてください。 インデックスがちゃんとできていれば、たった100行で某検索エンジン風味の検索機能をあなたのデータを対象にして動かすことができます。ソースコードはこちら(テンプレートはこちら)です。 でも、今回はUIの話ではないのです。ものすごく地味に、全文検索

    転置インデックスを実装しよう - mixi engineer blog
  • Modern Information Retrieval

    Modern Information Retrieval Chapter 10: User Interfaces and Visualization - by Marti Hearst Next: 1. User Interfaces and Up: Contents of the book 1. User Interfaces and Visualization 1. Introduction 2. Human-Computer Interaction 1. Design Principles 2. The Role of Visualization 3. Evaluating Interactive Systems 3. The Information Access Process 1. Models of Interaction 2. Non-Search Parts of the

  • 一番右端の立っているビット位置を求める「ものすごい」コード - 当面C#と.NETな記録

    一番右端の立っているビット位置(RightMostBit)を求めるコードで速いのないかなーと探していたら、ものっっっすごいコードに出会ってしまったのでご紹介。2ch のビット演算スレで 32bit 値のコードに出会って衝撃を受けて、その後 64bit 値版のヒントを見つけたのでコードを書いてみました。 この問題は ハッカーのたのしみ―物のプログラマはいかにして問題を解くか (Google book search で原著 Hacker's delight が読めたのでそれで済ませた) で number of trailing zeros (ntz) として紹介されています。bit で考えたときに右側に 0 がいくつあるかを数えるもの。1 だと 0、2 だと 1、0x80 なら 7、12 なら 2 といったぐあい。0 のときに表題どおりの問題として考えるといくつを返すの?ってことになるので、

    一番右端の立っているビット位置を求める「ものすごい」コード - 当面C#と.NETな記録
  • TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記

    昨日、TOMOYO Linuxメインライン化記念合同勉強会(カーネル読書会、セキュアOSユーザ会、まっちゃ445)に行ってきて、小崎さんが匿名掲示板でガチでレビューしていたお話を聞いたので、早速過去ログを読んでみた。http://tomoyo.sourceforge.jp/2ch/thread-2.txt (追記:2009/7/4 21:03 なぜか後半部分、アスキーアートの後が切れてしまったので、前半部分を若干カットして(略)の部分、その2を追加しました。) LKML (Linux Kernel Mailing List)というのはLinuxカーネルの技術的なことを議論するもっとも権威(?)あるメーリングリストで、ここで議論され合意されたものがLinux体に取り込まれることになる。このLinux元の体(くどいな)のことをメインラインと呼ぶ。Linuxを創ったLinusさんに

    TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記