ムスメの首もすわってきて、ちょっとずつ外出できるようになってきた。
#といっても、基本的には葛飾近辺をウロウロしているだけが。
カミさんと近所を散歩して新発見を地図で確認するのが意外と楽しい。区役所で貰った葛飾区地図はとても役に立つが、家で調べるならGoogleマップが結構楽しい。
ちょっと前まで航空写真が古く我が家のある場所は駐車場だったりしたが、現在は我が家の屋根と21世紀の環境配慮型スーパー・エコ車両(←自転車)が写っているのを確認。
#いったいいつ撮っているのだろう?
ちょっとした店などにはレビューが充実してきて、随分と役に立つ情報が上がるようになってきた。ちょっと面白いのが、「ルートを検索」する機能。
キーワードや住所を入力すると、出発地点からゴール地点まで地図で辿れるのだ。交通機関(電車や飛行機)を利用する場合は時刻や料金まで出るので結構感動する。
でも、笑えるのは歩くコース。
妙なカーブで目的地(中継地)まで線で書かれる。我が家から葛飾区役所へ行くには橋の無い中川を突っ切って進む男らしいルート(爆)。
3歳のムスコでも橋を渡るように線を引けるのに、その辺はまだまだ改良の余地があるみたい。
そんな「すごい」んだか「まだまだ」なんだか分からないGoogleマップ。
次の進化が楽しみだ。
2008年01月15日
2007年11月21日
AndroidのSDK
気になっていたAndroidのSDKを落としてみた。
エミュレータも付いていて、起動してみると、ごついPDAのような画面が起動して、mapを選択するとgooglemapがエミュレータの中で動くのが分かった。
Eclipse用のプラグインも用意されていて、統合開発化環境での開発も視野に入っているよう。
Androidで作られた携帯を持っているわけではない(というかまだ世に存在しないし…)ので、今すぐ何か作ろうという創作意欲は湧かないが、環境が揃っているのでちょっと面白そうだ。
#要はAndroidより今はMacで遊ぶのに夢中なので、それどころではないだけなんだけど…。

