カテゴリー別アーカイブ: Webとか

2017年 あけましておめでとうございます

あけましておめでとうございます。

干支は酉。

screaming_for_vengeance

Judas Priest
Screaming for Vengeance
のジャケ。

今年はわかりやすい。
The Hellion – Electric Eye は全人類が知ってる曲だし。
鳥といってフェニックスとかになると
パワーメタル系とかいくらでも出てきそうだけど。

2016年は
「インフラにどれだけ時間使うのよ」
っていうぐらいずっとAWSしてた。
CLIでshellも書くけどなんだかんだでブラウザでコンソール見て作業してたかなぁ。

自動化って意味ではCloudWatchにお世話になりっぱなし。
デイリーEBSバックアップをワンタッチでできるのが1番のお気に入り。超ラク。
エンジニアがやらなくてもいい。(重要)

GCPとAzureもやってみたけど、
ggった時のリソースの多さではやっぱりAWS。

困ってるのはネットワークまわりでわからんことが多いこと。
ここはもっとお勉強ポイント。

インフラも面白いところが多いけどやっぱりプロダクトのWebアプリケーションのコード書いてる方が楽しい。
ここは変わらないな。

あとは社内でのデプロイまでの作業ロジックを汎用性第一で色々テストしたい。
まずはDocker布教とか。

Laravelは思ったよりできなかったなー。
PHP7でのテストのついでにちょこちょこしてる。
CakePHP3ってどうなってるんだっけ・・。

言語はGoが流行ってる感じがするので
ローカルのうぶんつの中で動きを見て色々してみよう。

本年もよろしくお願いします。

Windows Safari 5.0.1 でBasic認証のIDとパスワードを削除

私は基本的に、ブラウザにIDやパスワードの類は保存させない人で
今回はうっかり「保存する」を選択してしまったので削除をしたい。
(パスワードって毎回打てば結構覚えるもんですよ。)

MacOS X だとキーチェーンとしてOSレベルで管理しているらしいので削除するやり方はあるのですが
Windowsの場合はよくわからなかった。

編集->設定
でもそれらしき項目はないし・・・。

ということで大した設定もしていないので
「リセットしてみるかー」と、
編集->Safariをリセット
を選んでみると。

safari01

なんだ、リセットしたい項目を個別指定できるじゃん。

safari02

ということで上記のように
「保存されている名前とパスワードを取り除く」を選択。
ついでに自動入力のテキストも選択して
「リセット」して解決。

ググると、MacOSでの削除方法ばかりが引っかかったので、エントリ。

Ubuntu – wubi 10.04 のインストール時に Permission denied

EeePC 1005HR。
ダメだろうなぁと思っていた、
9.10からのアップデートに見事に失敗して
Windows内に再インストール。

ubuntuになにかファイル残してたかなぁ・・・。
まぁいいや。
せっかくなので 10.04 にするべー。

・・・が、

http://wubi-installer.org/

から落としてきたwubi.exeを実行すると
「Permission denied.」
で停止→終了する。

エラーログを見ると、
desktopイメージを落としてくるところで発生している模様。

管理者権限でwubi.exeを実行してもダメ。
wubi.exeは10.04のisoイメージをtorrent経由で落としてくるらしいが・・・
wubi.exeだけの権限ではなさそう。

で、ここを参照。
OSError: [Errno 13] Permission denied: u’C:\\ubuntu\\install\ubuntu-9.10-desktop-i386.iso’

9.10ではこの問題は起きなかったんだけど。

しょうがないので
Remixイメージ
http://www.ubuntulinux.jp/News/ubuntu1004-desktop-ja-remix-20100512
を落としてきてマウントしたisoからwubiを実行。

問題なくインストール→起動できた。

そしてまた懲りずにアップデートマネージャーを起動して
カーネルも含めて全部アップデートしてみる。
ものは試し。

無事、起動。

wubi、
ubuntu1004-desktop-ja-remix-20100512
適応直後、2010/05/26 14:00時点のアップデートでは問題なし。

DevelopersSummit 2010 に 行ってきました

DevelopersSummit 2010
http://codezine.jp/devsumi/2010/
に参加してきました。

#devsumi2010

devsumi2010_01
devsumi2010_02devsumi2010_03

全セッション見たかったけど
事情により、2日目の途中から参加してきました。

以下、参加したセッションは、かなり詳細にメモをとりましたが
全部レポートすると膨大な量になるので箇条書きでポイントを。

【19-C-2】
本当に問題ないですか?~大規模RIA案件50社をこなしてきたプロが語るエンタープライズにおけるCloud&RIAアーキテクチャ

住商情報システム株式会社 / Curl事業部 Curlシステム開発部 マネージャー
島村伸之 氏

