2009年8月17日月曜日

EeePCの容量、限界です

私の愛機EeePC 901-Xですが、Cドライブの容量が限界です。何を思ったか、開発にも耐えられるようにソフトを入れまくったせいで、空き容量0なんて数字を見ることも…。

VisualC#、SpeechSDK、XNAのインストールでかなり苦しい状態です。今日は、AVGの設定をいじりました。

メニューの「ルール」→「高度な設定」→「アップデート」→「管理」にある”一時アップデートファイルを削除”
をすることで40MBほど確保できました。まだ足りない。

2009年7月26日日曜日

花火

先日、隅田川花火大会に行ってきました。写真は残念なことになっていたので割愛。

最初、遠くで見ていたときは特に何も思わなかったのですが、近くに移動するにつれて面白いと思うようになってきました。花火の動きとか。

気に入ったのは、一度爆発した後、分裂した光が加速度を持って様々な方向に動くやつ(文章で説明しにくい…)。プログラマ(特にゲーム方面)の目で見てしまうので、これって再現してみたいなぁ、とか思ったり。

2009年5月25日月曜日

Monoにはまる

今作っているアプリ(コミケのカタログブラウザとか、デスクトップアクセサリとか)をLinuxでも動かそう、なんて思ったのが間違いでした。

現在の開発はVisualC#2008Expressで行っているのですが、MonoなるものをLinux上に導入すると、Windows上でコンパイルしたプログラムがそのままLinuxで動く、らしい。が、実際にはOSの違いやMonoで実装されている機能を意識しないと正しく動いてくれません。

たとえば、Windowsではパスを\で区切りますが、Linuxでは/です。ファイル名を直接プログラム上に書いちゃうと動いてくれません。また、Monoでは全てのライブラリがLinux上に実装されているわけじゃないので、Monoで動くメソッドとか気にしないといけません。

さらに、実装されていてもWindowsと挙動が違う場合があります(多分、GUI関連とか多そう)。あ、当然ながらWindowsAPIを直接叩いてるプログラムもアウトです。

いや~、この縛りプレイ?(縛りプログラミング?)が思いの外厳しい。簡単なプログラムなら楽にマルチプラットフォームを実現できるのですが、凝ったアプリになると途端にうごかな~い。実際には、上記以外にも色々色々色々めんどくさいので、ちょっと諦めモード。

2009年5月17日日曜日

コミケのカタログブラウザ

何を思ったか、コミケのカタログブラウザ作ってます。元々、公式のブラウザが使いにくいと思っていたし、データの保持にSQLiteを使っていると知ったので、SQLの勉強を兼ねて手を出してみました。



SQL怖い…。私はDB関連は全くスキルがないので、進まない進まない。クオート書き忘れに気づくまで3時間くらい潰したり、文字コードの変換が出来なくて数時間悩んだり。

コミケのカタログはSQLiteのバージョン2系なのですが、C#のライブラリからSQLiteを使う場合バージョン3系じゃないといけません。また、文字コードにUTFを使うので、文字コードの変換も必要です。DBの元データもあるので、自力でInsertでもしようとしたのですが、これも無理…。

結局、sqlite.exeとsqlite3.exeのコマンドを使ってDBの変換をすることにしました。SQLiteはパブリックドメインらしいけど、このexeも同じなのかしら?これ使えないとアプリの配布は無理そうだなぁ。


しかし、画像が寂しい。

2009年5月11日月曜日

Windows7RCをVMwareで実行

以前にもWindows7のβ版をVMwareにインストールしましたが、今回はRCです。インストール手順はβ版とほぼ同じで


  1. qemuでVMwareのディスクイメージ作成
  2. β版で使用したvmxを再利用(ファイル名だけちょこっと修正)
  3. Windows7RCをインストール
  4. VMware Toolsをインストール
  5. ネットワークドライバ、サウンドドライバをインストール
  6. WindowsUpdate実行
  7. AVG Anti-Virusをインストール
大まかにはこんな感じ。相変わらずAeroが使えないですが、動作が軽くなるだろうから良し。
ただ、今回はVMwareのサスペンド機能が使えなくて困った。右上の×をクリックしても~スクリプトのエラー?とかでサスペンドできない。結局、VMware Tools内のスクリプトファイルを修正することで無事機能するようになりました。VMware, VMipでググると解決方法がわかるはず。

さて、ここまではどうでもいい話。今回びっくりしたのは、音声認識周りについて。
前回はVMwareとの相性のせいか、使用するアプリのせいか不明だが、音声認識が不調だった。今回、試しに自作のアプリ(音声認識機能を搭載)を実行したところ、特に何の設定もしていないのに、一発でアプリが動作しました。「メモ帳」と喋ると、ちゃんとメモ帳が起動する…。こんな感じ。