Eclipse用のプラグインも用意されていて、統合開発化環境での開発も視野に入っているよう。
Androidで作られた携帯を持っているわけではない(というかまだ世に存在しないし…)ので、今すぐ何か作ろうという創作意欲は湧かないが、環境が揃っているのでちょっと面白そうだ。
#要はAndroidより今はMacで遊ぶのに夢中なので、それどころではないだけなんだけど…。
2007年11月09日
うっ!ヒョ〜ウ(豹)
(…沈黙)
いきなりの親父ギャグを恥ずかしげもなく、口に出して開き直れるくらいテンションは高揚中。
#30過ぎのオッサンに酒が入ると、大抵こんなもんだ。
昨日ようやくMacOS10.5(Leopard)がApple Storeから届いた。
先月の26日にはアップデート用DVDの申し込みをしていたのだから、結構待ったと思うが…。
今週の頭には『配送の手配が完了しました』メールを受けていたので、前半に抱えているタスクをすべて終わらせて、Leopardの到着に備える万全体制に入る。
…かと思われたが、前世の徳が少なかった(?)のか、そんなスケベ心が見透かされたのか、ここ数日急ぎの仕事が次々と差し込まれ、見事にブロックされてしまった(ガッカリ)。
そんな訳で昨日はインストールして、なんとなく触っただけで終了。
それならと、今日は
(仕方が無い。来るならこいや。端から片付けちゃる!)
とエンジニア魂をみせ、奮闘!(稀に見る)集中力を発揮!!
#ちょっとかっこいい(自画自賛)
…したが、都合よく奇跡が起こる訳は無く、今日も帰宅が遅くなってしまった。
#やっぱり。修行不足…だ…ね。
でもイイのだ。
酔っ払ってニマニマしながら白いマシンの電源を入れて、なんとなく触っているだけで、満足させてくれるんだから、Macはスゴイ。
唯一気になるのは、Leopardテーマ(宇宙でピヵァ〜)?のデザイン。
#ちょっとやり過ぎ…。
それでもやっぱりイイのだ。
#ちょっと浦霞飲み過ぎたかな…。変なテンション。
いきなりの親父ギャグを恥ずかしげもなく、口に出して開き直れるくらいテンションは高揚中。
#30過ぎのオッサンに酒が入ると、大抵こんなもんだ。
昨日ようやくMacOS10.5(Leopard)がApple Storeから届いた。
先月の26日にはアップデート用DVDの申し込みをしていたのだから、結構待ったと思うが…。
今週の頭には『配送の手配が完了しました』メールを受けていたので、前半に抱えているタスクをすべて終わらせて、Leopardの到着に備える万全体制に入る。
…かと思われたが、前世の徳が少なかった(?)のか、そんなスケベ心が見透かされたのか、ここ数日急ぎの仕事が次々と差し込まれ、見事にブロックされてしまった(ガッカリ)。
そんな訳で昨日はインストールして、なんとなく触っただけで終了。
それならと、今日は
(仕方が無い。来るならこいや。端から片付けちゃる!)
とエンジニア魂をみせ、奮闘!(稀に見る)集中力を発揮!!
#ちょっとかっこいい(自画自賛)
…したが、都合よく奇跡が起こる訳は無く、今日も帰宅が遅くなってしまった。
#やっぱり。修行不足…だ…ね。
でもイイのだ。
酔っ払ってニマニマしながら白いマシンの電源を入れて、なんとなく触っているだけで、満足させてくれるんだから、Macはスゴイ。
唯一気になるのは、Leopardテーマ(宇宙でピヵァ〜)?のデザイン。
#ちょっとやり過ぎ…。
それでもやっぱりイイのだ。
#ちょっと浦霞飲み過ぎたかな…。変なテンション。
2007年11月05日
redMine 0.6.0リリース近し
ちらっとredMineの本家を覗いてみたら、version 0.6.0用のタグが打たれていたので、リリース直前のようだ。
ちょくちょくリポジトリから最新版を取得して使ってみていたのだが、画面レイアウトが0.5.1から大きく変更されている。慣れると、無駄な操作が少ない新しいデザインの方が好み。
Wikiも目次が付けられるようになったり、リンク切れの表示が分かるようになったりと着実にレベルアップ。
日本語のWikiのページが削除できなかったり、pdf出力が変だったのも直っていた。
しかし目玉はRails enginesによるプラグイン拡張がサポートされたことだ思う。Tracに比べると、拡張性がイマイチだなあと感じていたのが解消されるかもしれない。
正式リリースが楽しみ。
ちょくちょくリポジトリから最新版を取得して使ってみていたのだが、画面レイアウトが0.5.1から大きく変更されている。慣れると、無駄な操作が少ない新しいデザインの方が好み。
Wikiも目次が付けられるようになったり、リンク切れの表示が分かるようになったりと着実にレベルアップ。
日本語のWikiのページが削除できなかったり、pdf出力が変だったのも直っていた。
しかし目玉はRails enginesによるプラグイン拡張がサポートされたことだ思う。Tracに比べると、拡張性がイマイチだなあと感じていたのが解消されるかもしれない。
正式リリースが楽しみ。
2007年10月11日
Subversionのプロパティ
最近は開発作業を依頼されることが増えて、ちょっと放置状態であったドキュメント管理だが、Subversionの機能にユーザプロパティを追加して自由に値をセットできることを教えてもらったので、それを使って何か出来ないかを考えていたりなんかする。
とりあえずSubversionを理解するために購入した手元の本を開くと、ソースファイルにコードレビューのチェック属性を追加して、レビューした人の名前をどんどん設定していくとような例が載っていて、「なるほど(でも実践しなさそう…)」等と言うどうでもいい感想と共に無い知恵を絞ってみる。
とりあえず有効そうなのは、文書の構成管理をするために必要な属性を付与すること。
開発をすると設計書やら調査メモやらテスト及びその結果など様々な文書が作られる。大体業務単位で開発担当者が割り当てられることが多いので、同じ人(もしくはチーム)でこれらを作ることが割りとある。そのため文書としては業務単位でフォルダーなんかにまとめられると扱いが楽なのであるが、納品物として文書をまとめる時は、開発工程ごとにかき集められるので、この棚卸作業が正直面倒だと感じたことが過去にある。
これらの文書をSubversionで管理する際に、基本的なディレクトリ構成は業務単位で文書作成者の主体である担当者が作業しやすい構成にしておく。ただ文書ごとに納品に関わるような開発の成果物(&証拠物件?)的性格を持つものに関しては、構成管理的側面から見た属性を付与して、いざと言う時にかき集めやすいような仕掛けを用意するというアイディア。
これはなかなかよさそうだ。
ただSubversionの機能を調べていて残念に思ったのは、設定した属性をフィルターに使ってファイル集合を生成する機能がなさそうだということ。上記のアイディアを生かすなら、自前でバージョン管理されているファイル集合すべてに対して、属性を確認して目的とする集合を作り出さなければならないようだ。
#まあ文書管理しているディレクトリーに対して、再帰的にチェックするスクリプトを一つ書けばいいだけなのだが、せっかくのプロパティを追加できるのに、これを積極的に利用する機能が無いなんて、もったいない感じがする。
とりあえずSubversionを理解するために購入した手元の本を開くと、ソースファイルにコードレビューのチェック属性を追加して、レビューした人の名前をどんどん設定していくとような例が載っていて、「なるほど(でも実践しなさそう…)」等と言うどうでもいい感想と共に無い知恵を絞ってみる。
とりあえず有効そうなのは、文書の構成管理をするために必要な属性を付与すること。
開発をすると設計書やら調査メモやらテスト及びその結果など様々な文書が作られる。大体業務単位で開発担当者が割り当てられることが多いので、同じ人(もしくはチーム)でこれらを作ることが割りとある。そのため文書としては業務単位でフォルダーなんかにまとめられると扱いが楽なのであるが、納品物として文書をまとめる時は、開発工程ごとにかき集められるので、この棚卸作業が正直面倒だと感じたことが過去にある。
これらの文書をSubversionで管理する際に、基本的なディレクトリ構成は業務単位で文書作成者の主体である担当者が作業しやすい構成にしておく。ただ文書ごとに納品に関わるような開発の成果物(&証拠物件?)的性格を持つものに関しては、構成管理的側面から見た属性を付与して、いざと言う時にかき集めやすいような仕掛けを用意するというアイディア。
これはなかなかよさそうだ。
ただSubversionの機能を調べていて残念に思ったのは、設定した属性をフィルターに使ってファイル集合を生成する機能がなさそうだということ。上記のアイディアを生かすなら、自前でバージョン管理されているファイル集合すべてに対して、属性を確認して目的とする集合を作り出さなければならないようだ。
#まあ文書管理しているディレクトリーに対して、再帰的にチェックするスクリプトを一つ書けばいいだけなのだが、せっかくのプロパティを追加できるのに、これを積極的に利用する機能が無いなんて、もったいない感じがする。
2007年09月06日
Subversionとapacheを連携
台風が来ている。
#明日の朝の通勤時間がちょっと心配。
またもやredMine絡みのネタ。
redMineにはリポジトリブラウズ機能があって、プロジェクトごとにリポジトリを設定できる。対応するバージョン管理ソフトもSubversion、CVSなど複数選択できて充実している。
今のプロジェクトで使っているのはSubversionなのだが、redmineではsvn+sshというお手軽アクセス設定がリポジトリに対してできないのがちょっと不満。
#ちなみにSubversionのアクセス手段は、svn,file,http,https,svn+sshと豊富に用意されていて、ローカルにあるリポジトリならfileアクセスが楽でいい。
今回、別のサーバのリポジトリをアクセスする必要があったので、fileアクセス以外を検討することに。ssvnserveを使ってサーバを立てるのもいいが、せっかくなのでapacheを使ってhttpでアクセスすることにした。
#apacheを既に使っていたし、別のプロセスをサーバに常駐させたくなかったのも決め手になった。
Subversionとapacheを連携するのに必要となったのは、subversionとapacheを連携させるためのモジュール mod_dav_svn である。ヘタレなので、yumを使ってインストール。
# yum install mod_dav_svn
まずは基本設定をして動作を確認することに。
インストール後、/etc/httpd/conf.dディレクトリ配下に mod_dav_svn 用の設定ファイルsubversion.confが作成されるので、そこにロケーションとリポジトリのパスを記述する。
追加したのは以下の一文。
<Location /svnrepos>
DAV svn
SVNPath /home/yagizo/svnrepos
</Location>
あとはapacheを再起動して、ブラウザ上から設定したロケーションにアクセス。リポジトリがブラウズできたら設定OK。
上記の設定だけだとノーガードですべての訪問者を受け入れてしまうので、セキュリティ的に不安である。なのでBasic認証機能くらいは有効にしておこう。
というわけでセキュリティ設定。
まずapache付属のツール htpasswd で認証ファイルを作成。
$ htpasswd -c -m /path/to/svnrepository/conf/htpasswd targetuser
New password:
Re-type new password:
Adding password for user targetuser
次に以下のように/etc/httpd/conf.d/subversion.confを再編集する。
<Location /svnrepos>
DAV svn
SVNPath /path/to/svnrepository
AuthType Basic
AuthName "subversion repository"
AuthUserFile /path/to/svnrepository/conf/htpasswd
Require valid-user
</Location>
またまたapacheを再起動して、ブラウザ上から設定したロケーションにアクセスして認証ダイアログが表示されたらOK。一応ユーザ&パスワードを入力してリポジトリブラウズできることも確認しよう。
#明日の朝の通勤時間がちょっと心配。
またもやredMine絡みのネタ。
redMineにはリポジトリブラウズ機能があって、プロジェクトごとにリポジトリを設定できる。対応するバージョン管理ソフトもSubversion、CVSなど複数選択できて充実している。
今のプロジェクトで使っているのはSubversionなのだが、redmineではsvn+sshというお手軽アクセス設定がリポジトリに対してできないのがちょっと不満。
#ちなみにSubversionのアクセス手段は、svn,file,http,https,svn+sshと豊富に用意されていて、ローカルにあるリポジトリならfileアクセスが楽でいい。
今回、別のサーバのリポジトリをアクセスする必要があったので、fileアクセス以外を検討することに。ssvnserveを使ってサーバを立てるのもいいが、せっかくなのでapacheを使ってhttpでアクセスすることにした。
#apacheを既に使っていたし、別のプロセスをサーバに常駐させたくなかったのも決め手になった。
Subversionとapacheを連携するのに必要となったのは、subversionとapacheを連携させるためのモジュール mod_dav_svn である。ヘタレなので、yumを使ってインストール。
# yum install mod_dav_svn
まずは基本設定をして動作を確認することに。
インストール後、/etc/httpd/conf.dディレクトリ配下に mod_dav_svn 用の設定ファイルsubversion.confが作成されるので、そこにロケーションとリポジトリのパスを記述する。
追加したのは以下の一文。
<Location /svnrepos>
DAV svn
SVNPath /home/yagizo/svnrepos
</Location>
あとはapacheを再起動して、ブラウザ上から設定したロケーションにアクセス。リポジトリがブラウズできたら設定OK。
上記の設定だけだとノーガードですべての訪問者を受け入れてしまうので、セキュリティ的に不安である。なのでBasic認証機能くらいは有効にしておこう。
というわけでセキュリティ設定。
まずapache付属のツール htpasswd で認証ファイルを作成。
$ htpasswd -c -m /path/to/svnrepository/conf/htpasswd targetuser
New password:
Re-type new password:
Adding password for user targetuser
次に以下のように/etc/httpd/conf.d/subversion.confを再編集する。
<Location /svnrepos>
DAV svn
SVNPath /path/to/svnrepository
AuthType Basic
AuthName "subversion repository"
AuthUserFile /path/to/svnrepository/conf/htpasswd
Require valid-user
</Location>
またまたapacheを再起動して、ブラウザ上から設定したロケーションにアクセスして認証ダイアログが表示されたらOK。一応ユーザ&パスワードを入力してリポジトリブラウズできることも確認しよう。
2007年09月04日
Railsとapacheの連携
プロジェクトで使い始めたRedmineの信頼性を高めるためにapacheと連携させることに。
#RedmineはRuby on Railsで書かれているのだ!
最近のRailsとapacheの連携でホットな話題と言えば、Mongrelのようだが、稼動させているrubyのバージョンが古くて断念。結局FastCGIを使って連携した。
#最近rubyの1.8.5系と1.8.6系の壁にぶつかることが多いが、このマイナーバージョンの差に何があるのだろう?
さっそく家の環境でも構築。
apche + FastCGI + Redmine(Rails)という構成になる。
FastCGIというのは、CGIの動作方法の仕様の一つで、プロセスをメモリ上に常駐させてプログラムの実行速度の向上させるもの。基本的に常駐するサーバの役割とそれにアクセスするためのクライアントモジュールが必要となる。
というわけで、FastCGIはapache用のモジュールとRuby用のモジュールを追加インストールした。
#と言ってもFedoraなので楽チン♪
[Ruby用のモジュールのインストール]
# gem install fcgi -y
[apacheに入れるモジュールのインストール]
ちなみにapache 連携用のモジュールはmod_fcgidとmod_fastcgiの2系統が存在する。どちらも役割は同じなのだが、設定の記述が異なるので注意が必要。今回はmod_fcgidを使った。
yum install mod_fcgid*
[apacheの設定]
インストールが終わったら、apacheの設定。
mod_fcgidの設定は/etc/httpd/conf.d/fcgid.confに記述する。
#/etc/httpd/conf/httpd.confにIncludeの設定が有効になっているはずなので、分割設定が可能なのだ!
以下の情報を追記。
DefaultInitEnv RAILS_ENV production
IPCCommTimeout 40
IPCConnectTimeout 10
Alias /redmine "/path_to_my_redmine/public"
Options ExecCGI FollowSymLinks
AllowOverride AuthConfig Indexes Limit FileInfo Options
Order allow,deny
Allow from all
[Redmineの設定]
まず、FastCGI用のファイル(dispatch.fcgi)を用意する。といっても、雛形があるのでコピーするだけ。
$ cd /path_to_my_redmine/public
$ cp -p dispatch.fcgi.example dispatch.fcgi
そしてpublicディレクトリ配下にある.htaccess(最初からある)を編集する。
#AddHandler fastcgi-script .fcgi
AddHandler fcgid-script .fcgi #<--fcgid〜に変更
# You need mod_fcgid version >= 2.1 to support arguments "xxx/dispatch.fcgi" in FCGIWrapper
FCGIWrapper "/usr/bin/ruby /path_to_my_redmine/public/dispatch.fcgi" .fcgi #<--実行できるように設定
RewriteBase /redmine #<--新規追加
#RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] #<--.fcgiに変更
これらの設定は、設定ファイルに書かれたサイトのRailsの箇所をまねすればOK。
これで設定はオシマイ。
後はapacheを起動(もしくは再起動)してブラウザ上から確認して、ページが表示されたらおめでとう。うまくいかない場合は、Redmineの設置場所へのapacheユーザのアクセス権等を確認しよう。
#RedmineはRuby on Railsで書かれているのだ!
最近のRailsとapacheの連携でホットな話題と言えば、Mongrelのようだが、稼動させているrubyのバージョンが古くて断念。結局FastCGIを使って連携した。
#最近rubyの1.8.5系と1.8.6系の壁にぶつかることが多いが、このマイナーバージョンの差に何があるのだろう?
さっそく家の環境でも構築。
apche + FastCGI + Redmine(Rails)という構成になる。
FastCGIというのは、CGIの動作方法の仕様の一つで、プロセスをメモリ上に常駐させてプログラムの実行速度の向上させるもの。基本的に常駐するサーバの役割とそれにアクセスするためのクライアントモジュールが必要となる。
というわけで、FastCGIはapache用のモジュールとRuby用のモジュールを追加インストールした。
#と言ってもFedoraなので楽チン♪
[Ruby用のモジュールのインストール]
# gem install fcgi -y
[apacheに入れるモジュールのインストール]
ちなみにapache 連携用のモジュールはmod_fcgidとmod_fastcgiの2系統が存在する。どちらも役割は同じなのだが、設定の記述が異なるので注意が必要。今回はmod_fcgidを使った。
yum install mod_fcgid*
[apacheの設定]
インストールが終わったら、apacheの設定。
mod_fcgidの設定は/etc/httpd/conf.d/fcgid.confに記述する。
#/etc/httpd/conf/httpd.confにIncludeの設定が有効になっているはずなので、分割設定が可能なのだ!
以下の情報を追記。
DefaultInitEnv RAILS_ENV production
IPCCommTimeout 40
IPCConnectTimeout 10
Alias /redmine "/path_to_my_redmine/public"
Options ExecCGI FollowSymLinks
AllowOverride AuthConfig Indexes Limit FileInfo Options
Order allow,deny
Allow from all
[Redmineの設定]
まず、FastCGI用のファイル(dispatch.fcgi)を用意する。といっても、雛形があるのでコピーするだけ。
$ cd /path_to_my_redmine/public
$ cp -p dispatch.fcgi.example dispatch.fcgi
そしてpublicディレクトリ配下にある.htaccess(最初からある)を編集する。
#AddHandler fastcgi-script .fcgi
AddHandler fcgid-script .fcgi #<--fcgid〜に変更
# You need mod_fcgid version >= 2.1 to support arguments "xxx/dispatch.fcgi" in FCGIWrapper
FCGIWrapper "/usr/bin/ruby /path_to_my_redmine/public/dispatch.fcgi" .fcgi #<--実行できるように設定
RewriteBase /redmine #<--新規追加
#RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] #<--.fcgiに変更
これらの設定は、設定ファイルに書かれたサイトのRailsの箇所をまねすればOK。
これで設定はオシマイ。
後はapacheを起動(もしくは再起動)してブラウザ上から確認して、ページが表示されたらおめでとう。うまくいかない場合は、Redmineの設置場所へのapacheユーザのアクセス権等を確認しよう。
2007年08月28日
いいね♪redMine
先日から、redMineをあれこれいじっているうちにすっかり気に入ってしまった。
先日自宅で環境(FedoraCore7)を構築した際は、職場で導入ノウハウを蓄えたお陰で10分弱で完了。以下はその時のメモ。
#基本yum(&加えてgem)を使うので、どんどんアホになる。
まずはrootユーザでアプリのインストールから。
ruby関連。
# yum install ruby
# yum install rubygems
# gem install rails -y
# gem install RedCloth
次にデータベース。Railsの基本MySQLを入れる。
# yum install mysql
# yum install mysql-server
バージョン管理はSubverion。
# yum install subversion
必要なアプリはこれでオシマイ。
MySQLを起動しておく。
# service mysqld start
後はredMineを使うユーザのお仕事。
データベースの作成とredMineのインストール、そして環境設定。
$ mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.0.37 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database redmine;
Query OK, 1 row affected (0.00 sec)
mysql> exit;
Bye
$ wget http://rubyforge.org/frs/download.php/22783/redmine-0.5.1.tar.gz
$ tar zxvf redmine-0.5.1.tar.gz
$ ln -s redmine-0.5.1 redmine
$ cd redmine
$ cp -p config/database.yml.example config/database.yml
【database.ymlの設定内容】
production:
adapter: mysql
database: redmine
host: localhost
username: root
password:
socket: /var/lib/mysql/mysql.sock
あとはWEBlickを使ってredMineを起動するだけ。
$ ruby script/server -e production
これでredMineはめでたく利用できるはず。ブラウザを使ってパラメータを設定していくだけだ。
#ポート3000番で起動するので、ファイアウォールの許可をしておく。
そうそう。
redMineを使うのに技評の連載記事がとても参考になったので、興味ある方は読んでみるといいかも。
先日自宅で環境(FedoraCore7)を構築した際は、職場で導入ノウハウを蓄えたお陰で10分弱で完了。以下はその時のメモ。
#基本yum(&加えてgem)を使うので、どんどんアホになる。
まずはrootユーザでアプリのインストールから。
ruby関連。
# yum install ruby
# yum install rubygems
# gem install rails -y
# gem install RedCloth
次にデータベース。Railsの基本MySQLを入れる。
# yum install mysql
# yum install mysql-server
バージョン管理はSubverion。
# yum install subversion
必要なアプリはこれでオシマイ。
MySQLを起動しておく。
# service mysqld start
後はredMineを使うユーザのお仕事。
データベースの作成とredMineのインストール、そして環境設定。
$ mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.0.37 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database redmine;
Query OK, 1 row affected (0.00 sec)
mysql> exit;
Bye
$ wget http://rubyforge.org/frs/download.php/22783/redmine-0.5.1.tar.gz
$ tar zxvf redmine-0.5.1.tar.gz
$ ln -s redmine-0.5.1 redmine
$ cd redmine
$ cp -p config/database.yml.example config/database.yml
【database.ymlの設定内容】
production:
adapter: mysql
database: redmine
host: localhost
username: root
password:
socket: /var/lib/mysql/mysql.sock
あとはWEBlickを使ってredMineを起動するだけ。
$ ruby script/server -e production
これでredMineはめでたく利用できるはず。ブラウザを使ってパラメータを設定していくだけだ。
#ポート3000番で起動するので、ファイアウォールの許可をしておく。
そうそう。
redMineを使うのに技評の連載記事がとても参考になったので、興味ある方は読んでみるといいかも。
2007年08月24日
プロジェクト管理ツール
最近仕事で、redMine というプロジェクト管理ツール(Ruby on Railsで作られてる)を調査している。ちょっと前までは Trac (Pythonで記述)というツールが有力候補であったのだが、ここに来てredMine株が(私の中で)急上昇中。
もともとはissue trackingが出来るツールで、情報管理も出来る仕組みを刷新したいとの使命を与えられて調査をしていて、WikiやSubversionとの連携(リポジトリブラウズ)、BTS等の機能を有して、チラホラと雑誌などでも紹介されているTracがいいと考えていたが(チームリーダの要望もあったし)、ネットで「Trac vs redMine」の情報をあちらこちらで目にしたのがきっかけでredMineも視野に入れて検討することに。
まだまだテスト運用中であるが、redMine は使える機能が最初から多い(基本的にTracでできることは大体実現できる)のと、パラメータによる細かな設定が可能なのが大きな魅力だ。一番気に入っているのは、複数プロジェクトの管理が可能なこと。スケーラビリティを考えると、標準機能で複数プロジェクトの管理ができるのはよい。また環境を1度設定すると、ブラウザからシステム運用ルールやプロジェクト運用ルールの設定が出来るのもうれしい。Tracより演出が効いていて、webアプリとは思えない操作性のよさが心地よい。
自宅のサーバにもさっそくredMineを導入して、あれこれ昨日からいじって遊んでいる。
#我がrice-projectのタスク管理ツールには十分すぎるくらいの機能だが…。
もともとはissue trackingが出来るツールで、情報管理も出来る仕組みを刷新したいとの使命を与えられて調査をしていて、WikiやSubversionとの連携(リポジトリブラウズ)、BTS等の機能を有して、チラホラと雑誌などでも紹介されているTracがいいと考えていたが(チームリーダの要望もあったし)、ネットで「Trac vs redMine」の情報をあちらこちらで目にしたのがきっかけでredMineも視野に入れて検討することに。
まだまだテスト運用中であるが、redMine は使える機能が最初から多い(基本的にTracでできることは大体実現できる)のと、パラメータによる細かな設定が可能なのが大きな魅力だ。一番気に入っているのは、複数プロジェクトの管理が可能なこと。スケーラビリティを考えると、標準機能で複数プロジェクトの管理ができるのはよい。また環境を1度設定すると、ブラウザからシステム運用ルールやプロジェクト運用ルールの設定が出来るのもうれしい。Tracより演出が効いていて、webアプリとは思えない操作性のよさが心地よい。
自宅のサーバにもさっそくredMineを導入して、あれこれ昨日からいじって遊んでいる。
#我がrice-projectのタスク管理ツールには十分すぎるくらいの機能だが…。
2007年05月04日
ウイルスソフト
自宅のマシンで使用していたウイルスソフトが4月末で利用期限が切れてしまい、なんとなくネットに繋ぐのを控えていた。
考えてみると、この感覚は(Win…ユーザ固有なのかどうかは知らないが)購入した商品を使うユーザからすると、随分特殊であると思う。
例えば自動車を購入すると仮定すると、「標準装備のライトが豆電球で光りはするのだが、夜道のドライブはかなり危険」な状態の製品を使えといっている感じか(ちょっと違う?)。相当な勇者、もしくは無謀な人間ならそのままの装備で夜道も走るかもしれないが、その際の危険性を考慮すると安全が確保できるライトを購入することになるだろう。実際には、まずそのような馬鹿げた自動車を購入するユーザはいないし、仮に存在するとしても業界、社会の安全管理がそれを許さないはずだ。
…にもかかわらず、ソフトウェアの世界ではそのような理不尽が割とまかり通っているのが現状だ。使っているWin…XPではウイルスソフトを導入しないと当たり前のように右下に赤ランプが点滅し、「このコンピュータが危険にさらされています」と警告してくれるが、
「そもそもこれおかしくねぇ(語尾上げる)」
と感じるのは私だけではないはずだ!
だって、販売元が「うちの製品購入して使ってくれるのはいいんだけど、そのままでは危険ですよ」って言っているんだから。しかもそれを承知で利用している私(も含めたユーザ)は、はっきり言って狂っている。
…でも小市民な私は新たにライセンスを購入して、またウイルスソフトを導入したWin…を利用するのであった。
ウイルスソフトってなんらユーザビリティが高まるわけでもなく(むしろ非力なマシンでは速度を低下させるし)、なんらかの機能がアップするわけじゃないのに、毎年ライセンス料(しかも結構な値段で)取られるから、納得がいかないんだよなぁ。
というわけで、安心な(と言う幻想を抱かせてくれる)PC環境に戻れたので、ブログを再開。
#決して、断じて、何が何でも、「支払ったウイルスソフト代がなければあれが買えたのに…。うぅぅ、てやんでい、ちくしょう。毎年毎年、悪代官か、全くもう(ブツブツ)」という度量の小さなウラミゴトを言いたかったのではなく、社会の不正を正したかったのである。
考えてみると、この感覚は(Win…ユーザ固有なのかどうかは知らないが)購入した商品を使うユーザからすると、随分特殊であると思う。
例えば自動車を購入すると仮定すると、「標準装備のライトが豆電球で光りはするのだが、夜道のドライブはかなり危険」な状態の製品を使えといっている感じか(ちょっと違う?)。相当な勇者、もしくは無謀な人間ならそのままの装備で夜道も走るかもしれないが、その際の危険性を考慮すると安全が確保できるライトを購入することになるだろう。実際には、まずそのような馬鹿げた自動車を購入するユーザはいないし、仮に存在するとしても業界、社会の安全管理がそれを許さないはずだ。
…にもかかわらず、ソフトウェアの世界ではそのような理不尽が割とまかり通っているのが現状だ。使っているWin…XPではウイルスソフトを導入しないと当たり前のように右下に赤ランプが点滅し、「このコンピュータが危険にさらされています」と警告してくれるが、
「そもそもこれおかしくねぇ(語尾上げる)」
と感じるのは私だけではないはずだ!
だって、販売元が「うちの製品購入して使ってくれるのはいいんだけど、そのままでは危険ですよ」って言っているんだから。しかもそれを承知で利用している私(も含めたユーザ)は、はっきり言って狂っている。
…でも小市民な私は新たにライセンスを購入して、またウイルスソフトを導入したWin…を利用するのであった。
ウイルスソフトってなんらユーザビリティが高まるわけでもなく(むしろ非力なマシンでは速度を低下させるし)、なんらかの機能がアップするわけじゃないのに、毎年ライセンス料(しかも結構な値段で)取られるから、納得がいかないんだよなぁ。
というわけで、安心な(と言う幻想を抱かせてくれる)PC環境に戻れたので、ブログを再開。
#決して、断じて、何が何でも、「支払ったウイルスソフト代がなければあれが買えたのに…。うぅぅ、てやんでい、ちくしょう。毎年毎年、悪代官か、全くもう(ブツブツ)」という度量の小さなウラミゴトを言いたかったのではなく、社会の不正を正したかったのである。
2007年04月10日
TortoiseSVN
現在参画しているプロジェクトでは、最近ドキュメントの管理もsubversionで管理するようになった。これまでも、共有ドキュメントサーバはあったのだが、バージョン管理が適切になされていなかったために、「ファイル名+版番号」のようなファイルが溢れていた。少量のファイルならこの程度の管理で足りるのだろうが、日々増えていくドキュメントの管理にはいずれ限界が訪れるやり方である。
そこでソース管理同様にsubversionで管理する運用となったのであるが、ソースと異なりドキュメントはWindows上でwordやらexcelやらpower pointで作成されたものが多い。できればリポジトリにアクセスしたり更新したりするのに専用ソフトをいちいち立ち上げるのは面倒なので避けたい。
…と思っていたら、TortoiseSVNを紹介して頂いた。
感想は「物凄い便利♪」の一言。
何が便利かといいますと、Exprolerでファイルやフォルダを選択して右クリックした時に表示されるリスト上でSVNの操作が出来るわけなんですよ!!
#ちょっとテレビ通販の司会者のように思わず興奮気味になってしまうくらい…。
つまり普通にファイル操作をしているその流れの延長でsubversionの諸操作ができて完結しているのだ。いちいち専用アプリを立ち上げて操作というようなめんどくさい手続きを経なくてよいのである。これは画期的というか、直感的に使いやすくてとても気に入ってしまった。
運用上気を付けるべきは、ファイルを更新する時はあらかじめLockして使うこと。プレーンなText情報と異なり、上記のようなファイル達を扱うのにsubversionのマージ機能を当てにしすぎると痛い目にあうからだ。
とりあえず、Windows上でsubversionで管理されたファイルを扱う場合にはこのソフトはお勧めである。
#もちろん私の大好きなフリーソフトである。
そこでソース管理同様にsubversionで管理する運用となったのであるが、ソースと異なりドキュメントはWindows上でwordやらexcelやらpower pointで作成されたものが多い。できればリポジトリにアクセスしたり更新したりするのに専用ソフトをいちいち立ち上げるのは面倒なので避けたい。
…と思っていたら、TortoiseSVNを紹介して頂いた。
感想は「物凄い便利♪」の一言。
何が便利かといいますと、Exprolerでファイルやフォルダを選択して右クリックした時に表示されるリスト上でSVNの操作が出来るわけなんですよ!!
#ちょっとテレビ通販の司会者のように思わず興奮気味になってしまうくらい…。
つまり普通にファイル操作をしているその流れの延長でsubversionの諸操作ができて完結しているのだ。いちいち専用アプリを立ち上げて操作というようなめんどくさい手続きを経なくてよいのである。これは画期的というか、直感的に使いやすくてとても気に入ってしまった。
運用上気を付けるべきは、ファイルを更新する時はあらかじめLockして使うこと。プレーンなText情報と異なり、上記のようなファイル達を扱うのにsubversionのマージ機能を当てにしすぎると痛い目にあうからだ。
とりあえず、Windows上でsubversionで管理されたファイルを扱う場合にはこのソフトはお勧めである。
#もちろん私の大好きなフリーソフトである。
2007年02月27日
Hyper Estraier
すごいアプリが世の中にはあるものだ。
今日、職場の方にHyper Estraierという全文検索システムを紹介してもらった。
#いつも教えてもらってばっかり(^^ゞ
本家の概要を引用させていただくと、
のような機能があり、しかもフリーソフトで商用にも転用可能なのだそうだ。
今月(3月号)のソフトウェアデザインに特集が組んであることも教えてもらったので早速購入。
#帰りの電車の中で夢中で読んでいたら、危うく乗り過ごしそうに…。しまる寸前に人ごみを掻き分けたので、大ヒンシュクであった。足踏んだおばさん、スミマセン。
はやる気持ちを抑えつつ、自宅のマシンに入れてみた。
導入は実に簡単。マニュアルに書いてある通り、インストールすればすんなり動く。
そしてレンタルサーバに組み込んでみた。
…が、動かない。
なんて制限が多いんだぁ。
#セキュリティのためあたりまえか。
レンタルサーバによる設定が難しく、自宅のサーバではうまく行ったのにハマりまくったが、なんとか動かす。
webから情報を収集するロボット(crawlというらしい)まで付いていたので、ライスプロジェクトのホームページを検索トップにインデックスを作成し、付属のCGIを起動。
ここ→http://www.rice-project.com/cgi-bin/estseek.cgi
とりあえず「エンジニアのポケット」で検索すると、結果が返る。
なんだか楽しい。
以前図書館のプロジェクトに参画していたが、その時にこのアプリが存在すれば随分違ったと思う…。
#ボソ。
気が付くとかなりの時間だ。今日はここまでにしよう。
今日、職場の方にHyper Estraierという全文検索システムを紹介してもらった。
#いつも教えてもらってばっかり(^^ゞ
本家の概要を引用させていただくと、
インデックスを使った高速な検索ができます。
大量の文書のインデックスを短時間で作成できます。
N-gram方式による漏れのない検索ができます。
形態素解析とN-gramのハイブリッド機構で検索精度を向上させます。
フレーズ検索や正規表現検索や属性検索や類似検索をサポートします。
世界各国の言語が扱えます。
対象文書の所在や形式に依存しません。
賢いWebクローラが付属しています。
ライブラリとして各種製品に組み込めます。
P2P連携機能をサポートします。
のような機能があり、しかもフリーソフトで商用にも転用可能なのだそうだ。
今月(3月号)のソフトウェアデザインに特集が組んであることも教えてもらったので早速購入。
#帰りの電車の中で夢中で読んでいたら、危うく乗り過ごしそうに…。しまる寸前に人ごみを掻き分けたので、大ヒンシュクであった。足踏んだおばさん、スミマセン。
はやる気持ちを抑えつつ、自宅のマシンに入れてみた。
導入は実に簡単。マニュアルに書いてある通り、インストールすればすんなり動く。
そしてレンタルサーバに組み込んでみた。
…が、動かない。
なんて制限が多いんだぁ。
#セキュリティのためあたりまえか。
レンタルサーバによる設定が難しく、自宅のサーバではうまく行ったのにハマりまくったが、なんとか動かす。
webから情報を収集するロボット(crawlというらしい)まで付いていたので、ライスプロジェクトのホームページを検索トップにインデックスを作成し、付属のCGIを起動。
ここ→http://www.rice-project.com/cgi-bin/estseek.cgi
とりあえず「エンジニアのポケット」で検索すると、結果が返る。
なんだか楽しい。
以前図書館のプロジェクトに参画していたが、その時にこのアプリが存在すれば随分違ったと思う…。
#ボソ。
気が付くとかなりの時間だ。今日はここまでにしよう。
2007年02月16日
Internet Explorer 7
自宅で使っている端末はWinXPである。
ブラウザも数時間前まではIE6を使っていたが、せっかくなのでIE7にしてみた。
IE7は見た目も少し変わり、タブブラウズが出来るようになった。
お気に入りのフォルダを指定すると、フォルダ内のリンクがすべて展開されて、一気にタブ表示される機能なんかは使えそうだ。
…が、やたらと異常終了するのは何故だぁ?

