程式開發員搏擊手冊

combat

你是否經常在編寫程序時被無故騷擾?若果是的話,你並不孤單,每天有數以百萬計的軟體開發者有同樣的煩惱。被閑雜人等騷擾,是延誤推出產品、倉促的設計、及因時間緊迫而引致錯誤、心力交瘁、甚至死亡的罪魁禍首,但是不要絕望,你可以保護自己!不管你是一個軟體工程師、系統管理員、 程序編寫員、或用戶介面設計師,這些簡單的自衛術都可以使你在肉搏中取得優勢。 繼續閱讀 »

免費的電子版 HTML5 海報

SitePoint HTML5 Poster

SitePoint 設計了一張 HTML5 海報介紹 HTML5 的新標籤,附有說明和範例,這款海報仍未付印,但 SitePoint 決定把電子版送給大家,只要在 SitePoint 註冊帳號並且訂閱他們的業務通訊,便可免費下載。 繼續閱讀 »

在 WampServer 安裝 PEAR

PHP Pear

若果只用一句說話來解釋 PEAR,它是一個用來發佈和管理 PHP 可再用元件的系統,若果你還是不懂,下面有更詳細的說明,暫時你明白 PEAR 對 PHP 開發工作非常重要便夠了。很可惜的是 WampServer 並不包括 PEAR,所以我們需要手動安裝,幸好整個過程只需兩、三分鐘,讓我們看看應該怎樣做。 繼續閱讀 »

免費的雲端伺服器

Redhat OpenShift

想一嘗在雲端伺服器開發軟件的感覺嗎?不妨試一試 Redhat 的 OpenShift Express,每個帳號可以發佈最多 5 個應用程式,每個應用程式將獲分配 1GB 硬碟容量,512 MB 記憶體,可以儲存不超過 4 萬個檔案,官方網站說保證無限期免費任用,伺服器支援 Java, Perl, PHP, Python, Ruby,數據庫方面,伺服器支援 MySQL, PostgreSQL, MongoDB,當然你還可以使用 SQLite。

至於最多人關心的問題是網站的 URL 是否有限制,不用擔心,預設的域名是 rhcloud.com 的ㄧ個副域名,不過你也可以使用自定的域名。

網站開發人員必備的 20 張速記片 (cheat sheet)

cheating

網站開發人員每天需要周旋於 PHP (或其他伺服器端編程語言)、SQL、JavaScript、HTML、CSS、數據庫預存程序及一些不同用途的開發架構之間,總會有「執筆忘字」的時候,這時你可能會向 Google 或編程書籍求教。不過,網上不少好心人替我們便製了一些「速記片」(cheat sheet),方便我們隨時查閱,Anson Cheung 在他的網誌蒐羅了 20 張網站開發人員必備的速記片。 繼續閱讀 »

HTML5 內容選單 (context menu)

HTML5 內容選單

HTML5 其中一項最有趣的新功能是內容選單 (context menu),只要使用新增的 menumenuitem 標籤,開發人員便可隨意創造自己的內容選單,David Walsh 在他的網誌介紹了怎樣實作這項新功能。 繼續閱讀 »

網絡上超過一半的流量並非由真人做成

hacker

網絡保安公司 Incapsula 最近的一項研究顯示,網站的流量中只有 49% 來自真實的人類。若果你用 Google Analystics 來追蹤網站使用者的資料,很抱歉,Google 只會替你分析這 49% 的資料,餘下的 51% 使用者是誰?Incapsula 說這包括了搜尋引擎、入侵程式、剽竊程式、濫發留言程式、和間諜程式,換句話說,31% 的網站流量都是有害的。 繼續閱讀 »

在 WampServer 安裝虛擬伺服器 (virtual host)

virtual host

若果你需要同時開發數個項目,每個項目的程式碼都需要在網站的根目錄上執行,而且各有特定的伺服器設定要求,這時僅用一台網站伺服器便不敷應用,但使用多台機器,或者在一台機器上安裝多個伺服器又會增加管理的工作,虛擬伺服器便可解決這個問題,你只需為每一個項目安裝一個虛擬伺服器,各項目的程式碼便可以在獨立的環境下運作。 繼續閱讀 »

20 個線上測試網站速度的工具

Page Speed

人人都知道上網的人對於網站的速度耐性有限,所以你的網站的效能和顯示速度,是網站的可用性,甚至成功與否的關鍵。Jacob Gube 在他的網誌分享了 20 個線上測試網站速度的工具,可以用來測試網站的速度,和找出哪裡是效能的瓶頸,他建議你同時運用其中數個工具 (沒有一個工具具備所有功能),作為恆常性的測試手段。 繼續閱讀 »

PHP 5.4 新功能:你應該升級嗎?

upgrade

期待已久的 PHP 5.4 終於出爐了,這一個版本特別令人期待,原因是它包含了很多原本要等到 PHP 6 才見得到的功能,由於 PHP 6 難產,這些功能便通通帶到 PHP 5.4,所以這次雖然只是升級了一個小版本編號,但包含的改動卻是巨大的,有些甚至會引致兼容性問題,PHP 開發人員不能輕忽視之。本文將會扼要介紹這個新版本的功能,與及討論一下在甚麼情況下你才需要升級到新版本。 繼續閱讀 »

PHP 的復活節彩蛋 (Easter Egg) 圖像

easter egg

PHP 解譯器隱藏了四幅圖像和網頁,人們稱為「PHP 的復活節彩蛋 (PHP Easter Egg)」,即是驚喜的意思。我將介紹如何顯示這四幅圖像和網頁,與及它們有甚麼安全性隱憂。 繼續閱讀 »

