PHP Frameworks: necit

尚無留言回應 »

這一兩個月以來幾乎都在寫PHP, 想架構, 沒什麼在動老本行.

我實在不算是夠格的PHP Coder, 相對之下我還比較愛寫Perl & C. 不過最近好幾個需要弄PHP的案子, G社(不是Google)的網站, 幫老朋友的車廠寫管理系統, 自己的Rmail Web界面, 一堆東西要寫PHP, 煩都煩死了.

原本打算找個簡單易用的PHP Framework來用, 大概就CakePHP, Zend Framework, CI, Kohana等等的東西, 不過實際用了一下真的覺得實在不能用, 一來是效能問題, 這種Framework根本談不上效能, 對後端DB來說更是大災難, 大概是因為我本身是玩系統出身, 很難接受這種犧牲效能跟擴充性來達到的開發速度; 二來是彈性很糟糕, 尤其是MVC之下要放進Javascript跟AJAX這類做UI必備的部份, 該把Javascript/AJAX塞到view嗎? 還是要塞到control? 這種小麻煩實在讓我用都不想用.

要說我不懂MVC也行, 要說我龜毛也行, 反正我找不到滿意的Framework. 找不到就自己刻吧! 我要的很簡單, 就有Template與Code Logic分離, 能內含一些泛用API的(例如Session, Database Handler, Image Processing), 能支援gettext就好, 重點是乾淨, 我需要乾淨不吃現有Framework/Libs的環境, 讓我可以很輕鬆的調整效能問題.

我喜歡單一入口的設計模式, 所以我會使用Rewrite加上module/action的做法. Javascript跟AJAX的部份無可避免得用上jQuery, Session有現成的memcached跟Database Stored, Image Processing部份直接調用簡單的imagick(其實我也不想用PECL的ImageMagick, 我是自己寫class去呼叫convert), Database Handler直接做個wrapper去搭各種driver就好(ADODB爛到可以, 我很難相信真的有大網站用這玩意兒), 麻煩在Template問題.

如我之前所說, Template裡頭事實上包含了最終輸出的東西, 所以肯定會有swap template問題, 會有gettext問題, 會有Javascript問題, 更會有pre-define AJAX的問題. 用Smarty不是不行, 麻煩是效能爛到有剩(之前就很多人討論過Smarty存在的價值與意義, 畢竟PHP本身就是一個Template Engine了); 其他不管是Smarty-Lite或是Zend_view彈性都很差, 所以只能決定自己弄個簡單的, 這時候就要狗幹一下PHP5, 難道不能有個 include_get 之類的function嗎? 逼著非得用ob_start()才能拿到include檔案執行完的內容; evel要考慮variables scope, 而且又是fork出新的php來跑, 對httpd/fastcgi的衝擊很大的.

再者AJAX也是大問題, 以往慣用XAJAX, 但是XAJAX太混雜, 本身摻雜了view與control, 要在AJAX裡頭搞gettext更是要規避一些很鳥的問題, Javascript/AJAX一搭上Smarty要做一堆{literal}, 更是友善度大減.

揚棄了Smarty與AJAX後, 就得自己解決與面對Template/AJAX部份, 目前基本的方向是直接用統一的module/action來取Template, Javascript, AJAX Backend, 這樣寫一個頁面與功能只要同時製作 html, javascript, backend ajax就好, 剩下的讓template class/engine去搞定, 這樣子撰寫過程就會很純化, 對以往開發其他新網站也會相對簡單.

目前這個framework(如果可以稱作framework的話啦)已經完成了80%左右了, 現在剩下template engine的部份還在參詳, 由於gettext需要textdomain, 所以也只好不免俗的給這個東西取個名字, 就叫做necit了.

現在不打算開放出來給大家用, 畢竟是未完成品, 也是丟出去給大家看到我醜陋的PHP寫法會汗顏的未完成品, 大概等以上幾個網站都完成且通過實戰測試確定好用後, 再考慮要不要Release.

啊? necit是什麼意思? necit = nekobe’s kit = nekit = necit, 如果要一個比較GNU的說法的話, 呃, 那就 Necit Enhanced Common Internet-application Toolkit, 夠噁心了吧.

Canon FTb練習拍

一項留言回應 »

我是拍照的超新手, 又不受教, 不喜歡那些教條式的拍照訓練, 甚至那些基礎的構圖跟啥配置我都不懂也沒很想學: 我又不是要當攝影師, 拍照這種東西是滿足自己用的啊.

