フォーチュンサモナーズ
最新 追記

Don'tStopMusic

2003|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|12|
2006|01|02|03|04|05|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|

カテゴリ別 2003年 | 2004年 | 2005年 | 2006年 | 2007年 | 2008年

知り合いサイト: よんだもの / 暴想 / Linuxでやる夫 / 新宿Vipper / 僕だけが幸せになればいいのに。


2005-12-03 この日を編集

_ [Ruby] 裾根の広がり このエントリーを含むブックマーク

RSS 検索エンジンで Ruby を検索した結果や Ruby hotlinks の『はてなダイアリー - 「Ruby」を含む日記』で、Ruby について書かれた記事を随時読んでいるのですが、最近 Ruby を勉強{したい|している}人をとみに見かけます。例によって rails 効果ではありますが、裾根が広がってきていることが実感できてちょっと前から Ruby を使っている人としては何だか嬉しい気分です。

_ [仕事] 携わっている仕事が このエントリーを含むブックマーク

/. に載りました。わーい orz


2005-12-08 この日を編集

_ [Ruby] tmail でメール送信 このエントリーを含むブックマーク

Ruby勉強記 - mail処理

Rubyでメールを送るときの処理を検索してもなかなかエレガントなのが見つからない。

MIME::Lite::TT::Japanese ほど手軽ではありませんが tmail を使うとメールの作成は簡単です。文字コード変換には NKF、あとは必要に応じてテンプレートに erb を使ったりしています。

require 'net/smtp'
require 'nkf'
require 'tmail'
 
