WEB+DB PRESS Tech Meeting行ってきましたので、レポートです。資料等後日公開されますので、詳細はそちらをご覧下さい≧(´▽｀)≦。

六本木はわかりにくいですねー。割と迷いました。

会場は机なしですが、無線LAN有です。ニコニコで配信されるっぽいので、映りたくない人は逃げた方がいいみたいです(笑)。









JavaScript Tips & Technique 天野さん JSの10年間の暗黒時代

FlashもJavaScriptも勝利者

2005年まではFlashの独り勝ち→Ajaxの登場

JSでもできること ラスターグラフィックス (canvasの利用) ベクターグラフィックス (svgやvml) アニメーション (GoogleのOSSのサンプル)

今でもJSでできないこと Sound、Movie、Cross-domain通信 video要素、audio要素、XMLHttpRequest level 2 で、なんとかなるかも

XMLHttpRequest level 2 外部アクセス機能。access-controlもある

先行実装 → Firefox 3、Opera 10

JavaScriptの利点 → SEO GRDDL, microformat Bookmarklet 等

JSDeferred による非同期通信

非同期処理が必要な場面 イベント処理、重い処理、アニメーション

JSはスレッドも継続もないので、非同期処理は苦手

重い処理の場合は、setIntervalで0秒指定で要素を再描画させる

イベント処理、通信処理などでやり方が様々でめんどい

JSDeffered とは？ 作者: cho45 数十行

使い方 Defferred.defineする .next( 〜 ) で、処理をつなげる .wait(0)でレンダリングさせる loop( 〜 ) で繰り返し処理 whileは、next(argument.calee)で表現 他、parallelとかtry catchの書き換えとか

まとめ JSDeferred使いましょう ソース読みましょう

JSDeferred面白そうです。でも、JS自体全然使ってない人なので、まずはjQueryからやらなきゃorz

SIビジネスに未来はあるか！？ 羽生さん インフルエンザかもしれないそうです;￣ロ￣)!! SIerがDISられまくっている

暴言自主規制(笑

結論: SIerには未来がある

danさんとニアミスしてたらしい

去年まではWEB+DB Pressの皆勤賞 仕事と直結した記事 vol.3 でFlushをアプリに使うことを書いた → 叩かれた vol.9 でRhino*1の記事 → disられた

スターロジックさんの紹介 → 100%元請け

実績→Flashでの金融系ミッションクリティカル、業務

DISられっぱなしのSI業界 3k、日本だけ、技術力ない、受託だとつまらない、学生に人気ない、最先端じゃない 忙しいのは、儲けてるから 技術力はめちゃめちゃいる → 大手に勝って無茶を叶えるための技術力。政治力でどうにかなるほど甘い世界じゃない 流行じゃなくていい。嫌な奴は逃げた方がいい。

問題の核は？？ 経営がない。社長をDISれ！(給料が大事だからDISれない) コネじゃなく、自分でお客さんを取らねばならない 自前で物を作れない ← ラーメン作れないラーメン屋がありますか？ 結果として、肉体労働の時間売りになる

お客様はいる どこに頼んでいいのかわからない → 大企業(N・F・H・I)に電話するしかない 値段の相場がわからない → 大企業だと、億単位とか;￣ロ￣) 話が通じなさそうで、相談できない → きちんと親切に聞きとること 困ってる人=お客さんは、いっぱいいる。

SIビジネスをIT化せねばならない 一流のサービス業は、IT化している(セブンイレブン、リッツカールトン、サウスウェスト) SIもサービス業 → 自分たちの生産性をITで高めなければならない

身の回りから変える コミュニティは幻想 周囲の人の64倍の仕事 普通の人の8時間でできるのを1時間でやる 自分の1時間+他人の世話7時間を、1時間でやる 商売できる人と、組む 喜んでもらう物を作る

今すぐこれを 自社の愚痴を言うな、書くな → 同類しか集まらなくなる 会社の連中と挨拶 → 素晴らしい人が居るかもしれない 具体的に考える → どの案件に、この技術をどう適用できる？ 愚痴を書くなら、技術をブログに書く

よいプログラムを多くの人に よいプログラムが生産性を高める → この喜びを、普通の人々の普段の仕事へ

ペンタブで書きながらプレゼンってかっこいい！ 羽生さんは噂には聞いてましたが、初めて話聞きました。話し方も上手で、とても面白かったです。





うちではこんな感じです 〜 Linuxロードバランサの活用事例 ひろせさん repcached ← memcachedへレプリケーションのパッチ

ロードバランサとは？ 大量アクセスの処理、サービスの無停止運用