自從買了Nikon D50給Ellen後, 我老爹的Canon FTb就變成我在使用, 剛開始習慣於用傻瓜數位相機的我, 光靠觀景窗實在很難想像拍出來會是什麼樣子, 於是一直處於摸索狀態. 話雖如此, 我還是對機械快門聲情有獨鍾.

從去京都到現在, 累積了一堆底片都沒去洗, 從澎湖回來後就一股腦全都拿去沖洗, 看到了沖洗出來的樣子實在是很奇妙的感覺, 還同時慢慢在回憶當時是怎麼樣的狀況下按下快門, 是想拍出什麼感覺的東西.


這張是去年中元祭跑去頭城看搶孤時拍的, 因為我既無閃光燈也沒腳架, 所以只靠手跟欄杆以B快門拍下的, 實際曝光時間我不大記得, 不過應該是有個3秒左右吧.


這張是在日月潭一大早拍的, 算是無心插柳拍到了這種老相機的光暈跟星芒.


這是永安漁港的夕陽, 其實當時太陽已經很下去, 幾乎是一片黑暗的狀況, 也是用B快門拉長時間拍出來的.


這是在集集支線的某個小火車站邊拍的, 廣角鏡+大光圈威能十足啊.


京都的貓, 我常常可以跟野貓交朋友, 拍野貓也是常常都拍的到.


Ellen說我好像擅長拍植物花草, 這張的色調我整個很喜歡.

The Dark Knight(黑暗騎士)

尚無留言回應 »

上個月初就看完了, 整理到今天才把這篇寫完.

首先直接破題, 這絕對是Batman系列中最好看的一部, 不管在商業上或劇情上或其深度我都給予極高的評價.

演員表現上, Heath Ledger(希斯萊傑)演的小丑無疑是最搶眼的, 我甚至認為他可以用這部戲拿一個Oscar, 那種狂放, 無道德, 一切無所謂的絕對邪惡, 絕對黑暗表現的淋漓盡致, 甚至讓人懷疑主角應該是小丑而不是Batman; 主角Christian Bale(克里斯丁貝爾)則是在飾演Bruce時有絕佳的表現, 跟飾演Batman時的對照更把Batman本身的矛盾跟痛苦鋪陳的張力十足; 而另一個重要的主角Aaron Eckhart(亞倫艾克哈特)在前半段White Knight的部份雖乏善可陳, 不過在受到打擊變成Double-Faces後把那種絕對正義到絕對邪惡的絕望感完整的表現出來, 可惜篇幅極短.

畫面與運鏡上, 導演Christopher Nolan在他前作The Prestige(個人戲稱金剛狼大戰蝙蝠俠)就有很獨特的視野了, 而到了這部戲更因高科技的動畫與大量的黑夜場景而得到更好的發揮.

配樂上的話, 老實說我實在沒有力氣在欣賞這部戲之餘再去好好聽配樂, 劇情一整個緊湊啊. 甚至因為我們是在IMAX看的, 太前排的狀況下我幾乎前1/3不到就完全放棄了字幕.

說完純理性的評論, 接著就是感性的劇情.

劇情上的配置雖已經比別的Batman來的長, 但是卻不會讓人感到煩悶, 首先編劇完全不對大反派小丑這個人的來歷和作惡原因作說明, 而是把小丑強調在一種類似虛無主義的角度, 他傳遞恐懼, 發揚恐懼, 本身卻不存在恐懼這種人人皆有的弱點, 強烈的虐與被虐心態讓他成為幾乎無敵的犯罪者, 他沒有顧忌, 沒有原則, 沒有任何會被威脅的原因或理由–包括他的性命. 當他被捕且被Batman痛扁時, 他說「You have nothing to manace me!」的那種神情, 跟他每次解釋臉上疤痕的那種語氣, 帶出了他常說的「Why so serious?」等等, 卻正好塑造出了一個無法打擊的罪惡: 包含最後他希望Batman用Batman Pod撞死他, 證明了他的執著就是Totally Chaos, 就是徹底毀滅善的信念, 不管是White Knight或是Batman.

而Batman企求讓White Knight成為英雄, 讓Batman永遠不被這個城市所需要, 不只是傳達出他不想失去女主角Rachel, 更傳達出他更想脫離身為Batman的詛咒, 可惜他最後既沒辦法救回他所愛的Rachel, 更救不回他所寄望的White Knight, Batman等於是失去了救贖他的兩大希望, 等於是被希望所遺棄了.

