otherの最近のブログ記事

XPモードやっと動いた。
クリーンインストールにXP mode(とVPC)を入れただけの状態で「他の仮想化ソフトウェアの実行中にWindows Virtual PCを起動することはできません。~~」という理解しがたいメッセージが出てきて足止めされてた。
※CPUの仮想化サポートが効いてない(BIOSでdisabledなど)ときとは違うメッセージ。

この辺の話のようにAMD CPU(Phenom II X4 965)とGigabyte M/B(GA-MA790FX-DQ6)の食い合わせなのか。
GigabyteのサイトからBIOS F7dを持ってきて再チャレンジしたらいけた。
@BIOSを使ってWindows 7からBIOS更新という冒険魂。@BIOSの自動DLを使うと「F7b」に更新しようとする(僕が試したときは)ので、BIOSを先にDLしておいてファイルを指定した。

xpm.png

Windows 7の電卓とXPモードのFirefoxの図。スクリーンショット撮るために始めて起動したけど電卓が進化しすぎてて笑った。
ホストのUSBデバイスと接続できるのがすごい便利というか感動。
仮想PC側の通知(ウイルス対策の警告など)が、ホスト側の通知に統合されて表示されるんだな。

もっといろんなアプリで試そうと考えたけど、どうしてもXP側で動かさないといけないアプリが特になかったりで。。。このごろはウェブアプリ多いし。
まーしかし結構便利かもという印象。