.NETを使っているし、Vistaから音声認識エンジンが標準搭載なので、通常インストールなら納得です。しかし、VMware上で、こうもあっさりと動くとは。

2009年5月1日金曜日

firefox…

GWですよ!

firefoxのバージョンが3.0.10になりました。3.0.9でクラッシュするバグがあったようで、かなり早い更新でしたね。確かに、3.0.9にしてから調子が悪かった気がする。

でもさ、3.0.10にしたらWebの表示が出来ないページが多数。エンコードをしくじっているのか分からないけど、エラーが出て表示できなかったり、不思議な文字で埋め尽くされた表示になったり。

はい、使い物になりません。実際にはプラグインのバージョンも同時に上げているので、本体が悪いのかプラグインが悪いのか分からない。新しいプロファイルを使うと表示出来るっぽいので、プラグインが悪いのかな?

どちらにせよ、また環境を構築するのは嫌です。これで何回目なんだ。今後はchromeとIE8のコラボでいきます。(といいつつ、また再インストールして使うんだろうなぁ…)

2009年4月23日木曜日

F#はじめました

ここ暫く新しい言語を学んでいないことに気付いたので、F#なんぞ勉強しています。最近、関数型言語の重要性を感じつつも、いざ勉強しようとするとGoodな言語が見つからない、って状態でした。

有名な言語はたくさんあるのですが、正直、実用性の面から全部却下してました。C#に関数型言語の機能が色々追加されているので、勉強はしたい。でも、実用的じゃないとダメなんです。関数型言語の解説を見てもアカデミック?な話ばかりで。アプリケーション開発にとって美味しいの?って思っていました。

優れた言語≠実用的な言語だと私は考えています。そこで見つけたのがF#。この言語、時期VisualStudioで採用される予定の関数型言語らしいです。.NET上で動き、慣れ親しんだライブラリも使えそう。さらに、C#との連携もできるので、F#に向いた処理をライブラリ化して、C#から呼び出すこともできる。実用までのハードルがかなり低そうです。

そんなわけで勉強中。以前(3年くらい前)、Haskellをちょこっとかじっただけなので、関数型言語に苦戦してます。とりあえず、F#で作ったクラスをC#から呼び出すまでは成功。

先は長い。

2009年3月22日日曜日

IE8をインストールしてみた

先日正式版のIE8が公開されたので、早速インストールしてみた。なんて無謀なんだ、自分。

新機能にはあまり興味が無いので、主に処理速度に関して。速くなってます。そもそも、IE7が遅すぎた印象もありますが。今のところの体感速度は、chrome>IE8>Firefox3でしょうか。もっとも、Firefox3は拡張を入れまくっているので、素の状態だとどうなんだろ?

次に、HTMLの表示を見てみました。とりあえず、自分が作っているサイトで表示崩れが無いかチェック。結果、1カ所だけ表示が崩れたものの、それ以外は問題なさそう。CSS2の対応具合も良好。後は、CSS3の対応をどうするか…。結局、IE8のために、HTMLとCSSの書き換えは必要そうですな。

とりあえずインストールしただけなので、今日はここまで。近いうちに、ウェブサイトのIE8対応でもしようかな。

2009年3月2日月曜日

XNAはじめました

ゲーム作りたくなったので、おもむろにXANをいじってみた。…あまりにも簡単にゲームが作れるようになっていたので驚愕。DirectX SDKとVC++でプログラミングしていたときは、ウインドウ一つ出すにも苦労していたのに。時代は変わったねぇ。

これなら簡単なSTGくらいは作れそうだ。最近横道にそれまくっているなぁ。

2009年2月9日月曜日

ソフト作成、どうしよ

何だかんだで、今作っている音声認識アプリはvistaじゃないと使い物にならない、という結論に。で、vistaには最初から高機能な音声認識アプリが搭載されている、と。

オリジナリティのあるギミックを考えないと、作る意味なくなりました。非常にぐんにょりです。

2009年2月7日土曜日

divタグにやられる

HTMLのデザインでハマってました。どうしてもレイアウト崩れが直らず、floatの設定をずっと疑っていたのですが、実はダミーのdivタグが原因でした。

<div class="clear" />

とかやるとダメらしく、ちゃんと

<div class="clear"></div>
としないといけなかった。

これで3時間くらい消えましたとさ。

2009年2月3日火曜日

ぐんにょり開発中

どんな状態だ?と、自己つっこみをいれつつ、相変わらず音声認識。

調べていくうちに、今作っている音声認識アプリはVista以外では役に立ちそうもないことが分かってきた。Vistaに搭載されているのはSAPI5.3。それに対し、XPで使用できるのはSAPI5.1。このわずかな数字の間にはとても大きな壁があるんです。

