Re: P2P

長くなるのでこっちで反応。否定的なのは最近のネガティブな思考が原因かもしれません。

ポエニー

ポエニーは〜、で毎回違うことを言ってる気がするのでアレですが、それだけ苦悩しているということです。実際、今も20行ほどの思いをここに書いたのですが、消しました。自分で書いた文章を読んで考えが変わったからです。
わたしは自分にとっての損得や将来的な策略なんかを想像するのがわりと好きで得意なつもりなのですが、ポエニーは正直よく分かりません。良いのか悪いのか。嫌いでありません。一番嬉しいのは、自分の判断で良いとする人がいて、その人が開発しつつ開発日記を書いてくれることです。わたしの知っている範囲なら助言はしますし、こういう機能があるといいのでは! というようなことをうるさいほど言います。
自分でやるのが良いのか悪いのか分からないから迷いますが、別にこだわりもありません。ポエニーは俺の全てだなんてことはないので、良いと判断できる別のことをしておこうと思うのが自然で安全な流れです。今していないはそういう理由です。ただ、たまにやろうかと思ってみたり、引きずっているのは確かです。いや、正直やりたいです。アアアア。

D

Dも好きです。最近なんだか気持ち悪いと感じるようになったC++やVMが気になってしかたがないJavaよりもずっといい言語だと思います。ポエニーは仕事から帰ったあとの22時ごろから作っていたのですが、2万行以上あるポエニーがWinnyの調査から入って2ヶ月で大体できて、どうにか動いていたのはDのおかげだと思っています。
でもいろいろと怪しいところにも気づいてしまっていて、GCはよくなったらしいですが(これもまだ確認してない)、GCにも絡んでいるThreadが怪しかったり、GUIライブラリもかなり怪しい(DFLはW系とA系のAPIが混じってるし、DWTはJavaのStringをutf8のchar[]に置換してるから日本語の文字数が変なふうに計算されてたり)など、1年くらいかけて本気でやるぜ! というソフトをDで作るのは怖いです。どの範囲まで自分で面倒をみなければならないのかという苦悩が。(コンパイラからライブラリのバグまで自分で直すという意気込みがないと無理)
わたしが英語が得意で、バグを見つけるたびに、超適切な解説とともに早く修正してくれ! と言えたらいいのですが、まだ無理。
だから、これからなにかするならJavaかなーと思っています。D使いたいとけど怖い。
でも使いたい。アアアア。
まず、日本に活発に動くD言語のユーザーコミニュティを作らなければならないと思ふ。今2ちゃんねるが一番でしょ。
やめたわけではなく、本気で使うのが怖いです。
Dさんは、遊び程度ならすごくいいけど本気になると危険な女です。(←言ってみたかった)

あと、TangoってGC内のThreadも置き換えてるの? Tango使えばいいのかな。Tango気になる。後で調べる。

BitTorrent

まず必要性とかの話をすると、世の中には特に必要ないと思います。仕様がオープンだし、もうたくさんあるし。Dで作ってもC++で作っても、使う人はそんなこと分かりません。
そうなると、自分の勉強になるか、なにかに発展させられるか、ということが重要になってきます。
BitTorrentFTPの置き換えには最適のプロトコルだと思っていますけど、互換性を保っていると、それ以上の進展はないような気がしています。見る目ない?
ダウンロードするクライアントを一箇所に集めてクライアントどうしてファイルを配りあうのは、ミラーサーバーを作りまくってクライアントを分散させるWinnyとは、全く逆の方法なので、これから新しいことをやるなら絶対にやっておくべきプロトコルだと思いますけど、実装まで必要かというと、そうでもないような気がします。不勉強なので間違っているかもしれないですが、BitTorrentってダウンロードのプロトコルですよね? そこだけなら内容的にはたいしたことなくて、各トレントクライアントが独自実装している検索機能なんかのほうが面白そう。
ということでやりません。あまり面白くない気がする。面白い話があれば聞かせてほしい。

アップロード専用のWinny

Winnyは強制的にアップロードする機能がないので作れません。
逆にダウンロードに特化したWinnyを作れば、ダウンロード元のノードからするとアップロード専用Winnyと言える。言える!
ポエニーは密かに並列ダウンロード(多重ダウン)が得意なので、同時DL数を10くらいに設定にして、ダウンロード候補のプライオリティを変更する箇所でダウンロード速度も含めて計算するようにすると*1、たぶんWinny互換の中で最速のDL速度を出せる自信が微妙にあります。
世界がこのポエニーだけだった場合、ダウンロードもアップロードもフルフルで活発に!
ただ、金子氏が守ろうとしていたバランスというのを壊すので、こういうのはしません。
生態系を破壊すると、自然愛好家から抗議が来ます。

*1:配っているソースでは優先度の計算にダウンロード速度を含めていない。速いノードにアクセスが集中してしまうため。