タグ

naoyaに関するkataringのブックマーク (15)

  • マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー

    また Linux カーネルの話です。 Linux では fork によるマルチプロセスと、pthread によるマルチスレッドでの並行処理を比較した場合、後者の方がコストが低く高速と言われます。「スレッドはメモリ空間を共有するので、マルチプロセスとは異なりコンテキストスイッチ時にメモリ空間の切り替えを省略できる。切り替えに伴うオーバーヘッドが少ない。」というのが FAQ の答えかと思います。 が「オーバーヘッドが少ない」と一言にいわれても具体的にどういうことなのかがイメージできません。そこで Linux のスレッド周りの実装を見て見ようじゃないか、というのが今回のテーマです。 3分でわかる(?) マルチプロセスとマルチスレッド まずはうんちく。マルチプロセスとマルチスレッドの違いの図。以前に社内で勉強会をしたときに作った資料にちょうど良いのがあったので掲載します。Pthreadsプログラミ

    マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー
  • セキュリティ&プログラミングキャンプ2009 レポート:「実践的であれ」――伊藤直也氏から学生への言葉 - @IT自分戦略研究所

    セキュリティ&プログラミングキャンプ2009 レポート 「実践的であれ」――伊藤直也氏から学生への言葉 岑康貴(@IT自分戦略研究所) 2009/8/20 8月12日から16日にかけて行われた「セキュリティ&プログラミングキャンプ2009」。学生たちのキャンプ中の様子や特別講義の模様をレポートする。 吉岡弘隆氏への開会前インタビューへ|1 2 3|次のページ 豪華な講師陣がそろった「セキュリティ&プログラミングキャンプ2009」が、8月12日から16日にかけて行われた。セキュリティコース31人(大学生15人、高等専門学校生7人、専門学校生4人、高校生5人)、プログラミングコース30人(大学生8人、高等専門学校生5人、専門学校生3人、高校生11人、中学生3人)。合計61人の学生たちが熱心に(同時に黙々と)講義を受け、課題に取り組んでいた。

  • アルゴリズムイントロダクション第24章 単一始点最短路問題 - naoyaのはてなダイアリー

    アルゴリズムイントロダクションの輪講で、第24章の単一始点最短路問題を担当しました。発表に使った資料を以下にアップロードしました。 http://bloghackers.net/~naoya/ppt/090622_shortest_paths.ppt SlideShare はこちら。フォントの関係でグラフが崩れたりしているので、ppt で参照した方が見やすいかと思います。 Introduction to Algorithms#24 Shortest-Paths ProblemView more OpenOffice presentations from Naoya Ito. 単一始点最短路問題は、重み付き有向グラフの最短路木を求める問題です。各頂点に最短路重みを記録するのですが、はじめに各頂点の重みを∞として、「緩和」と呼ばれる操作により徐々に頂点の重みを最短路重みに近づけていく、というの

    アルゴリズムイントロダクション第24章 単一始点最短路問題 - naoyaのはてなダイアリー
  • naoyaのはてなダイアリー - Perlプログラマのレベル10 - Perlプログラミング救命病棟より

    プログラマ、と一言で言っても、if文の意味をようやく理解したばかりの駆け出しのプログラマもいれば、汎用的で優れたライブラリを量産できるような凄腕のハッカーもいる、つまりはピンきりです。 Perlプログラマに関してはどうでしょう。一流のPerlプログラマになるためには、見えない階段があるようです。use strict を使い始めたらその階段を一歩上ったと言えるでしょうし、正規表現を理解したときも一段あがることになると思います。リファレンス、クロージャ、オブジェクト指向、CPANモジュール、mod_perl、MVCフレームワーク。それらも階段を構成する材料の数々と言えるでしょう。 さて、Perlプログラミング救命病棟という書籍から、ちょっと長いですがそんなPerlプログラマのレベル10のリストを引用してみます。 レベル1: Perl 関係の書籍や資料を何も読んでいない。Perl がプログラミン

  • Kansai.pm での発表資料 (Hadoop Streaming で MapReduce) - naoyaのはてなダイアリー

    Kansai.pm に参加しました。とても楽しかったです。自分も "Hadoop Streaming で MapReduce" という題目で発表しました。取り急ぎ、資料を以下に公開します。 http://bloghackers.net/~naoya/ppt/080530kansaipm.ppt MapReduce は Google のバックエンドで動いている分散並列バッチ処理システムです。GFS は Google の分散ファイルシステムです。Google ウェアのクローンとしてオープンソースで開発されているのが Hadoop。Hadoop は Yahoo! Inc や Facebook, Amazon.com などでも利用されているとのこと。Hadoop は Java ですが、Hadoop Streaming を使うと Java 以外でも MapReduce できます。 以下のエントリも合

    Kansai.pm での発表資料 (Hadoop Streaming で MapReduce) - naoyaのはてなダイアリー
  • インターフェイス指向設計 - naoyaのはてなダイアリー

    を読むこととは、そのを読んだことに費やした時間の間、その書籍のテーマについて考えを巡らせることではないか、と近頃思います。を読みながら集中して、ある特定のテーマについて考え続ける。を読み終えた頃には、その思考の量的な価値が、自らの中で質的な価値に変換されているというのが理想であり、それが読書の醍醐味ではないかと思います。 インターフェイス指向設計 ―アジャイル手法によるオブジェクト指向設計の実践 を読みました。この書籍はシステム設計における「インターフェイス」(ユーザーインターフェイスではなく、プログラムインターフェイス) についての書籍です。インターフェイスについて考えを巡らせるにあたって、思考のための指針を与えてくれる良著だと思います。 プログラムインターフェイスというものをどのように捉えるか。ファイルをブロック単位で読むための手順であるとか、ソートのアルゴリズムであるとか、そ

    インターフェイス指向設計 - naoyaのはてなダイアリー
  • Introduction to DBIx::MoCo - naoyaのはてなダイアリー

    YAPC::Asia 2008 で OR マッパの DBIx::MoCo について発表しました。DBIx::MoCo は最近のはてなのサービスで利用しているバックエンドのソフトウェアで、Ruby 風のリスト操作や memcached による透過的なキャッシュなどをサポートしています。 http://bloghackers.net/~naoya/ppt/080516introduction_to_dbix_moco.ppt にて発表資料を公開しています。

    Introduction to DBIx::MoCo - naoyaのはてなダイアリー
  • Introduction to Information Retrieval #5 の復習資料 - naoyaのはてなダイアリー

    Introduction to Information Retrieval の5章の復習資料を以下にアップロードしました。 http://bloghackers.net/~naoya/iir/ppt/iir_05.ppt 5章はインデックス圧縮がテーマです。辞書の圧縮と postings files の圧縮に対するそれぞれのアプローチについての解説が主です。転置インデックスの振る舞いに特化した圧縮手法などが紹介されていて、とても面白い章でした。数値表現をビット単位で最適化する γ coding などは目から鱗です。 次回の輪読会は 6/8 予定です。次章の内容は、検索結果のスコアリングについて。tf-idf や Vector space model についての話が中心になります。 過去の章のアーカイブは同 URL のディレクトリ (http://bloghackers.net/~naoya

    Introduction to Information Retrieval #5 の復習資料 - naoyaのはてなダイアリー
  • 今夏に新はてなブックマーク登場--その進化と情熱:インタビュー - CNET Japan

    国内1位の規模を誇るソーシャルブックマークサービス「はてなブックマーク」は2005年2月にベータ版として公開された。同年8月には正式版となり、多くのインターネットユーザーに利用されてきた。埋もれがちな個人のブログエントリーにスポットを当てたり、みんなのブックマークからネットで流行しているものを浮かび上がらせたりと、その存在感は大きい。 一方で、ユーザーが増えてくるにしたがって、課題も表出してきた。はてなブックマークで付けられがちなネガティブコメント、スパムなどがサイト運営者やユーザーを悩ませる。 これらを改善するべく、はてなブックマークが初めてリニューアルする。新バージョンは2008年夏にも登場予定だ。開発を担当するはてな執行役員 最高技術責任者の伊藤直也氏に、はてなブックマークの現状、課題、新バージョンのポイントなどを聞いた。 はてなブックマークの新バージョンに腰 --伊藤さんは取締役

    今夏に新はてなブックマーク登場--その進化と情熱:インタビュー - CNET Japan
  • 勉強、学ぶ - naoyaのはてなダイアリー

    先週、サポートのアルバイトスタッフと、プログラミングの話題になった。プログラミングを勉強している、とのことだった。もちろん、自分は「それを続けると良いと思う」ということを言った。 少し前の自分だったら「プログラミングの勉強を続けると良いと思う」という言葉は、嫉妬や羨望、あるいは自己肯定からの言葉だったのではないかと思う。今もそういう部分がないとは言い切れないが、以前とは少し違っているように思う。 このスタッフがプログラムを書けるようになったとして、それが直接仕事に役に立つかどうかは人次第だと思う。"直接的に役に立つ"という保証はない。 そういうことではない。 何かシステム的なトラブルが起こったとき、自分ではない誰かが何かの操作で困っているとき。プログラムの世界についての知識、慣れ、経験があると、第六感が働くようになる。プログラムのおかしな挙動の、その振る舞いだけを見て、原因がどのあたりに

    勉強、学ぶ - naoyaのはてなダイアリー
  • 津田大介が伊藤直也に聞く、「はてなブックマーク」の今と未来(後編)

    ジャーナリストの津田大介氏が、ブックマークサービス「はてなブックマーク」の開発者である伊藤直也氏に話を聞くこの記事。前編、中編では、ブックマークされたくない人への対策や、議論しやすい環境作りについて意見が交わされた。後編では、伊藤氏が目指すはてなブックマークの理想について語ってもらう。 著作権問題にどう対応する? ── ブックマークのエントリーページってそれだけ情報が詰まってて、いろいろな情報にアクセスしやすいというメリットがあるわけですけど、著作権法的には微妙な要素も含んでますよね。 端的な話でいうと、2005年のはてなブックマークのリリース直後って、ページのテキストが全部エントリーページに自動的に転載されるようになってましたよね。 伊藤 いやー、あれはすごいしかられました(笑) ── 割とすぐに今の要約転載を現状の250文字強に短縮されたわけですが、あの一件だけじゃなくて、「はてなアン

    津田大介が伊藤直也に聞く、「はてなブックマーク」の今と未来(後編)
  • 津田大介が伊藤直也に聞く、「はてなブックマーク」の今と未来(中編) (4/4)

    議論はブログでやるべき ── そうした「カウンター」が出てくるタイミングを早めるようなことを技術的にできたら、もうちょっと荒れることが減りそうな感じはします。 伊藤 結局、ブックマークコメントって、議論に向かないんです。お互いに100字制限の中で応酬し合っていても多分、収拾がつかない。 反論したい人は要するに議論がしたいわけで、僕は議論はブログでやるべきだと思っています。だから、議論をしているブログや掲示板のスレッドと、はてなブックマークのコメント欄がうまく両方一緒に見られるようにしたいなとは思ってます。 例えば、津田さんが間違った批判をされたときに、それに反論した津田さんの次のエントリーも一緒に表示されるようなイメージです。それがうまく表現できれば、議論を全部追いかけたい人は、はてなブックマークのエントリーページさえ見ていればいいことになる。そうすれば議論も断片化しないし、ブログオーナー

    津田大介が伊藤直也に聞く、「はてなブックマーク」の今と未来(中編) (4/4)
  • はてなブックマークの作り直しについて - naoyaのはてなダイアリー

    id:naoya:20080320:1206009912 でも少し触れましたが、京都に来てからはてなブックマークの作り直しをしています。どういう意図を持って作り直そうとしているかを述べておきます。 まず大前提として、今のはてなブックマークに追加したい機能、変更したい仕様、来追加するはずが途中で頓挫したものが結構な数で山積みになっています。それを実現するための基礎作りです。 追加したい機能、変更したい箇所 おそらく新システムの最初のリリース時には、それほど大きく変わった、という印象にはならないかと思います。長く続いているサービスですし、インタフェースや使い方もリリース当初からそれほど大きくは変わっていません。既存システムからの極端な変更は歓迎されないだろうと思っており、まずはオリジナルが持っていた機能をしっかり再現することが重要です。 ただし、既存システムでも問題と思っている箇所は改善して

    はてなブックマークの作り直しについて - naoyaのはてなダイアリー
    kataring
    kataring 2008/03/24
    プログラマはいつでもはじめからやり直したい症候群に悩まされるものですな
  • ソフトウェア技術者としての残り時間 - naoyaのはてなダイアリー

    年始の NHK でのイチロー特集番組を見ていて一番印象に残ったのは、他の人の道具を絶対に触らないというイチローのこだわりでした。曰く、人の道具を触るとその道具の感覚が体に残ってしまい、自分の道具を利用するときの感覚の妨げになるから、ということでした。全体を通して、イチローは他のプレイヤーとの相対的な競争の中に身を置いているのではなく、絶えず自分を改良し続けるという過程の中にいるのだというのがよくわかる内容でした。良い番組だったと思います。 気づけば自分も 30 歳になりました。まだ若いとは思っていますが、さすがに 20 代の頃に比べると、病気や怪我の治りが少し遅くなったと感じることもあり、少しずつ自分の人生、「死」ということを考えるようにもなりました。時間は有限ということが少しずつ実感できるようになってきました。あるいは実感できるようになってしまった、と言った方が良いかもしれません。 ここ

    ソフトウェア技術者としての残り時間 - naoyaのはてなダイアリー
  • Introduction to Information Retrieval #1 の復習資料 - naoyaのはてなダイアリー

    Introduction to Information Retrieval の 輪講 に参加しています。自分はこの輪講で復習係を担当させてもらっています。毎回輪講の頭に、前回分の内容をサマリしてプレゼンテーションする係です。 これから輪講の度、作成した資料を公開していきたいと思います。第一回目の資料を以下に置いておきます。 http://bloghackers.net/~naoya/iir/ppt/iir_01.ppt (ppt, 274K) 第一回目は、書籍の第一章 "Boolean Retrieval" の復習です。大規模データを検索する検索システムにおいて、転置インデックスはどのように作成されるか、またブーリアン検索 (「渋谷 and ラーメン」という検索クエリの類) はどう処理されるかといったことの導入部です。 先週末の第二回目は、転置インデックス作成時の前処理部分(トークナイズ、

    Introduction to Information Retrieval #1 の復習資料 - naoyaのはてなダイアリー
  • 1