Chats2007/12/26 15:25
views: 3225 times
超大字體(180%)放大字體(130%)原始字體(100%)
細數一下,接觸 PHP 到現在,好像也過了 7 年了(驚)。然後呢,其實我大學的時候是唸機械與自動控制,不務正業了四年了吧。至於說接觸 web 這一塊,這已經快要變成黑歷史不可考了。當然,我自己不是真的那麼專心的在 PHP 這個東西上面,只是唯一比較熟悉,能夠稍微得心應手的部分,看來看去還是只有 PHP 而已。正所謂,程式寫的好,要飯要到老。最近還真的是越來越有這種體認了,反正身為一個工程師,有這樣的覺悟應該也差不多了吧(什麼東西差不多)?

最近,正準備要結束一個小小的案子,當然是朋友請託幫忙做的東西。說起來不是頂複雜,只不過是整理 html code,多做一個 cgi script,多做一個 php mailer,然後就準備收尾結案。過程也都還算是順利,只不過,最近突然看到這一篇文章之後,回過頭來想想自己這短短的幾年以來,我自己所習慣的開發模式到底是什麼。或者該說,我每一次所面對的〝做網站〞這件事情到底是怎麼一回事。

其實我有偷偷在練 ROR 啦。

好了,回題。打從退伍之後,到目前為止總共換了三個公司,目前是第三個(希望不要再換了啦,我實在非常討厭換工作)。所面對的工作內容,其實就大同小異,差別只在於,我除了寫程式之外,還要負責 *NIX 主機的運行以及自己所需要的環境架設等等,但是扣除掉這些東西不談,還是純粹的寫程式居多。只不過,有一點一定要拿出來靠北說一下,現在要找到一個對於 HTML 與 CSS 都很熟的美術設計,還真他媽的困難。

身為一個工程師,隨身攜帶幾個慣用的 bug framework 也是很合理的。所以,從這些工作之中,逐漸累積起來的一些慣用的函式就這麼誕生。當然,時間久了,經驗稍微豐富一點點了,這些東西也會慢慢的累積成一定的量,然後慢慢的被修正成更符合自己習慣的工具。mysql, paging, session, user, attachment, ajax, smarty 等等,這些自己隨身攜帶的東西似乎日漸龐大起來。

常態性面臨的問題,大概只有一個,那就是業主不知道自己想要的是什麼。偶發性的問題,也大概只有一個,就是跟你合作的夥伴裡面沒有人可以支援你,更慘的是可能連 CSS, JavaScript 都未必有人會。好吧,這是我工作短短 2 年的時間裡面所遇到的問題,也許對於那些做工程師長達 5 年 10 年的大前輩來說,我遇到的這些事情都不算什麼吧。所以,現在變成了一種強迫養成的習慣,連 CSS,JavaScript 也會帶在身上。

也許有的人會問,CSS, JavaScript 這種非常客製化的東西要怎麼隨身攜帶?其實換個角度想,網站所需要的東西,還不就那幾樣,所以,我想要隨身攜帶這兩樣東西並不是非常困難的事情。那麼,AJAX 怎麼辦呢?好吧,這種東西可能就真的沒辦法 100% 的這樣帶來帶去,但是,將所需要的元件模組化之後,好像也不是不可行,對吧?

其實,如果一切不能從業主開始的話,那麼說再多都是白說,做再多還是白做。開發者所面臨的一個問題與癥結就在於,你永遠不知道業主想要表達的跟你做出來的是不是一樣的東西。或者這麼說吧,開發期間永遠陷入一種非常混亂的網站 roadmap 之中,架構圖只要有筆有白板人人都會畫,人人都可以講得頭頭是道,但是,不知道到底有多少人知道,從這個箭頭連到那個箭頭,這中間的東西到底有多少?

環境部屬完畢之後,首先面臨的就是資料規劃的問題,通常這裡是最不被關切的地方,起碼我遇到的總是這樣。但是,無論我怎麼去解釋,基本上業主還是有聽沒有懂,只會跟你說,我要的是這個這個這個,跟那個那個那個,還有這些這些這些,跟那些那些那些,如果有什麼問題的話再來問我。