2001年9月 ロードバランサなし。コールドバックアップ。 走って火を入れにいく

2001年12月 商用アプライアンス製品を導入 LB落ちたら最後

2002年10月 2台でアクティブ/スタンバイ ロードバランシングの勉強ができた

2002〜2004 bonding等 常に改良を続ける DSASと命名

2004年7月 LVS → mjd!? → 調査、検証 開発環境でLVS

2005年2月 LVSを本番運用へ メタ情報一元化、ネットワークブート、ストレージサーバ(DRBD+keepalived) 、bonding＋RSTP DSAS 2.0(笑)と命名

ロードバランサ LVS → WEBサーバ(数台) HTTP, SMTP, FTP, XMPP(Jabber) 等のバランシング

keepalivbedの利用 L4でのロードバランス IPVSの制御、サーバの死活監視 VRRPによる冗長化(keepalivedがVRRPを喋れる)

keepalived.conf VRRPの設定 仮装サーバの設定 リアルサーバの設定 KLABでは2500行とか(￣Д￣;; 一元化された構成情報(独自のもの)を元に、keepalived.confをPerlスクリプトで生成 tomcatの設定とかも生成してるらしい

LVSの負荷は？？ CPU使用率: Sys < 1.00、 User < 0.15 → 余裕のよっちゃんいか

MySQLのスレーブへの分散も、LVS アプリでやると、スレーブの一覧が必要。死活管理も必要。 内側のLVSとして、外側のと分けている

LVSのいいところ 金銭コスト ソース読める。tcpdump。足りないもの実装。 安定している。VRRPで冗長。3年くらいへんな落ち方をしたことがない*2

LVSの欠点 設定インタフェースが貧弱 商用サポートなし

なぜそこまでやる？ → 寝たい、いじってて楽しい

オープンソースで色々できる ロードバランス 冗長構成 最小構成からはじめて、育てる (自分のPCでVM入れてLVSとかから始めて、徐々に本番へ持って行く)

参考書 WEB+DB PRESS Vol.37 インフラ管理の書籍執筆中らしい(KLab + はてな)

LVSのソースは、読みたくてもどこを読めばいいのやら・・・。手がかりがあると嬉しいです。





受託開発を楽しむ。 〜 もっと「ソーシャルに」仕事する！ 岡島さん プロジェクトの成功、が興味関心

受託開発の醍醐味 → 羽生さんに持ってかれたので、省略w たった一人の顧客、チームプレイ重視、QCD*3の明確な縛り Quality縛りに燃える 落としどころを決めるのは楽しい

品質を高める方法 Productive Bugs を増やす

Productive Bugsとは 成功に貢献するバグ、生産的バグ スモールベースボール → アウトの生産性(送りバント、犠牲フライ)

生産的なバグ 単体テストで、レアパターンのバグ 結合テストで、運用に問題のあるケース 実際のデータでのみ発生する問題

非生産的なバグ データのオーバフロー 未入力チェックの漏れ デグレ

バグ曲線 理想→生産的なバグを多く保ち、非生産的なバグを減らす。最後は収束 普通→生産的なバグが少なく、最後まで収束しない

生産的なバグをいかに多くするか TDDで生産的でないバグを減らす イテレーションで生産的なバグの発見チャンスを増やす 質の高いテストケースをたくさんもたらすソーシャルチーム

TDD → 和田さん参照(笑 非生産的バグを減らす → TDDにより、結合テストに持ち込まない 生産的バグを増やす → レアケースなどの発見

バグ発見のチャンスを増やす 結合テスト以降のテスト回数を増やす アジャイルプロセスでは受け入れテストの頻度を増やしている

生産的なバグを多く産むには 質の高いテストケースを増やす → イテレーション計画、テスト計画 お客様との関係の多さ → ソーシャル志向チーム

一般的案受託チーム 強いリーダーシップ型、コマンド＆コントロール、リーダーの窓口能力 メンバーはリーダーの影

ソーシャル志向 弱いリーダーシップ、コラボレーション、メンバーの主体性 お客様のビジネス、システム全体に"関心を持てる"メンバーを増やす(でも、影にしなきゃイケナイ人もいるとのこと)

リーダーの4タイプ別攻略法 ←これもソーシャル バリバリ → オンリーワンな右腕を目指す サクサク → 甘えすぎない よしよし → 期待を上回る成果をしめす ふむふむ → ひっそりと協力する(プロジェクトがこける可能性が高いので)

受託本(仮)を執筆中らしい 2008春

バグを増やすの定義があいまい*4だったので首をかしげる部分も多かったですが、バグを価値によってわけるのは面白いと思いました。