今のところ、誤認識を避ける方法として、認識した結果の信頼値を判定しています。認識したものの、信頼値が低い場合には判定失敗、とすることで正確な判定を実現しています。ところが、どうもこの値はSAPI5.1では常に-1が返ってくるらしい。

この値を利用しないと、誤認識が酷いんです。逆に、現在Vistaでは音楽(歌詞あり)を聞きながらでも安定して音声認識が実現できています。音楽聞きながら仕事してるとき、"メモ帳"と喋るとメモ帳が起動します。XPだと、知らない間にメモ帳がたくさん起動している!となりかねません。

地味に音声認識もパワーアップしているんですね。というか、正直このレベルでやっと使い物になる、という感じですが…。さて、対象OSをVistaに絞ると、誰もこのアプリ使ってくれないよねorz

2009年2月2日月曜日

音声認識アプリ

隙を見て作ってます。複数エンジンの切り替えとか、プラグイン機能とか色々やろうとしたら、複雑になりすぎた。メンテできないので、シンプルに作り直しました。もとい、やっつけコーディング!


最初の時点で汎用性を意識するのも大切だけど、そのせいで逆に苦労していたら話にならない。最初の設計段階であらゆる可能性を考慮出来る訳じゃないのだから。作れる範囲で作っていくしかない、か。

現在、こんな感じ。

2009年1月25日日曜日

PHPやろうかな?

HDDを漁っていたら、数年前にPHPで作ったGTD用ツールが見つかった。懐かしい。そういえば、GTDをやるためのアプリを色々試してみたけど、結局どれもしっくりこなかった。結局、自分で作った方が早いらしい。

PHPを再勉強したいと思っていたので、これを題材にしようかな。どうせ自分専用にしか作らないし、お手軽でいいかも。

2009年1月21日水曜日

PHP使おう

WebサイトをAptanaStudioで作っていると、ヘッダーやフッターなどの全ページで共通するコードのメンテナンスが非常に面倒です。Dreamweaverならテンプレート?という機能を使えるらしいですが、残念ながら持っていません。

そろそろHTMLのみでメンテナンスするのも限界かな?ということで、PHPの導入を考えています。これなら、includeを使えば共通するコードは1カ所にまとめられます。そんなわけで、PHPを利用できるように環境の構築を行っていました。

結果、ほぼ1日を費やすという形で何とかなりました。見た目は何も変わってないけど、だいぶ作業しやすくなった、はず。

2009年1月14日水曜日

window7に思うこと

なんか変にブログのアクセスが増えたと思ったら、windows7とvmwareで検索かける人が多いんですね。ごめんなさい、ろくな情報が無くて。懇切丁寧な説明って面倒なんで。

で、わざわざwindows7をvmwareに入れるくらいだから、この辺りの人は私と同類の物好きなのでしょう。でも、世間でのwindows7への期待度の大きさは何なのだろうか?それとも私、ネットの情報に踊らされてる?

ま、vistaが失敗作とか言ってる人の言い分も分からなくはない。実際、私もvista使っていて腹が立つこと多いし。だけど、vistaとwindows7って、そんなに違うの?ネット見た感じ、細かい不満点は解消されそうだけど、そもそもそんなのvistaを使わない理由としては弱いものばかりな気がする。
結局、そういう人はXPで十分なんじゃなかろうか?これ、windows2000の時も言って気がするけどねぇ。