好啦,我補個幹!

我沒有學過資料結構,什麼演算法最佳化通通不知道。所以最後變成了,只要業主開的出規格提的出要求,能夠符合我所跟他說明的最低限度,我就依照那些規格與要求,想辦法建構一整個站的資料結構。當然我遇到的問題,很多,真他媽的多。什麼樣的部屬是最好的,什麼樣的結構是最佳的,索引該怎麼建立會有最佳效能,資料該怎麼儲存會有最佳效益,這些東西對於原本是資訊科系的人或許很輕鬆,不過,對我來說還真是一大考驗。

程式怎麼寫就跳過了,反正大家都一樣。

最討厭的部分,應該是 UI 的部分。特別是網站前端要滿足使用者貪婪的胃口需求的時候,真的是寧可回去寫寫複雜的資料處理程式,也不要搞這個東西。正所謂,人之初,性本懶。在加上 AJAX 被神話到無所不能的地步(是不是我不知道,但是看 Google 的應用程度,如果說它是我也不反對)。所以,有需求就有做到死的工程師,我還是要奉勸大家一句:

要勇於對業主說 NO!

這麼一來也許會輕鬆一點,但是褲頭可能得勒緊一點了。

好了,沒事。只是再忙,也要上 blog 靠北一下。

創用 CC 授權
Creative Commons License
本創作適用 姓名標示-非商業性-禁止改作 3.0 創用 CC 授權,台灣並依循所適用的授權條款。

Bookmarks  HEMiDEMi  Technorati  Del.icio.us  Digg  funP  Yahoo!  Furl
Writer profile
author image
偏執與強迫症的患者,算不上是無可救藥,只是我已經遇上我的良醫了。
Posted by hina

Trackback URL : http://hina.ushiisland.net/blog/hinablue/trackback/452

Leave your greetings.

  1. 一篇道出软件工程师的辛酸。

    真的,现在,尤其是网络工程师的门槛是越来越高了。之前只需HTML+CSS+PHP+MySQL基本上就可以收工了。

    后来加入了JS,还能胜任。但近年来Ajax的兴起,真的有点措手不及。。。

    还是努力的去刨Ajax Framework吧~

    2007/12/28 10:36 [ Permalink : Modify/Delete : Reply ]
    • 我倒是比較羨慕中國大陸那邊的模式
      HTML, CSS, PHP, MySQL 這些東西都不是一個人負責
      在台灣
      網路工程師,幾乎都變成了萬能工程師
      什麼都要包,包山包海就是不能出包
      但是
      也沒輒,生在台灣這個資訊市場,不這麼做,實在養不活自己啊!

      2007/12/29 22:25 [ Permalink : Modify/Delete ]
    • 分工太細,可是有好有壞。好處是大家都能夠專注在自己最專業的部分,壞處是如果遇到CrossOver的部分就尾巴長了,而且如果遇到上司是不太專業的,到時出了問題要找誰都難。

      不單只臺灣,大馬這也是包山包海的。。。:)

      2007/12/31 10:20 [ Permalink : Modify/Delete ]
    • CrossOver 最讓人討厭的是互踢皮球吧 :S
      遇到好一點的上司還好,遇到搞不清楚狀況的,真的是啞巴吃黃蓮
      不,根本就是啞巴還吃屎,總是要搞死你 =__=
      我總覺得還是,分開一點好,只是責任要劃分清楚就是。

      哀,既然都包成這樣了,只好認命點做啦 ...orz

      2007/12/31 14:13 [ Permalink : Modify/Delete ]
  2. 虽然自己不是做这方面工作的,但是可以想象面对对页面需求很多的“业主”,确实很难应付。。。。

    2007/12/28 17:16 [ Permalink : Modify/Delete : Reply ]
    • 沒辦法囉,這就是工作啊!
      所謂的拿人手短,吃人嘴軟,雖然不能說是應付
      但是,現實生活就是這個樣子,也不得不去面對啊!

      2007/12/29 22:24 [ Permalink : Modify/Delete ]
[登入][OpenID是?]