ドスパラで予約しておいたWindows7 x64 Ultimate来た(^^
さっそくインストール。
  • CPU:Phenom II 965
  • M/B:Gigabyte MA790FX-DQ6
  • メモリ:6GB(ここで書いた理由でDDR2)
  • VGA:Radeon HD 3850
  • HDD:WDC WD740ADFD(結構前のRaptor)
もともとVista x64がインストールされていたHDDに新規でインストール。
インストールの最終処理で妙に時間がかかったけど、じっと待ってたら完了した。

エクスペリエンスインデックスは↓のスクリーンショットのとおり。5.4。
HDDがSATA/1500なので、SATA/3000にしたらちょっとは違うだろうか。
wexp.png

Vista x64をずっと使ってきたので大きな変化は感じない。
ドスパラの予約特典で「窓辺ななみオリジナルテーマ」がついてきて、一度はセットアップしたものの壁紙/サウンドが萌え萌えしすぎてて人前では使えん(^^; でもまー いいと思います。

2~3時間さわってみたちょっとした感想。
  • Teraterm:ちょうどCentOS5.4が公開されたところでサーバメンテ用にインストールした。フォントの設定に「Terminal」が現れず困った。
    コンパネ→フォントで、Terminalフォントを「表示」にしないと選択肢に出てこない。
  • iTunes:x64版をインストール。ストアの表示であるとか、iPodの同期は普通に出来た。
  • アンチウイルス:とりあえずのインストール(ライセンス認証も保留にした)なので、いつものNOD32でなく「Microsoft Security Essentials」をインストール。重いのか軽いのかもう1つ実感はわかず。
  • Vista 64ビットでは動かなかった(ウチの環境固有の問題かも)USB外付けDVD-ROMドライブ(Logitec LDR-PMC8U2)が標準ドライバで使えたのはちょっとうれしい。
    ※CD-ROMの読みこみに使っただけなので、書き込めるかどうかは知らない。
  • Aeroシェイクの使いどころがわからん・・・。
  • 左右にウィンドウをスナップさせるやつの使いどころがわからん・・。ウィンドウを左右並べて比較することってそんな多いかなあ。




翻訳作業にOmegaTという翻訳メモリを使っている。
  • javaのpropertiesに対応している。
  • (翻訳メモリ的には当たり前だろうけど)用語集を定義できる。
  • 既翻訳文から類似した部分を提示してくれる。
  • 無償で利用できる。
  • UIがすっきりしていると思う。
てなところが選定理由。

原文ファイルから訳文ファイルを生成するのは、GUIメニューから実行するのだけど、これを自動化したい(antのbuildに組み込めないか)と思って調べた。

こういうときオープンソースはいいよなーとソースを読んだら期待通りCLIが実装されてた。
※けど、よくよく見れば(英語版の)マニュアルにばっちり書いてあったのだった。

■antを実行するbat
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_15
set OMEGAT_HOME=c:\Program Files\OmegaT
cmd /c c:\path\to\ant\bin\ant.bat

■build.xml(部分)
	<property name="project" location="omegat"/>
<property environment="env"/>

<target name="gentext">
<java
fork="true"
jar="${env.OMEGAT_HOME}/OmegaT.jar"
failonerror="true">
<arg value="${project}"/>
<arg value="--mode=console-translate"/>
</java>
</target>

ディレクトリ構成
 ./
  build.xml
  omegat/ ・・・OmegaTのプロジェクト
   source/ ・・・原文ファイル置き場
   target/ ・・・訳文ファイル出力先


環境:
 Windows XP Pro SP3
  JRE 6
   OmegaT 2.0.3
   Ant 1.7

libxml-rubyのAPIの変更に気がつかずにはまったので、リリースをウォッチしようとRubyForgeのページを確認するも、フィードが見つからない(あったりして)。
RubyForge全体のnewsのフィードと、プロジェクトのnewsのフィードはあった。
だけどリリースとnewsは連動しているわけではないらしく投稿するかしないかは管理者次第のようだ。
RubyForge: LibXML: ニュース
RubyForge: LibXML: ファイルリスト
じゃあPipesでも使ってみるかと気軽に始めたのだけどかなり手間取った。

やりたいこと
  • libxml-rubyのリリース(「libxml-ruby-0.9.8」「libxml-ruby-0.9.7」部分)を抜き出してフィードに。
  • descriptionに上記文字列のリンク先(リリースノート)の内容を入れる
最初のリリース一覧の抜出からしてなかなか意図した結果にならない。XPathでさくっと取り出してぇ、と試行錯誤。結局YQLで大枠を抜き出してOperators/Renameでちまちまとtitle要素/link要素にとり出すことに。

select  * from html
where
url="http://rubyforge.org/frs/?group_id=494"
and
xpath="/html/body/div[3]/table/tr/td[2]/table/tr[position()>=4 and td/p/strong/text()]"
得られたtrリストの直下の一番目のtdと二番目のtdを指定する方法でまた悩む。
item.td.0.p.strong.a.href  →link
item.td.0.p.strong.a.content →title
item.td.1.p.strong →日時
てな感じ。

リリースノートの内容は、<pre>の中身でざくっと指定できたのでLoop+Fetch Pageの結果をdescriptionにassign。

日時をフィードのpubDateにどう反映するのかがまたよくわからなくて、他の人のPipesを参考にLoop+Date Builderでitem.y:publishedにassignした。フィード出力の時点でpubDateに突っ込まれるようだ。

ようやく出来たのが↓のPipes。Livedoor Readerに食わせてウォッチ中。
http://pipes.yahoo.com/pipes/pipe.info?_id=78e1182d42024a179dfda9fc6f708550

面白いしすごく便利だけど、やりたいことをPipes流の発想に変換するのがなかなか大変。。。
YQLを使えばXPathでスクレイピング可能なのが救い。



1.8インチHDDを8GBのCFに換装して快適に使って一年ちょい。
Thinkpad X40のHDDをCFに換装してVista
CF 8GBな X40に Vista SP1統合セットアップ
魔が差したというかなんというかWindowsサーチ4.0をインストールしてしまったあたりから残容量が低空飛行。とうとう1月の定例updateで容量不足に。

困ったなぁと思ってたら日立型I/Fで1.8インチなSSDが出たじゃないですか。
容量も32GBと8GB環境から見れば4LDK級。
PhotoFast SSD 1.8 IDE 32GB MLC
月初に買いに出かけたのだけどすでに次回入荷待ち。買えないとなるとなおさら今欲しいんだ。

~以下自己責任でお願いします~
MTRON製 SSD 1.8インチ ZIF(PATA)接続MSD-PATA3018-032ZIF2
カッとなって、MTRON製 SSD 1.8インチ ZIF(PATA)接続MSD-PATA3018-032ZIF2と、ZIF変換アダプタを購入した。

電源の違いがあるそうで通常の変換アダプタに手をいれないといけないらしい、のだけど若松で加工済みのものを入手。
ブログ等を見ていると自分で改造してる方もいるようですげぇなと尊敬しつつお金で解決(^^)

上記若松のページやこちらとリンク先のIBM公式保守マニュアルを見ながら、バッテリ、キーボード、上部ケースを外す。
ネットで検索するとあっさり換装されているようなのだけど、不器用なのかとにかく上部ケースが外せなくて苦労した・・・・

保守マニュアルの86ページの「1」の加減がわからなくて困った。結構大きなバキィって感じの音がして持ち上がったので「やってもうた~」と思ったけどセーフだった。
「3」のラッチというのをケース底面側から見える銀色のツメ的な部分と勘違いしてひたすら責めてたんだけど、これは関係なかった。。
HDDが収まるスペースにある枠も外す。

上記の加工済み変換アダプタには、フレキケーブルが2つ同梱されてた。
僕が買ったのだと、両端が青いのと片方が白いの。
厚さが違うことに気がつかず「こんなすっぽぬける感じでいいんだろうか???」と悩んだがSSD側を白い方にしたら深く入った。SSDのコネクタ部分にあるロックをおろして固定。

断線しちゃうんじゃないか、と思うぐらいケーブルをぐねっと曲げてなんとか納める。
SSDと底面の間に隙間が出来るので緩衝材を突っ込んだ。

で今度は、上部ケース、キーボード、HDDカバー、バッテリを元に戻す。
電源を入れてBIOS画面でHDD認識を確認する。どうやら問題ないみたい。

またVistaをセットアップするわけだけど、以前このX40用にSP1統合ディスクを作ったので再利用。
これはあっさり完了。

  • ページファイルなし運用
  • ハイバネーション(休止)も無効に
とりあえずlenovo公式から「ThinkVantage System update」を入手して、ドライバ周りを一度にそろえた。前回はCFだったから必要なものだけ個別にインストールしたけど32GBもあるから豪勢に。それになんだかんだで結構便利だSystem Update。

後は直近使うアプリだけインストール。
  • アンチウイルス:
    いつものESET NOD32アンチウイルス V3.0。やはり軽快なのがいい。
  • RAMディスク:
    今度はGavotte。256MB割り当てた。これはもっと少なくてもいいかも。
    RAM PhantomはX60に入れたときにハングしたので不採用に。せっかく購入したけど。
  • ブラウザ:
    Firefox 3。これもいつもの。
  • ターミナル:
    TeraTerm。これもいつもの。
  • PDFリーダ:
    以前はFoxit ReaderだったけどAdobe Readerをおごってみた(^^
  • テキストエディタ:
    サクラエディタ
  • その他:
    TortoiseSVN。自宅サーバとの間の文書/ソースの出し入れに。
CPUパワーとメモリのバランスと考えるとMTRON製 SSD 1.8インチ ZIF(PATA)接続MSD-PATA3018-032ZIF2のスペックを完全には引き出せないんだろうな~、という感じはする。
体感する快適さではCFの時とあまり違いを感じないけど、ディスクの残量が17GBもあるのは精神衛生にいい(^^
残量不足になってからX60常用(こっちもSSDに換装済み)に逃げてたけどまたまたX40復活。キーボードの感触はX40の方が好きなので地味にうれしい。

インターネット側にデータ(ブックマークとかRSSリーダとかメール)を置いていることが功を奏しセットアップが簡単でいい。OSの準備が出来たらいつもの状態でシームレスに継続できるってすごいことだ。ネットを普遍に押し上げた(下げた?)人々に感謝だなぁ。


集合知プログラミング
購入したままになっていた「集合知プログラミング 」を読み始めた。

ナレッジを扱うシステムに関わっているので、何かしら応用できないかな、と考えたのだった。

よくあるのが検索の際に「プロクシとプロキシ」「引越しと引っ越し」を同じとみなすような検索が出来ないか?ということ。
※他に「ossとオープンソース/opensource」「セマンティックwebとsemantic web/semanticweb」みたいな。

単純に考えると辞書を用意して検索ワードを拡張して検索エンジンに食わせよう、となる。けど、どうせなら自動的になんとかできないだろうか。

で、「集合知プログラミング

ユーザの与えた語に対し、類似あるいは関連の強い語を推薦できないかと考えた。
googleのように巨大なコーパスを扱える状況ならともかく、少ないリソース・計算力でどうにかそれらしい結果を出したい。

近年の分類方法の1つといえばタグ。多数のタグが集まる場所といえばソーシャルブックマーク。

あるURLで識別されるリソースに対し、不特定多数の人がタグをつける。
よほどおふざけな人が集まらない限り、ついたタグはリソースにまつわる一定の関連があるだろう。さらにそこには表記ゆれもある。これらタグ同士の相関係数を事前に計算しておいて提示するという試み。

僕ははてブを使っている。ちょうどいいことに特定URLをブックマークに関する情報をJSONで取得するAPIがある。
とりあえず自分のブックマークを起点に、他の人がつけたタグの数を取得し計算した。
URLの数は1300ちょい。タグの種類は約5500種類。

うーん、それっぽい結果になっているものもあるけど・・・・
※負の相関が降順なのは(僕のコードの)仕様です。
※ケンドールの順位相関係数です。

セマンティックweb
    0.866666666667: semantic web
    0.8: semanticweb
    0.6: メタデータ
    0.6: web
    -0.733333333333: rdf
    -0.142857142857: xml

rails
    0.733333333333: ruby on rails
    0.642857142857: ror
    0.6: soft
    0.52380952381: develop
    0.444444444444: web開発
    0.428571428571: rubyonrails
    0.418181818182: tutorial
    -0.8: manual
    -0.6: tools
    -0.6: 資料
    -0.52380952381: reference
    -0.4: ソフトウェア開発
    -0.357142857143: web制作
    -0.333333333333: リファレンス

oop
    0.6: モデリング
    0.6: agile
    0.575757575758: オブジェクト指向
    0.563636363636: oo
    0.466666666667: design pattern
    0.433333333333: programming
    0.4: devel
    -0.6: 未読
    -0.6: 設計
    -0.428571428571: デザインパターン
    -0.4: programing
    -0.333333333333: design
    -0.222222222222: システム開発
    -0.2: develop

母集団が小さいからなのか。母集団が偏っているのか。

考えてみれば、ソーシャルブックマークのタグに全て(といいたくなるくらいたくさん、の意)の語が登場するわけではなく、「自分がブックマークするときのタグの推薦に使える」ぐらいの結果か。
母集団の中には「ソーシャルブックマークを便利に使う工夫のタグ」も存在するので、そもそも推薦に向かないものがある。
※「*お役立ち」とか「2-便利」とか「あとでよむ」みたいな

表記ゆれのネタにしようと思ったら、「同じURLに対して同じ人がつけたタグ同士」は表記ゆれではなくて、何かしら別の軸の意味を持った言葉のはず。なので、こういうタグ同士でペナルティを加味したらもう少しマシになるかな。

ま、それでもなんとなーく相関のありそうな語の固まりが取り出せたのは、ちょっと面白かった。
サンプルをどーんと拡大してhadoopで分散処理、みたいなことをやってみたいな。


といってもMTのコメントのプラグインを試しただけだけどー

MT 4.2が公開されたのでアップグレード
無事に移行できたか???
再構築時間は確かに短くなった。元々サーバが非力なのであまり恩恵にあずかれていない気もするが。

で、mixiがOpenID対応です。
[mixi] mixi OpenID

コメント記入時のサインインでmixi OpenIDを利用するプラグインが早々に公開されているのでチャレンジ
mixiComment | Movable Type プラグインディレクトリ

・・・してみたんだけど上手くいかないな~

OpenIDを検証できませんでした: 入力されたアドレスはOpenIDではありません。
てなメッセージ。
サインインの選択肢にmixiが出てきているので設定は出来てるんじゃないかと思うんだけど・・

追記:
と思ったのだけど、Crypt::SSLeayがインストールされてなかっただけだった・・・
プラグインのREADMEに↓って書いてあった。なんで入れてなかったかなー。

Movable Typeが動作しているサーバーに、Crypt::SSLeayモジュールがインストールされている必要があります。インストールされていないと、mixiにOpenIDでログインしようとした際に、「OpenIDを検証できませんでした: 入力されたアドレスはOpenIDではありません。」というエラーになります。

>>サイトトップへ

address

このアーカイブについて

このページには、過去に書かれたブログ記事のうちotherカテゴリに属しているものが含まれています。

前のカテゴリはmysqlです。

次のカテゴリはoutlookです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.261