ちなみに、私はXPにはもう戻りたくない人です。vista、悪くないですよ?Mな人には(おい

冗談はさておき、タスクバーにカーソル合わせるとウインドウのサムネイルが出るとか、地味な部分で便利なところもあるし、やっぱりXPには戻るつもりはありません。

それと、開発者視点では最新の機能が使えるOSは常に魅力の的だと思います。今はまっている音声認識のプログラムもvistaじゃないと使えない機能があるし。で、windows7ではマルチタッチが気になってます。あ~、はやく.netFraamework4使ってみたいなぁ。

結論、使いたいOS使えばいいじゃん。

2009年1月13日火曜日

Speech Commander設計からやりなおし?

音声認識の精度を高めるために色々と策を練っているけど、どうやら今の設計では実現出来そうもない。ぐわ~、クラス設計からやり直しだ。去年の11月くらいの段階で、もうすぐベータ版公開とか言ってたけど、全然ダメじゃん。

しかも、Vistaじゃないと使えない機能があるから、EeePC向けの開発スタンスも崩れた。うまくいかないね!色々と!

2009年1月12日月曜日

windows7をvmwareで実行してみた

windows7のbeta版が一般公開されたようなので、早速使ってみました。といっても、現在自由に使えるマシンが1台だけなので、直接インストールは不安でできません。(たとえデュアルブートでも)
そこで、vmware上で実行してみました。

ISOのダウンロードはここ からしました。でも、もうすぐ日本語のサイトでも公開されるようなので、急ぎでなければそちらから落とす方がいいかもしれません。

vmware上だとAeroが使えないですが、所詮遊びなの無視。で、インストールはあっさりできました。他のOSと同じ感覚で作業すれば問題ないです。で、動作は結構サクサク。意外だ。

とりあえず、ウイルス対策としてAVG入れて、ネットワークドライバ、VGAドライバ、サウンドドライバを適当に調達すれば、立派に使える状態になりました。

試しにマイクを繋いで、音声認識をやってみました。ダメでした。…、音声の入力と音声認識プログラムの実行はできるのですが、処理が重すぎるのか、CPU使用率が常に100%となり、まともに動作しません。う~ん、残念。

とりあえず動いたし、他にやりたいこともないので、今日はこれで終了。

2009年1月11日日曜日

さよならFirefox

うちのFirefoxが、もうダメだ。実用不能なレベルまで動作が不安定になっている。具体的には、開いたタブが閉じられない、戻るが使えない、リンクが新しいタブで開けないetc。まだIEの方がマシな有様。

再インストールするのも面倒だし、このままchromeに乗り換えようかなぁ。でも、chromeって、キャッシュ周りとかイマイチじゃない?しばらく放置していたタブの読み込みが遅い気が。あと、タブを大量に開くとタスクマネージャがえらいことになるし。

やはり自作ブラウザ、再開するか?

2009年1月5日月曜日

連休終わり

やりたいことの半分もできなかった。コミケの戦利品、まだ半分が未開封…。仕事したくないぴょ。

音声認識のプログラミングも進まないなぁ。現在、認識精度を高めるために色々と弄っているのだけど、VistaとXPで同じプログラムでも挙動が大きく違う部分がある。多分、使用している音声認識エンジンの違いなんだろうけど。今書いている音声認識プログラミング解説、VistaとXPで別扱いしないとダメそうだ。

あ~、絵も描けなかった。pixiv放置中だぁ。

2009年1月4日日曜日

年末年始は忙しい

休み前は、創作活動をガンガン進めるぞ!と思っていたけど、実際は無理無理。
年末

  • PCのパワーアップ(主に地デジ対応)作業でブルースクリーン多発
  • 冬コミ(準備、参加、戦利品消化)←戦利品は時間切れで開封すらしてない…
  • 大掃除
  • 帰省
年始
  • 親戚挨拶
  • EeePCのAptanaStudioが動かなくなったので、帰省先からWeb更新絶望的
  • っていうか、積みゲー消化しないと!
実家から戻るのが1/3の夜中。あとは1/4しか休み残ってないし。何にもできないじゃんか。

2009年1月3日土曜日

今年はどうなる?

今年の抱負。仕事は頑張らない、創作に命をかける。目標、コミケにサークル参加。

さて、去年の夏から思いつきで始めた創作活動ですが、今年は成果を出せるように頑張ってみたいと思ってます。去年は仕事し過ぎでプライベートぼろぼろだったので、今年は息抜きしたい。しかし、創作に命かけるとなると、あまりリラックスもしてられないな。今年は創作で燃え尽きるか?

2009年1月2日金曜日

ERAMでジャンクションを使う

今までEeePCでFirefoxを使っていたのですが、何だか重い。拡張を入れているせいかもしれないけど、ちょっと実用面で不満が出てきた。そこで、軽いブラウザchromeの登場。

登場初期は、軽いだけで機能が少ないとか言っていたのですが、気がつけばchromeを常用してました。ただ、不満の1つとして、キャッシュのフォルダがcドライブになっている点があります。これ、自分で設定できないのですよ。ん~、キャッシュの場所指定ができないって、どうなんだろ?

仕方ないので、ジャンクションというwindowsの機能を使うことで、キャッシュフォルダをcドライブからRAMディスクに移行します。

ジャンクションを利用するには、ここ からダウンロードできるソフトを利用します。詳しいことは、他のサイトで調べるが吉(丸投げ)。RAM、ジャンクションとかでググれば色々でてきます。

ただ、私が使っているERAMで作成したRAMディスクをジャンクションのリンク先として指定しても、エラーが発生して使えませんでした。色々試してみると、どうやらERAMの設定で”実デバイス扱い”のチェックを入れないとジャンクションが使えない模様。これにはまった。

今は安定してRAMディスク上にキャッシュが生成されています。これで、cドライブのSSDに負荷をかけずに済みます。よかった。

2009年1月1日木曜日

あけましておめでとう

新年です。今年はアプリの開発やら、同人活動やら色々とチャレンジしていきたいですね。