在過去的兩年時間裡,我經歷了自己是幾百名專業技術人員中少數幾個Web開發員之一的尴尬――現在,我又再次開始了自己是少數人之一的經歷。在經濟繁榮時期,我習慣於得到最好的硬件和軟件,有完整的網絡隊伍全線支持我的工作。現在,我不得不和越便宜越好的軟硬件打交道。
和許多和我從事同樣工作的人一樣,我負責廣泛采納開放源碼的軟件,特別是Linux,來降低預算。Linux是許多Web開發工具和應用程序的基礎,Linux-Apache-MySQL-PHP (LAMP)在今天的Web開發領域得到廣泛采納就已經證明了這一點。
這樣,如果Linux不能正確的“工作,如果它沒有按照我需要的方式運行,我的Web應用程序和開發就注定要失敗了。所以,我開始考慮Web開發人員是否需要獲得Linux認證,特別是Red Hat認證技術員(Red Hat Certified Technician,RHCT)認證,是否明智。
Web開發員是否真的需要獲得Linux認證嗎?他們應該考慮Red Hat認證嗎?可能需要,也可能不需要。這完全取決於你的觀點以及你的環境。
我是一名Web開發員,而不是系統管理員
讓我們首先看看一些持否定態度的觀點:
“我的公司應該有一名網絡管理員來管理網絡和操作系統;這不是Web開發或者編程的問題。
“我需要理解關於Linux方面的小問題,我可以自己學會而不必獲得認證。
“我的時間花在‘真正的’開發上更有意義。
如果你真的相信底層操作系統不會影響開發,或者如果你有足夠的支持資源、操作系統不成問題,那麼你就不需要在Linux認證上浪費時間。現如今,傳統的編程任務就夠Web開發員忙的了(假設你有工作,失業的開發者決不會獲得很多的認證)。但是,操作系統真的不會影響Web開放過程嗎?
例如,我最近在忙一個基於Linux的內容管理系統(content management system ,CMS)的項目。為了解決一個特定的問題,我搜索了好幾個咨詢網站來查找解決方法。結果我發現這個問題比較普遍。
大多數的回復帖子都包括“在使用CMS之前學會如何使用Linux和“我不明白你們這些網絡新手為什麼認為自己會在不懂得操作系統基礎的情況下完全學會CMS這樣的話。
盡管聽起來不那麼好聽,這些壇友都有一個觀點:知道平台的基礎知識對Web開發過程是很重要的。但是這就意味著獲得Linux認證嗎?
獲得Linux認證的理論
另一方面,職業Web開發者也許應該認真的考慮是否參加Linux認證,特別是RHCT,下面是獲得Linux認證的理由:
如果你在小的開發環境下(沒有網絡操作系統支持)工作,在這種情況下,你或許最好有一個堅實的基礎,也就是說,得到一個正式的Linux認證。
適當懂得Linux會使你的基於Linux的開發以及開放源碼應用程序的性能得到最大的提高。
開放源碼的環境下沒有幾個認證,Red Hat認證是職業水平和能力的標志。它會讓你的履歷更出眾,而且會讓你贏得對開放源碼感到緊張的顧客的信任。
RHCT是進一步的Red Hat Linux編程課程的基礎(目前還是必要前提)。Red Hat認為你在Linux操作系統上進行高效開發時應該展現你對Linux理解。
我曾經的一個客戶反對開放源碼的解決方案,其原因在於無論是我們公司還是我們公司的投標對手都沒有人獲得任何一種Linux認證。在目前資金緊張、大家不願意冒險的商業環境下,許多公司在不擁有認證Web開發員這一風險保證的情況下不願從事任何Linux項目。
此外,我還必須盡力擺脫小開發作坊的限制――你必須對各個方向都有所了解才可以把工作順利進行下去。即使我公司中有些人已經有了充分的Linux經驗足以讓開放源碼項目走上正軌,但我是所有人的第一預備隊,所以我也需要掌握這方面的知識。
權衡這些因素
那麼,我是否已經花了時間和精力來得到RHCT認證呢?事實上到目前為止我已經花了時間了但還沒有得到認證。然而,盲目的查找Linux故障來讓我的Web項目成功的運行是非常痛苦和花時間的過程。有人對我說這些困難是開發源碼經驗中不可缺少的一部分,但我不肯定事實是否總是這樣。
所有的東西都是等價的,它們歸結於一個經濟等式:Linux認證所帶來的時間上的節省和工作機會的增多是否證明了獲得它的代價是值得的?就我自己來說,如果有哪位老板願意因為我的RHCT認證而聘請我,那麼我就會努力通過這個認證。