ブログ復旧中
サーバーが故障して、ブログの過去のエントリーが失われてしまいました。
Raid1で構成しているディスクの両方がやられたそうです。
ブログのエントリーは、Googleのキャッシュから可能な範囲で復旧させます。
コメントやトラックバックをくださった方、ごめんなさい。
« 2006年07月 | メイン | 2006年09月 »
サーバーが故障して、ブログの過去のエントリーが失われてしまいました。
Raid1で構成しているディスクの両方がやられたそうです。
ブログのエントリーは、Googleのキャッシュから可能な範囲で復旧させます。
コメントやトラックバックをくださった方、ごめんなさい。
松江で勉強会があったら、是非参加したいです。
たとえば、東京や関西でやっているような勉強会(Rubyに限らず)を開催したらどのくらい集まるのかなあ。
松江でソフトウェア開発やってます。
なので、松江で勉強会があったら、是非参加したいです。
初心者向けのRuby講習会にも行きましたが、 やっぱりもっとレベルの高い話を聞きたい。
期待しています。
追記: トラックバックの送信が失敗する。後で調べる。
ブログ目次作成ソフト Blomoku は、ブログの目次を作成するソフトウェアです。
おもしろいブログを見つけたとき、このブログのエントリーを最初から全部読みたい、そう思いました。
でも、過去のエントリーに簡単にアクセスする方法がない。
一度読んだあのエントリーをもう一度読みたい、そう思っても、簡単には見つからない。
これでは私も不便だし、それよりも、すばらしいエントリーがもったいない。
そうして、ブログ目次作成ソフト Blomoku の作成を始めました。
とりあえず、動くものができましたので公開します。
まだまだ開発途上のソフトです。
仕様が固まったら、「ブログの種類」の追加方法や、「HTMLテンプレート」の追加方法を公開する予定です。
メソッドの実行結果を受け取り、結果を表示します。
フォームにメモとボタンをを貼り付けます。
Unit1.h の private に次のメソッドを追加します。
__declspec(dllexport) char* (*rb_string_value_cstr)(volatile unsigned long*);
Unit1.cpp の TForm1::TForm1(TComponent* Owner) に次の行を追加します。
rb_string_value_cstr = (char* (*)(volatile unsigned long*))GetProcAddress(hDll,"rb_string_value_cstr");
ボタンのイベントを追加します。
void __fastcall TForm1::Button3Click(TObject *Sender)
{
if (!hDll)
{
Application->MessageBox("msvcrt-ruby18.dll が見つかりませんでした。",
"DLL エラー",
MB_ICONSTOP | MB_OK);
return;
}
//Rubyインタプリタの初期化
ruby_init();
//スクリプトの実行
unsigned long value = rb_eval_string("'実行結果'");
//実行結果の文字列を取得する
AnsiString result = rb_string_value_cstr(&value);
Memo1->Lines->Add(result);
//スクリプトの実行
value = rb_eval_string("File.open('test.rb', 'r' ).read");
//実行結果の文字列を取得する
TStringList* list = new TStringList();
list->Text = rb_string_value_cstr(&value);
Memo1->Lines->Add(list->Text);
delete list;
//Rubyインタプリタのクリーンアップ
ruby_cleanup(0);
}
ボタンをクリックして、メモに「実行結果」と「test.rb」の内容が表示されたら成功です。
WindowsにRubyをインストールする場合、いろいろあって迷ってしまう。
Ruby Binaries(http://ftp.ruby-lang.org/pub/ruby/binaries/)
素のRuby。
環境ごとの最新のバイナリファイルが用意されている。。
インストーラなし。自分でパスの設定などを行う必要がある。
COM Meets Ruby(http://arton.hp.infoseek.co.jp/indexj.html)
COM から使えるRuby。
インストーラ付きで簡単インストール。
VisualuRuby や Exerb など便利ソフトを同封。
RubyInstaller(http://rubyinstaller.rubyforge.org/wiki/wiki.pl)
RubyGems をはじめとする、盛りだくさんの便利ソフトを同封。
インストーラ付きで簡単インストール。
ファイルサイズが大きい。
Apollo(http://www.moriq.com/apollo/)
Delphi の強力なライブラリ VCL が使えるRuby。
インストーラ付きで簡単インストール。
開発環境付き。
松江市立図書館にリクエストしていたGoogle関連の本が届いたので、まとめて読んだ。
ウェブ進化論 本当の大変化はこれから始まる は、ウェブの現在そしてこれからの方向性を高い視点から捉えている。
一方、グーグル―Google 既存のビジネスを破壊する では、羽田空港の駐車場やメッキ工場がGoogleを使ってビジネスを成功に導く話で、身近なテーマからGoogleのもたらした大きな変化をわかりやすく伝えたいる。
Googleをそれぞれ異なる視点から見ていておもしろい。
また、グーグル―Google 既存のビジネスを破壊する はGoogleの負の側面も描いている。
[ザ・サーチ グーグルが世界を変えた][3] は上の2冊とは違い、検索エンジンに関わる会社の栄枯盛衰を描いたノンフィクション。
懐かしい検索エンジンの会社名を楽しみつつ、検索エンジンが社会にもたらす影響の大きさをあらためて確認した。
[3]: http://amazon.co.jp/o/ASIN/4822244873/gesource-22/ref=nosim "ザ・サーチ グーグルが世界を変えた
松江市立図書館にリクエストしていた資格関連の本。
ファイナンシャルプランナーの仕事内容がわかる本。 講師業や執筆業が収入の中心のようだ。 業界が未成熟ということは、そこにビジネスチャンスがあるということ。
税理士の仕事内容がわかる本。
独立開業して特定分野のプロフェッショナルとしての道を選んだ税理士や、会社内でプロフェッショナルとしての道を選んだ税理士など、さまざまなタイプの税理士の仕事を紹介している。
後半に資格試験の学習法があることからも、本書のターゲットがこれから税理士になる人であることがわかる。
こちらの本もさまざまなタイプの中小企業診断士の仕事内容を紹介する。
これらの本を通してわかることは、
資格を生かすも殺すも自分次第。
BDS2006(C++Builder)でActiveXコントロールをインポートする方法です。
ここでは、ScriptControlをインポートします。
メニューから[ファイル]-[新規作成]-[パッケージ]を選択します。
パッケージのプロジェクトが作成されます。
メニューから[コンポーネント]-[コンポーネントのインポート]を選択します。
「コンポーネントのインポート」ダイアログが表示されます。
「タイプライブラリの取り込み」を選択して、「次へ」ボタンをクリックします。
「登録されたタイプライブラリ」から「Microsoft Script Control 1.0」を選択して、「次へ」ボタンをクリックします。
「パレットページ名」に、ツールパレットに登録するパレット名を入力して、「次へ」ボタンをクリックします。
私は「ActiveX」と入力しました。
「Package1.bdsprojプロジェクトにユニットを追加」を選択して、「完了」ボタンをクリックします。
「プロジェクトマネージャ」(IDEの右上に配置されているウィンドウ)の「Package1.bpl」を右クリックして、「インストール」を選択します。
プロジェクトがビルドされた後、コンポーネントが登録されます。
BDS2006(C++Builder)でツールパレットに登録しないでActiveXコンポーネントを使用する方法です。
例としてScriptControlを使用します。
メニューから[ファイル]-[新規作成]-[VCL フォームアプリケーション]を選択します。
新しいプロジェクトが作成されます。
メニューから[コンポーネント]-[コンポーネントのインポート]を選択します。
「コンポーネントのインポート」ダイアログが表示されます。
「タイプライブラリの取り込み」を選択して、「次へ」ボタンをクリックします。
「登録されたタイプライブラリ」から「Microsoft Script Control 1.0」を選択して、「次へ」ボタンをクリックします。
「ユニットディレクトリ名」にユニットを保存するディレクトリを選択して、「次へ」ボタンをクリックします。
「パレットページ名」は、パレットに登録しないので「(none)」のままにしました。
「Project1.bdsprojプロジェクトにユニットを追加」を選択して、「完了」をクリックします。
以上で、準備ができました。
フォームに TEdit と TButton を貼り付けて、TButton のクリックイベントを記述します。
#include "MSScriptControl_OCX.h"
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TScriptControl* sc = new TScriptControl(this);
sc->Language = "VBScript";
Edit1->Text = VarToStr(sc->Eval(WideString("FormatDateTime(Now())").c_bstr()));
delete sc;
}
TEditに現在の日時が表示されます。
松江市立図書館にリクエストしていたのが届きました。
流し読みをした印象です。
前半はペアプログラミングとテストファーストで開発していくストーリーです。
後半では、機能別に解説があります。
テストファーストで開発するストーリーはいいですね。
テスト方法についての解説があるのは、実際に開発するときに参考になります。
Railsに限らず、フレームワークの解説書でテスト方法について述べている本は少ないと思います。
テスト方法がフレームワークに組み込まれているRailsの魅力を上手に引き出しています。
本書のターゲットとしているユーザー層は、Railsを使ったことがない人でしょう。
タイトルもぴったりですね。
これからRailsに挑戦したいと思っている人にはぴったりの一冊です。
ライド・オン・Rails Ruby on Railsを徹底攻略
松江市立図書館にリクエストしていたのが届きました。
流し読みをした印象です。
難易度は はじめよう Ruby on Rails よりも高めのようです。
最初の一冊目としては難しそう。
はじめよう Ruby on Rails を読んだ後にこちらを読むといいでしょう。
最初のチュートリアルはかなり急ぎ足の印象。
中盤の実践レシピ編、後半の応用レシピ編は、実際の開発でお世話になりそう。
特に日本語の扱い方やエンタープライズRailsなどは、貴重な情報源。
[ブログ目次作成ソフト Blomoku 0.2.0]1 を公開しました。
カテゴリーの処理を変更しました。
人気サイトで動作を確認して、大きな問題がないようなので、現在の仕様を公開しました。
ブログ設定情報ファイルの仕様 には、動作確認を行ったブログの設定情報と、プロジェクトファイルを公開しました。
これで大きな問題がなければプログラムの方は完了として、ヘルプファイルやサンプルファイルなどの用意を行います
Java 2 Platform Standard Edition 5.0 の互換性 に、J2SE 5.0(1.5のこと?)と過去のバージョンとの互換性についての記述があります。
中には結構やっかいなものがあって、
- 仮想マシン - これまで、クラスリテラル (Foo.class など) を評価するとクラスが初期化されました。5.0 では初期化されません。前の動作に依存するコードは書き直す必要があります。
これなんかは、一見ちゃんと動いているように見えるけど、初期化処理が行われていないため、予期せぬエラーに悩まされてしまうかもしれない。
プログラム言語のバージョンアップって難しい。
Vine Linux 3.2 に FastCGI をインストールする。
ターゲットの環境は、Vine Linux 3.2。 Apacheのバージョンは、1.3.33。
FastCGIのサイトから、fcgi-2.4.0.tar.gz と mod_fastcgi-2.4.2.tar.gz をダウンロードする。
fcgi-2.4.0.tar.gz を展開してインストールする。
tar xzvf fcgi-2.4.0.tar.gz
cd fcgi-2.4.0
make
make install
mod_fastcgi-2.4.2 をインストールするのに必要な apxs をインストールする。
apt-get install apache-devel
mod_fastcgi-2.4.2.tar.gz を展開してインストールする。
tar xzvf mod_fastcgi-2.4.2.tar.gz
cd mod_fastcgi-2.4.2
apxs -o mod_fastcgi.so -c *.c
apxs -i -a -n fastcgi mod_fastcgi.so
httpd.conf の次の行を編集して、mod_fastcgi.soの設置場所を変更する。
#LoadModule fastcgi_module lib/apache/mod_fastcgi.so
LoadModule fastcgi_module modules/mod_fastcgi.so
httpd を再起動して、正しく起動することを確認する。
/etc/rc.d/init.d/httpd restart
追記:
fcgiのインストールは不要かも。
経済学的思考の本質は、人々のインセンティブという観点からものごとを見直すという点にある。
本書では、さまざまなデータを経済学的思考で考察する。 そういう点では、ヤバい経済学 と似ている。
取り上げている話も興味深いものが多い。 たとえば、身長プレミアム。
学歴、勤続年数、企業規模などが同じであったとしても、一センチ身長が高くなると時間あたり賃金は約0.8パーセント高くなるという身長プレミアムが観測された。
10センチの身長格差は8パーセントの賃金格差を生むという。
他にも、美人の経済学。
学歴や年齢などの要因をコントロールしても、「美男美女」は「不器量」な人よりも高い賃金を得ている
プロ野球監督ランキング。
勝率引き上げ能力順位の上位には、鶴岡、西本、川上、広岡、森、仰木、星野といった一般に名監督として評価が高い監督が含まれている。 一方、2003年で解任された原監督は2シーズンだけの結果とはいえ、かなりの名監督であったと評価できる。
プロ野球には詳しくないのだが、こういうランキングはおもしろい。
VMWare Server で次のようなエラーメッセージが出た。
There was a problem connecting:
511 vmware-serverd service is not running.
原因は VMWare Registration Service が起動していないため。
対処方法(Windows 2000の場合