タグ

ブックマーク / naoya-2.hatenadiary.org (18)

  • chef 勉強会 - naoyaのはてなダイアリー

    昨日恵比寿の Engine Yard さんオフィスでの chef 勉強会 #eytokyo に行ってきました。自分の LT の資料はこちら。 https://speakerdeck.com/naoya/vagrant-plus-chef 先日書いた Vagrant と chef についてのイントロダクションです。(また Speaker Deck の script タグが貼れなくなってるぞー > ダイアリー中の人) 感想など 勉強会全体としては chef 入門にはじまり、中の人っぽい方々からの発表があったり、AWS OpsWorks の話があったりとでいいかんじでした。id:rx7 におかれましては、AWS の中の人が OpsWorks のプレゼンをすると知らず、オオトリなのに同じ内容の LT をかますという事故がありましたが 2回聞けばより記憶に残りやすいということで・・・w PaaS ベ

    chef 勉強会 - naoyaのはてなダイアリー
    kurumai
    kurumai 2013/02/23
  • LTSV FAQ - LTSV って何? どういうところが良いの? - naoyaのはてなダイアリー

    LTSV って何? Labeled Tab-Separated Values という、テキストのフォーマットの仕様です。CSV や TSV や JSON そのほかと同じ、テキストデータのフォーマット名。主にログ、特に httpd のアクセスログなどに適用すると便利です。 仕様は http://ltsv.org にまとまっています。随時更新中です。 LTSV は単なるログのフォーマットであって、それ以上でもそれ以下でもありません。 LTSV ってタブ区切りで値に名前を付けただけのもの? はい、そうです。 これが 127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (

    LTSV FAQ - LTSV って何? どういうところが良いの? - naoyaのはてなダイアリー
  • エンジニアの不安と壁 - naoyaのはてなダイアリー

    このところ、KLab×はてな エンジニア応援ブログコンテストというのを開催していまして、エンジニア人生に関するちょっとした小話をブログに書いていただくと、内容によっては、シリコンバレーに行けたり、iPad が貰えるかもしれない。という企画です。「え、ブログ書くだけでシリコンバレー? 」 なかなか太っ腹な企画です。 よい機会なので、宣伝がてら、自分もちょっと、昔話をしてみたいと思います。 振り返ってみると、自分がエンジニアとして経験を積むなかで、「ここが壁だったな」と思うところがぼちぼちありました。それが何で壁に感じたのかといま改めて考えると、いずれも体系的な知識がなかったために、それを乗り越えるための指針がなかったというのが大きかったように思います。 きれいなコードを書くにはどうしたらいいんだろう? 負荷分散って、どうやるんだろう? 溜め込んだデータをうまく活用するには、どうしたらいいんだ

    エンジニアの不安と壁 - naoyaのはてなダイアリー
    kurumai
    kurumai 2010/06/22
  • 「ほんとうのプロダクトアウト開発」 ― マツダはなぜ、よみがえったのか? - naoyaのはてなダイアリー

    "プロダクトアウト"。技術や思い入れなどを優先して製品を作るやり方です。 技術から発想しなければなし得ない製品というのは当然ありますし、そういうものこそ革新的であるとずっと思っていました。ですが、僕はこの「プロダクトアウト開発」というのを、いつからか都合の良いように解釈していた。自分達がやりたいことを優先するための正当化、技術的に困難な課題を解くことからはじめるのではなく、そこに扱いやすい技術があるからそれで作るという、リスクを取らない開発のための言い訳。 「プロダクトアウトじゃないと、真に新しいものは作れないんです。」 先日、『マツダはなぜ、よみがえったのか?』というを読みました。不振に陥った自動車メーカーのマツダが、苦境の中から RX-8 を開発し、その状況から脱出するまでをつづったノンフィクションです。このには「ほんとうのプロダクトアウトとはなにか」ということが記されていました。

    「ほんとうのプロダクトアウト開発」 ― マツダはなぜ、よみがえったのか? - naoyaのはてなダイアリー
  • ソフトウェアアーキテクトが知るべき97のこと / 池袋ジュンク堂で鈴木雄介さん、小野和俊さんとイベント - naoyaのはてなダイアリー

    "97 Things Every Software Architect Should Know" という洋書の邦訳が、"ソフトウェアアーキテクトが知るべき97のこと" (www.oreilly.co.jp, www.amazon.co.jp)というタイトルで 10月5日、オライリーから発売です。 ソフトウェアアーキテクトが知るべき97のこと 作者: 鈴木雄介,Richard Monson-Haefel,長尾高弘出版社/メーカー: オライリージャパン発売日: 2009/10/05メディア: 単行(ソフトカバー)購入: 17人 クリック: 362回この商品を含むブログ (82件) を見る 第一線で活躍するソフトウェア・アーキテクト達が、独自の視点でアーキテクトという職業やソフトウェア開発にまつわる事柄についてのエッセイをそれぞれ執筆、それが 97 あるというコラム集です。 邦訳版では、日

    ソフトウェアアーキテクトが知るべき97のこと / 池袋ジュンク堂で鈴木雄介さん、小野和俊さんとイベント - naoyaのはてなダイアリー
    kurumai
    kurumai 2009/10/18
  • YAPC::Asia 2日目 「はてなブックマークのシステムについて」 - naoyaのはてなダイアリー

    2日目の発表も終えました。資料を公開します。 はてなブックマークのシステムについてView more presentations from Naoya Ito. 今日も少し駆け足気味でした。YACP::Asia 2009、今年も楽しかったです。Hackathon 出ずに京都に戻らなければならなかったのが悔やまれます。 発表の様子 撮影: id:hirose31

    YAPC::Asia 2日目 「はてなブックマークのシステムについて」 - naoyaのはてなダイアリー
  • Introduction to Information Retrieval #17 の復習資料 - naoyaのはてなダイアリー

    Introduction to Information Retrieval 輪読会 17章の復習資料を以下にアップロードしました。 http://bloghackers.net/~naoya/iir/ppt/iir_17.ppt 17章のテーマは "Hierarchical clustering" で、前回 16 章の非階層型クラスタリングに続き、階層型クラスタリングの話です。 階層型クラスタリング 階層型クラスタリングはその名の通り、階層構造を伴ったクラスタリングの手法です。例えば「はてなダイアリー」に関するクラスタと、「はてなブックマーク」に関するクラスタは、二つが合わさって上位に「はてな」というクラスタを形成し、更に上位に「ウェブサービス」というクラスタを形成するかもしれません。こうして階層構造はデンドログラムと呼ばれる二分木を構成します。 ウェブサービス -+- はてな -+- は

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

    圧縮全文索引の実装などでしばしば利用される Rank/Select 辞書と呼ばれるデータ構造があります。詳しくは参考文献を参照していただくとして、今回は一般の文字列に対して効率的に Rank/Select を可能とするデータ構造である Wavelet Tree (ウェーブレット木) のライブラリを作りました。 http://github.com/naoya/perl-algorithm-wavelettree/tree/master my $wt = Algorithm::WaveletTree->new("abccbbabca"); is $wt->rank(6, 'a'), 2; is $wt->rank(6, 'b'), 3; is $wt->rank(9, 'b'), 4; is $wt->select(0, 'a'), 0; is $wt->select(1, 'a'), 6;

    Wavelet Tree - naoyaのはてなダイアリー
  • KOF 2008 の発表資料 - naoyaのはてなダイアリー

    KOF 2008 での発表資料「はてな流大規模データ処理」を以下にアップロードしました。 http://bloghackers.net/~naoya/ppt/081108huge_data.ppt 一部参考文献からの引用 (Introduction to Information Retrieval から Vector space model の図、たつをの ChangeLog から転置インデックスの図) があります。この場を借りて感謝。 環境によってはおそらくフォントの表示がいまいちだと思いますが、ご了承ください。 追記 SlideShare にアップロードしました。 081108huge_data.pptView SlideShare presentation or Upload your own. (tags: linux mysql) 追記: メモリはディスクの 150 倍について

    KOF 2008 の発表資料 - naoyaのはてなダイアリー
  • サーバー/インフラを支える技術 - naoyaのはてなダイアリー

    『サーバ/インフラを支える技術』という書籍を執筆しました。明日 8/7 に発売です。 [24時間365日] サーバ/インフラを支える技術 ?スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ) 作者: 安井真伸,横川和哉,ひろせまさあき,伊藤直也,田中慎司,勝見祐己出版社/メーカー: 技術評論社発売日: 2008/08/07メディア: 単行(ソフトカバー)購入: 133人 クリック: 2,270回この商品を含むブログ (288件) を見る 書名にもあります通り、インターネットサービスのサーバ/インフラ周りについての書籍で、Klab さんのエンジニアの方々と一緒に書きました。ただし、サーバーと言っても少し特殊で、如何にコストをかけずに堅牢なサーバー環境を作るかというのが書籍に一貫している姿勢です。 Linux、LVS、DRBD、Squid、Nag

    サーバー/インフラを支える技術 - naoyaのはてなダイアリー
    kurumai
    kurumai 2008/08/06
  • 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のはてなダイアリー
  • Hadoop Streaming - naoyaのはてなダイアリー

    id:naoya:20080511:1210506301 のエントリのコメント欄で kzk さんに教えていただいた Hadoop Streaming を試しています。 Hadoop はオープンソースの MapReduce + 分散ファイルシステムです。Java で作られています。Yahoo! Inc のバックエンドや、Facebook、Amazon.com などでも利用されているとのことです。詳しくは http://codezine.jp/a/article/aid/2448.aspx (kzk さんによる連載記事)を参照してください。 Hadoop Streaming 記事にもあります通り、Hadoop 拡張の Hadoop Streaming を使うと標準入出力を介するプログラムを記述するだけで、Hadoop による MapReduce を利用することができます。つまり、Java 以外

    Hadoop Streaming - naoyaのはてなダイアリー
  • MapReduce - naoyaのはてなダイアリー

    "MapReduce" は Google のバックエンドで利用されている並列計算システムです。検索エンジンのインデックス作成をはじめとする、大規模な入力データに対するバッチ処理を想定して作られたシステムです。 MapReduce の面白いところは、map() と reduce() という二つの関数の組み合わせを定義するだけで、大規模データに対する様々な計算問題を解決することができる点です。 MapReduce の計算モデル map() にはその計算問題のデータとしての key-value ペアが次々に渡ってきます。map() では key-value 値のペアを異なる複数の key-value ペアに変換します。reduce() には、map() で作った key-value ペアを同一の key で束ねたものが順番に渡ってきます。その key-values ペアを任意の形式に変換すること

    MapReduce - naoyaのはてなダイアリー
  • Google を支える技術 - naoyaのはてなダイアリー

    Google を支える技術 を読みました。 Google のバックエンドで動いている各種分散処理システムに関しては Google 自身から論文がいくつも発表されています。それらの論文をはじめとする比較的最近の情報ソースをベースに、ある程度かみ砕いて要所要所を紹介するという内容でした。加えて著者の西田圭介さんは OpenCobol (COBOL を C 言語に変換しコンパイルする gcc のフロントエンド) を開発された、技術的なバックグラウンドがしっかりしている方であるようで、内容は信頼できると思います。 自分はこれまで Google のバックエンドの各種ソフトウェアについては方々で耳にしていましたが、漠然と何をするものか程度のことしか知りませんでした。 Web 検索の基的な仕組みと それにまつわる Google が直面した問題、特に大規模処理 それを支えるために開発された各種ソフトウェ

    Google を支える技術 - naoyaのはてなダイアリー
  • はてなブックマークの作り直しについて - naoyaのはてなダイアリー

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

    はてなブックマークの作り直しについて - 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のはてなダイアリー
  • Plain Old XML / Plain Old ほげほげ - naoyaのはてなダイアリー

    Someone recently asked me about how to handle an internal product debate around REST vs. SOAP. In hopes I never have to address this debate again, here's a record of what I told them. Don Box が REST vs SOAP についての Pragmatics について語っている、という記事。この記事を読む前に OPC Diary: SOAP vs REST? いいから出荷しろ という記事をコメントまで含めて読んでおくと良い感じで消化できる、と思います。 で、あんまり記事とは関係ないお話で。POX - Plain Old XML という単語を恥ずかしながら初めて聞いたもので、そこに反応。 Plain Old

    Plain Old XML / Plain Old ほげほげ - naoyaのはてなダイアリー
  • 1