最後僕人Alfred選擇不把Rachel的信交給Bruce, 正好說明了這一切.

“Dear Bruce, I need to be honest and clear. I’m going to marry Harvey Dent. I love him and want to spend the rest of my life with him. When I told you that if Gotham no longer needed Batman we could be together I meant it. But I’m not sure the day will come when you no longer need Batman, and if it does, I will be there, but as your friend. I’m sorry to let you down. If you lose your faith in me, please keep your faith in people. Love, now and always,
Rachel.”

雖然很多人認為The Batman Begin應該是這部戲的前傳, 可以接著看, 但我認為這部戲應該獨立存在, 甚至觀影順序顛倒過來反而更能感受The Batman Begin要表達的與鋪陳的.

最後場景則是令人痛心的, Batman為了維持住White Knight所代表的正義, 維持住讓人們可以依賴的光明, 自己扛下所有Double-Faces幹下的壞事, 讓自己成為永遠被誤會, 永遠處在陰森黑暗中的The Dark Knight.

“Things were always going to have to get worse before they got better.” Alfred

這句話應該拿來安慰所有人, 包括我自己.

大家來找碴:我又換了啥?

一項留言回應 »

雖然一直被Ellen笑, 車騎的不怎麼樣, 配備倒是挺齊全. 不過這就是騎車之外的樂趣啊! 今天剛把兩台車鍊條都掛上快扣, 也買了一支GIANT Control Mini+1當隨車打氣筒, 我一般都會打到50~55psi左右, 可是得隨時補一下胎壓的.

不過更大的改裝是上禮拜去做的, 為了這個改裝我可是傷腦筋了很久, 先賣個關子讓大家看圖找碴一下

換裝前

換裝後

前後有啥不同呢? 到底換了什麼? 有辦法把換掉的東西跟換上的東西品牌型號都報的出來, 我請吃飯.

車首吉祥物: 邪惡咖啡貓

尚無留言回應 »

連魯夫都這麼高興呢! 前進梅利號如果沒有羊頭成何體統!!

車一定得要在車首掛個吉祥物, 這是很重要的啊! 不然路上撞車誰知道哪台車是誰的. 我的四輪車首吉祥物是會變裝的小叮噹, 加上後照鏡上的木頭小黑貓.

自從買了IGUANA, 我就一直在找適合的車首吉祥物, Ellen有一隻掛勾小熊, 我卻遲遲找不到適合的.

直到上上週帶Ellen跟Ellen娘去勝興車站, 在一邊的手工藝品店找到合適的了:咖啡色邪惡貓.

跟我的白桃紅IGUANA可真搭呢.

我的2008年也少了幾天

2 項留言回應 »

(借用我們家小光的昏睡照)

上禮拜六跟Ellen去了葉倫會老師主講的大稻埕老街攝影巡禮後(Ellen的文在這裡), 回到家就感覺特別的疲勞, 夏日慣於滿身大汗的我只覺得大概是曬過頭了, 畢竟背著Canon FTb走了幾個小時也不是一件輕鬆事.

接著禮拜天例行的單車練習, 一樣是之前無法「不落地」征服的劍南路, 這次比上次只停了一趟還要慘啊! 我幾乎是第二個彎就被Ellen海放了, 不曉得怎麼一回事, 後來下山回家也覺得很怪, 腳不若上次酸, 心跳跟呼吸也在控制範圍內, 但就是莫名的全身無力.

回到家洗了澡之後就乖乖去躺平, 一躺下就發現:「靠….北邊走! 我竟然發燒了!」

原本以為只是一般小感冒, 沒想到周一看完醫生後, 一直處於昏睡彌留狀態, 好不容易滿身大汗退了燒起了身, 撐不了兩三個小時又再度燒起來, 所以我的週一週二這兩天就是在吃藥昏睡洗澡之間度過, 醒來不知是哪一天的幾點, 昏睡也不知道昏了多久.

週三發現持續這樣燒真的不行, 還是跑去請醫生給我一針! 不曉得多少年沒在臀部打針了! 不管幾歲好像打針總是會讓人害怕.

然後接著是雞婆的醫生竟然懷疑我是某種最近很流行的傳染病, 還通報了相關單位….

總之我跟486一樣, 2008年莫名其妙的少了幾天. Charlie Jan真抱歉, 我知道我跟你約好了, 不過週一下午正好是發燒最嚴重的一天, 我回到家吃了藥就失去意識了啊.