今回のブログはIE7ネタを書くつもりではなかったのだが、やたらと落ちまくり(1時間のうち6度も!!)、せっかく書いていた原稿もすべて吹っ飛ばしてくれたりと、なかなか暴れてくれるので、つい書いてしまった。
お陰様ですっかりやる気を無くし、ぶつけようの無い怒りを持て余しつつ、ブログで愚痴ってフテ寝する事にしよう…。
#いくら機能アップしても、安定してないんじゃ駄目だよぅ…。
手元の環境のIE6が割りと安定していただけに、ガッカリ指数が120ショボン(意味不明)だよ!
ブラウザも数時間前まではIE6を使っていたが、せっかくなのでIE7にしてみた。
IE7は見た目も少し変わり、タブブラウズが出来るようになった。
お気に入りのフォルダを指定すると、フォルダ内のリンクがすべて展開されて、一気にタブ表示される機能なんかは使えそうだ。
…が、やたらと異常終了するのは何故だぁ?
今回のブログはIE7ネタを書くつもりではなかったのだが、やたらと落ちまくり(1時間のうち6度も!!)、せっかく書いていた原稿もすべて吹っ飛ばしてくれたりと、なかなか暴れてくれるので、つい書いてしまった。
お陰様ですっかりやる気を無くし、ぶつけようの無い怒りを持て余しつつ、ブログで愚痴ってフテ寝する事にしよう…。
#いくら機能アップしても、安定してないんじゃ駄目だよぅ…。
手元の環境のIE6が割りと安定していただけに、ガッカリ指数が120ショボン(意味不明)だよ!
2007年02月14日
FreeMind
昨年以来、何かとメモを取るのにマインドマップを活用している。
昨年仕事先で紹介されたソフト「FreeMind」がきっかけである。
仕事先のミーティングでリーダの方がFreeMindを使って、その場でマインドマップを描きながら、タスク出し作業を行ったのだが、実に分かり易くて目からウロコが落ちた。
一番気に入ったのは、一目見て話の全体が分かる点。話があっちへ行ったりこっちに来たりする会議の場で、「議事録」を兼ねると共に「何の話をしているのか迷子にならない道標」となる効能を肌で理解した。
ちなみにマインドマップとは中央に主体となるテーマを記述し、そこから上下左右と放射状に関連あるトピックを自由にツリー構造を展開していくような図である。と書くとなにやら難しい感じがするが、私の言葉で言う(言うな!)と、「話題(お題)を決めたら、思いつくままにブレークダウンして行っても、それなりにウマく表現できるステキなツール」のことだ(ますます意味不明)。
実はその出来事より前から、マインドマッピングという記述技法は知ってはいたのだが、それまではどこが優れているのかピンと来なかったし、なによりマインドマップを電子化するにはVisioのブレーンストーミング図を使う等の方法しか知らなかったので、わざわざそんな面倒くさい事までして何の役に立つの?と正直思っていた。
それの思いを払拭してくれたFreeMindというソフトの特徴は、何よりも操作が簡単であると言う点だ。マインドマップの作成自体が直感的に自由に線を引いていく感じで書き広げていく作業なのだが、Visioの操作性はそれと相反するものであったのがいけなかった。しかしFreeMindの操作感は、フリーハンドの書き味に匹敵するくらい軽快で、Insertキー、Enterキー、Shiftキー等の組み合わせを覚えれば、マウス操作もいらないくらいサクサクと図を描くことが出来て、実に気持ちがいい。
さらにFreeMindはGPLのもと公開されているオープンソースソフトウェアであることもお気に入りのポイントである。さらにJava上で動くため、プラットフォームに依存しない点もよい。
画面はこんな感じ。

