日本PHP大會 – 第2天雜記

上午太緊張了,所以沒有即時記錄,現在開始慢慢回想那個空白的時光

這兒的主辦單位請了專業的翻譯,所以上午活動開始前,翻譯先約了我到咖啡廳討論演講內容,他的中文是在大陸學的,所以有時候台灣這邊的發音與習慣他也不是很熟悉,不過是個做事很謹慎的長者。

活動剛開始是由 Ando 開場,接著上場的是 mbstring 的開發者之一,他主要是講 PHP 的演變,內容應該很實用,只是當時我在準備席,比較緊張,因為這次日本的活動人數可不輸稍早前參加的 COSCUP 。在上場之後,因為需要講一句、等一句翻譯,所以沒辦法做太多搞怪的事情,不過也因為大部分的聽眾只會聽來自翻譯所講的東西,所以相對我的壓力就沒有那麼重了。後來陸續有人發問下面問題:

1. 在台灣的社群活動是不是也有城鄉差距,我回答,大部分的活動確實都在台北舉辦
2. 日本的網站目前開始有多國語言的需求,想要知道台灣有沒有類似的情況,我回答,在台灣,只要是大一點的網站都會想要試著發展簡體、繁體與英文等三種語言,因為台灣本身的市場狹小,所以這個問題很早就面對了。
3. 有人問到,在台灣常使用的 Framework 有哪些,我回答 CakePHP 有比較多人使用,還有 ZF 與 CI ,當然還有部份的 Symfony ,不過這時候有些人笑了,因為 Symfony 來自法國的講者也在現場,我就立刻說聲 I’m sorry ^^||

這台電腦很爭氣,電池剛好在我的最後一張投影片講完後沒電,系統自動關機,我就進入 Q&A 的時間,還好沒有出糗。無線網路也復活了,也許昨天是過熱吧?我也不知道,希望不會再跟我鬧脾氣。

在我的議程結束後,就是中午吃飯時間,下台後有兩位來自大陸的朋友主動過來打招呼,一位是來日本經營 SNS 社群網站(中日交流)與相關專案開發的,另一位是在日本留學、工作十多年的朋友,跟兩位一起去吃午餐,也很難得的在日本有機會講那麼多的中文。

下午第一個議程是來自 facebook 的講者,他也是 APC 的核心開發人員之一,針對 APC 的細節進行說明,因為我比較晚進入會場,坐比較後面,所以他講的內容基本上沒有聽的很清楚,不過投影片應該很清楚,回到飯店之後再找看看。

接著的講者是日文的講者,他講的內容有提到 xdebug 與 profiling 資料的檢視工具,投影片使用英文,在我回神的時候他就要進行 DEMO 了,看他一直在翻程式碼,但是不知道在講些什麼。原來,他是要展示 Windows 視窗的藍白故障畫面,不知道是攝影的,還是真的可以現場叫出那個經典畫面,現場拍手叫好。

講者部落格: http://1×1.jp/blog/

現在是中場問話時間,題外話,昨天那個美麗的接待小姐,今天化身為美麗的司儀,碰到的時候有問我會不會參加晚上的 party ,有這麼美麗的小姐問,我當然拒絕不了啦!其實兩天晚上都有 party ,昨天晚上是只開放給工作人員與講者的活動,而今天晚上的活動則是開放給所有人參與,可以看到更多美眉的活動當然要去啦!(女朋友還沒來,我單身 ;) )

另外,今天大家的穿著就比較輕鬆了,沒有那麼多的西裝、領帶,也有些妻兒出現,日本的小朋友很可愛 ;)

接著是 Ando 講 CakePHP ,穿著西裝外套裏面配上 CakePHP 的 T恤 感覺還蠻怪的呢…^^||

剛開始展示了從頭開發應用程式與使用 CakePHP 的差異,接著是強調 Model 對於資料庫存取的方便性,可以提高生產性、保守性?強調新手來學也是 OK 的。現場實際展示如何配置 CakePHP 應用,不過網頁伺服器不給面子,出了點狀況(網址打錯?),還好後來 OK 了。