配備補強: ERGON GC2-L & Bell VENTURE Sport安全帽

6 項留言回應 »

偷偷說, 其實我原本想買的車是19″消光黑的Bike Day PRO.

畢竟以IGUANA Disc的規格外加上Allay Sports 1.1, ERGON GC2-L人間肉球, 還有3M的後支架包, 只比IGUANA Disc還多3000多, 又有可線控調整的XCR前叉, 實在是超值的可以! 更不用說消光黑版本上白色藍色的手寫字樣, 實在是太虛榮了.

不過天不從人願, 吳大說, 限量是很殘酷的!

話雖如此, 買了IGUANA Disc也不錯, 白色底桃紅修飾的塗裝也有另外一種感覺, 而且, 反正不足的地方我可以自己想辦法嘛.

最早把坐墊換成Allay Sports 1.1後, 心裡就想: “假如把人間肉球跟線控前叉換掉, 不就是自製版的Bike day PRO嗎?” 不過想歸想, 這樣花起來比直接買Bike Day PRO還貴啊. 不過隨著騎車里程跟時數越來越多, 原廠的把手真的對雙手很不體貼, 於是真的開始萌生買ERGON的念頭.

只是很慘的, 還是那句老話, 限量是殘酷的啊!! 就在我下定決心要買的同時, ERGON到處缺貨, 我又不想在網拍買那個足足貴了快兩成的僅存貨, 所以就是一等再等, 當然最後還是等到啦!!


短牛角上的品牌型號字樣, 整體跟我的霧黑把手挺搭的.


因為買的是L號, 所以突出的手掌置放區稍微多個2mm.


從前頭看可以看到短牛角上的些微光澤, 不過還好不是全亮面, 質感會扣分的.

裝完這些配備後, 我的IGUANA變身成特仕自製版的 Bike Day PRO 了(自high….)

同場加映: Bell VENTURE Sport.


之前說過跟 Ellen 一起買了Costco的INFINITY安全帽回家, 只戴了一次就發現致命問題: 不合頭!!

雖然不想承認自己是個大頭鬼, 不過的確是戴起來整個怪, 好像頭上頂著一個帽子而不是戴著一個帽子. 趁著今天剛好去領我的ERGON GC2-L時, 順道一旁看看安全帽吧!

大概是我太常跑了, 老闆馬上問: “ㄟ, 肖年耶, 你不是有安全帽了?”. 當我委屈的訴說我的”大頭病”後, 老闆馬上轉頭丟了一顆給我: “試試看這顆, 後頭可以調的!”


真方便啊, 只要頭不是寬到塞不下, 怎麼樣都可以調整到最適合的鬆緊度, 這真是不錯的設計.


內襯墊就跟其他廠牌沒有太大的差異, 不過這的確是比較大的款, 尤其我回家跟INFINITY的一比較, 果然就真的差這個幾個mm造成我戴不到底的結局.

於是很抱歉啦, INIFINITY安全帽只好靠著網拍尋找新主人啦.

我的blog讀者特惠500, 等我們從澎湖回來沒人留言說要就丟上PTT賣550啦
尺吋: L/XL,58cm - 62 cm (22 7/8″ - 24 3/8″)
顏色: 黃/銀
不含紙盒, 可內湖面交.
照片

真抱歉, 已經售出了~~

Bicycle Life: 我的`09 IGUANA Disc與配備(三)

尚無留言回應 »

這篇要主推便宜好用, Costco 販售的AIRFLOW水袋包!

前幾天跟Ellen去Costco買安全帽時看到一旁有這種特殊水袋包, 我把玩幾下, 看看價錢直接說「我要了」. 不到六百的價格, 有個2L水袋包, 整體作工也不算差, 實在划算的可以.


正面照


底下有網包可以把安全帽整個扣上去, 方便度100%.


背面背袋一邊是水袋的吸水口, 一邊是小網袋可以放MP3或小毛巾之類的物品, 非常方便取用. 中間還有橫向的扣帶, 讓你抽車時不會左搖右晃.


吸水口附近的設計, 除了一個可以收放的Docking之外, 吸水口的橡膠是靠雙唇或牙齒的擠壓露出空隙然後吸水, 剛開始不大適應, 習慣了就還蠻方便的, 咬+吸一氣呵成.


除了水袋的部份, 背包上收納空間也是很足夠了, 多分隔的設計可以放的下很多配備喔.


裡頭水袋區的設計, 水袋是用PVC加上黑色的束扣密封著, 密封完後裝進背包中, 把束扣鉤上鉤子固定好即可, 整個水袋可以拆卸清洗與裝水, 非常方便喔. 背包裡頭水袋區還有用隔熱材料, 保溫保冷呢.

對我這種汗如雨下的人, 光是一趟內湖淡水我就能克掉兩灌500cc.的水, 有了這個2L水袋, 不但水的問題完全解決, 還多很多多餘的空間讓我可以放眼鏡袋, 毛巾甚至備用衣物等等, 實在太方便了.

600不到唷! 有Costco卡的快去搶吧! 賣完就沒啦.

Bicycle Life: 我的`09 IGUANA Disc與配備(二)

