タグ

2006年6月8日のブックマーク (27件)

  • (a+a)/2 == -a /* 半世紀もののバグ */ : 404 Blog Not Found

    2006年06月07日04:25 カテゴリiTech (a+a)/2 == -a /* 半世紀もののバグ */ 正三郎さんとこ経由で。 Official Google Research Blog: Extra, Extra - Read All About It: Nearly All Binary Searches and Mergesorts are Broken The bug is in this line: 6: int mid =(low + high) / 2; なんところたまなバグ。 古典的バイナリサーチアルゴリズムにバグ: ホットコーナーの舞台裏普通これは問題にならないんです。いまのほとんどのマシンは、intが32bitだから、このアルゴリズムで、2 ^ 31 - 1というintの最大値を超えるような ことはないから。 ちょっと違います。n >= (MAX_INT/2 +

    (a+a)/2 == -a /* 半世紀もののバグ */ : 404 Blog Not Found
  • ITmedia D PC USER:第1回 プログラムの挙動を覗いて幸せになる (1/2)

    編集G USB接続のポータブルHDDを外すときってシステムトレイの「ハードウェアの安全な取り外し」を選択してからケーブルを抜きますよね。 爪生 そうな。 編集G でもたまに「ファイルが使用中なので取り外しができません」とか言われませんか? あれ、かなり切なくなるんですが……。 爪生 気にしないで抜け。 実際のところ「ファイルが使用中なので取り外しができません」というメッセージを無視していきなりケーブルを引っこ抜いても、HDDが壊れることはめったにない。少なくとも筆者の経験では1度もない。もっともいきなりUSBを抜いたことなんて2、3回しかないのだが。 さらに言えば、HDDが壊れてもデータを復元してくれるサルベージサービスというものがあるので、不慮の事故が起きた場合でも安心だ。ちなみに、以前NASが飛んでしまったときにサルベージの見積もりをとったことがあるが、結構なお値段だった覚えはある。つ

    ITmedia D PC USER:第1回 プログラムの挙動を覗いて幸せになる (1/2)
    hakobe932
    hakobe932 2006/06/08
    なんかのときに役に立ちませんか
  • 「UI as Commons」という発想を図にしてみました - Accept Things

    naoyaさんとmiyagawaさんが面白い議論をされていたので、僕もちょっと考えてみました。 バックエンドアプリケーションの API インタフェースを規定するフロントエンド特化型アプリケーション API, UI as Commons お二人の議論を参考に図にしてみると、こんな感じになるのかなと思いました。 こうして図にしてみると、以下のようなアイデアが出てきました。 データソースは、RSSやAtomフィードよりも知的な感じがする(ロジックが組み込まれるため) ユーザーが定義したデータソースもfeed的に扱って、データソースのランキングができると面白いかも (データソースはURIで一意に選択できるため、データソースをfeed的に扱うことは可能だと思います) 異なるドメインに配置されたデータソースにアクセスするためのGatewayをLivedoorで用意しなければならない (XMLHttpR

    「UI as Commons」という発想を図にしてみました - Accept Things
    hakobe932
    hakobe932 2006/06/08
    これたしかにおもしろそうなネタ
  • zsh: 直前にうったコマンドをクリップボードに(Mac OS X限定) - Accept Things

    シェルで打った直前のコマンドをクリップボードにショートカットでコピーとかできたら作業メモとかとるのにえらいベンリだと思った。.zsh-hitory をうまく使ってとかでも。誰か作ってそう。 naoyaの日記より このネタで、初めてのzshカスタマイズプログラミングをしてみました。案外簡単にできてしまいました。 クリップボードへのコピーにpbcopyを使っているのですが、これは多分Mac OS Xにしかないと思います。ですので、このカスタマイズはMac OS X限定です。Linuxでも同等の機能を持ったコマンドがあれば、少しの改造で動くようになるはずです。 .zshrcに以下のコードを貼付けておけば、naoyaさんのご要望通り動くはずです。コードはちょっとダサイですが、動きます、、。Ctrl + kでクリップボードに直前にうったコマンドが入ります。キーバインドは好みに応じて変更して下さい。

    zsh: 直前にうったコマンドをクリップボードに(Mac OS X限定) - Accept Things
    hakobe932
    hakobe932 2006/06/08
    zshなにかと便利だよなー
  • svnじゃなくてsvkでバージョン管理しよう - Accept Things

    MacBook Proを買った初日にsvkがインストールできるかどうか試してみたら、DarwinPortsからあっさりインストールできました。 今までsvnを使っていましたが、svkに乗り換えた方が良さそうです。 svkを使っていて便利だなと思ったことは、以下の通りです。 インターネットに接続していない環境でもバージョン管理できる。かなり便利。 grepが使いやすくなった。 % grep -rn "foo" . | grep -v svn とかやらなくて済む。 svnよりコマンドが高機能。 % svk desc r123 でリビジョン123の差分をコミット時のコメント付きで見られる。 svk addが賢い。 svk descのトリックはSix Apartの宮川さんにこの前コメントで教えて頂きました。ありがとうございました。もっと早くsvkを試しておけば良かったのですが、Linuxでうまくイ

    svnじゃなくてsvkでバージョン管理しよう - Accept Things
    hakobe932
    hakobe932 2006/06/08
    svkってなんだろ
  • Types and Programming Languages - Accept Things

    Audrey Tangさんに刺激されてAmazonで買ってしまいました。 Types and Programming Languagesを勉強することで、これまでとは違った物の考え方ができるようになればなぁと思っています。 実際に読み始めると、自分の数学の理解力が壁になりそうな感じがしました。書では、公理、定義、定理を1つずつ積み上げて数学的に説明がされているので、そのやり方になじまないときつそうです。久しぶりに数学的なを読んだので頭がパンクしそうです。 ついていけるか心配だけど、Audrey Tangさんが書を勉強しながらPugsの開発をされたことを考えると、「自分も今、同じを読んでいるんだなぁ」とワクワクします。 なんだかんだ言いながら、今はChapter 5の"The Untyped Lambda-Calculus"を読んでいます。"Lambda-Calculus"って何か響

    Types and Programming Languages - Accept Things
    hakobe932
    hakobe932 2006/06/08
    世の中にはすさまじげな本もあるのだなー
  • PyDbLite, a small in-memory database engine « Python recipes « ActiveState Code

    PyDbLite, a small in-memory database engine (Python recipe) by Pierre Quentel A small, fast, in-memory database management program The database object supports the iterator protocol, so that requests can be expressed with list comprehensions or generator expressions instead of SQL. The equivalent of : cursor.execute("SELECT name FROM table WHERE age=30") rows = cursor.fetchall() is : rows = table(

    hakobe932
    hakobe932 2006/06/08
    勉強になりそうなコード
  • World Wide Web 上で一番最初のウェブサーバ - lucky bag

    Tim Berners-Lee 氏が使用した、WWW 上で一番最初のウェブサーバ。 へぇー、NeXT だったんだ。This machine is a server. DO NOT POWER IT DOWN!! ってメモがイカス! Image:First Web Server.jpg - Wikipedia, the free encyclopedia

    hakobe932
    hakobe932 2006/06/08
    あつすぎ
  • subtechグループ - otsune's SnakeOil - ブックマークしたurlを記録しておいて全文検索したい

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    subtechグループ - otsune's SnakeOil - ブックマークしたurlを記録しておいて全文検索したい
    hakobe932
    hakobe932 2006/06/08
    コレは便利そう!設定してみるか
  • Emacs + 英辞郎 - Practice of Programming

    なんか、英辞郎がはやってるらしいので。 僕のEmacs(LinuxWindowsとも)は、Ctrl + x + y で、辞書を検索できて、3、4つ入ってますが、英辞郎も入っています。翻訳するときとかすごい便利。 でも、辞書データに変換の仕方はしらないので、変換後のデータはもらった(英辞郎はちゃんと買ってます)んです。てか、設定も、id:iwaimさんにやってもらったのをコピーして使いまわしてるので、僕はよくわからない(ぉ で、まぁ、作り方知らないと最新版にできない(実際、僕のデータは、4年くらい前だ)から困るわけですが、作り方がありました。 http://journal.mycom.co.jp/column/osx/020/ Mac OS Xだけど、基一緒だろう。 ちなみに、Windowsの設定は最近やったのですが(最近、会社でWindows使い始めたので)、必要だったのは下記から取り

    Emacs + 英辞郎 - Practice of Programming
    hakobe932
    hakobe932 2006/06/08
    英辞郎はなにかと便利だからなー
  • YappoLogs: そのタブAcme::Tabifyでよくね?Plaggerでもいいけど

    そのタブAcme::Tabifyでよくね?Plaggerでもいいけど 404 Blog Not Found:タブのスペース化はタブ幅よりも重要である 内容の99%はスルーするとして perl -i.bak -ple 's{^([ ]+)}{"\t" x (length($1)/4)}e' *.pl でtabifyできるではないか。 ちょwwwまったwwwwww Ingy++な自分としては、ここは是非ともModule::Compileを使って解決するべきだと思ったのです。 もちろんPlagger使えば、こんな問題は簡単に解決できるんだけれども。 Acme::Tabifyを使って use Acme::Tabify;とするだけでTabifyしてくれます!しかも.pmcファイルまで作ってくれる。use Acme::Tabify (Tabify => 0);すればスペースをタブに変換してくれるし ス

    hakobe932
    hakobe932 2006/06/08
    あー便利そう
  • http://tokuhirom.dnsalias.org/~tokuhirom/tokulog/2191.html

    hakobe932
    hakobe932 2006/06/08
    web.pyはたしかに素敵なコードが多い気がする
  • Publish::Simple - s_nobuの日記

    PlaggerConferenceだけじゃなく、その後のHackathonにも参加できないので、反省の意味も含めて一人寂しくHackathonの真似事をしてみました*1。 これも現在は使い道がほとんど思いつきません。が、CostomFeed::PlaintextかCustomFeed::Filesysが実装されれば、Filter::HatenaFormatやFilter::Markdownとあわせてbloxsomみたいなことが出来そう*2。 内容はただFeedのタイトルのディレクトリをもつEntryタイトルのファイルを作成し、bodyの中身を吐き出すだけです。 package Plagger::Plugin::Publish::Simple; use strict; use warnings; use base qw ( Plagger::Plugin ); our $VERSION =

    Publish::Simple - s_nobuの日記
  • MOONGIFT - iShowU - オープンソースによるIT戦略支援 -

    TaskFreak レビュー インストール (クリックすると拡大します) チェック (クリックすると拡大します) テーブル作成完了 (クリックすると拡大します) ログイン (クリックすると拡大します) インデックス (クリックすると拡大します) 編集 (クリックすると拡大します) カレンダー (クリックすると拡大します) 更新完了 (クリックすると拡大します) 新規追加 (クリックすると拡大します) 追加完了 (クリックすると拡大します) 印刷向け表示 (クリックすると拡大します) 絞り込み (クリックすると拡大します) プロジェクト情報 (クリックすると拡大します) ユーザ (クリックすると拡大します) 情報編集 (クリックすると拡大します) TaskFreak 紹介はこちら

    MOONGIFT - iShowU - オープンソースによるIT戦略支援 -
    hakobe932
    hakobe932 2006/06/08
    なにかとおもしろそう
  • Hatena-TubeをPlaggerで - 酒日記 はてな支店

    http://www.fladdict.net/app/hatenatube/ Hatena-Tube 面白い。 願わくば、データを JSON で扱ってくれたりすると「それPlaggerで(ry」ということになって、PlaggerLDR のような面白いことができるんだけど……ということで、 Plagger で Feed から JSON をつくる Jemplate で JSON から HTML をレンダリング Hatena-Tube の UI で使わせる という方針でやってみる。 Plaggerで Feed -> JSON どうすればいいのかな。とりあえず適当にでっち上げ。 package Plagger::Plugin::Publish::JSON; use strict; use base qw( Plagger::Plugin::Publish::JavaScript ); use F

    Hatena-TubeをPlaggerで - 酒日記 はてな支店
    hakobe932
    hakobe932 2006/06/08
    これもmvcのパーツ組み替えというやつか
  • WWW::Mixi と Template::Extract (hPod)

    mixi の話。ある事柄に関係のあるコミュニティの一覧リストを作ろうと思って、いままでちまちまと手作業していたものを、プログラムにやらせようと重い腰を上げて取りかかることにした。 取りかかるにあたっては、少し前から Perl 界隈では Plagger というのが流行っているらしく、これで mixi も扱えるようなことがどこかで言及されていたようなことを覚えていたこともあり、──かなり曖昧だけれど、でも流行に触れてみるという意味でもこれをまずは見てみようとは思っていたので、ちょうどいい機会かもしれないし、まずは Plagger をインストールすることから始めることにした。 そうして膨大な数のモジュールをインストールして(いち日では済まなかった... )、なんとかサンプルが動くまでには行ったのだけれど、ただドキュメントが家の所にも少なくて、 Plagger についてはそれ以上進めるのが難しか

  • PlaggerでSWF 好きなフォントでFeedを読む - akihitoのログ置き場

    PlaggerでSWFファイルを出力するプラグイン(Plagger::Plugin::Publish::SWF)を作成してみました。SWF::Builderを使い指定したフォントでFeedを表示しています。 しなもん日記をほにゃ字で。 サンプルSWF しなもん日記を青柳衡山で。 しなもん日記を怨霊フォント で。 プラグインはPlagger::Plugin::Publish::PDFを参考にしました。初めてでしたが、結構簡単に作れました。Plaggerバンザイです。以下注意点。 SWF::Builderに渡す日語にはUnicodeフラグをつける(文字化けします) 文字の表示はActionScriptで操作(Perlと混ざるとややこしい) 改行の処理 3番目の改行の処理ではJcodeのjfold()を使って指定した最大文字数で改行しています。自動改行するためにダイナミックテキストを使用すると

    PlaggerでSWF 好きなフォントでFeedを読む - akihitoのログ置き場
    hakobe932
    hakobe932 2006/06/08
    swfくわしくわからんがおもしろそうな感じ
  • http://d.hatena.ne.jp/courant/20060504/1146744972

    hakobe932
    hakobe932 2006/06/08
    yaml入門いろいろ
  • 「ポケット一つ原則」のためのPlagger

    Plaggerを使い出してから、情報をGmailに集めて読むようになった。今、Gmailに送っている情報は、mixi、bloglines、「あとで読む」のタグ付けをしたdel.icio.usのブックマーク、プロバイダのメールなどである。 これは、自分が日々チェックする情報のほぼ全てを、Plaggerで集めていることになる。今度は、Amazonのアソシエイトレポートを送ろうかとも思っていたりする =) なぜここまで情報を集めようとするのか考えてみると、情報を一箇所にまとめることは、「ポケット一つ原則」に従っていることになるからだと気づいた。ちなみに、GTDや多くの整理法にも、この考え方が共通点として見られる。 「ポケット一つ原則」を初めて知ったのは、『「超」整理法』を読んだときだったと思う。これは、置き場所を一箇所に限定することによって、「存在定理」を証明しておくというものである。簡単に言う

    「ポケット一つ原則」のためのPlagger
    hakobe932
    hakobe932 2006/06/08
    たしかに安心感がちがう
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    hakobe932
    hakobe932 2006/06/08
    LDRハックたしかにすばらしい
  • YappoLogs: Plagger Server のデモンストレーション

    Plagger Server のデモンストレーション とりあえず動画を見てください。 Plagger Serverが動作するときのWinkによる動画デモ。 SMTP/POP3/HTTPを一つのPlaggerでハンドリングしています。 実装予定プロトコルは、 telnet imap ftp syslog nagios irc gtalk msn smtp/tls esmtp https ssh p2p mysql? HE Boofy 左のものから優先順位高いかも。 multibbs.yaml global: plugin_path: timezone: Asia/Tokyo plugins: - module: Aggregator::Simple - module: Server::Engine::PreFork - module: Server::Protocol::HTTP confi

    hakobe932
    hakobe932 2006/06/08
    可能性がひろがりんぐ
  • Plagger を使ってカレンダーを携帯で見る

    今日会社の人と話してて、それ Plagger でできるんじゃね?ってことになってやってみた。いや別になんてことはなくて、30boxes とかのカレンダーサービスで管理しているデータを Plagger で取ってきて携帯で見られるようにするって話です。 30box は自分のカレンダーのデータを RSS で吐いてくれるので、それを Plagger で取ってきて、 Publish::CHTML で携帯用に整形しているだけです。簡単やねぇ。 plugins: - module: Subscription::Config config: feed: - url: http://30boxes.com/rss/12345/FooBar/24rj394fk093i30w409i4r/1/ - module: Aggregator::Simple - module: Publish::CHTML confi

    hakobe932
    hakobe932 2006/06/08
    Publish::CHTMLてなにかと便利そうねー
  • サーブレット/JSPの役割を理解する

    「サーバサイドJava」というと、皆さんは何を思い浮かべられるでしょう? いえ、そもそも「サーバサイド技術」といった場合に、皆さんはどのようなイメージを持たれているでしょうか。 JavaScript(ダイナミックHTML)や古くはJavaアプレット、ActiveXコントロール、プラグイン技術まで、主にユーザーの視覚に訴えるクライアントサイドの技術と異なり、サーバサイド技術は主体がユーザーからは見えないところにありますから、イメージとしては極めてわきにくいといえるかもしれません。 しかし、その見えないところでサーバサイド技術は確実に普及しています。サーバマシンの膨大なリソースを十全に活用し、堅牢なデータベース・ファイルシステムと密に連携するサーバサイドアプリケーションは、主にプレゼンテーション層(表層)をつかさどるクライアントサイドとは異なり、地味である代わりに、もはやWebサイトになくては

    サーブレット/JSPの役割を理解する
    hakobe932
    hakobe932 2006/06/08
    なかなか参考になる
  • 本格的なWEBアプリケーションの構成とWARでの配備

    hakobe932
    hakobe932 2006/06/08
    jspにおけるファイルは位置等も
  • web.xmlの設定によるTomcat Webアプリケーションの制御

    web.xml(展開記述子)によって、WEBアプリケーションの動作を制御します。 Tomcatでは、web.xmlは以下の2つ存在します。 $CATALINA_HOME/conf/web.xml $CATALINA_HOME/webapps/アプリ/WEB-INF/web.xml

    hakobe932
    hakobe932 2006/06/08
    web.xmlの設定
  • Tomcat - server.xml

    Tomcat(4.1.24対応)のserver.xmlについての解説です。 このファイルを修正したら、Tomcatを再起動する必要があります。 Webアプリケーション単位の設定は、各WebアプリケーションのWEB-INFディレクトリにある web.xmlで行うことができます。 要素の親子関係 Server server.xmlのルートになる唯一の要素(Element)です。 className 使用するサーブレットコンテナクラスを指定します。 このクラスは org.apache.catalina.Server インターフェイスを実装している必要があります。 省略すると、org.apache.catalina.core.StandardServer がデフォルトで使用されます。 port このサーバがシャットダウンコマンドを受け取るために待機するポート番号を指定します。 shutdown こ

    hakobe932
    hakobe932 2006/06/08
    server.xmlのいろいろ設定