タグ

2011年3月11日のブックマーク (7件)

  • diffの動作原理を知る~どのようにして差分を導き出すのか | gihyo.jp

    UNIXの基的なコマンドの1つであるdiff。 これに実装されているアルゴリズムは実に興味深い世界が広がっています。 稿では、筆者が開発した独自ライブラリ「dtl」をもとに「diffのしくみ」を解説します。 はじめに diffは2つのファイルやディレクトリの差分を取るのに使用するプログラムです。 ソフトウェア開発を行っている方であれば、SubversionやGitなどのバージョン管理システムを通して利用していることが多いかと思います。稿ではそのdiffの動作原理について解説します。 差分の計算の際に重要な3つの要素 差分を計算するというのは次の3つを計算することに帰結します。 編集距離 2つの要素列の違いを数値化したもの LCS(Longest Common Subsequence) 2つの要素列の最長共通部分列 SES(Shortest Edit Script) ある要素列を別の要

    diffの動作原理を知る~どのようにして差分を導き出すのか | gihyo.jp
    eagletmt
    eagletmt 2011/03/11
  • Google、「見たくないサイトのブラックリスト」作成機能を追加

    検索精度の向上に取り組むGoogleが、ユーザーが期待に反したサイトを検索結果からブロックし、自分のブラックリストを作れる機能を追加した。 米Googleは3月10日(現地時間)、ユーザーが検索結果から気に入らないサイトを数クリックでブロックし、自分の“ブラックリスト”を作成できる機能を追加したと発表した。まずは英語版のChrome 9、Internet Explorer(IE) 8、Firefox 3.5以上に対応し、順次対応言語およびWebブラウザを拡大する予定という。 同社はここ数週間、検索アルゴリズムの改善やGoogle Chrome向けスパムブロック拡張機能の提供など、検索結果の精度を上げるためのさまざまな取り組みを発表している。 新機能では、ユーザーが検索結果のURLをクリックし、そのまま検索結果ページに戻った場合にそのURLの下に「Block “サイト名” results」と

    Google、「見たくないサイトのブラックリスト」作成機能を追加
    eagletmt
    eagletmt 2011/03/11
  • vim で実践! コードリファクタリング

    どうも、技術部でプログラマをしている鈴木です。シャノンに来てからは主に Shanon Marketing Platform の国際化対応をやっています。 わたくし、いわゆるひとつの vi 使いでして、世の vi 使いの類にもれず、世の中のすべてのアプリケーションの UI が vi ライクになればいいと常日頃思っているクチなのですが、(この記事も、vi で書いてからコピペであります。WYSIWYG なんてクソくらえ! でありますw)今日は恥ずかしながら、そんなわたくしが普段どんな感じで vi を使っているかをお見せしたいと思います。

    vim で実践! コードリファクタリング
    eagletmt
    eagletmt 2011/03/11
    "vi はそのコンセプトからして純粋で先鋭的な「エディタ」である。それはテキストを書く (write) のではなく、編集する (edit)"
  • 歩道に児童の絵…貼ったら放置自転車激減 : 社会 : YOMIURI ONLINE(読売新聞)

    全国で最も放置自転車が多い大阪市が、違法駐輪追放を訴える児童の絵をシートにして路面に貼る試みを一部地域で始めたところ、放置が激減した。 マナーの悪い大人も、子供が一生懸命描いた絵の上には置きにくいらしく、9割近く減ったところも。市は新年度、広い地域に取り組みを広げる。 内閣府の調査では、2009年の同市の放置自転車は約4万2000台で2位の横浜市(約1万8000台)の倍以上。市によると、昨年11月には約3万2000台にまで減り、2011年度中に2万5000台に抑えるのが目標という。 子供の絵作戦は、建設局の違法駐輪対策担当、瀧石浩二さん(43)が、児童が壁画を描くことで堤防の落書き被害が減った事例から思いついた。地元小学生の絵を募り、「歩道は駐輪場ではありません」などとメッセージを入れてもらった。 昨年11月、港区内のJR弁天町駅と市営地下鉄朝潮橋駅の周辺の歩道に、特殊なシートに加工した絵

    eagletmt
    eagletmt 2011/03/11
  • clang のライブラリの方で遊んでみた - fjnlの生存記録のような何か

    clang のコンパイラではなく、ライブラリの方で遊んでみた。使用した clang(+LLVM) のバージョンは Subversion レポジトリより取得した r127064 。ちょっと古いが気にしない。 clangのライブラリの方のドキュメントが見つけられなかったので、主にclang tutorialを参考にした。しかしながら、clang tutorialが書かれたのは2008年であり、現在の clang ではコンパイルエラーになるコードもある。 今回作成したのは、main関数が引数を取るか取らないかを出力するプログラムである (clang::FunctionDecl::isMain関数を使えば、ある関数がmain関数であるかどうか判定できるので楽できる)。clang::CompilerInstanceの使い方がこれでいいのか、かなり自信がない。以下ソースコード。 コンパイルは以下のよう

    clang のライブラリの方で遊んでみた - fjnlの生存記録のような何か
  • Xcode 4 リリース、ただし無償では入手できず | スラド アップル

    Mac OS X/iOS 向け開発環境の Xcode 4 がリリースされた。さまざまな改良が加えられているのだが、1 つ残念なのが無償登録ユーザーはダウンロードできないという点。かつて Xcode は Mac OS X のインストールディスクに含まれており、無償でダウンロードも可能だったのだが、Xcode 4 は現時点では 99 ドル / 年の Mac Developer Program もしくは iOS Developer Program 加入者のみに無償で提供されており、それ以外のユーザーは Mac App Store で 4.99 ドルで購入する必要がある (Apple Insider の記事より) 。 Xcode 3 については従来通り無料で入手できるため、とりあえずコンパイラが必要というユーザーにとってはあまり実害はないものの、将来的にこの方針が続くのかは気になるところである。

    eagletmt
    eagletmt 2011/03/11
  • 自己紹介と過去の話 - Islands in the byte stream (legacy)

    新卒準備カレンダー 2011春に何か書くにあたって、まずは軽く自己紹介的な挨拶を書こう…と思ったら予想外に長い自分語りになってしまったので別途書き出しておきます。エンジニアとしてのスキルや活動については編に書くので、ここではそれ以外のことを書きます。 現在の私 この3月で大学を卒業し、4月からはDeNAにエンジニアとして入社します。 プログラミングが大好きで、3年ほど前からShibuya.pmによく顔を出しています。最近の成果物としては、Perl用のテンプレートエンジンXslateです。これについてはWeb+DB Presss誌で解説の機会をいただき、「Xslate 次世代テンプレートエンジン」としてWebでも公開済みです。 ところで、私は今年29歳になります。しかし、大学院にいったわけでも二度目の大学というわけでもありません。これは大学入学が24歳のときと遅かったためです。私が大学を目

    自己紹介と過去の話 - Islands in the byte stream (legacy)
    eagletmt
    eagletmt 2011/03/11