自分用開発メモ。 imagemagick, GNU make, jquery, YUI, Cassandra, MT, Javascript... 節操なく色んなことに手を出してます。 開発環境はdebian lennyだったけど、今は Mac or Ubuntu 10.04
自分用開発メモ。 imagemagick, GNU make, jquery, YUI, Cassandra, MT, Javascript... 節操なく色んなことに手を出してます。 開発環境はdebian lennyだったけど、今は Mac or Ubuntu 10.04
Cassandraをインストールしてから日が開いてしまいましたが・・・ 分散データベース管理システムCassandraをDebianで動作させる Thriftのことを調べたおかげで、多少理解できた気がします。 PythonからThriftのライブラリ経由で接続し、データを操作してみます。 起動時にOutOfMemoryError 以前試したときのバージョンは0.4.2でしたが現時点で0.5.0に バージョンがあがっていました。 せっかくなので、バージョンアップして起動しようとすると・・・ # Listening for transport dt_socket at address: 8888 INFO - Sampling index for /var/lib/cassandra/data/Keyspace1/Standard1-1-Data.db INFO - Sampling inde
ちょっと前に「thriftって便利らしいよー」って話を聞いていたのだけれども、なかなか手をつけられずにいたらはてなブックーマークで使われているらしいという噂を聞いたり、Thriftを使って俺俺Key-Value Storeを作ったのように、TXを使ったThriftの紹介などが出てきたりしたのでそろそろ自分でも試したいなあと思い、試しました。で、先に結論を言っておくとThrift、とても気に入りました。とても簡単に処理用の専用サーバをたてることができて、かつ簡単にクライアントから処理要求が送れます。ボクは今まではRESTFulな感じでhttpでこのタスクをやっていたのですが、RESTFulな専用サーバをたてるのは結構開発コストがかかるんですよね。その点で、Thriftは開発コストはとても落ちると思うのでとても気に入っています。なんといって言語バインディングを自動で生成してくれるのは本当に開発
準備 % sudo apt-get install build-essential automake libtool flex bison libboost\* % sudo apt-get install libbit-vector-perl libclass-accessor-perl インストール % cd program/thrift % wget -O thrift.tgz "http://gitweb.thrift-rpc.org/?p=thrift.git;a=snapshot;h=HEAD;sf=tgz" % tar zxvf thrift.tgz % cd thrift % ./bootstrap.sh % ./configure --disable-gen-java --without-java --disable-gen-csharp --disable-gen-st
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
本音が語れるエンジニア参加型メディア「@IT自分戦略研究所 エンジニアライフ」。日々、ITエンジニアの「生の声」を公開している。 ここでは、編集部の独断と偏愛によって選んだコラムをテーマ別に紹介していく。今回のテーマは「デスマーチ」。デスマーチの体験談やそこから得た教訓、デスマーチを避ける方法などを紹介する。 無茶ぶりにも程がある「デスマーチ対処法」 まずは、デスマーチの体験談から、デスマーチを生き延びる教訓を学ぼう。 『ソフトウェア開発者あがりの品質保証人の奮闘記録』の虚人氏は、世にも不思議な「デスマーチ対処方法」を教えてくれた。 「バグだらけのプログラムを、なんとか出荷できる状態にする方法を教える」。プロジェクトマネージャはこう切り出した。マネージャの方針は、下記のとおりである。 その1 「休まず働け」 その2 「頭は使うな、身体を動かせ、気合を入れろ!」 その3 「バグは絶対に作るな
従来、部門ごとの人の作業を支援してきた個別システムが、部門横断的なシステムへと連携される流れになって久しい。 機動力の高い"サイボーグ"を作るために もともとは、企業内での人とITの関係は、営業から、受注、調達、生産、在庫管理、物流、会計などが人系の伝票の流れで作られていて、それぞれの作業をシステムが支援するという構造を元にしていたが、今は情報システムがその流れを作っていて、そのコンベアに対して営業や製造、経理などの担当が作業をしていると見えなくもない。 今となっては、主客の判別は困難である。中枢を成すコンベアの役割はすでにコンピュータが担っているし、人がやっていた作業の中でパターン化できるところや、大量の処理は、当然、CPUの方が正確かつ効率的なので、そちらに置き換えた方が、全体のパフォーマンスは高くなる。 こういった、IT系と人系が絡まり合って動作する今どきの業務形態を、筆者は、メカと
id:higayasuo さんにTwitter上でいろいろ教わったので、メモ。 検索条件が複雑な場合 業務アプリなどでよく見かける、複雑(不特定)な条件で、かつ、特定の並び順でデータを抽出するような場合のパターンです。 例えば、 データを抽出する条件が 「場所」「日時」「部署」「担当者」...と複数あったとして、 それぞれの項目が、 ユーザーによって指定されたり、されなかったりした場合、ソートがあるために、 入力、未入力の組み合わせの数だけ複合インデックスが必要ですが、 (Datastoreではフィルターとソートのプロパティが異なると複合インデックスが必要です。) これを全て静的に(事前に)定義するのは非現実的です。 で、id:higayasuo さんのアドバイス adhokなqueryはeq filterだけqueryで実行してnot_eqやsortはin-memoryでやるのが最も簡単
誰しも一つくらいは、ちょっぴりマニアックな趣味を持っているものです。私は最近ボードゲームにはまっています。ボードゲーム好きの間で誰もが知ってる大作と言えば「カタン」です。最近では「ドミニオン」が10年に一度の傑作と言われて、ブームとなっています。しかし、一般的にボードゲームと言えば「人生ゲーム」や「モノポリー」しか知られていないでしょう。「カタンは“キャズム”を超えていないんだなぁ」と少し残念に思っています。 一方で、マニアックであったはずが、いつの間にか誰もが知るようになったものもあります。例えば「携帯電話」は、当初はごく一部の人だけが利用する特殊な機器でしたが、今では誰もが普通に利用するようになりました。パソコンもそうですね。これらは「“キャズム”を超えた」と表現します。 つまり、一部のユーザーに知られるだけでなく、広く、一般的に普及することを「キャズムを超えた」と表現するのです。 エ
文字列中の \n, \t といったエスケープシーケンスや printf フォーマット, 書いているときは良いのだけれど, 後から見たときに区切りが分かりにくかったりする. Emacs には font-lock という便利な仕組みが用意されているので, ちゃっちゃと正規表現を書いてこれらをハイライトさせるようにしてみた. (add-hook 'c-mode-hook (lambda () (font-lock-add-keywords nil '(("\\\\[areEfntv]" 0 font-lock-keyword-face t) ("%-?[0-9]*\\.?[0-9]*l?[csduoxfegp]" 0 font-lock-type-face t))))) かなり見やすくなってくれたので満足. 文字列最後の " が赤く (font-lock-warning-face?) 染まり,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く