內容安全政策 (Content Security Policy) 是甚麼?

XSS attack

W3C 最近推出了「內容安全政策」(Content Security Policy, CSP) 的技術報告,建議在 HTTP 協定中加入一些新的標籤,希望可以令惡名照著的「跨網站攻擊程式」(cross site scripting, XSS) 永遠消失,至少令「儲存式」和「反射式」的 XSS 無法生存,至於「DOM 為本」的 XSS 可能仍需要開發人員繼續進行防禦。XSS 在 OWASP 的攻擊手段排名中名列第二,不少著名網站都曾受 XSS 攻擊,例如 Twitter、Facebook 等。究竟「內容安全政策」是甚麼?作為開發人員,對你有甚麼影響? 繼續閱讀 »

在 Windows 7 安裝 WampServer

安裝 WampServer

很多網站開發人員都喜歡在自己的桌面電腦上編寫和測試他們的程式,這樣做有幾個好處,首先你可以很容易測試程式,無須檔案上傳到伺服器,尤其是對於一些簡單的修改,可以節省很多工夫;另一個好處是程式的臭蟲不會隨便搗亂伺服器,無論它們有甚麼瘋狂的行為,也只是被侷限在你的電腦的某一個資料夾,絕不會惹怒服務供應商、伺服器上的其他用戶、伺服器上的其他系統、或者你的老闆。本文將會介紹如何在 Windows 7 上架設 Apache2、MySQL、及 PHP,也就是所謂的「WAMP」架構 ── Windows + Apache + MySQL + PHP。 繼續閱讀 »

尋覓理想的 PHP 編輯器

Seach for perfect PHP editor

你使用甚麼軟件來編輯 PHP 源碼、除錯、和管理項目?你對它滿意嗎?J Armando Jeronymo 最近因為某些原因不再使用本來的編輯器,於是展開了一趟 PHP / HTML / CSS / JavaScript 編輯器尋覓之旅,他在 How I Chose My Programming Editor 中講述了他怎樣訂立評審標準、遴選經過、與及他心目中的「完美」編輯器。 繼續閱讀 »

使用電腦的七個好習慣

Stephen Covey 著有「7 Habits of Highly Effective People」,我也來邯鄲學步,寫一篇「7 Habits of Highly Effective Computer Users」,包括:定時儲存、防毒軟件、網絡安全、密碼管理、檔案組織、備份方案、伸個懶腰。被電腦欺負的人或許可以得到一些反擊的提示。

軟件開發十大名言

Ranker.com 刊登了十大軟件開發的名言,很多都是由大名鼎鼎的學術界和業界巨頭說的,真是發人深省。

名言一:

"Measuring programming progress by lines of code is like measuring aircraft building progress by weight."

- Bill Gates (Founder of Microsoft)

「用程式的行數來測量編程的進展,相當於用重量來測量飛機建造的進展。」

- 比爾‧蓋茨 (微軟的創辦人)

繼續閱讀 »

地理定位 (Geolocation):比你想像的容易

Jeremy Kendall 在 PHP Architecture 有一篇文章介紹怎樣使你的網站加入地理定位 (geolocation) 的功能,好處是可以根據訪客的身處的位置,提供適合的內容和語言,令他們享受更貼心的服務。加入這項功能比你想像的容易,甚至完全免費,Jeremy 提供了兩個解決方案,任何一個都可以在十分鐘內搞定。

繼續閱讀 »

我怎樣面試系統開發員(第二部份,共兩部分)

這篇文章將分為兩部分,這是第二部分,若果你未看「面試系統開發員(第一部份)」,建議你先閱讀那一篇文章。

怎樣處理困難的問題?

我首先聲明,我不會問任何刁難或者有陷阱的問題,因為面試的目的不是要難為別人,而是要找到優秀的同事。明知對方不懂得或者不擅長的東西,我不會問;需要大量思考的問題,我也不會問。不過我總會問一些有挑戰性的問題,否則怎能區分平庸和優秀的人?以下是一些多數應徵者覺得比較難以處理的問題。

繼續閱讀 »

我怎樣面試系統開發員(第一部份,共兩部分)

我快將離開現任的機構,決定告訴大家我以前是怎樣面試系統開發員,希望對正在尋找相關工作的人有用。

我服務的是一個資訊系統開發的部門,除了最高級和最低級的幾個人外,全部都是幹系統開發的工作,我們還雇用了一批透過仲介公司介紹的同事,名義上他們不是我的機構的員工,但他們也要事先通過面試才能上任。我是誰?我便是那個負責面試的「官員」,而且一幹便幹了三年。

這篇文章將分為兩部分,這是第一部分,第二部分在這兒。

定期更改密碼的迷信

你的公司、網絡服務商、電郵系統、網上銀行等等,總會提醒你定期更改密碼,例如每三個月或者半年,有的甚至要求用戶最近幾次的密碼不能相同,其實這個方法是基於一些錯誤的假設、對入侵技術的無知 (不要以為系統管理員都是專家,哈),不論從運作上還是技術上來說,這不單指不能保障你的帳號,反而使你的帳號更容易被入侵。 寫在便條紙上的密碼 誰能記住每三個月改變一次的密碼?若果要記住很多密碼,這些密碼又要每幾個月更改一次,每次都要全新的,怎樣創作這麼多高安全性又易記的密碼?很多人索性把密碼寫在紙條上,這張紙條收藏在錢包或者抽屜裡,這些地方有多安全大家都很清楚。 繼續閱讀 »