そうそう。このツールがすごいのは、マインドマップをHTML文書としても出力できることである。サンプルに本ブログについてあれこれとマインドマップで書いて、HTML出力したのがこれ。
実は元旦にこのソフトのレビューを兼ねて、我がライス・プロジェクトの2007年度計画をマインドマップで書いていたのだ。
…が、酔っていたせいもあり、途中からロト6で4億当選などと野望・欲望の書に変質してしまったため、あまりの内容の酷さから公開を断念した幻の原稿がある。
#そのため、紹介が遅れてしまった(-_-;)
とにかく思いついたことを忘れずにメモするには最適なのが、マインドマップ。FreeMindは議事録取るのにも便利なので、お勧めである。
昨年仕事先で紹介されたソフト「FreeMind」がきっかけである。
仕事先のミーティングでリーダの方がFreeMindを使って、その場でマインドマップを描きながら、タスク出し作業を行ったのだが、実に分かり易くて目からウロコが落ちた。
一番気に入ったのは、一目見て話の全体が分かる点。話があっちへ行ったりこっちに来たりする会議の場で、「議事録」を兼ねると共に「何の話をしているのか迷子にならない道標」となる効能を肌で理解した。
ちなみにマインドマップとは中央に主体となるテーマを記述し、そこから上下左右と放射状に関連あるトピックを自由にツリー構造を展開していくような図である。と書くとなにやら難しい感じがするが、私の言葉で言う(言うな!)と、「話題(お題)を決めたら、思いつくままにブレークダウンして行っても、それなりにウマく表現できるステキなツール」のことだ(ますます意味不明)。
実はその出来事より前から、マインドマッピングという記述技法は知ってはいたのだが、それまではどこが優れているのかピンと来なかったし、なによりマインドマップを電子化するにはVisioのブレーンストーミング図を使う等の方法しか知らなかったので、わざわざそんな面倒くさい事までして何の役に立つの?と正直思っていた。
それの思いを払拭してくれたFreeMindというソフトの特徴は、何よりも操作が簡単であると言う点だ。マインドマップの作成自体が直感的に自由に線を引いていく感じで書き広げていく作業なのだが、Visioの操作性はそれと相反するものであったのがいけなかった。しかしFreeMindの操作感は、フリーハンドの書き味に匹敵するくらい軽快で、Insertキー、Enterキー、Shiftキー等の組み合わせを覚えれば、マウス操作もいらないくらいサクサクと図を描くことが出来て、実に気持ちがいい。
さらにFreeMindはGPLのもと公開されているオープンソースソフトウェアであることもお気に入りのポイントである。さらにJava上で動くため、プラットフォームに依存しない点もよい。
画面はこんな感じ。