尚無留言回應 »

續上篇.

Giant下管保護套

大概是因為原廠巧克力胎的關係, 我的鏈條莫名的非常容易髒, 相對的也把髒整個帶到下管上, 每次回來要擦掉那些油污實在很麻煩, 要我一勞永逸打鍊洗鍊換乾式或蠟式鏈條油, 不是不行而是技術未到家, 所以臨時弄個下管保護套, 一個禮拜洗它一次吧.

Jagwire 外管保護套


第一個禮拜就發現我的煞車/變速外管會磨到車身烤漆, 車店指給我「貼膠帶」的解決方案, 找了一下網路上的資料後決定還是買一組外管保護套來防範吧.

Allay Sports 1.1 與 TOPEAK座墊包+維修工具組.

因為第一次騎就發現屁股痛到不行, 幾乎都淤青了, 網路上Study一下後買了這組好評不斷的座墊, 剛好因為這組座墊支援TOPEAK座墊包的扣具, 乾脆加價購直接買個座墊包+工具組的Combo餐吧. 不搭配車褲時好騎耐坐, 搭配了車褲簡直相在做沙發啊(好像太誇張….).

Costco的INFINITY安全帽

A君強力推薦, 看完了車店的安全帽價位後實在覺得沒理由買一顆千把塊的安全帽. 跟Ellen好運的在內湖Costco剛好碰到有貨, 她選了銀色搭她的Alies 2, 我只好用黃色啦.

(待續)

Bicycle Life: 我的`09 IGUANA Disc與配備(一)

尚無留言回應 »

因為Ellen衝動型購物, 讓原本還在猶豫要買Giant Flight M1還是Giant IGUANA Disc的我被迫快速決定, 於是就這樣把愛車牽回家了, Ellen買的是很日系風格的Giant MeMe.

沒多久又因為女人的善變, MeMe被出售了, 快速成交後也快速的牽回Ellen的新車Alies 2


(我怎麼覺得Alies 2比我的IGUANA還大台還威風啊 @.@)

騎了好幾週一直都沒說的原因是: 我是大肉腳. 第一天光是騎到關渡我就腳酸屁股痛, 一直練到現在我們兩人直衝社子島一周來回都沒問題了, 才敢說我開始騎車了.

我現在才知道, 如果買車花一筆, 賣配備跟人身部品大概要再花個一筆, 下頭介紹一下我的車用配備.

【捷安特】NUMEN 超省電高亮度5LED前燈 (黑灰)

我打算裝兩顆, 一顆閃一顆恆亮, 主砲當然是要對稱才行! 不過現在暫時只買一個.

CAT EYE VELO 8功能有線旅程電腦(黑)

簡單實用的車錶, 我原本就不大喜歡用無線的, 這短短50cm不到, 而且又很容易走線的地方, 何必非要無線不可呢. 剛開始沒買車錶還在考慮要不要直接上Garmin GPS當車錶用, 看了一下眾人意見後, 還是覺得先有個小車錶吧.

【TOPEAK】TriBag三鐵專用上管袋

這個袋對我來說太好用了, 剛好夜騎時攜帶的皮包手機與鑰匙可以不偏不倚的直接放進去, 不會太空也不會太擠. 強力大推的情況下Ellen也敗了一顆.

【Topeak】Modula EX Cage水壺架跟水壺

原本就有一個水壺架了, 但是有次跟Ellen出去夜騎發現, Giant的鋁製水壺架放一般的小寶特會夾不緊, 反而是Ellen的TOPEAK水壺架可以調整鬆緊非常好用, 一悶之下就去裝了第二個水壺架. 反正以我的水量跟汗量, 兩壺水還是不夠用的啦.

我的白水壺跟Ellen的銀水壺.

(待續)

Previous Posts »