・クラウドはデータがどこに格納されているか明確ではないのでコンプライアンスに注意
・パブリッククラウドとプライベートクラウドを併用させるのもありかも
・パブリッククラウドの環境下においてパフォーマンスが悪くなることがある(レイテンシ問題)
・クライアント側で、できるだけ通信をしないように+通信するデータ量を小さくする工夫が必要

データ通信量に関しては重量課金なので、できるだけ小さくするのは納得。
ただ実際の案件レベルでは、このへんの調整に時間がかかりそう。
データの分散地域に関しては、今は日本国内のみとかできるのかな?
GoogleAppsとか、AmazonEC2とか。

【19-B-3】
三周遅れのXP -僕とドワンゴのXP-

株式会社ドワンゴ・研究開発本部 / java-ja
庄司嘉織 氏

・TDD=test driven development
・TDDという開発手法自体が品質をアップさせる
・ペアプロ大事。ソースコードの共有。XXXさんが書いたところだからわからない→コードはチームのものです
・コードの批判は人格批判ではありません
・大きなものは把握できるように小さくしましょう

Trac、Hudsonなど大体自分の社内環境と同じだったので今すぐにはじめられるなぁ。
社内のプログラマが増えたら・・・だけど。
何かを変えるのは大変なのでまずは自分から変わりましょうっていう考え方は好きです。

【19-D-4】
Flex開発を加速するFlash Builder 4の新機能紹介
アドビ システムズ 株式会社 マーケティング本部 デベロッパーマーケティングスペシャリスト / Flex User Group
轟啓介 氏

・FlexBuilder3 → FlashBuilder4
・テーマは3つ。生産性の向上、データ中心開発、UIコンポーネント→テーマの追加
・Gumbo http://opensource.adobe.com/wiki/display/flexsdk/Gumbo
・ボタンの作成、MXMLを記述し、ボタンの動作はActionScript3.0
・ecipceベースなのは変わらず
・コードヒントに説明がでるようになりました。
・Flash Catalystとの連携のお話
・AIRプロジェクトに変換可能

機能紹介なのでほとんど、既知の内容でしたが、
MXMLとAS3の連携はデモで、はじめて見ました。
予想通り、Silverlightと似た感じになってきた印象。

XAML→MXML
C#→AS3

BlendはXAMLエディタなので
Flash Catalystとは違う立ち位置かなぁ。
インターバルのアニメーションを作成できる点は共通してるけど。

【19-E-5】
C++0x、Ruby、ECMAScript5 言語の国際標準化について

株式会社ロングゲート / C++標準化委員会エキスパート
高橋晶 氏

株式会社ネットワーク応用通信研究所 取締役 / 日本Rubyの会
前田修吾 氏

サイボウズ・ラボ株式会社 / Shibuya Perl Mongers
竹迫良範 氏

・C++0x とは C++ の次期標準。
・開発効率と安全性を向上させ、数多くの言語機能&ライブラリが提供されます。

・ECMAScript、今は5th
・4thは大人の事情でナシ。ActionS(以下略)
・JSONを正式にサポート

・Ruby標準化委員会→できるだけコンパクトに。
・互換性の問題、非互換の部分は仕様書への記述を避ける。
・WGでは仕様の議論はしない

C++の「今」を知ることができた。
しかし、C++はforとか見ると長い・・・。
こんなの書いてたっけ・・?

あとは、前田氏が使っていた
Rubyのプレゼンテーションツール
Rabbit
http://www.cozmixng.org/~rwiki/?cmd=view;name=Rabbit
が気になりました。
やってみよう。

【19-D-6】
Programming Amazon Web Services/EC2,SQS,S3,SimpleDB
Senior Web Services Evangelist Amazon Web Services LLC
Jeff Barr 氏

同時翻訳。

・コンサルのお仕事をしてました→マイクロソフト→Amazon
・このサービスについての価格の見直しは常に行っている
・FaceBoookの12の人気ゲームがAWS
・エラスティッククラウド
・サーバの個別の設定はAPIにて行う
・AmazonマシンイメージとしてOSを選択可能。

Amazon Web Servicesに関する機能とラインナップ紹介。
AWSはPHPでincludeしてAPIの制御していたのが印象的。
Simple Storage Serviceが使いやすそう。

【19-E-7】
次世代Web標準 HTML5 最新動向

スピーカーは
デブサミのページ
http://www.seshop.com/event/dev/2010/timetable/Default.asp?mode=detail&eid=145&sid=883&tr=08_Web#883
にて。