針對進階的使用者, CakePHP 允許透過額外的 Component, Behavior, Helper 與 Plugin 做延伸,也提到了日本國內的 CakePHP 使用狀況,透過 Google Trends 展示逐年的發展情況,以及相關的書籍(有 10 本呢),

線上課程: http://d.hatena.ne.jp/i_ogi/20090418/1240044385

東京 PHP 聚會從 30 -> 50 -> 70 的變化顯示越來越多的人在使用,在國外講者前來的聚會還有到 130 個人呢,當時還帶了典型的蛋糕到現場。 Ando 也展示了自己去德國參加 CakeFest Berlin 的情況。他表示,這是個友善的社群,國內外都一樣,最後談到了 CakePHP 未來的發展,以及 10/30, 10/31 舉辦的東京 CakeMatsuriTokyo, IRC@cakematsuri ,歡迎更多人的參與。

下面這個講者是個瘋狂的人,昨天晚上他在吃飯的時候展示了自己用 PHP 設計的 Python 執行環境,雖然指令操作沒問題,但是執行效能很差,他展示了 用 Python 寫的費式函數, facebook 的講者直接輸入很大的傳入值,程式就出現記憶體片斷錯誤而停止執行,很有趣的互動。

他應該是帶來最多歡樂的講者,在投影片用詼諧的方式陳述了 PHP 這個程式語言,投影片也很華麗。接著講到了外掛部份、TSRM(Thread Safe Resource Manager),以及解釋 ZendEngine 的構造。 Compiler, Lexer, Parser, Opcode emitter, zend_op_array, zend_op, znode, Virtual Machine。接著以 htmlspecialchars() 這個函式的改造來示範如何深入 PHP 的核心,現場操作,感覺風險蠻大的,出現了兩次 compile error ,結果就暫時放棄這個。還有下一個,調整 autobox 這個神奇函式,這個已經事先準備好,所以安全過關。最後時間不夠了,所以關於如何製作 PHP 外掛就快速帶過。

接著介紹的是如何透過 Q4M 與 Flare 建立高擴充性的網站,作者是 seasar.org 的開發者,也推出了 vizoo 這個服務, vizoo 的背後就是使用 Q4M 與 Flare ,應用程式部份是使用 Symfony 。

Q4M = Message Queue for MySQL, 有點像是 MySQL proxy 的樣子,導入的環境在 MySQL 5.1 ;Flare = Memcached compatible KVS, 由 GREE 開發?可以使用 Tokyo Cabinet ,可以直接從 Memcached 轉移。簡單的說就是將讀寫分離,只在 master 寫入,接著透過 replication 分散到 slave 伺服器上進行讀取。

一般資料庫應用是直接將資料同步寫入,而 Q4M 的架構中不是同步發生的,資料的查詢都在 Slave 伺服器中進行,每 6 個小時將寫入的伺服器做替換的動作來降低風險。

Flare 的效能在圖表中似乎比 memcache 差?在同時 1,000 個連線時?當連線數量到 10,000 時, Flare 似乎有著比較好的成功率?

接著展示如何在 Symfony 中配置 Q4M 與 Flare ,Q4m 還支援任務的 priority 設定、 multi queue , Q4M timeout 最大 60 秒。

再來是來自 Symfony 社群的 Fabien Potencier ,下面的翻譯人員應該也是翻譯社的。

剛開始講者秀了一段日文, Sensio 公司的創始人,1998 年創業,現在主要使用 Symfony 與 Doctrine 提供服務。Symfony 是個 PHP MVC framework ,使用 MIT 授權,背後有來自 Sensio 10 年的經驗。Symfony 提供了豐富的線上手冊,在日本有 5 本相關書籍,每月有超過 60 萬人訪問官方網站,有超過 700 個外掛,而且每個月增加 1~2 個。它在 2007 年 1 月推出第一個版本時融合了許多專案的成果,也從其他語言學習相關的架構與技巧。 2008 年 11 月推出的 1.2 版,開始分離許多架構,像是 Forms, Routing 等等。預計 2009 年 11 月推出 1.3 版,而 1.4 版會是 1.x 的最後一個版本,主要是將不建議使用的功能都移除。

