デブサミ2009 1日目に行ってきた
まとめ
開会の挨拶
- テーマは「つなぐ、つながる、そして未来へ」
- コンテンツ委員の挨拶
- 和田(t_wada)さんでした.
- 代打らしいです.
- 世代を超えて繋がることで,新しい見知を得られるのではないか.
- 和田(t_wada)さんでした.
- 資料は後日公開予定
クラウドによるソフトウェア開発のパラダイム(12-D-1)
- クラウド技術に Deep Dive する
- ソフトウェア開発のパラダイム
- パラダイムの途中変更は困難
- Scale-up vs. Scale-out
- 同期 vs. 非同期
- システム要件によっては途中での変更が出来ない
- Domain Specific Paradigm
- マルチパラダイム
- SOA/WOA/Component/OO/Model-driven/etc...
- SOAの問題はどこにあるか
- N-tier モデルの問題は?
- Azure クラウド OS
- アプリケーションアーキテクチャ
- Key-valu で非同期
- 非同期がキーポイントかな
- Key-valu で非同期
- クラウドにおねるパラダイム
- Azure の例
- データモデル Entity
- データ1行ごとにスキーマがあるような考え方
- Partition Key の例
- テーブルの水平分割
- Scale-out 設計の指針(Top-down)
未来へつながる言語〜ある言語おたくの視点から〜
- Ruby の世界へようこそ
- でも Ruby の話はあんまりしない
- 世界最初の言語はなに?
- FORTRAN(1954)
- 実は違う
- Plankalkul(1948)
- Z3 で動く言語
- ドイツ
- 例外処理がある
- 最初の実装が動いたのが 2001 年
- Plankalkul(1948)
- 初期の言語
- システム言語
- BLISS
- C
- C++
- 現代的言語
- C/C++
- Java
- Perl/Python/Ruby
- PHP はわざと入れていない
- ロストテクノロジー
- HPC
- 事務計算
- ベクトル
- 言語の進化要因
- 言語の進化
- 冒険
- 改良
- ここら辺で,一部で受け入れられるようになる
- 普及
- 広く受け入れられる
- 今,来ている言語
- これから来る言語
- APL?
- ベクタ処理
- 生産性が高い
- 後継言語として,K とか J とかがあるらしい
- この先は・・・・
Ruby 1.9 の現状と導入ポイント
- Yugui さん
Ruby 1.9 とは
開発体制
- Release Management
- Redmine
- 開発会議
- branch policy
- 1.8 系統
- 2つのブランチをメンテナンス
- 1.9 系統
- 1つのブランチをメンテナンス
- 3年保証?(検討中)
- パッチレベル
- 1.8 系統
- サポートレベル
- プラットフォームのサポートレベル
- Supported
- 継続ビルド
- メンテナ
- Best effort
- Perhaps
- Not supported
- ドキュメント
- Ruby リファレンスマニュアル刷新計画
- http://doc.loveruby.net
- HTML
- HTML ヘルプ
- man
- 標準化
- rubyspec
- The Standard You Trust
- 実装間互換性
- mspec
- http://rubyspec.org
- The Standard You Trust
- coverage 向上計画
- coverage を上げる
- Ruby Association
- 伊藤忠テクノソリューション
- サン・マイクロシステムズ
- 楽天
- イーシー・ワン
- ネットワーク応用通信研究所
導入の手引き
クラウドプラットフォームの実際
- クラウドコンピューティングを支持する理由
- マルチテナント
- インフラなどwシェアすることで,低価格で利用できる
- 従量課金制
- "サービス"を買う
- 伸縮性
- システム・インフラに関して,スケーラビリティがある
- マルチテナント
- 大きなアーキテクチャの変移が求められる
- 開発時間
- 技術の進歩
- ビジネスモデルの変化
- 顧客・企業毎にシステムを構築していた(シングルテナント)が,効率が悪い
- ハードウェアを管理して
- スケーラビリティを確保して
- 単純なマルチテナント(ASP サービス)では,カスタマイズ性に欠ける
- ハードウェアの仮想化だけでは,ハードウェアの管理が一つで良くなっただけ
- アプリケーションを開発するのに必要な部分だけを仮想化する
- 抽象化して API 定義して,かな?
- Google App Engine と同じ戦略らしい
- Mutl Tenant DB <- Application Engine <- Client Meta Data
- メタデータアーキテクチャ
- 今日の話は「システム毎の導入環境」
- ここからは Force.com についての営業話が多くなるっぽい
- Force.com
- アプリケーションサーバ + データベースサーバ + アプリケーションフレームワーク
- デモ中
ブラウザ Javascript 高速化 JIT バトル最終決戦 観戦ガイド
- JavaScript VM の高速化技法
- 夜の仕事がアマチュア JavaScript VM 評論家
- 疑問が3つ
- JavaScript は重いコンポーネント
SquirrelFish Extreme
- Apple が開発
- JavaScriptCore 高速化バージョン
- KHTML/KJS から派生
決戦の舞台
- すべて未リリース
- ソースコードから build
本題 : JavaScript VM の高速化
- 昔は実装をさぼっていたから,遅い
- 言語仕様も割と面倒
JSVM の高速化戦略
- JS 言語固有の面倒を取り除き,
- 既存 VM の高速化を取り入れ,
- Web アプリケーションの重い部分(ツボ)をチューニング
クラスがない
- クラスがあると?
- 構造がわかる
- 構造がわかると高速化できる
- 構造がわかる
- JavaScript は
- 実行時にプロパティが変わることがある
- 事前に構造が決まらないので,高速化できない
- JS オブジェクトはハッシュ表
- ハッシュ表は遅い(らしい)
- C++ で書くと 7 倍遅い
- ハッシュ表は遅い(らしい)
- 高速化のアイデア
- 仮のクラスを割り振ってみる
- プロパティが増えたら,新しいクラスを派生させる
JSVM には仮のクラスを類推するしくみがある
- どの VM もだいたい同じように実装している
- 細かな違いはある
メソッド呼び出しの高速化
3つの所見のまとめ
- 各社頑張っている
今後の見所
- ブラウザを含めたアプリの総合性能
- モバイル機器での性能
- 消費メモリ
- ARM CPU 向け高速化
- Internet Explorer の動向
- 今は遅すぎて・・・・
コミュニティから選出の LT 大会
- 吉岡さんとかドラ娘さんも着物です.
- ust 部隊がいます.
よしおかさんから伝えたいこと
- いろいろなコミュニティがある
- 開発者が元気な社会を作りたい
- コミュニティ間のコミュニケーション
- ナンパの場.ただし開発者.
勉強会勉強会
- 自作自演
- IT勉強会カレンダーを見よう
- 以上
- 勉強会勉強会のきっかけ
- OSC 2008 Tokyo/Fall での集まる.
- 主催者・幹事 重要
- 開催のメリット>開催"コスト"のデメリット
- 勉強会を主催しようぜ!
DevLOVE
- RubyKaigi の帰りに結成
- 開発の楽しさを発見・前進させよう.
- 明日の現場で活用できる気づきを.
- 現場と現場の間に壁はない
- 開発を楽しくする,楽しさを共有できる仲間を得るためのコミュニティ
日本Open Solarisユーザグループ
- 若い人大募集中
- AMP = LAMP - Linux
- OpenSolaris はノートPCでも compiz も動くよ!
Linux コンソーシアム
- クライアントをリッチにする部会「リッチクライアント部会」
- Welrich「よりリッチに」
- 漫才風でした.というか漫才でした.
オブジェクト倶楽部
- 沢田マンションとコミュニティについて
- 自作マンションの話
要求開発アライアンス
- 要求開発(Openthology)
- 要求はあるものではなく,開発するものである.
- Yahoo! Group で展開中
PFP
- PFとは
- プロジェクトの成功と,関わる人のやりがいの両立を目指す活動
日本Rubyの会
- いつものに戻った
- ネットのコミュニティもいいよ!
Anntena Project
- 漫才師2人の手下
- TechPeers 勉強会
わんくま同盟
- なぜ「わんくま」->中さんに聞いてください.
- 猫好きが多いです.
- 実はノンジャンル