Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Matzにっき(2007-01-10)
[go: Go Back, main page]

«前の日記(2007-01-09) 最新 次の日記(2007-01-11)» 編集

Matzにっき

<< 2007/01/ 1 1. The Ruby Virtual Machine
2. matzrubyブランチ on Subversion
3. 大当たり
2 1. 一族集合
2. リクルート エンジニア適職フェア
3. フニクリフニクラ
4. Groovy 1.0 is there
3 1. nkf-utf8
4 1. Headius: New JRuby Compiler: Progress Updates
2. ユメのチカラ: マルチプロセッサ向けソフトウェアパラダイムとは?
3. Class Variables
5 1. asahi.com:米共和党、ロムニー氏が大統領選に始動
2. 絶版書籍、ネット閲覧可能に・政府が著作権法改正へ
3. Ruby declared TIOBE's Programming Language of the Year 2006!
4. JJ Club
6 1. スケート
2. 年賀状問題
3. るびま特別編
4. 著作権保護期間の延長問題を考える国民会議 - thinkcopyright.org | 保護期間「延長派」「慎重派」それぞれのワケ
5. eigenclass.org Happy 2007! Ruby mini-contest
6. Origin of Programming Language Names
7. 第4回 関数型言語とオブジェクト指向,およびOCamlの「O」について
7 1. かぜひき
8 1. 冬休み最終日
2. まつもとの弱点
9 1. 仕事初め
2. Ruby に今一番ほしいもの
3. Ruminations of a Programmer: Why I should learn Lisp
4. プログラミング2.0
10 1. セキュリティキャンプ・キャラバン島根
2. Ruby on Rails トレーニングプログラム
3. 打ち合わせ
4. 懇親会
5. あるJava使いの場合 - Javaを学ぶ価値
6. mapとreduce、あるいはマクロ不存在の理由
11 1. 日経Linux 2007年3月号
2. 日経ソフトウエア2007年1月号打ち上げ
3. [言語」XML and J2EE: Commodity Skills
4. jijixi's diary - Ruby の文法的欠陥
12 1. 丸山先生レクチャーシリーズ in 東京 2006-2007
2. 静的/動的言語
3. 2006年「Ruby on Rails」が愛された理由
4. local variables new scoping rule
13 1. 日経Linux 2007年3月号
2. On Ruby: Will rubinius Be An Acceptable Lisp
3. ホワイの(感動的)Rubyガイド
14 1. セミナリー補習
15 1. サン、Fortranに代わる新プログラミング言語をオープンソースに - ZDNet Japan
2. ITmedia エンタープライズ:まつもとゆきひろ−第3回:僕の存在価値はそこにある
3. InfoQ: Ruby Version of Refactoring In the Works
4. Groklaw - BSD - The Dark Horse of Open Source, by Brendan Scott, OS Law
16 1. クレイジーjavac? - 'Kitchen Sink Language'で仕様の試食を楽しもう
2. Steve Jobs はなぜ説得力があるのか
3. IBM 境界を越える: Ajax on Rails - Japan
4. IA32(x86)JITアセンブラ Xbyak
5. スライド
17 1. 第6回 OCamlの「モジュール・システム」
2. 出張
3. 人材募集
18 1. グーグルのクリス・ディボナ氏:「われわれはプロプライエタリソフトも重視している」 - CNET Japan
19 1. スターティア、独自CMSを「Ruby on Rails」に対応 開発を効率化
2. receiver, name, owner of Method object
20 1. リクルート エンジニア適職フェア 「理想のソフトウェア開発の現場とは?」
2. 『我らクレイジー☆エンジニア主義
21 1. バプテスマ会
22 1. steve dekorte - projects - open source - skipdb
2. なぜ実現しないネット放送--「品質論」唱える既得権益者の本音
3. Ruby Programming - 向Ruby之父学程設計
4. 「賞味期限切れ」のソフトよさらば。ようこそSugarCRMへ - 日本のITは世界を制す!?
5. Fork JavaScript
23 1. OSDLとFSGが合併、Linux Foundationを設立
2. Dynamic Draw
24 1. ALSA、音出ない
2. Lisp:S式の理由
3. Asoby: Aspect-Oriented Programming in Ruby - New Playground for Rubyists 2.0
25 1. ソフトウェア ジャパン2007−社会を変えるイノベーション−
2. mixiのようなSNS開発も夢じゃない?---ニーズウェルがRubyのトレーニング:ITpro
26 1. 帰宅
2. スタイラス紛失
3. 新年会
4. SRFI 89: Optional and named parameters
5. O'Reilly Open Source Convention 2007 July 23-27, 2007 Portland, Oregon
27 1. 画像ビューア絵箱@nekobooks
2. ウェブキャリアでWebエンジニアとしてのキャリアを磨こう
3. セキュリティキャンプ・キャラバン島根
28 1. リアホナ2007年2月号
29 1. 中身の見える言語
2. XML.com: What's New in Prototype 1.5?
30 1. forums.ps2dev.org :: View topic - Ruby on PSP
2. Practical Ruby for System Administration: Books: AndrBen Hamou
3. Open Tech Press | FOSSの理想郷ブラジルにイメージ失墜の危機
31 1. OSS普及には新しい価値観をもった人々がリーダーシップを--日本OSS推進フォーラム
2. Effective Debugging using Dave Thomas' ”Programming Ruby” - evolutionNext WebLog
3. 「松本零士氏 クリエーターの思い」著作権攻防
4. プログラマーの常識を学ぶ前に
5. xruby - Google Code
>>
Dr.Web 予測するアンチウイルス 持ち込み PC 対策でお悩みの方にオススメです。
ウイルス・スパイウェア検査・駆除 用ツール Dr.WEB CureIt! を無償配布中!

2007-01-10 [長年日記]

_ セキュリティキャンプ・キャラバン島根

なんと島根県でもセキュリティキャンプが開催される。1月27日。

本家キャンプとは違い、参加対象も限定されていないので セキュリティに関心のある人やWebサービスを公開している人は なるべく*1みんな参加した方がよい。

_ [Ruby] Ruby on Rails トレーニングプログラム

今回も初日午前中の講師。RubyとRailsの概要について。 会場がどの駅からも遠い。都会の人は歩くなあ。 私みたいな田舎者はドアツードアで車を使っちゃうから足が鈍ってて。

今回は出席者が多くて(25名)ちょっと緊張した。 Railsもろくに使えない私でいいのか、という気もしないでもないが、 言語設計者自身から講義を受ける機会はなかなかないということで、 土産話にはなるようだ。 優れた言語設計者が優れた講義を行うとは限らないのだが。

まあ、納得してもらえるならいいか。

_ [Ruby] 打ち合わせ

東京支社に移動。Rubyとコミュニティ支援などについて社外の人と打ち合わせ。 もしかしたら、本格的な支援が受けられるかもしれない。 ただ、我々「コミュニティ」側が組織体制が脆弱なので 経済的支援を受けても活用できないかもしれない点を改善する必要がある、かも。

その他にもいろいろと面白そうな話が出た。 今後はスケーラビリティ(いつも強調している生産性のではなく、性能の)も 重要になるかもしれないなあ。今のうちにいろいろ調査・研究しておく必要があるかも。 その辺は私(たち)では絶対的に経験値が足りないので、 いろんな人に聞いたり、教えてもらったりする必要があるだろう。

_ [Ruby] 懇親会

再びトレーニング会場へ。 立食形式で懇親会。

毎回トレーニング初日の夜に懇親会をするのだが、 きまってその後に質問が活発になったりして、 トレーニングが円滑になる。信頼関係は大事だ。

今回は会議室ひとつ借りて立食形式にしたのだが、 非常によかった。今までの居酒屋などでの懇親会も 食べ物はすごく良いのだけれど、席が固定されてしまうと 移動が面倒で話が進まない。立食形式だと いろいろな人と話はできるし、面白い話もたくさん飛び出すし、 今まで懇親会の中でも最良と言ってもよかったと思う。

担当の人に「次回からも立食にしましょう」とお願いしたのだが、 「会場の手配が難しくて、なかなか」とのことであった。 都内で立食形式で安くしあげられるところを調べる必要があるかな。

_ [言語] あるJava使いの場合 - Javaを学ぶ価値

「なぜJavaを学ぶ価値があるのか」という話。

プログラマ、システムエンジニアを職業とするならJavaは学んでおいて損はないでしょう。

「需要があり供給が不足しているから」

というのは理解できる。まったくもって正当な話だ。

しかし、その結果、

自分もそうしてジャバラーになったのです。

最初の現場には、経験2年以上のジャバラーはいませんでした。 それはそれは悲惨な開発になりました。

今考えるとバグだらけ、つくりもいい加減、 訳の分からないところでリフレクション。 もちろんまともにソースレビューできる人はいません。 それでも企業の基幹システムになってしまいました。

ということであれば、不幸なことだ。なにかが間違っていると思う。 おそらく間違っているのは個別のプログラマではなく、 もっと上の方で。

そのような不幸をこの世からなくせるか。 もし可能ならば、どうやって?

_ [Ruby] mapとreduce、あるいはマクロ不存在の理由

最上さんのところから。

最後のページより引用

今注目しているのはマルチコアへの対応です。これからプロセッサがコモディティになってきます。それほど遠くない将来に,机の上のパソコンでも64コアや 128コアのプロセッサが珍しくなくなる。そうすると,プロセッサコアへのタスクの割り当てはスレッドなんかでは不可能になる。自動化するしかなくなります。プログラミング言語で並列性をどこまで活用できるか。CやRubyのような手続き型言語ではなく,関数型言語が生きてくるかもしれません。

単にmapとreduceを加えれば良いのでは?と思ってしまった。

うーん、そうなのかなあ。Rubyのような言語においてmap/reduceが持つ可能性を あまり深く考察していないので、はっきりしたことは言えないんだけど。 それでできるっていうんなら、上記の発言は単なる私の不見識ですね。

もうちょっとmap/reduceについて勉強する必要があるかな。

もうひとつ、

マクロが無い言語ではプログラムしたくないと考える私のような人間からすると、Rubyにマクロを入れることを拒絶し続けることは前から不思議だった。マクロは言語作者の意図を超えてプログラミングのスタイルを変更してしまう可能性がある。これも同じくスタイルを破壊される事への忌避感が原因なのかも知れない。

こっちは当たりかも。マクロというのは要するに言語ジェネレータなわけで、 これを入れてしまうと言語はメタ言語になってしまい、 「その言語で書かれた」というプログラムを読解するヒントが少なくなってしまう。 それを嫌っているのは確かにある。

メタ言語が必要だったり便利だったりするケースは確かにあるけど、 日常的に使うものまでメタ言語だと、私の脳に優しくないので、 日常言語としてデザインされたRubyにはマクロは不要である、ということではないかと。

まあ、発言の背後の意図を憶測されることはまつもとさんにとっては迷惑かも知れないけど。だけど私も言語を作っている身としては、私のmap/reduce当然、マクロ当然という考え方のどこかに欠陥があるのかも知れないと、考えて理由が知りたいのだ。

理由は上の通り。繰り返すとmap/reduceについては不見識。 マクロについては日常的にメタ言語を扱うのは私が疲れるから。

背後の意図の憶測が迷惑なってことはない。どんどん憶測していただきたい。 違ってればそういうし。

*1  ところで、私の周辺は「なるべく」の代わりに「なるたけ」とよく言うんだけど、これって方言じゃないよね、きっと

本日のツッコミ(全12件) [ツッコミを入れる]
_ 福岡県産 (2007-01-16 07:19)

方言かどうかはわかりませんが、福岡のわたしの周りで一番多いのは「なるべく」です。
次に「なるだけ」、その次に「なるたけ」です。
どれを使っても難なく通じます。

_ まつもと (2007-01-16 08:20)

「なるたけ」、広辞苑には載ってました。

_ K.Tsuchiya (2007-01-16 20:36)

>おそらく間違っているのは個別のプログラマではなく、もっと上の方で。

>そのような不幸をこの世からなくせるか。もし可能ならば、どうやって?

やっぱりプロジェクトマネジメントじゃないですかね.
開発言語の経験が長くてもバグはいっぱい入り込むし.
リスク管理や品質管理がきちんと実施されるかどうかが重要だと思います.

_ まつもと (2007-01-16 20:52)

おっしゃることはとても納得できるのですが、それは同時に

  * 企業の基幹システムが
  * ろくなプロジェクトマネジメントなしに

開発されていることを意味しますよね。
そんな恐ろしいことが日常的に発生しているということなんですね。
それはそれは不幸なことですね。

_ たつや (2007-01-16 21:07)

>そんな恐ろしいことが日常的に発生しているということなんですね
割と日常なんじゃないでしょうか?
金融関係で何年も開発してきた会社の人たちに開発をお願いしたんですが、できあがったのものはボロボロのゴリゴリ。
必死に直してるところなんですが、今までどういうもの作って提供してきてたんだ?と思うばかりです。

_ 凡人 (2007-01-16 23:21)

>開発言語の経験が長くてもバグはいっぱい入り込むし.
全てのプログラマーが、こうだと思われていない事を、お祈りいたします。
>リスク管理や品質管理がきちんと実施されるかどうかが重要だと思います.
わたしは、この事以上に重要な事があるような気がしています。

_ kitaj (2007-01-17 00:26)

map/reduceとparallelismってそんなに安直な関係なんですかねぇ。
大学時代にparallelismをカジった私には素直には受け入れられません。

_ C-yan (2007-01-17 05:36)

> そんな恐ろしいことが日常的に発生しているということなんですね。
断言しますが日常的に発生しています(^^;;;
原因の根幹は丸投げと人月制でしょうね.
無能で期間がかかるほうが儲かるという状態でスキルの向上があるわけがない.

_ 田辺 (2007-01-17 22:13)

>わたしは、この事以上に重要な事があるような気がしています。
同意です。業界全体をどうレベルアップさせていくか、
非常に難しい問題だと日々感じております。

_ MMX (2007-01-18 10:11)

> マクロが無い言語では・・・
「マクロ」を広くとらえれば、on Rails のような仕組みも マクロと言える。
(Rubyにもマクロはある)
ソースの上で手軽に使えるマクロを、綺麗な作法で使いこなすことは出来なかったので、on Rails みたいな方向に行ったのでは。
マクロで充分なら Cや C++ はもっと平和のはずだ。
複雑なマクロ/テンプレートはデバッグしにくいです

_ まつもと (2007-01-18 10:32)

ここでマクロといってるのはLispマクロを念頭に置いてるんで、あんまり広くとらえすぎちゃうと論点がボケちゃいます。
「Rubyにもマクロはある」とか「マクロで充分ならCやC++のマクロはもっと平和」とかは、かなりムリのある主張に聞こえます。

_ 凡人 (2007-01-18 23:03)

田辺さん。ご同意いただき、真に有難うございます。

お名前:
E-mail:
コメント:
本日のリンク元
検索

«前の日記(2007-01-09) 最新 次の日記(2007-01-11)» 編集

RSS feed meter for http://www.rubyist.net/~matz/ Creative Commons License This work is licensed under a Creative Commons License.