・HTML5の仕様書にないものも「HTML5」と呼ばれているものがある。
・<input>要素の拡張←値のバリデートができます。
・ただ、サーバー側での検証は必須ですよ!
・<video>はコーデックでもめている(On2、mp4のお話かな?
・互換性を最重要視。新しい環境が古い環境を壊さないように。
・勧告はまだまだ先ですが、実装は進んでいます。

・Web Storage
・Web Sockets
・Web Workers
・Web SQL Database

以前、Googleにて参加させて頂いた勉強会での内容より、ちょっと進んだ感じ。
確かにborder-radiusとかCSS3なのにHTML5ネタになってしまっていますね。
Web Workers(他)の具体的なデモがあったので使い方のイメージができた。

以下は羽田野さんが会場のデモで使用したサイトのリンク

HTML5 Canvas and Audio Experiment
http://9elements.com/io/projects/html5/canvas/

Movement tracker
http://people.mozilla.com/~prouget/demos/tracker/tracker.xhtml

SketchPad
http://mugtug.com/sketchpad/

(HTMLとCSSだけで)Star Wars Episode IV: A NEW HOPE
http://www.gesteves.com/experiments/starwars.html

各言語のトレンドから、サーバ技術、Web系のネタなど色々、刺激になりました。
人が多いのも納得。
来年(?)のデブサミでも、今年と変わらず新しいことを追っかけていたいなぁと思いました。

devsumi2010_04

※後日、加筆・修正の可能性アリ。

PHP カンファレンス 2009 テックデイに参加してきました

PHP カンファレンス 2009
テックデイ

昨日のビジネスデイに引き続き、行ってきました。

#pcj09

2009_phpcon_enter2009_phpcon_first2009_phpcon_elephpant

9月5日(土)
大田区産業プラザ PiO

以下、会場でのメモをそのままアップするので
【加筆・リンク追加・文言修正する可能性があります】

去年と同じく、蒲田のPiOにて。
今年は懇親会にも参加できてよかったです。
普段はPHP触らない人や初参加の方が多いのはよいことですね。
色々なお話が聞けて刺激になりました。
昨日よりもMac率・iPhone率が多い多い。
Macだらけの職場にいるので参考になります。

スタッフの皆様、
スピーカーの皆様、
スポンサーの皆様、
参加した皆様、
お疲れ様でした!

—————–

オープニング
日本PHPユーザ会・安藤 祐介

事前アンケート結果

PHPカンファレンスに

参加したことがある
31%

参加したことがない
69%

APCについて
使用したことがある
24%

知っているがない
30%

知らない
46%

使っているフレームワーク

CakePHP 213
多くの人はフレームワークを使ったことがない

cakeとZendとSymfonyの人気は
ここ数年変わらず。

今回は海外ゲスト多数呼んだ!

知らないものを多数取り入れて日々の生活に役立ててください。

—————–

基調講演
日本PHPユーザ会・廣川 類

PHPの今とこれから

14年前
PHP1

PHP4
2000年

mbString統合
PHP4.1

4.4

5
で分岐

4.4は4.4.9でFIX

PHP5
WebDB
XML

PHP5.1
実行速度改善
PDO

PHP5.3
名前空間

PHP6.0
Unicode対応
レガシー機能削除

もしかしたら
PHP5.4

PHP5への移行

4.4.9の脆弱性のリスト提供と
SRA OSS による有償サポート

PHP5への移行が遅れた理由
4の完成度が高い
移行する理由がない
新機能へ興味がない

セキュリティ
・アプリケーション固有の脆弱性
・設定に起因する脆弱性
・システム固有の脆弱性

攻撃手段は毎日進化するので情報収集するしかない

基本を守る
最新の情報を見る

PHPのコードの品質は高い

コードカバレッジ→テストされていないコードには欠陥がある

PHP5.3
PHP6までのつなぎ
Unicode
レガシーコード廃止
ガベージコレクタ改良ー>メモリの使用効率のアップ
Late Static Call
動的変数
名前空間

国際化
Collator(文字列比較)、数値フォーマッタ

mysqlnd MYSQLドライバー改良

OpenSSLエクステンション

国際化・Unicode化

書き直しの範囲が大きい
パーサ
DB拡張

DB接続文字コード

Safe_mode
レガシーコード削除

PHP6ではUTF-16

PHP6ではmbstringの機能の多くがネーティブ実装

日本語対応は十分か
絵文字の問題
文字コード検出→不十分

正規表現
oniguruma(鬼車)拡張が提案中

mbstringは不要になるか
→残す。
ZEマルチバイト、関数のオーバーロードは削除

ICU版のmbstringを提案中

PHPが成功した理由
・コンセプト(初心者に優しく、現実的)
・コミュニティ

常に改善・改良を求めることで
オープンソースの活力が維持される

新たな開発者に参加してもらうことが必要
(若い人)

Google Summer Code
PHP勉強会

改善/機能強化の提案、貢献の方法・RFC
PHP本体
クラス・エクステンション
ドキュメントの整備

—————–

台湾PHPコミュニティの日々
Taiwan PHP User Group・江 明宗

Ubuntuを使っていた模様。言語は中国語(?)。

・PHP技術者の不足
・ハードウェアに強いがソフトウェアは弱い

他国、しかもアジア圏のIT関連の技術まわりについてお話が聞けたのは貴重かも。

—————–

APCによるハイパフォーマンスの実現
Facebook,inc・Brian Shire

Facebookの中の方

Mac使ってました。
Vim。
はやいなぁ・・・。

APCはPHPのコンパイルを行い
キャッシュして高速化します。

ソース

Lexerと呼ばれる空間解析

パーサ

オプコードが生成されて実行される

エクステンションによる例外処理

インストール
pecl install apc

キャッシュにはいくつか種類がある

apc.stat

ファイルを有効化するには
apacheの再起動が必要

現段階は実験段階です。
なんでも高速化するものではない。

またキャッシュになにも入っていなければ
またコンパイルするので
速くなりませんよ。

apache再起動の時点でキャッシュを生成する

もうひとつのキャッシュは
ファイル、変数を
キャッシュする方法

Lagy loading

複数のきゃっしゅして
おくこともできるので

ディレクトリごとに
apcのキャッシュを使うか使わないかを
選択することもできます。

会場でAPCを使っている人は少数。

高速化がうまくいかないときは
ほかのドッキングや設定を試してみてほしい。

PHP6に取り込まれるとかいってたけどどうなん?

PHP6以降に標準で搭載されます。

CakePHPと併用して高速になったよ!

開発に関して
何人か参加してるみたいだけど
どうやってコンタクトとってるの?雰囲気教えて。

準レギュラーが3人

やりとりはメーリングリストだね。
バグレポートでも活発に活動しているね

最初のオススメは
スタックのオプション
ドッキングメカニズムの設定
ユーザーの独自キャッシュ
だね!

導入にオススメのサイトってあるの?

基本的にPHPを使っていればおk。
大規模なコードベースだったらなのこと効果は大きいだろうね。

FaceBookだとリアルタイム性が重視しているけど
あまり変化がないようなサイトだと効果は感じられないかもしれないね。

ほかのキャッシュシステム使ってるけど
乗り換える場合は?

よくテストして。
コードの構造によってはバグがでるかも。
動かないようだったらおれに教えて!

サイトをはやくしたいなんて要望がまずでてくると思うけど
この点にとか調査したほうがいいのではないかと
アナウンスをしてほしい!

おk。

FaceBookの雰囲気教えて!
厳しい要求があるけど
クリエイティブ
社員1000人の中で
PHPのエンジニアは300人
言語はそのほかもできるよ!

半年前に導入試験
ZendOptがうまく動かず

うまくいかないことになっております。
新しいやつだったらうまくいくよ!

—————–

PHP を見える化する
新原雅司

~PHP Visualization~

findtwitterつくった。

会場でガンダム見た人は3割。

見える。僕にも見えるよ。

PHP 5.2.1
struct
zval struct

Profile

Xdebug

WinCacheGrind

Webgrind

XHProf

Function Trace

そしてブルースクリーン

—————–

CakePHPストーリー
CakePHPの何か安藤 祐介

RedmineのPHP版

CandyCane

CakePHP経験者
2/3

フレームワーク未経験
ちらほら

生産性の向上と
保守性の向上

コントローラー
component

モデル
Behavior

ビュー
Helper

Plugin

CakePHP2 (php5 only)

Cake3 (php5.3~):名前空間利用

CakeMatsuriやるよ!

すばやく快適な開発
オープンマインドでレベルアップ

—————–

PHP を「いじり」倒す 10 の方法
moriyoshi

PHPはテンプレートエンジン

SAPIモジュール
ZendEngine
Extensions

TSRM

ZnedEngineの構造

レクサー解析
Parser
Opcode emitter

zend_op
zend_op_array

znode

ここまでコンパイル

Virtual Machine

改造

–enable-debug つきで configure

Boost.PHP
C++

スライドが公開されました。
http://d.hatena.ne.jp/moriyoshi/20090905/1252159467

—————–

Q4MとFlareを使ってスケーラブルなサービスを作る!
漢祐介(nowel)

元Seaserの人

グラフ作成
vizoo

グラフの表示部分はswf

Q4Mとは

MySQLをつかったメッセージキュー

キューをInsertで入れる
参照はSELECT

APIのソキュメントはない

Flareとは

Webアプリで高負荷になりやすい箇所
DBに対してやりとりが多すぎるから。

Q4Mで
1台でなんとかする

Webさーばががんばる
・めーるを投げたり
・PDFをつくるとか
・xlsをつくるとか

スケールアウトしにくい
Session

これをSymfonyで実装

Flareをsymfonyのstorageとして実装したお話

—————–

Symfony, a web framework for professional websites
Fabien Potencier

プレゼンは英語で翻訳だけど
スライドが日本語なのがすばらしいです。

PHPによるMVS(フレームワーク)

yahoo.comのbookmark
yahoo.comのAnsews
del.icio.us
もSymfonyで構築されている

Daylymotion

プロのためのフレームワークです。

・Symfonyはまとまりがあるが、個別でも使えるクラス郡だ。

※スタンドアローンでも使えるコンポーネントも公式にあります。

YAML
Dependency Injection
Event Dispatcher
がすでにリリース

Symponyは複数のコンポーネントから成り立っています。

テスト
ブラウザのエミュレーションを使用して
をコマンドラインから行うことができます。

APCとの相性が悪くない

メモリ管理を設定しているYAMLをno-cacheに設定してみてー。

—————–

LT

印象に残ったものを。

PHPの全バージョンの挙動を試す
hnw

museum.php.net
に全バージョンのphpがあるよ!

PHP4の現状とセキュリティパッチサービス
大垣靖男

・まだ4でやってる現場に遭遇したことがないなぁ・・

初めてのPHP Extension
yokkuns

・「なんともう時間がない」

〆として最高でした。

PHP カンファレンス 2009 ビジネスデイに参加してきました

PHP カンファレンス 2009
ビジネスデイ
に行ってきました。

#pcj09

2009_phpcon_oracle2009_phpcon_title2009_phpcon_skyview

9月4日(金)
オラクル青山センター13F・セミナールーム

以下、会場でのメモをそのままアップするので
【加筆・リンク追加・文言修正する可能性があります】

本日はビジネスデイ。
技術的なお話はたぶんないと思っていたけど
会社で社員としてPHPを書いている以上
お仕事のお話はやっぱり興味があります。

—————–

イントロダクション
日本PHPユーザ会 トライコーン株式会社 鈴木則夫

はじめてカンファレンスに来た人と来た人がある人が半々くらい。
技術的なことだけでなくビジネスとしてPHPを使いたい人向けに
ビジネスデイをつくった。

新しいPHPビジネスのネタをなにか持って帰っていただければ。

—————–

NetCommonsでオープンソース・ビジネスモデルの実現
NPO法人コモンズネット理事 OSSコンソーシアム理事兼CMSビジネス部会リーダ オープンソース・ワークショップ 代表 永原 篤

事例:
WEBサイト(国立情報学研究所)・オープンソース・ワークショップ
グループウェア net commons
ポータル 深川七中エリアスポーツクラブ様

twitter@nagasheep

CMSのイベントを2ヶ月に1回開催→CMSビズで検索

WARPプロジェクト
LAMPP環境のCMSがWindows環境ですぐに試せるパッケージ

NetCommonsとは

汎用CMSという言い方がわかりやすい

WEBサイト
プライベートスペース
グループウェア

・掲示板
・キャビネット(資料置き場)
・機能はオールインワン+追加も可能
・LAMPP環境で動作

・国産
・インストールと構築しやすい
・開発環境がつくりやすい

ビジネスがしやすい

・NetCommonsは学校向けではなく
営利・非営利問わず用途は多くあります。

ライスンスは
バージョン1はGPL
バージョン2はFreeBSD

NetCommonsは商標登録してある。

NPO法人コモンズネットとは
NetCommonsの普及・構築・開発
NetCommonsセミナーなども開催している

質疑応答

IISで動かないんだけど

インストールの仕方かも?
今後はIISにも対応していく予定。

フレームワークはmayple。

汎用だとパフォーマンスが心配
1だと重いかも。2だと問題としてはまだあがっていない。

NetCommons
http://www.netcommons.org/

—————–

世界標準パブリッシングプラットホーム WordPress
WordPress 日本語チーム / Automattic, Inc. マクラケン直子

WPの生い立ち
b2→wordpress→wordpress.com

ソフトウェア wordpress.org
レンタルブログ wordpress.com

実績
Technorati TOP 100 ブログ

WP 36%
Blogsmith 14%
MT 12%
Typepad 7%

ダウンロード
2.8.x
全世界で526万回

7割が英語圏

日本でのダウンロード数
1日・約1700回

wordpress.comのアクセス数:全世界19位
wordpress.comのユーザー推移:約700万人

豊富なテーマやプラグイン

用途
・企業ブログ
 mixiエンジニアブログ
 eBay
 Yahoo!

・メディア
 Wiredブログ
 Techクランチ

・テーマ
 P2(twitter風テーマ)
 BuddyPress(SNS用テーマ)

将来性

世界的に人気がある
(WordCampというイベントを開催)

活発なユーザーコミュニティ

・WordBench.org
・勉強会・イベント
・ビジネス向け事業者ディレクトリも計画中

WordPress=世界中で誰もが自由に使える

wordpress.com
大量のトラフィック分散しているシステムは実は公開している
メモリーキャッシュ・・・etc

みんなでノウハウを共有しましょう。

【Ust】
http://www.ustream.tv/recorded/2101299

WordPress
http://ja.wordpress.org/

—————–

eZ Publish ディスクール
– エンタープライズWebCMSに求められる機能とその実現 —
eZ Systems Japan Business Development Manager 藤田 拓

http://ez.no/jp/ezpublish

eZ Publish
CMS

eZ Publish,海外のWeb Idolにて3回大賞を獲っている

堅牢性と拡張性+オープンソース

エンタープライズは個人ではない。
イントラではどんどんやっていこう!

・ディスクールとは
制限がある中での発言や情報発信ができる

WebCMSに求められる5大要素

・コンテンツ投入
 ・ワークフロー
 ・アセット管理(バージョン管理)
 ・ユーザー管理・権限管理
・コンテンツ出力

CMSツール分布

OpenCMS
Typo3

システム連携

・Webからのコンテンツ投入
・複数のアップロードやwordファイルのインポートに対応。

事例
ELLE

セキュリティとバージョンアップがやばくなる
ブログやホスティングはままでつくれるよ!

eZプロジェクト
eZ Teamroom

ライセンスは無料!

オープンソースは怖い

バグ

公式のサポート

技術的な話

CouchDB
を使っている

スケールアップが楽

Oracleをサポート
MySQLを変換

OracleベースのeZデモを近日中に公開します。

eZ Publish
http://ez.no/jp/ezpublish

—————–

Oracleで加速させよう!PHPのビジネス活用
~スケーラブルで高可用性でクラウドで~

日本オラクル株式会社
マーケティング本部
シニアマネジャー
伊東裕揮

買収という戦略をとっている
・・・Sunさんとか?

PHPは人気ありますね。
・言語習得が容易
・オープンソース、ツールが揃っている。
・何かあったときにサポートする人材が多いというのは重要。

オラクルはPHPもサポートします。
・PHP OCIドライバー開発
・PHP Developer Center

Webサイトで求められるのは
・短期リリース
・キャパシティ拡大→急激に人気がでてからのキャパシティ拡大が容易なこと

OracleとPHPの問題点

・Oracleは高い→安いのもあります!SE1(約63万円)
開発ライセンスは無償です。
OTNから無償でダウンロードできます

・無償なのもあります!
XE:商用利用可能です。
1CPU 1GBメモリ、1 Databese、4GBデータ領域

無償ツールがそろっています。

Oracle SQL Developer(GUI DB管理)
Oracle Application express
Oracle VM(仮想化)

Oracleは難しい→カンタンです。
いまはGUIでできます。

・インストール
・運用管理

・無償のトレーニングを揃えています。
OTN掲示板

インターネットセミナーの開催
70~100
セキュリティやチューニングの方

とっかかりとして

Amazon EC2

PHP+Oracle XE

Oracle XEは無料です。
AMIイメージが利用できるのでインストールは不要。
Amazon EC2は(比較的)お安いです。

Amazon EC2

AMI
デモ

amazon EC2
AWS Managimant Console

GUI
でのSQLを流す

JALとヨドバシの検索速くしたよ!

Oracle
使いまわしできるライセンス

なぜ

基本的にスケーラブルな拡張

Oracleは安いもの、タダのものもあります。
Oracleは技術者育成もタダです。
とりあえずamazonEC2やってみませんか?

————————————-

ソーシャルメディア GREE
グリー株式会社 田中 良和

個人で趣味的に運営
2008/12に上場
役職員108名・平均年齢29歳

GREEはSNS+ソーシャルアプリ
SNSページビュー増加→広告メディア収入
SNS連動型ゲーム→有料課金収入

ソーシャルアプリは可能性があった
既存のゲームではなく
ソーシャルなオリジナルのゲームを作成したかった。

みんなが常に接続できている状況は
携帯だからできるという発想。

MMO的なゲームを携帯電話で→できたのが2007年。

釣り
ペット育成ゲーム

プロモーション

多様なプロモーションを展開してみた。
マスプロモ-ションをする会社にしたかった。

コミュニティ監視

・パトロール
・健全サイト

変なメールがこないなどの条件が
サイトのクオリティを決めると考えてた。

月間、純増100万ユーザ

日本人のほとんどはPC持ってない。

携帯ならほとんどのユーザにアピールできる!

PC、携帯、どっちが好きとかじゃなくて。

男女半々
地方ユーザーが多い

年齢:20代→30代(全体の4割)が多いのがポイント

よいサービスをつくっていくには
利益が出ないとまずい。

ネットの利用はPCからモバイル中心。
PCユーザは減るという予想。

使いやすい・楽しいという定義が変わっていく。

コミュニティがコンテンツを融合する。

「寝ながらできないと流行らない」

アプリ設計思想

短時間でも長時間でも
初心者もヘビーユーザーも
1人よりも複数の人がおもしろい
無料でも有料
すべての年齢・性別
シンプル
リアルでもバーチャル
継続して開発、改善し続けられるチーム力が最も重要。

エンジニアとしてもずっと耐え続けることができる精神が必要。

プラットフォームでもサードパーティでも。

今後

クロスプラットフォーム
ソーシャルアプリへ分野を拡大
グローバル化

————————————-

45分で分かる、安全なWebアプリケーション開発のための、発注・要件・検収
HASHコンサルティング株式会社 代表取締役 徳丸 浩

徳丸さん、PHP勉強会でお世話になりました。

脆弱性の責任と契約について
発注者側にあるというのが今のスタンス

ただし、判例があるわけではないので要注意

発注者は自衛のために要求仕様にセキュリティ要件を
盛り込んでおくべき

・提案を求める
→あいまいになりがち。

・詳細な仕様を出す
厳密に→コンサルタントにつくらせてしまう

・検査仕様を提示する
第3者がコンサルする。

脆弱性の名前を列挙する
対策の質を問うことは難しい。

実装方法を指定する方法
既存ソフトの流用やフレームワークの使用に制限が生じるとコスト増の原因になる。

検収の方法を指定
コストは高くなる。

・オススメのRPF
基本はベンダーに提案してもらう

開発言語、ミドルウェア
フレームワークを考慮したセキュアな開発体制の提案

セキュリティ的な機能の実装

脆弱性を作りこまない体制の提示を求める

セキュリティ検査にパスできる根拠を説明してもらう
※検査仕様が明確になっている必要がある

納品物としてセキュリティ検査結果を添付してもらう

検収時に自らセキュリティチェックをしてもらう

セキュリティ要件について

対策はサイトに関してはどれも似たようなものになる

リスク分析は手間のわりに効果がない

重要なのはデータベースに決まっているので
わかりきった資産の洗い出しをするよりも、
「対策を選ぶ」ようなアプローチの方が効果的

・採用
・不採用時のリスク
・代替コントロール

受託案件では
Windowsなケースがある。

脆弱性対策と開発プロセス

SQLインジェクションやクロスサイトスクリプティングなどが
「ないこと」という要求は、仕様としてもりこみにくい

リスク分析の結果で脆弱性対策をする
ものではない
→常にするべき

セキュリティ機能と
セキュリティバグは分けて考える

セキュリテイ要件とはなにか

・セキュリティ仕様の例を出す。

・セキュリティ機能の実装は、要件定義からウォーターフォールで粛々と実施

開発標準と教育
・開発標準で定義

・開発標準は一度すると作りっぱなしになることが多く
定着が難しい。

意識の持ち方→教育って大事。

開発標準として利用できるリソース
・安全なウェブサイトの作り方
・発注者のためのWebシステム・Webアプリケーションセキュリティ要件書

「また上野宣か」

方式設定のすすめ

HTML表示の際にライブラリ

コスト要素は
セキュリティ要件

・テスト

検査の話

セキュリティ要件にせよ、
セキュリティバグにせよ、
最終的にはテストで品質を保証する

ウェブ健康診断の仕様書を公開されています。

~実際に脆弱性のあるサイトのデモ~

契約にも注意しよう。

【資料がアップされました。】
http://www.hash-c.co.jp/archive/phpconf2009.html

ウェブ健康診断
http://www.nippon-net.ne.jp/cms/12,1284.html

Ubuntu 8.0.4 LTS に PHP5 をインストール

別になんてことはなく、DebianでのWebサーバ構築と変わりません。(たぶん)
WordPressを動かすための設定なのですが、備忘録的にメモ。

php5インストール
$ sudo apt-get install php5 libapache2-mod-php5

MySQLインストール
$ sudo apt-get install mysql-server
$ sudo apt-get install php5-mysql

OpenSSHインストール
$ sudo apt-get install openssh-server

phpMyAdminインストール
$ sudo apt-get install phpmyadmin

PHP GDインストール
$ sudo apt-get install php5-gd

apache再起動
$ sudo /etc/init.d/apache2 restart

ちなみに↑の手順でインストールした場合の
apacheのhttpd.confにあたる、apache2.confは
/etc/apache2/apache2.conf
に。

php.iniは
/etc/php5/apache2/php.ini
に入ってます。

PHPカンファレンス2008

phpcon2008_01 phpcon2008_02 phpcon2008_03

行ってきました。
http://www.php.gr.jp/seminar/20080721/prog.php

見たセッション

  • 10:00~ 基調講演
  • 11:00~ PHPでつくる ぐるなび
  • 13:00~ Webセキュリティ
  • 14:00~ PHP開発環境
  • 15:00~ ユーザ会活動報告/PHPネタの集め方
  • 16:00~ パネルディスカッション
  • 17:30~ ライトニングトーク

動画はcojiさんのニコ動のmylistで。
http://www.nicovideo.jp/mylist/7638087
マイクから直ライン入力っぽいので
会場のリアクションが伝わらないのがくやしい。
ustでもこんな綺麗だったのかな?

以下、個人的メモ


基調講演

処理速度
PHP 5.3 > 6.0 > 5.2 >>>>> 4.4

PHP 5.3
200810~リリース
PHP6までのつなぎ

ラムダ関数・クロージャ
一時的に記述したいときに有効
不必要に名前空間を汚染しない

zend Engine1との互換モード廃止

Pharアーカイブ対応
PHPアプリの配布が容易に

MySQL Native Driver I/F改善
メモリ使用率40% -> 高速化
DB I/F をPHPから管理可能

OpenIDサポート

名前空間
namespace
変数・関数名衝突回避
長いクラス名の記述が不要

Unicode
の国際化処理
書記素クラスタ
通貨などの単位
主にStringに対して
ただし、mbStringの未サポート

late Static Binding
下位互換性なし

文法の拡張
3項演算子の簡易版
goto文

PHP自体のコード品質は比較的高く、改善されている。
>テストされていないコードには欠陥がある
コードカバレジはまだまだ低い

PHPのイメージキャラクターは像です。
>そういえばマンモス本・・・w
名前はellephpant・・?

PEAR1.3サポート終了
PEAR1.7

php_CodeSniffer

PHP6はUnicodeでも触れた部分で
mbstring
のサポートはしっかりしてるかが懸念材料

PHP5は4年たってるのに普及率が4割だけ
なのに6となると・・・

PHPでつくる ぐるなび

7億2000万ビュー/月

店舗データはXML+Oracle

内部エンコーディングはUTF-8

PHP4:9割
PHP5:1割

ZendFramework
マルチバイトの不具合が多く、社内独自実装あり

SimpleXML

>>ZendFrameworkのマルチバイトは私もハマった一人です。


Webセキュリティ

SQLインジェクションのみのお話だったので・・あまり;
「広く浅く」とご本人もおっしゃっておりました。
IPAの中の人のお話を直接聞くのは初めて。

PHP開発環境

Zendさんのお話。
EclipseベースのPHPに特化した製品、
Zend Studio のPR。

それよりも気になったのが
お金払いたくない人向け版w(?)の
PDT
http://www.eclipse.org/pdt/


ユーザ会活動報告/PHPネタの集め方

組織自体がフリーダム。

似たような組織のルールを
映画版の「踊る大捜査線」で見たような気がする。


パネルディスカッション

一番楽しみだったセッション。
これは動画を見てもらった方が面白いと思います。

>>パネルディスカッション「激論!PHPの次に学ぶ言語はこれだ」
http://www.nicovideo.jp/watch/sm4033336


ライトニングトーク

途中でExt JSの話がwしかも短いw
Hackathonでなにがおきたか?>大きい文字って素敵です。
PHPプログラマ・エンジニア育成のポイント>オチがついてよかったです。

「次回は祝日ではなくて平日に開催を・・」
ってアンケートに書くの忘れた・・・orz


2008/07/23 12:07 追記

秋元@サイボウズラボ・プログラマー・ブログ
に、このエントリーをリンクして頂いております。
ありがとうございます!

もっとマシなレポートを書けばよかった・・(;・∀・)
時間を見つけて全体の感想を別でエントリーしなおそうかな。

サイト修正・2008-02-10

2008/02/10
teon-factory.com 修正

  • tumblrの「LINK」カテゴリの入れ替えですごいミスをしていたのを修正。
  • 一部のコンテンツのRSSを出力する際に
    LinkURLにhtmlspecialcharsが適応されておらず
    厳密に正しいFeedになっていなかったのを修正。