Developers Summit2008

デブサミいってきました!!
隣の会社の若手エンジニアと先輩エンジニアといってきましたよ。
いやいやいや、行ってよかった。

Joel on Developers Summit 素晴らしいソフトウェアを作るという事

いわば、いきなりの本命です。
会場で先行販売の本を買って、サインまでもらってしまいました。。。。


Joel Spolsky曰く
素晴らしいソフトウェアを作る方針として以下の3つを気にするようにする方が良いとの事。

  • 人を幸せにする
  • 感情を考慮する
  • 美学にこだわる
人を幸せにする
  • 学習性無力感(鬱病の原因の一つらしい)ユーザに感じさせてはいけない。
  • コントロールをユーザーにあたえること、つまりユーザに主導権を与える事が必要
  • 瞬間的にフィードバックを与える事でユーザは主導権を持っていると感じる。
感情に考慮する
  • 意外なところに答えがある。
  • 某社の車の安全率が低いという事がわかり、某社は安全な車のブランディングを作る必要がでた。
  • では安全な車とは??
  • 車高が高い車は実は危険である、しかし、車高が高い方が安全に感じる。
  • 車の内部の角を無くしエアバッグ
  • そしてドリンクホルダーをつける。なぜか?
  • 母親にご飯を食べさせてもらう時、我々は必ず、暖かい飲み物があった。
  • つまり車にドリンクホルダーがある事は、感情的に安全に感じる。
美学にこだわる
  • 実はiphoneは機能的にはすばらしくはない。
  • ファッションとユーティリティーはトレードオフの関係にあるのでは?(フランスとアメリカの古い建物の非常階段を比較)
  • では、建築でいうところのモダンアーキテクチャ(シンプルにこだわる)は?→UNIX
  • しかし、ユーザーがもとめているのは、もっと幸せにあふれるようなビジュアル(例、macOS)
  • つまり、まだまだ、コンピュータアーキテクチャには美学にこだわる隙間があるのでは?
そしてもっとも大切なのは?
  • misattribution(誤帰属)
  • (女の子とジェットコースターにのると、心拍数があがって、好きなんじゃないかと誤解するあれ。)
  • 例としてトイレに行きたい時に観た映画(早く終ってほしい)
  • 良い音楽とかがなっていれば、良いプレゼンだったと思い込むんじゃない?


っていうか、ジョークを交えたりして本当に面白くて、よいプレゼンテーションでした。
素晴らしすぎる。

David Intersimoneと日本のRubyのコミュニティが、オープンソースの現在と未来について語る会

はい。隠れRubistの僕です。
いくつかのRubyコミュニティーのパネラーの皆さんの発言のまとめです。すいません。

  • Rubyをどうやって広げていくか?
  • Ruby←→Railsでうまくリレーションがとれていない?
  • Rubyで大丈夫なの?と心配する人もいるが、10年前のJavaよりぜんぜん良い。その時もJavaで大丈夫なの?って話があった。
  • そして利用者が増えれば増えるほど、状況は改善されていく
  • COBOLRubyを提案したりする状況がある
  • ネガティブな人はいつもいる。
  • 気長に協力してほしい。
  • アジア諸国でも注目されている。

普通のRubyプログラマに贈る、Rubyプログラミング講座 青木峰朗

はい、青木さんです。僕は彼の本、大好きなんですよね。
本当に分かりやすく書いてあるし、なにより"ふつうの"という感覚が好き。


なんでも、3/28にふつうのコンパイラという本が出るかもしれないらしい。
マジで期待してます!多分、発売日に買います。


そして内容ですが、やはり期待通りというか、考え方の指針になるようなことや、
知らなかった!!ってことが多めで!!


終った後、話しかけたかったんですが、いや、むしろサイン欲しかったんですが。
人見知りなのでやめておきました。

protected
  • JavaC++のprotectedとは違うよーという内容!ええええ!そうだったのか。
pとpp
  • ppはrequireしてつかう。デバッグが観やすく表示される。
  • デバッグにはinspectを使うように。
unless/untilをつかおう
  • 意図をそのまま表現できる
  • メソッドの前提条件の記述によいよ。
  • 終了条件を明確にかけるよuntil

なるほど、、、たしかに。。。。

モジュールのネスト
  • モジュールを名前空間として使う。
  • 第一レベル、アプリケーション名と同名モジュール
  • 第二レベル、クラス名
  • これ以上はネストしない。ネストしすぎない。
ファイル名とクラス名
  • クラス名をファイル名に(小文字にして)
  • ネームスペース(モジュール)を使った場合「ネームスペース/クラス名.rb」
  • 関連するクラスは全て一つのファイルに入れる。Javaのルールとはちがうけども。Javaじゃないし。
  • ネストは深くしない
大クラス主義
  • 例. array スタックだし、キューだし
  • 例. stringはいろいろつかえる。バッファ的にとか
  • うまく行ってるから、、良いんじゃないかな?
  • なんか、モノシリックVSマイクロカーネル ににてない?
  • 結局、バランスではないかな。

モノシリックVSマイクロカーネルについては以下を参照!
それがぼくには楽しかったから (小プロ・ブックス)

クラス分岐をsendで代替する。
  • sendはメソッドを呼び出すメソッドです。
リフレクションを使ってRubyのバージョンを埋める。


Rubyはプログラム実行時にクラスを定義できる。
それをオープンクラスという。

次世代ウェブフレームワークの幕開け〜ステートフル始めました/君が僕を望むなら僕は君を忘れない 庄司嘉織

myロールモデル(何だそりゃ) id:Yoshioriです。

いやーもう、カンファレンスの内容なんていちいち説明しません。
ジェダイなんですよ。
いやぁジェダイだね。

エンジニアのマインドを速い馬(フォードの例)の例で説明してくれました。

早い馬の例は以下を参照
アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣

  • みんなで変えていこう。「誰か」なんて存在しない。自分から変える!
  • 発言していこう
  • 間違える事は決してマイナスじゃないよ


ちなみに、内容は

のこと。

ギャビンキング、カッコいいな。もみあげキマリ過ぎです。
ヨシオリさんもそうですが、ああいうカッコいい大人になりたいね。

JavaScript Tips & Technique 天野仁

id:amachangですね。

資料もあとで必ずwebにあがりますので、説明は不要かと思います。

id:amachangのプレゼンは何回か聴かせていただいているんですが
なによりうれしいのは、だんだん内容が理解できるようになってきたってことだ!!
嬉しい!!




ふと思ったんですが、今回はかなり内容が理解できました。
以前はこういうカンファレンス参加しても、理解がなかなかできなかったんですが。


やはり解らなくても、どんどんこういったカンファレンスに参加していく事で、
知識というのはだんだん深く、そして広くなっていくのだなぁという事を自覚できました。
もちろん継続的な学習は必要なのですが、こういったカンファレンスが、
結果的にモチベートしてくれるので一石二鳥です。


みなさんもぜひ上司に頼み込んで、カンファレンスに行きましょう!


サンクスです >マネージャー