Symfony 有一般版本,只支援 1 年,也有 LTS 版本支援 3 年,而 1.4 版就是下一個 LTS 版本。SensioLabs 提供了 Symfony 為基礎的商業支援,在 2010 2/15~2/17 會於巴黎舉辦研討會。接著講者介紹幾個主要功能,展示基礎架構圖,可以透過設定檔案進行關聯插入功能。以及切換各種不同的執行環境。 cache, debug, logs, stats 4 個功能可以依據需求做切換,儘量避免在正式環境中顯示一些揭露敏感資訊的錯誤訊息,Symfony 會將這樣的錯誤轉向錯誤說明頁。

講者透過預先錄影的方式展示開啟除錯功能後的畫面操作,接著介紹 XSS, CSRF 與 SQL Injection 等問題在 Symfony 的處理方式,CSRF 只要在設定中開啟 escaping_strategy 功能就會自動處理。再來關於測試,因為你需要經常執行測試,所以它應該要自動化。Symfony 提供了瀏覽器模擬器,用來做功能性操作測試。Symfony 提供了各種格式資料的輸出介面,最新的功能還可以針對 iphone 產生適當的網頁,它也提供 REST 介面。

在 Q&A 的時間有人提到講者的公司是否提供 Symfony 1.x 到 2.x 的轉移服務,講者表示因為 2.x 有許多重大的變動,但是這樣的轉移預期會有許多難題發生。

講者資訊:
講者創立的公司: http://www.sensiolabs.com
Yahoo 使用 Symfony 提供的服務,大概有 20 萬個使用者: http://sf-to.org/bookmarks
許多服務的新版本也會以 Symfony 建立:

http://sf-to.org/delicious

http://sf-to.org/answers <== 大概會有 100 萬個使用者
http://sf-to.org/dailymotion 也是使用 Symfony 設計
明天在東京的 Symfony 活動: http://bit.ly/sf-tokyo

最後就是一系列的閃電秀,因為電池不爭氣,所以就憑印象嚕。

剛開始敲了個鑼,我有被嚇到 …

陸續是 Tokyo Tyrant, 各種 PHP 版本間測試程式的工具, Monocheros 介紹( GAE JAVA + Quercus ), 安全使用 PHP4, php extension 等等

在會議結束後還有個懇親會,也就是俗稱的 party ,講者免費參加 ^.^

這個活動在日本好像是常態,就是一堆桌子,桌子旁邊都沒有椅子,大家就站著吃,問了大陸的朋友,他說這樣子大家才容易交談,事實上也的確如此,場子的氣氛還蠻熱絡的。除了吃東西外,現場還有即時報名的閃電秀,大家都把活潑的一面展現出來,相當歡樂。最後還有猜拳競賽,優勝者可以帶走主辦單位所募得的禮品,大陸的朋友贏得了一本 Zend Framework 專書,感覺真的很棒 ;)

在日本的朋友大多使用 twitter ,有不少人在碰面時就問有沒有帳號,所以我就註冊了一個,應該會以練習英文為主:

https://twitter.com/finjonkiang

本篇發表於 活動感想 並標籤為 , 。將永久鏈結加入書籤。

日本PHP大會 – 第2天雜記 有 4 則回應

  1. johnpupu 說道:

    感覺好酷喔!!!
    台灣以後辦活動 會後的party 似乎可以學他們這樣

  2. mOrris 說道:

    看完有個大問題….正妹的照片在哪呀?

  3. kiang 說道:

    恩,我很害羞,所以都只有偷偷看 ;)