9月14日、
なお、
- http://
www. ustream. tv/ channel/ php-conference-a - http://
www. ustream. tv/ channel/ php-conference-b - http://
www. ustream. tv/ channel/ php-conference-c
今年はWordCamp Tokyo 2013と共催で、
今年のスタッフTシャツは次のとおりです。テーマが
基調講演「PHPの今とこれから2013」(日本PHPユーザ会 廣川類さん)
昨年と同様、
今回のPHPカンファレンスのテーマは
基本的なPHPのおさらいしました。
- リリースから100万→2億人ユーザー
- スクリプト言語では一番人気
- W3tech.
com 2013年9月より、 サーバサイドプログラミングの81%くらいはPHP。2012年9月より3%増加 - PHPバージョン分布として、5.
3が52%。昨年に比べ、 5. 2から15%以上5. 3へバージョンアップした - 5.
3では大きな機能改善が行なわれた
PHPリリースとPHP5.
- リリースサイクル1年、
ライフサイクル3年 (バグ修正サイクル2年) - 2013年6月の5.
5のリリースにより5. 3のEOL宣言
PHP5.
- 速度改善5~10%
- ジェネレータ構文
- 大量の反復処理を行なう場合に使用メモリ低減が可能
- パスワードハッシュ
- ポイントは、
標準化されたこと。トリッキーなコード、 わかりにくいものを使わなくて良い。従来はsalt文字を作るのが面倒だった。パスワードのリハッシュなどもサポートされるようになった。UTF-8がより安全に。
- ポイントは、
- オペコードキャッシュの基準搭載
- 5.
6にキャッシュがつくことになっていた。コンパイルしたものをメモリ上にキャッシュをして時間短縮をする。Zend社がOptimizerを搭載。Zend OPcacheに改名。オペコードキャッシュのみサポート、 APCより高速。Zend/ bench. phpのさらなる高速化、 他の言語より遅いと言われてきたが速くなっている。
- 5.
PHP5.
- 2014年6月に出る
- PHP5.
5と同様に小幅な改訂の見込み - 内部演算子オーバーロード実装
PHP開発の今に関しては、
- Rasmus 語録:問題を解くためのシンプルなツール
- PHP開発にはロードマップがないと言われるが、
柔軟性がある。
PHPの未来については、
- TIOBE Indexの話
- ZF2がPHP人気上昇の理由と分析
(Wordpressをはじめとするアプリの広がりが理由かも) - Webの進化に柔軟な対応
- 高性能かつ現実的な解を提供する
- スケーラブル:ブログから最大級のSNSまで
最後に、
基調講演の後は各会場で一斉にセッションが始まります。
CMSアップデート
各CMSを覚えて帰ってください!
baserCMSはECworks 代表 滝下真玄さんによる発表です。国産
Drupal Groupsは阿部正幸さんが登壇しました。Drupalは政府系のもので、
GeeklogはGeeklog Japanese代表の今駒哲子さんが解説しました。日本人コミッターは2名です。ソフトウェア関連の法律ブログGroklawはGeeklogで作られてます。
NetCommonsはコモンズネット理事の永原篤さんによる発表です。管理画面がとにかく使いやすそうでした。
Novius Open Sourseは水野史土さんによる解説です。日本語化に際しては、
WordPressは10周年、
そしてEngine Yard 安藤さんによる司会で行なわれました。
inside pixiv's infrastructure(ピクシブ株式会社 久保達彦さん)
PHP conferenceステージではピクシブのインフラ担当である久保達彦さんよりpixivでのPHPの利用について講演がありました。
pixvは多くのイラストレーターに親しまれているイラストコミュニケーションサービスです。画像をたくさんpixivではアプリケーションクラスタとコンテンツクラスタがありますが、
メインのコードはPHPで書いていて、
PHPのデータを他の言語から取得するために専門チームによってAPIを開発しており、
他にも、
PHPは今でも一番使っていて、
PHP初心者セッション2013(PHPユーザ会 有限会社アリウープ 柏岡秀男さん)
有限会社アリウープの柏岡さんにより、
講演の前半は次のことを紹介しました。
PHPの基本:
- HTML埋め込み型スクリプト言語
- サーバサードスクリプト
- サーバー内でhtmlに変換され、
実行される
PHPの得意なこと:
- その1:HTMLとの親和性が高いこと→PHPのところだけ抜き出して書ける
- その2:WEBに関連する関数が豊富→setcookie関数、
header関数など - その3:メジャーOSSの多くがPHPでできている→ブログのWordpress、
CMSのDrupalなど - その4:マニュアルがすばらしいこと→関数の解説なども豊富
(※PHPハンドブックもオススメ!)
PHPの苦手なこと:
- その1:サーバに通信してもらわないと仕事ができないこと→JavaScriptなどとの違い
- その2:PHPが使えるサーバが無いと動かない→自分で設定しないといけない。PHP自体のアップデートなどにも対応しなければならないのは大変
- その3:高速ではないこと→高速のレスポンスや大量のデータの処理はできない
- その4:PHPだけでリッチなページが作れる訳ではないこと→jQueryなどデザインの知識も必要なことも多い
PHPでできること:
問い合わせフォームから直接メール送信、
PHPを実際に使うには?
Linux、
すぐに使えるPaas:
Windows Azure、
最近のトレンドは
PEAR
フレームワークの利点として、
- 毎回、
同じようなコードを書かなくてすむ - XSS, CSRF, SQLインジェクション等の対策
- デザインと機能の分離ができる
慣れれば
比較的メジャーなフレームワークにはCakePHP、
これらのフレームワークはとりあえず
また、
最後に習得を目指すべきスキルとやってみると良い課題を取り上げました。
PHPerとして必要なスキル:
- サーバの知識
(Linux、 Windows) - データベースの知識
(MySql、 PostgresSql、 ORACLE) - Webサーバ
(Apache、 nginx、 IIS) - フレームワーク
- フロントエンド技術
(HTM、 CSS、 JS)
やってみると良い課題:
- LV1:Wordpressのテーマカスタマイズ
- LV2:問い合わせフォームの作成
- LV3:フレームワークのチュートリアル
- LV4:Amazon APIやTwitterを使ったプログラム
- LV5:壮大なアプリ
モデルとの向き合い方:ドメイン駆動設計体験ワークショップ(PHPメンターズ)
PHPカンファレンスでは数少ないワークショップです。時間最後まで居られないのが残念ですが、
DDDの概要
PHPでDDDは適用可能で実用段階になってきている。前提として、
- メンテナンスしづらい
- テストができない
- コードが読みづらい
特にコードが何故読みづらいのかというと、
つまり、
そして、
DDD実践方法として
DDD実践方法として、
- ユビキタス言語
- モデル駆動設計
その上で次の順番で学んで行けば、
- ドメイン辞書
(用語集のようなもの) - ドメインモデル ミニマムビルディングブロック
- ユースケース起点
(ユースケースに始まる設計)
実際にやってみよう(ワークショップ開始)
実際のワークショップです。テーマとして
この後、
ミッションクリティカル&ハイパフォーマンスシステムにおける技術統合と運用の勘所(株式会社VOYAGE GROUP アジャイル戦略室 / 株式会社Zucks アドネットワーク事業部 こしばとしあきさん)
株式会社VOYAGE GROUPのこしばとしあきさんよりPHPがハイパフォーマンスシステムでどのように活躍しているかについて講演がありました。箇条書きでまとめます。
こしばさんについて
- スマートフォン向けクリック課金アドネットワークZucksのフルスタックエンジニア
- 東京ruby会議の実行委員長
- PHP Matsuri2011の中の、
闇PHP Matsuri2011の首謀者
システムの概要
- フレームワークはsymfony、
Gaucheなど要所要所で使い分けており、 PHPだけでなくservletも利用している
インフラ
- AWS
- 手順書を整備すると作業の再現性がなくなるのでテンプレートを定義しているCloud Formationを利用している
- ネットワークは金をじゃんじゃんかけて富豪構成で組んでいる
モニタリング
- glows forxestを使用している
- 事前に定義する必要なくいきなりデータを投げるだけでグラフを描画してくれるので便利である
工夫
- 多少バッチが遅れてもかまわないけれど
「配信ができないこと」 「計測ができないこと」 は絶対さけなければいけない - S3から広告情報を取得しているが、
取得失敗してもキャッシュから古いものを配信している - fastcgiで先にレスポンスを返した後にログに書き込んで、
別プロセスがDBに書き込みをしている - この部分にはfruentedを使うことにより、
事実上のリアルタイム処理を実現している
PHP
- どうしてもパフォーマンスを優先したがために、
PHPをやめるといった手もある - スカラに置き換えて3倍早くなったという例もあが、
やはりPHPの良さというのも捨てがたい - PHPにも長所短所があるので、
動かして測定して、 「あなたがそれで良いと思えるなら選択すれば良い」
今後は新しい事業展開も考えていて、
Zend OPcacheの速さの秘密を探ろう(KLab株式会社 hnwさん)
APCより速いと話題のZend OPcacheですが、
- Zend OPcacheとはPHP5.
5から標準で入っていてAPCの代替として期待されている。Zendの商用製品をオープンソース化したもの。KVS機能が無いので困るという人はAPCu (KVSだけ切り離したもの) を使えばいい - バイトコードの最適化を行ってくれる
- バニラ
(何も弄っていない状態) でも結構速くなる - 仕組み上APCに比べて有利らしい
そもそも最適化って何?
Zend OPcacheの最適化は、
さらに詳しく
高度な最適化をしているのではなくて、
やってくれないこととして、
- 共通部分式の削除とかは削除してくれない
- ループの中の式を再度行わないようにすることはしてくれない
残念ながらgccとかはするのに、
APCと比べて…
APCはずっとベータです。高負荷サイトにて、
OPCacheはもう10年も経っている製品であるため、
未実装なものが多いので、
いよいよPHPerもリーンで行こう(tchikubaさん)
tchikubaさんによるリーン開発の話です。リーンで重要なことを中心に説明しました。
あらかじめしっかりXXするというのはアンチパターンであり、
事情により、
安全なPHPアプリケーションの作り方2013(HASHコンサルティング株式会社 徳丸浩さん)
通称
「PHPのライフサイクルにどうつきあうか」
PHPのライフサイクルにどうつきあうか
- RHELやCentOSのサポートパッケージで乗り換えていくのはあり
- centosはちょっと古いが無償で10年サポートを受けられる
strict sessions
- 大垣さんによって5.
5.2から実装された - 今はバグがあるが5.
5.4で直ると思われる - セッションを消してもセッションIDがかわらなかったり、
勝手なセッションIDが使えていたが、 それをセキュアなものに書き換えてくれるようになった - session regenarate idはこれからも必要と警告しました
パスワードの守り方
- saltをユーザーごとに変える必要がある
- ユーザー数×saltでパスワードパターンができるので総当たり攻撃が実質できなくなる
- saltの回数を任意回数
(1万回とか) 計算してハッシュの計算するストレッチングが有効である - 1文字長くするとストレッチング90回分に相当するので長いパスワードをつけるべきである
- password_
hash関数がPHP5. 5から追加されたのでハッシュ化がしやすくなった
HTML5のセキュリティ
後半は今流行のHTML5について、
- DOM bases XSS
- JSON HIJACK
- JSONでのXSS
- CSRF
- postmessage
- 混ぜるな危険
- ローカルストレージに攻撃コードを埋め込み、
ページ表示時にその攻撃コードを実行するなど。それぞれの脆弱性に対応しても合わせると攻撃が可能になってしまう場合がある
- ローカルストレージに攻撃コードを埋め込み、
今ドキのPHPの書き方 -PHP逆引きレシピ改訂版-(PHP逆引きレシピ 改訂版 執筆チーム)
PHP逆引きレシピ 改訂版 執筆チームによる発表です。本書は5.
本当に怖いパフォーマンスが悪い実装(Yahoo!JAPAN Masakazu Nagayaさん)
Yahoo! JAPANのMasakazu Nagayaさんによる実装のパフォーマンスに関する講演です。次のことを取り上げていました。
- 実行回数が多くなる処理に注意
- 賢人でもミスがある
- 賢人でもテストを省くことがある
- ツールの支援による継続的なテストは 課題解決のための良い方法のひとつ
- Yahoo! JAPANではJenkinsを使用
きちんとツールを使ってパフォーマンスの良い実装を心がけようと思いました。
Twilioを使ってPHPから電話をかけよう(Webサービスに新しい付加価値を) (市川快さん)
cakephperこと、
PHP×Twilio:
- 電話発信 電信API
(050番号取得) - ダイヤル操作、
録音、 音声再生、 テキスト、 スピーチ - SMS Voip連携
- 電話番号利用 490円
- 電話を受けてサーバ連携
- 電話番号取得
- SMS送信
- 1,匿名通話 Twillio電話番号
- 他者間通話
- 2,要素認証 bit forest
- Scutum SaaS型WAFサービス
Twillioの利点:
- Webサーバ連携が簡単
(短期開発) - 1つの電話番号で同時着信が可能
- 電話番号を使ってユーザ識別可能
- 他国のSMS事情を気にせず送信可能
セキュリティ:
- Twilioサーバからの通信の判別
- サーバにBasic認証をかける
- Twilioの署名を検証 SSL Siguniture
注意点:
- 自己署名証明書は使えない
PHPerのためのデータサイエンス入門(株式会社クロコス 柄沢聡太郎さん)
レットブルといえば@sotarok。
データサイエンスに関して、
そもそもデータサイエンスとは?
データサイエンスとは
この説明だけでも、
具体的には、
そもそもデータとは?
データにはデータベースやログなど様々なものがありますが、
ログ収集と分析の悩み
ログ収集と分析には様々な問題があります。
- どう集めて→ネットワーク帯域の問題
- ためて→ディスク容量の問題
- 取り出して→処理時間の問題
- 集計するのか→ビックデータ処理の問題
これらすべてがTreasure Dataを使えば解決できるそうです。
ということは、
クロコスでは実際、
PHPアプリケーションのログ収集
ログと言えばサーバーのログを思い浮かべる人が多いですが、
- どんなユーザーが?
:ユーザー登録情報 - どんな機器で?
:UA - どこから?
:GEO - いつ何をしたのか?
:URI/アクション
そのために登場するのが、
- 1カラム目:time
- 2カラム目:status
- 3カラム目:uri
- 4カラム目:user_
id
これを使うことで、
それではどのようなログの設計にすれば良いのかという点について3つのポイントを挙げました。
- 1. 1アクセス1レコードとなるように記録する
- レスポンス引っ掛ける。フレームワークに大体あるレスポンスイベントへのフックポイント、
SymfonyならonKernelResponseを活用すれば良いとのことです。
- レスポンス引っ掛ける。フレームワークに大体あるレスポンスイベントへのフックポイント、
- 2. 基本的なスキーマを決める
- LTSVっぽい名前にあわせておくと分かりやすいそうです。
- 3. アプリケーションの知り得る属性を非正規化してレコードに含める
- user_
idやsession_ idなどは万が一のときに備えてhash化しておくと良いとのことです。
- user_
分析
この後の分析のやり方に関しては、
この分析を経たら、
まとめ
まとめとして、
- FluentdやHadoopを使う
- Treasure Dataを使えばOK!
また、
- 1アクセス1レコードの非正規化ログ
- ログフォーマット自体の設計
- スキーマレスの活用
ElasticBeantalkで作るPHP動作環境(株式会社クリスク 染野修之さん)
クリスクの染野修之さんによるElasticBeantalkについての発表です。
ElasticBeantalkとは?
ElasticBeantalkはPaaSと呼ばれるものの一種です。Web上で実行環境を一括で構築できるため、
ElasticBeantalkの良さを次のように挙げていました。
- EC2,ELB,オートスケーリングの設定をWEB上で行うことができる
- PHP以外にもPython, Ruby, Node.
js, .NetFramework等をインストールすることもできる - ポートの追加も行える
- サーバーが複数台あって、
デプロイするのが難しいという状況であっても、 デプロイ機能を使って実施することができる - zipでアップロード、
gitでpushの方法でデプロイできる - 過去にアップロードしたバージョンに戻す事も容易
(自分はそのためにshを書いているので、 ちょっと試してみたいと思います)
以上、
MySQL Adminが見たDevsの常識、DBAは非常識(日本MySQLユーザー会 yoku0825さん)
こちらは日本MySQLユーザー会
MySQL4.0を使っているのですが、どのようにバージョンをあげればいいでしょうか?
- MySQL4.
0を使っている人は来場者には皆無 - データファイルに互換性があればmysqlを止めてバイナリーを入れ替える
- オンラインだと一個上のメジャーバージョンまでしかアップグレードすることができない
レコードが多すぎるのですが、どのように対処するべきでしょうか?
- 3,000万件のレコードは多くない
- innodbはinsert, delete, updateすべてにおいてinnodb_
boofer_ poolに載せる - クエリがチューニングされている前提でスケールアップ
- IOdriveにするくらいなら、
先にメモリを限界までつむ - メモリの方が大事なのでcpuは一個で良い
SQLレビューの意味を問われたですが、どうすれば?
- SQLレビューの文化がある会社の人は10人くらい
- レコード件数変わるとindexを見誤るのでデータが増えた時のことを想定してレビューしないと意味がない
- explainでDEPENDENT SUBQUERYはやばい
親テーブルと子テーブルで不整合がおきるのですが、どうすれば?
- 外部キーをいやがる人が多いが付いている場合が一番早かった
- 不整合を自動で直すのではなく、
そもそも不整合を起こさない
クエリが遅いのですが、どうすれば?
- 相関サブクエリ
- 外側のクエリを参照するようなサブクエリは重くなる
- 外側で100万個にしか絞れないと100万回実行するので重くなる
- explainが帰ってこないパータンはこれ
- インデックスが足りない
- andの左右は交換可能だからいつでもいい
- limitを使うならインデックスで先にソートすることが早い場合もある
- インデックス使えないとcountは重い
- パラメータがイケテナイ
- innodb_
boofer_ poolはデータ格納容量の75%に設定する - マウントアプションnoattimeを足すとファイルシステムへの無駄な書き込みが減る
- オラクルの人曰く、
クエリキャッシュはCPUの並列性が悪い
- innodb_
いけてないクエリを特定するにはどうすれば?
- スロークエリが出ないレベルでも5.
1以降はオンラインでlong_ query_ timeを書き換えられる - SHOW FULL PROCESSLIST を1秒感覚で連打して長く生き残っているクエリを注視
PHPカンファレンスにも関わらずPHPのことが一切出てこないセッションでしたが、
PHP 5.5ネーティブキャッシュの話(日本PHPユーザ会 廣川類さん)
廣川さんによるZend OPcacheに関する発表がありました。
とは?
Zend OPcacheは5.
ツール
どれくらいキャッシュを破棄されているかを調べるツールがあります。例えば、
データキャッシュは無い
OPCacheはデータキャッシュは無いので、
爆速が強調されていました。これは使いましょう!
フロントエンド制作向けビルドツールGruntをPHPバックエンド開発で利用する(石川将行さん)
石川将行さんからGruntについて話がありました。
PHP開発でGruntの使い道を知る
Gruntはフロントエンドでは標準的なツールになりつつあると言います。ですが、
PHPソースを監視して、ユニットテストを走らせる
PHPソースを監視して、
PHPUnitやLintを通すことができそうです。もう少し聞きたかったのですが、
PHPで稼ぐには。-高額給料を獲得した実際の資料を紹介します-(PHP技術者認定機構吉政忠志さん)
技術系のセッションが多いPHPカンファレンスの中で異質な存在として、
概要
- PHPは2.
44億サイトで使われている - PHP技術者20万人に加え20万人のPHP技術者になりたい人が居ると推定される
- 人気言語ランキング2位に上昇
- さらにPHP利用者成長率250%を誇っている
- プログラマの年収は平均400万くらいだが上級の人間は1000万を超える方が多い
- PHPエンジニアで年収900万以上が5.
2%もいる
PHP技術者が給料をあげるには何をするべきか?
技術力+企画力+文章力+性格力だとしました。
履歴書
- 大きい企業は給与のレンジがあり人に合わせて±50万円程度の差をつけている
- 人事が履歴書を見てレンジを決めていくため履歴書が大事である
- 良い履歴書とは自分がやりたい仕事に必要な分野の経験が記載されているもの
- 資格は離籍書に有効
Webから問い合わせれば、
執筆
- エンジニアは文章書くのが苦手な人が多いため、
ほかの人ができないことができることが重要 - 月間10本くらい連載を担当しているが学生時代は国語が苦手だった
- 最初の入り込みが難しいので
「こういう文書を書きたい」 という企画書を送ってメディアに売り込むのが良い
企画書
- 会社では企画書を作って稟議をあげていくため自分から企画書をもっていける人が強い
- 偉くなるほど企画書漬けになるので若い人ほどインパクトが出る
- 過去にパソナとかの社長にいきなり企画書を宅急便で送ったことがある
- 偉い人を対象にするほど時間がないので3枚程度で短く簡単にまとめよう
- 「あのヒット商品のナマ企画書が見たい!」
がオススメ - エンジニアであればコードとかサイト作ると良い
PHP技術者認定試験
- サイトはこちら
- 初級は学生から2年目程度を対象としている
- PHP上級は合格率6.
5%の難関試験となっていてPHPエンジニアとしての存在感は抜群 - 資格の王道で弁護士級に位置づけられた
最後にプレゼント企画として、
Vagrantで作るPHP開発環境 実践編(新原雅司さん)
新原雅司さんによるVagrantの講演です。サーバーサイドのことも、
ということで、
Vagrantについて次の事柄を紹介しました。
- Vagrantファイルはソースの中に入れてしまうが、
コミットはしないようにignoreにいれると良い - プロビジョニングをうまくやってあげるのが重要
- 良く分からないひとは、
ひとまずシェルで書いてあげると良い - シェルスクリプトで書いた内容をvagrantが実行してくれるだけ
- apacheのconfとかもファイルで準備しておいて、
置くだけ - PHPも実行できるので、
便利 - シェルスクリプトならばVagrantfileになんでも書けるし、
そこだけで終わる
またsynced_
クラウド環境については、
まとめとして、
- 1つのPCで様々なバージョンの仮想環境が作れる
- CIサーバーとしても使える
(使い捨て) - いつでも構築できる安心感
- 秘伝のタレを作らないでいける
いつでも誰にでも共有できそうな夢を見せてくれました。
PHP利用者のためのスクレイピング入門(sasezakiさん)
sasezakiさんによるスクレイピングの発表です。
発表された@sasezakitさんのQiitaへの投稿でPHPでスクレイピングという記事がありましたので、
サハラマラソンとWebエンジニア(ブリッジドット株式会社 佐藤雄大さん)
Fuel PHPでおなじみの佐藤雄大さんの発表です。今回はPHPとは関係がないサハラマラソンについてです。
佐藤さんはサハラマラソン、
最後に佐藤さんは
Let's mashup !! アイデアとWebAPIで大ヒットサイトを構築しよう(KDDIウェブコミュニケーションズ 阿部正幸さん)
阿部正幸さんによるWebAPIでを用いたサイトの作成についての発表です。
WebAPIとは
WebAPIは開発を効率的に行うための技術で、
注目しているWebAPI
注目しているWebAPIをいくつか挙げました。
- ゼンリンAPI
- 混雑状況やエリア指定人数がリアルタイム表示できたり、
1時間ごとにどれくらいの人がどこに居るかが取得できる。
- 混雑状況やエリア指定人数がリアルタイム表示できたり、
- 駅データ.jp
- 鉄道アラームで、
遅延していたとしてもアラームが鳴るようなものも作れる。
- 鉄道アラームで、
- dropbox
- ホームページをバージョン管理できる。
作りたいサービスがある!
そして、
- ログインはFacebook認証
- 通話システムはtwilio
- オンライン決済はWebPay
(かなり格安でクレジットカード認証のシステム構築ができる) - 内部はdrupal
(これはAPIではないですが)
PHPコアから読み解く定石の嘘ホント(ヤフー株式会社 蒋東龍さん)
このセッションではヤフー株式会社の蒋東龍さんより、
まず、
- 定石や数字・
理論の両方から計る必要がある - 数字はmkcrotime()で計測する
- 論理はスクリプトのオペコードを解析する
そして、
- 存在しないファイルをincludeする場合エラー制御演算子をつけるのとつけないのどちらが早いか
- エラーがいっぱい出ると遅くなるのではないかと思う人が多かった
- エラー制御演算子が有った方が早い
- エラー演算子をつけたコードは内部でBEGIN_
SILENCEとEND_ SILENCEで挟まれる - ある方がオペコード行数は多いが、
エラーがあった時は出力が減るので早くなる
また、
- ==と===で比較する場合どちらが早いか
- ===の方が厳密に精査するのでその分処理が増えるのではないかと予測する人が多かった
- ===が早い
- ===は型が違ったら何もしない
printとechoの違うを問う問題も出ました。
- printとechoどっちが早いか
- echoの方が早い
- intの中でechoを読んで戻り値1を必ず返しているから
蒋さんがマイクを持って客席に近づいていくとお客さんの顔が険しくなるのが特徴の楽しいセッッションでした。
フレームワークアップデート
様々なフレームワークがありますが、
ここでは各フレームワークごとに話をまとめます。
CakePHP
CakePHPの利用率はバングラディッシュがトップだが、
Codeigniter
Codeigniterは、
FuelPHP
Codeigniterの派生。日本語のドキュメントが多い。世界的には微妙だけど、
Laravel
Laravelのロゴはデジタルハリウッドに似てる。Laravel4はSymfony派生。2年しか経っていないが、
Phalcon
Phalconはとにかく爆速! Cで書かれていて、
Symfony
Symfony2は新しい技術を積極的に採用。ドキュメントが充実して、
yii
よりプログラマブルなCalePHP。共産圏で人気…でPHP5.
Zend Framework
Zendのライブラリの話をしているのに気づいてもらえない。ずっとリリースし続けている。カンファレンスとかも支援している。Zend Framework 2は1に対して見通しの良い改良を加えた。
まとめ
次のようなことを言及していて、
- 大きなものはSymfony
- PHP初心者向けのCodeigniterやFuelPHP
- 既存でたくさん使われているCakePHP
- Symfonyとの関係を維持しつつ成長を続けているLaravelやZend Framework
- いいとこ取りをしようとしているyii
- とにかく軽いPhalcon
PHPアプリケーションのバージョンアップ(株式会社paperboy&co. 栗林健太郎さん)
ぺちぱー・
先日、
つまり、
バージョンアップしないで放置すると、
- 便利ツールが使えなくなり、
- レガシーコードが増え、
- コメントを読まないと理解出来ない不要なコードが増え、
- ますます開発のスピードが低下する
このあたりのことはWEB+DB PRESS Vol.
バージョンアップの際、
バージョンアップに必要なものは次の事柄です。
- サーバーの構成管理
- PHPライブラリの管理
- 包括的なテスト
- 自動デプロイ環境
- モニタリングの仕組み
サーバーの構成管理は、
構成管理の方針では、
- いきなりすべてを管理下に置こうとしないこと
- 必ず本番環境に適応すること
- 今動いている本番をこわなさいこと
- できるところから少しずつやること
詳しくは
超実践的な導入法として、
また、
PHPのバージョンアップについては特にいい方法などないとしながらも、
まとめとして、
- 演歌に継続的に対応し続けるのはWebサービスの宿命
- 構成管理を、
小さいところから、 効果的に進める - PHPそのものよりシステムの複雑性の方が問題
- 永続的にバージョンアップできることが大切
詳細な内容はスライドを参照してください。
ライトニングトーク大会
イベントの最後に、
どのようなLTがあったのか、
まず最初のLTでは、
清野奨さんのLTでは、
宮川さんのLTでは、
日本アフェリエイト協議会の中の人である、
海老沢聡さんのLTでは、
一戸健宏さんのLTでは、
summerfiled84さんのLTでは、
山省さんのLTは、
酒井優さんのLTでは、
以上でレポートは終了です。最後までお読みいただきまして、