I have something to say about the buzz word "From Java to Ruby"

12
copyright(c) 2008 kuwata-lab.com all rights reserved. I have something to say about the buzz word "From Java To Ruby" JavaからRubyへ」について、どうしても言いたいことがある makoto kuwata http://www.kuwata-lab.com/ RubyKaigi2008 LightningTalk:

Transcript of I have something to say about the buzz word "From Java to Ruby"

Page 1: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

I have something to say about thebuzz word "From Java To Ruby"

「JavaからRubyへ」について、どうしても言いたいことがある 

makoto kuwatahttp://www.kuwata-lab.com/

RubyKaigi2008 LightningTalk:

Page 2: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

ATTENTION注意

‣ This session is not related with the book "From Java to Ruby" at all.本発表は書籍「JavaからRubyへ」とは一切関係ありません。 ‣ Content of this session is completely my

original.本発表の内容は発表者によるまったくのオリジナルです。  

Page 3: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

What goes "From Java To Ruby"?何が「JavaからRubyへ」なのか?

Write in Ruby ≠ Think in RubyRubyで書く ≠ Rubyで考える

Change your mind from Java to Ruby

考え方を Java から Ruby へ

Change your code from Java to Ruby コードを Java から Ruby へ

Page 4: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Write in Ruby ≠ Think in RubyRubyで書く ≠ Rubyで考える

‣ 10 years ago:

 ‣ Now:

 

Is history repeating itself?同じ歴史を繰り返してないか?

Cobol programs written in Java syntax10年前: Javaの文法で書かれたCobolプログラム

Java programs written in Ruby syntax今: Rubyの文法で書かれたJavaプログラム

Page 5: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Change your mind about "Project"プロジェクトに対する考えを変える

‣ It is stupid to overemphasize beginners初級者偏重は大間違い

• Don't shackle experts上級者に足枷をするようなことがあってはならない

‣ It is much stupid to brag how large your project is大規模自慢は愚の骨頂

• Proud how much your system make people happy自慢するならどれだけ役に立ったかを自慢すべき

Page 6: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Overemphasis of beginners is stupid初級者偏重は大間違い

Outcome, Gain

Programmers Experts Beginners

Ruby's main target Java's main target

80 20

It is those who get large gain that should be taken count of成果を多く出している人間ほど重視すべき

Page 7: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Don't shackle experts上級者に足枷をしてはいけない

Don't leave beginners as beginner初級者を初級者のままにしてはいけない

A student's code: (生徒のコード)

You should use "if" statement because ternary operator is not easy to understand for everyone. 三項演算子は誰にでも理解しやすいとは言えません。if文を使いましょう。

http://www.seshop.com/genba/yazawa/archives/06.asp

A famous Java teacher says: (著名なJava講師のコメント)

out.print(ans < yourans ? "smaller" : "bigger");

Page 8: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Bragging about project size is much stupid大規模自慢は愚の骨頂

What is large? (何が大規模?)

• Data size (データサイズ)

• Code size (コードサイズ)

• Number of users (ユーザ数)

• Number of developers (開発者数)

"Large code" and "many developers" are the result of a lack of ability and effort to simplify 大規模になるのは物事を簡潔にする能力と努力が足りないから

←BAD

←BAD

Page 9: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Lack of ability & effort to simplify簡潔にする能力と努力の欠如

‣ Develop common features individually共通化できるのに別個に開発

• Example: Implement internationalized address form of customer, supplier, employee, ... in different way respectively. 実例: 顧客、仕入先、社員、…の住所入力フォームを個別に国際化、しかもそれぞれ別の方法で。

Page 10: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Lack of ability & effort to simplify (cont')簡潔にする能力と努力の欠如(続き)

‣ Ballooning features due to bad designまずい設計のせいで機能が膨れ上がる

• Example: name-identification between suppliers and customers is required to support balancing out of credit and debit, because master tables of suppliers and customers are not integrated. 実例: 顧客と仕入先のマスターが別なため、売掛と買掛を相殺するために名寄せ機能が必要(マスターが統合されていれば本来必要ない)。

Page 11: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Conclusionまとめ

‣ Change your mind "from Java to Ruby"考え方を「JavaからRubyへ」

• Write in Ruby ≠ Think in RubyRubyで書く ≠ Rubyで考える

• It is stupid to excessive emphasis to beginners 初級者偏重は大間違い

• It is much stupid to brag how large your project is大規模自慢は愚の骨頂

Think by yourself自分の頭で考えよう

Page 12: I have something to say about the buzz word "From Java to Ruby"

copyright(c) 2008 kuwata-lab.com all rights reserved.

Thank you