そうそう。このツールがすごいのは、マインドマップをHTML文書としても出力できることである。サンプルに本ブログについてあれこれとマインドマップで書いて、HTML出力したのがこれ。
実は元旦にこのソフトのレビューを兼ねて、我がライス・プロジェクトの2007年度計画をマインドマップで書いていたのだ。
…が、酔っていたせいもあり、途中からロト6で4億当選などと野望・欲望の書に変質してしまったため、あまりの内容の酷さから公開を断念した幻の原稿がある。
#そのため、紹介が遅れてしまった(-_-;)
とにかく思いついたことを忘れずにメモするには最適なのが、マインドマップ。FreeMindは議事録取るのにも便利なので、お勧めである。
2007年01月10日
TrueCrypt
先日、家族を連れて故郷の山口に帰省して、のんびりと過ごしてきた。
#2泊3日とタイトなスケジュールなので、そこまでのんびりではなく、また私自身は風邪?(妙な咳が出るやつ)に罹り、病気療養に近かったが…。
両親に我が息子の写真を見せるため、ポータブルハードディスクにデジカメ画像を移し持ち帰ったのだが、一応万が一紛失してしまった事態に備えて暗号化をした。
暗号化ソフトは以前のプロジェクトで教えてもらい、よく利用したフリーソフトのTrueCryptを使った。現在の職場では会社を行き来して作業することはないので、仕事では使わなくなったものの、便利なので愛用しているのだ。
このTrueCryptは暗号化した仮想ドライブを作成できるソフトウェアで、面白いのは暗号化領域を二重化できる点だ。
#いろいろな特集で、一押しポイントに挙げてある。
個人的にこのソフトを気に入っている点として、
・フリーソフトである(重要!)
・レジストリなどに変な設定を書き込まないので、単体起動が可能
⇒持ち運ぶデバイスの通常の領域にTrueCryptを突っ込んでおいて、実際の暗号化したいファイルの領域を別途作成すれば、いちいちアプリケーションを端末毎に設定しなくても、直接TrueCryptを起動して暗号化した領域をマウントして利用することができる♪
要は1度設定すると、楽なのが良いのだ。
#毎回ごちゃごちゃ設定するのはあまり好きではないから…。
#2泊3日とタイトなスケジュールなので、そこまでのんびりではなく、また私自身は風邪?(妙な咳が出るやつ)に罹り、病気療養に近かったが…。
両親に我が息子の写真を見せるため、ポータブルハードディスクにデジカメ画像を移し持ち帰ったのだが、一応万が一紛失してしまった事態に備えて暗号化をした。
暗号化ソフトは以前のプロジェクトで教えてもらい、よく利用したフリーソフトのTrueCryptを使った。現在の職場では会社を行き来して作業することはないので、仕事では使わなくなったものの、便利なので愛用しているのだ。
このTrueCryptは暗号化した仮想ドライブを作成できるソフトウェアで、面白いのは暗号化領域を二重化できる点だ。
#いろいろな特集で、一押しポイントに挙げてある。
個人的にこのソフトを気に入っている点として、
・フリーソフトである(重要!)
・レジストリなどに変な設定を書き込まないので、単体起動が可能
⇒持ち運ぶデバイスの通常の領域にTrueCryptを突っ込んでおいて、実際の暗号化したいファイルの領域を別途作成すれば、いちいちアプリケーションを端末毎に設定しなくても、直接TrueCryptを起動して暗号化した領域をマウントして利用することができる♪
要は1度設定すると、楽なのが良いのだ。
#毎回ごちゃごちゃ設定するのはあまり好きではないから…。
2006年11月14日
Fedora Core 6
Fedora Core 6が2006/10/24リリースされました。
今月のLinux関連の雑誌には「待ってました!」とばかりに付録になっていたので、とりあえず今月のオープンソースマガジンを購入し、早速例の方法で、自宅のマシンにインストールして使ってみました。雑感としては随分とデスクトップOSとして使えるようになってきたなぁという気がします。パッケージアップデータというモジュール更新ツールも大分Windowsアップデートのようなパッケージの仕組みを理解しないユーザでも操作できるものになり、ターミナル端末を立ち上げなくても一通りのことが可能です。OpenOfficeもチョコチョコ使っているので、違和感なく操作できるし、FireFoxもWindows上で利用しているので問題なし。Windows、Linux上で随分となじみのアプリが増えてきているためでもありますが、個人的にはPCでゲームなどをするわけではないのでこれで十分です。
まだあまり触っていないので、これから感触を確かめていこうと思っています。
#目玉のEye Candyとかのデスクトップ環境とか試したいですね。
今月のLinux関連の雑誌には「待ってました!」とばかりに付録になっていたので、とりあえず今月のオープンソースマガジンを購入し、早速例の方法で、自宅のマシンにインストールして使ってみました。雑感としては随分とデスクトップOSとして使えるようになってきたなぁという気がします。パッケージアップデータというモジュール更新ツールも大分Windowsアップデートのようなパッケージの仕組みを理解しないユーザでも操作できるものになり、ターミナル端末を立ち上げなくても一通りのことが可能です。OpenOfficeもチョコチョコ使っているので、違和感なく操作できるし、FireFoxもWindows上で利用しているので問題なし。Windows、Linux上で随分となじみのアプリが増えてきているためでもありますが、個人的にはPCでゲームなどをするわけではないのでこれで十分です。
まだあまり触っていないので、これから感触を確かめていこうと思っています。
#目玉のEye Candyとかのデスクトップ環境とか試したいですね。
2006年08月30日
automake/autoconf
ようやく体調も復調してきました。
現在のプロジェクトでは独自の自動ビルドシステムを使用していますが、もともとはGNUプロジェクトの成果物であるautomake/autoconfを独自拡張したもののようです。
最近、勉強がてらautomake/autoconf関連ツールを使っていますが、凄く便利ですね。ちょっとしたツールを作るのにもプロジェクト化してこれらを利用してmakefileを作成して実行モジュールを作ってます。
参考までにautomakeとは、文字通り簡単なパラメータファイルを用意するだけで、makefileを生成してくれるツールで、autoconfとはこれまた簡単なパラメータファイルを用意するだけで、configureを生成してくれます。
パラメータの設定によって、簡単にconfigureのオプション指定でリリースビルドしたり、デバッグビルドしたりすることができる点や生成されたmakefileにインストール機能等基本的な処理が入っているのが気に入っています。
#はっきり言って、もう自力でmakefileを書く気がしないです。
いままでの苦労がなんだったのと言うくらい、ソースを書くことに集中できていいですね。
現在のプロジェクトでは独自の自動ビルドシステムを使用していますが、もともとはGNUプロジェクトの成果物であるautomake/autoconfを独自拡張したもののようです。
最近、勉強がてらautomake/autoconf関連ツールを使っていますが、凄く便利ですね。ちょっとしたツールを作るのにもプロジェクト化してこれらを利用してmakefileを作成して実行モジュールを作ってます。
参考までにautomakeとは、文字通り簡単なパラメータファイルを用意するだけで、makefileを生成してくれるツールで、autoconfとはこれまた簡単なパラメータファイルを用意するだけで、configureを生成してくれます。
パラメータの設定によって、簡単にconfigureのオプション指定でリリースビルドしたり、デバッグビルドしたりすることができる点や生成されたmakefileにインストール機能等基本的な処理が入っているのが気に入っています。
#はっきり言って、もう自力でmakefileを書く気がしないです。
いままでの苦労がなんだったのと言うくらい、ソースを書くことに集中できていいですね。
2006年07月28日
バージョン管理
以前仕事をしたプロジェクトではソースのバージョン管理にCVSを利用していましたが、現在のプロジェクトではsubversionを使用しています。
使い勝手はほとんどCVSと変わらないのですが、ディレクトリを管理してくれる点やファイルを移動しても更新履歴が継続する点がよいですね。
Eclipseには標準でCVSによるチームでのプロジェクト共有ができるのですが、Subclipseというプラグインを入れると同等の使い勝手でsubversionを利用することができます。
例によってソフトウェアの更新機能を使ってインストールして快適に利用してます。
設定するURL:http://subclipse.tigris.org/update
使い勝手はほとんどCVSと変わらないのですが、ディレクトリを管理してくれる点やファイルを移動しても更新履歴が継続する点がよいですね。
Eclipseには標準でCVSによるチームでのプロジェクト共有ができるのですが、Subclipseというプラグインを入れると同等の使い勝手でsubversionを利用することができます。
例によってソフトウェアの更新機能を使ってインストールして快適に利用してます。
設定するURL:http://subclipse.tigris.org/update
2006年07月26日
Doxygen
先週末は息子がまさかの今シーズン2度目のヘルパンギーナに感染しダウンしていて看病三昧でした。
#疲れますね。
さて現在の開発はC言語で行っているのですが、ソースのドキュメント化にDoxygenを使っています。
#FedoraCoreなど最近のLinuxには開発用ツールとして付属してますね。
Doxygenはソースに書いたコメントからドキュメントを自動生成してHTML等のファイルに出力してくれるツールです。Javaを使っている人ならjavadocと同じ機能を提供してくれると言えば、イメージしやすいですね。
実際、書式も似ているので、C言語の開発で煩雑になりやすいソースドキュメントに悩んでいる方は利用してみてはいかがでしょう。
#疲れますね。
さて現在の開発はC言語で行っているのですが、ソースのドキュメント化にDoxygenを使っています。
#FedoraCoreなど最近のLinuxには開発用ツールとして付属してますね。
Doxygenはソースに書いたコメントからドキュメントを自動生成してHTML等のファイルに出力してくれるツールです。Javaを使っている人ならjavadocと同じ機能を提供してくれると言えば、イメージしやすいですね。
実際、書式も似ているので、C言語の開発で煩雑になりやすいソースドキュメントに悩んでいる方は利用してみてはいかがでしょう。
2006年07月18日
lcov その2
以前、lcovのレポートをしましたが、その続報です。
lcovを構成するlcovとgenhtmlという2つのコマンドがあります。
lcovはgcovの出力した結果(カバレッジデータ)をキャプチャーして出力する機能を提供し、genhtmlはそのlcovのレポートを入力に、グラフィカルなHTMLファイルを出力する機能を持っています。
そのままでも使いやすいのですが、genhtmlは-fオプションを使用するとソースコードビュー(pngファイル)をフレーム表示してくれるので、さらに見やすくなります。
ただし、利用環境にGD.pm(PerlでGD[グラフィックライブラリ]を使うためのモジュール)が別途必要なので、以下のサイトで入手。
http://search.cpan.org/dist/GD/
少し、テスト環境がリッチになった気がして、得した気分になります(?)。
lcovを構成するlcovとgenhtmlという2つのコマンドがあります。
lcovはgcovの出力した結果(カバレッジデータ)をキャプチャーして出力する機能を提供し、genhtmlはそのlcovのレポートを入力に、グラフィカルなHTMLファイルを出力する機能を持っています。
そのままでも使いやすいのですが、genhtmlは-fオプションを使用するとソースコードビュー(pngファイル)をフレーム表示してくれるので、さらに見やすくなります。
ただし、利用環境にGD.pm(PerlでGD[グラフィックライブラリ]を使うためのモジュール)が別途必要なので、以下のサイトで入手。
http://search.cpan.org/dist/GD/
少し、テスト環境がリッチになった気がして、得した気分になります(?)。