mail = TMail::Mail.new
mail.to = ['receiver01@example.com', 'receiver02@example.com']
mail.cc = ['receiver03@example.com']
mail.bcc = ['receiver04@example.com']
mail.from = 'sender@example.com'
mail.subject = NKF.nkf('-j -m0', "件名")
mail.date = Time.now
mail.mime_version = '1.0'
mail.set_content_type('text', 'plain', {'charset' => iso-2022-jp'})
mail.encoding = '7bit'
mail.body = NKF.nkf('-j -m0', "本文")
 
Net::SMTP.start('smtp.example.com', 25) do |smtp|
  str = mail.encoded
  smtp.send_mail(str, mail.from_address, mail.destinations)
end

2005-12-11 この日を編集

_ [ソフトウェア] Yggdrasill をダウンロードしてみた このエントリーを含むブックマーク

XML データベースエンジンの Yggdrasill がオープンソース化したというのでダウンロードしてみました。

製品マニュアルも API リファレンスもあるのだけど、ビルドの仕方に関するドキュメントがなさげ。Makefile を読めということなのでしょう。とりあえず gonzui に一式突っ込んでソースを読みやすくして、ビルドに挑戦してみました。

$ make
cd YgEngine; LC_ALL=ja_JP dcc -U../Common -U../XPath -U../YgClient -U../RelaxNG -U../RelaxNG/Datatype  -U../RelaxNG/Pattern -U../RelaxNG/Datatype/Pattern -U../RelaxNG/Datatype/Xsd -U../RelaxNG/Datatype/NameClass -U../RelaxNG/NameClass -U../RelaxNG/Datatype/RelaxNG -E.  YggdrasillServerE.dpr >/dev/null
/bin/sh: dcc: command not found
make: *** [YgEngine/YggdrasillServerE] エラー 127

早速つまづく。dcc って Delphi/Kylix のコンパイラかな?

_ [ソフトウェア] Yggdrasill のビルド: Kylix Open Edition のインストール このエントリーを含むブックマーク

Borland のトライアル版/無償製品版ダウンロードページから Kylix をダウンロード。

$ tar fvxz kylix3_open.tar.gz
$ cd kylix3_open
# ./setup.sh -m

-m をつけて、rpm を使わずにインストールです。

$ dcc --version
dcc (Borland Delphi for Linux) 14.5
Borland Delphi for Linux Version 14.5   Open Edition
Copyright (c) 1983,2002 Borland Software Corporation

再び make に挑戦。

$ make
cd YgEngine; LC_ALL=ja_JP dcc -U../Common -U../XPath -U../YgClient -U../RelaxNG -U../RelaxNG/Datatype  -U../RelaxNG/Pattern -U../RelaxNG/Datatype/Pattern -U../RelaxNG/Datatype/Xsd -U../RelaxNG/Datatype/NameClass -U../RelaxNG/NameClass -U../RelaxNG/Datatype/RelaxNG -E.  YggdrasillServerE.dpr >/dev/null
YggdrasillTCPServerE.pas(13) Fatal: ファイル 'IdThreadMgr.dcu' が見つかりません
make: *** [YgEngine/YggdrasillServerE] エラー 1

Indy コンポーネントを必要とするようです。

_ [ソフトウェア] Yggdrasill のビルド: Indy のインストール このエントリーを含むブックマーク

Indy9.0 を使うことにします。Download Indy 9.0 から 9.0.17 Source code distribution の Indy_9_00_17_src.tar.gz をダウンロード。

パッケージの使い方がわからないので、↓のようなパッチをあてて、

diff -ru Indy_9_00_17_src/IdLogStream.pas Indy_9_00_17_src-/IdLogStream.pas
--- Indy_9_00_17_src.orig/IdLogStream.pas  2002-10-08 12:19:22.000000000 +0900
+++ Indy_9_00_17_src/IdLogStream.pas 2005-12-12 00:59:48.000000000 +0900
@@ -14,7 +14,7 @@
 unit IdLogStream;
 
 interface
-uses classes, IdLogBase;
+uses Classes, IdLogBase;
 
 type
   TIdLogStream = class(TIdLogBase)
diff -ru Indy_9_00_17_src/IdQOTDUDP.pas Indy_9_00_17_src-/IdQOTDUDP.pas
--- Indy_9_00_17_src.orig/IdQOTDUDP.pas  2002-10-08 12:21:16.000000000 +0900
+++ Indy_9_00_17_src/IdQOTDUDP.pas 2005-12-12 01:00:19.000000000 +0900
@@ -14,7 +14,7 @@
 unit IdQOTDUDP;
 
 interface
-uses classes, IdAssignedNumbers, IdUDPBase, IdUDPClient;
+uses Classes, IdAssignedNumbers, IdUDPBase, IdUDPClient;
 type
   TIdQOTDUDP = class(TIdUDPClient)
   protected
$dcc `ruby -ne 'if m=/(\w+\.pas)/.match($_);puts m[1];end' indy.dpk`

などとして、dcu ファイルを量産してみました。これを Yggdrasill_1.5E/common にコピー。我ながら適当すぎ。

そしてまた make。

$ make
cd YgEngine; LC_ALL=ja_JP dcc -U../Common -U../XPath -U../YgClient -U../RelaxNG -U../RelaxNG/Datatype  -U../RelaxNG/Pattern -U../RelaxNG/Datatype/Pattern -U../RelaxNG/Datatype/Xsd -U../RelaxNG/Datatype/NameClass -U../RelaxNG/NameClass -U../RelaxNG/Datatype/RelaxNG -E.  YggdrasillServerE.dpr >/dev/null
YggdrasillServerE.dpr(170) Warning: コンパイラは 'end.' 以降の文字を無視します
Error: Bad file format: 'YggdrasillTCPServerE.dfm'
make: *** [YgEngine/YggdrasillServerE] エラー 1

うーん。先は長そう。


2005-12-13 この日を編集

_ [ソフトウェア] Yggdrasill をダウンロードしてみた (続き) このエントリーを含むブックマーク

いくつかコンパイルできていますが、どれがなにやら良く分りません。闇雲に make するのはやめてコードを読むことにします。

オープンソースにするのは良いのですが、何を目的としているのでしょうね。オープンソースになったことで、Yggdrasill というソフトウェアが今後数十年は生き残るだろうことは喜ばしいと思います。しかし、ただオープンソースにするだけでは、Internet Archive のキャッシュに残るだけの結果になるかもしれません。知ってもらう、使ってもらうことが目的なら、Windows と主要な Linux (FedoraCore4 とか) で実行できるバイナリも配布してほしいとこですし、Yggdrasill をベースとしたソフトウェアが発展することを期待するのでしたら SourceForge に登録するくらいはしてもいいと思います。XML データベースは研究ネタとしても使えるでしょうから Yggdrasill のコードを使って何かをしってくれる学生を募ってみるのも面白いかもしれません。何をやるにせよ人手がかかりますから、オープンソース化以上のことを求めるのは難しいと思いますけれども。


2005-12-16 この日を編集

_ [仕事] もう限界な件について このエントリーを含むブックマーク

チームのメンバーがまた一人去り、担当しているサービスの運用を維持することもままならなくなります。端的には技術者の人数不足に見えますが、本質的にはマネージメントできる人間の不在が今後の見通しを真っ暗にしています。何が問題なのか、どうすれば現状を改善できるかをチームメンバーと話し合う日々が続いていますが、明るい結論は見出せていません。こんな状態で年末を迎えたくないものですね。

なぜ技術者が幸せになれない会社なのかを一度原因分析したいなあ。

本日のツッコミ(全3件) [ツッコミを入れる]

_ k田 [いやあホントにやりましょうか>原因分析 僕はまるで技術者ではないので技術者のマネジメントはできないのですが、技術畑以..]

_ だて [人が増えるとやることも増えます。やることの量がこなせる量を超え続ける限り、人が増えても状況は変わりません。うちの会社..]

_ n [問題はTOP・MIDDLE・LOWERそれぞれのクラスにあると考えています。 特にTOP(経営者層)が戦略を明確化し..]


2005-12-22 この日を編集

_ [ソフトウェア] Yggdrasill GPL 版 バイナリファイル このエントリーを含むブックマーク

知ってもらう、使ってもらうことが目的なら、Windows と主要な Linux (FedoraCore4 とか) で実行できるバイナリも配布してほしい

などと書いた Yggdrasill ですが、同じことを思った人が多かったらしく、(Windows) バイナリ同梱となりました。

イグドラシルGPL Editionついてお知らせ

弊社では今回、皆様からのご要望にお答えいたしまして、プログラムの実行バイナリファイルをご用意いたしました。

また、配布するソースコードコード自体も内容を見直し、不必要なものはできるだけ削除してあります。

後で遊んでみます。


2005-12-27 この日を編集

_ [Ruby] A little anti-anti-hype このエントリーを含むブックマーク

先日始まった O'Reilly の Ruby グループブログ から。

Bruce Eckel が書いた The departure of the hyper-enthusiasts を受けての記事です。プログラミング言語が多くのユーザを獲得できるかどうかはマーケティングによるとしています。例としてオライリーのような出版社の存在や、コミュニティの態度(楽しい or 真面目すぎる)を挙げています。

この記事は現状から後付けで理由を与えている感がありますが(結局 fun に帰結させているし)、rails を考えると確かにマーケティング重要ですねえ。

_ [Ruby] はてなダイアリー - 「Ruby」を含む日記 が縦に長い件 このエントリーを含むブックマーク

Ruby hotlinks 五月雨版 から はてなダイアリー - 「Ruby」を含む日記 を巡回しているのですが、このページがいつの間にか縦に長くなっていました。おかげで「Ruby」を含む日記までの距離が遠いです。try ruby の結果をコピペしなくても……

追記

私個人としては、リンクを辿るのを止めて RSS を購読することにして解決。

_ [Rails] ma2の日記 - え? まだSwitchTower使っていないんですか? このエントリーを含むブックマーク

You're Using SwitchTower, Aren't You? の翻訳。

SwitchTower は rails アプリをデプロイするツールなわけですが、SCM の trunk とデプロイの差分を調べる diff_from_last_deploy、ウェブアクセスを一時的に止めるための disable_web/enable_web など運用時に活用する「かゆいところに手が届く」機能も揃っているようです。ウェブアプリは一度リリースしたら後は運用が続きますから、こういうツールの存在はありがたい限り。

といいつつ rails を仕事で運用する予定はなかったりしますが。ま、プライベートで使っているアプリに使ってみようと思います。


最近のコメント:

  1. n (12-19)
  2. だて (12-17)
  3. k田 (12-17)

RSS
Creative Commons License
This work is licensed under a Creative Commons License
(note: text only. w/o web design, citations, (re)distributed softwares).