強記小廚’s 飯堂

六月 3, 2012

一個用戶的科技史(三)

Filed under: 生活點滴, 技術分享 — - @ 10:09 下午

有一日行經黃金某書店,係裏面睇吓書嘅時候,有一小學生帶埋個阿爸買書。個小弟弟就拉住阿爸問職員想學寫程式,問邊本書好,但職員問番佢想學乜程式語言,個小弟弟又答唔出乜嘢,只係話想寫程式。佢阿爸只好話等大啲至學,同時拉鬼走咗。雖然好搞笑,但畢竟“那些年”我也曾經“小學雞”過…
記得讀小學時,已經有同學參加電腦程式班。唔知點解,可能以前睇過『蘋果電腦』嘅廣告,所以也對電腦有興趣,亦唔知頭唔知路也想報讀程式班。可是阿媽以屋企無電腦,學黎無用為由否決小廚提議了。(估都估唔到依家竟以“學黎無用”嘅電腦程式為生…)
入中學嘅時候,發現咗有電腦班上。仲學咗第一個程式語言–LOGO!但以前玩黎玩去都唔明,呢啲野可以整到隻軟件出黎嘅咩!?其實呢個程式語言係教導我地程式的基礎實踐,就係一行指令一個動作。可惜堂堂都只係咁學搞指令,真係太無聊。於是有同學玩其他嘢及用Pascal寫程式了,中三時,有同學整咗隻賽車閃避遊戲了。自己也係暑期班報了電腦程式科,學咗啲Foxpro及C language。因此中五重讀時,夠薑加咗會考電腦科,仲要一個中五學期讀番哂中四中五嘅內容!幸好當時的電腦科老師批准我和我嘅朋友報讀,仲用下課時間補習番中四嘅內容和練習用Pascal寫程式添。好感謝老師嘅教導,自己努力也得到回報。係考Mock後,在理論果部份嘅成績竟然全班第一。呢個算係我人生中少數令人驚喜的回憶了。
但因為程式語言成績麻麻地,也令我無乜興趣走寫程式嘅發展路途。但依然係大專及大學報咗電腦程式設計科目,特別係大學時,JAVA發展快到令C及C++也不再係大學老師嘅教授內容。全面用哂JAVA,連學Data structure都要用Java講出實例。因此敝校學生可以強到用Java寫出搜尋引擎並被Google買咗其技術添!雖然那時候做coder真係唔係我杯茶,但有時不能不笑真係有主宰,到最後還是個程式員。
可能同我唔同,有位日本人比我更高一級,佢唔單只想設計程式,仲諗怎樣將程式語言用得更有效率又更輕鬆。呢位日本人–松本行弘就開發咗好出色嘅程式語言, Ruby~或者設計程式語言,絕對影響力大過用現有技術。佢嘅書,松本行弘的程式世界絕對比教科書更能啟發有志於從事程式設計的人。如果佢呢本出年十年,我都可能有唔同想法,至少寫程式對我來說已經係小蛋糕一件了(a piece of cake)。

五月 20, 2012

捉到老鼠才是好貓–論技術方法思考

Filed under: 生活點滴, 職業教育, 技術分享 — - @ 9:42 下午

由古至今,好多事情都有一定的程序、規則及方法。好似佛經裏提到佛祖教導如廁方法:自備廁籌(即木片),如果無,都唔好整係牆上及廁板上。亦不能用石頭、青草及軟木代替。並且解釋廁籌的長短制式,教導不能用彈、振及甩等方法弄乾淨。這個係釋迦牟尼佛傳落黎嘅“上廁用廁籌法”。
係工程論中,“過程論”的專家會要求按本子辦事,但係,如“上廁用廁籌法”,如果無可用的過程、方法及工具,係咪就蹲下去直到遇到有人借黎廁紙為止!?從中睇到工具的重要性,如果要現在上廁所,咁係咪堅持用木片而放棄用廁紙?
其實以上引用周愛民係《程序員》的文章嘅“自己想辨法”。
我想籍此講下,軟體工程亦講求【過程+方法+工具】,成日講用Java好過C#又或者新工具勝過某技術,都係一種對解決技術性問題嘅徧見。現在嘅技術越黎越多,而面對需求的量及質也不斷增加。以智能手機為例,十年前的技術,只係WAP或XHTML就可以搞定。3G也只係好初步,可以只需加上3GPP播片而己。但今時今日,平台都有好幾過,唔理啲少用戶平台,要同時做iOS及Android都唔少嘢吧。
係呢個不斷轉變嘅大環境,絕對需要將軟體工程發揮出黎,先至係解決問題的致勝之道。所以如果再係講技術嘅比較而爭拗,不如分享邊種問題可以被某方法解決更有意思~

p.s.學習不只是生活一部份,直頭生存嘅重要部份。試問有誰不用受教育就有成就呢?!做IT呢行,更應該試學習為自我能力嘅建立呢。

五月 6, 2012

一個用戶的科技史(二)

Filed under: 生活點滴, 技術分享 — - @ 10:44 下午

星期五晚去咗行『黃金』,行咗入某商場嘅賣大陸書嘅店舖。發現咗今個月新出的【程序員】雜誌,突然好想賣黎睇,於是俾低錢賣本走。嘩!睇咗個目錄,再睇內容…超正!呢兩日行開行埋,出街或上廁所都誌不離手。
都係因為內容技術含量極高,而且作者唔係國內科技公司的架構師,都係中科院的博士級技術專家。用番國內術語,呢本雜誌係技術“大牛”的期刋。相比起本地嘅電腦科技“消閒”雜誌,呢本技術專業雜誌的市場就窄得多了。
記得以前睇過本【電腦時代】,內容也好深。曾經教過如何hack個BBS,都幾怪。曾經去申請個資料研究嘅職位,佢電郵咗個一篇關於防火牆硬體的報紙,要我寫篇五百字的文章介紹吓個產品。但呢個產品係未出的,上網亦無介紹呢個產品!可見呢本雜誌曾經好高含金量,可惜唔知點解內容每況愈下。係咪跟住時代轉變中。
其實以前讀中學,星期四放學會跑到落黃金腦場攞本【電腦廣場】,貪佢唔駛錢又講吓本地電腦新消息。外國電腦雜誌睇過【PC Magazine】,但內容較普通,廣告又多。仲睇過某專欄作者讚某某產品,後面有專欄作者踩另一個競爭對手的產品。令我以後唔睇呢本廣告雜誌。之後睇《Byte》雜誌,內容較高端得多,可惜係無通告的情況下停刋。而【電腦廣場】開始要俾錢買嘅時候,我都無乜點再睇了。
其實到大學的時期,開始睇外國比較高學術性的文章,如IEEE的《Computer》雜誌,另外會買台灣嘅【Run!PC】。反而,國內嘅電腦雜誌仲未有認識,可能自己唔知國內嘅電腦新聞及知識有幾高水準。一直到某日上深圳,亦係首次踏足大陸跟朋友去見識吓。見到深圳書城放咗好多電腦書,雖然係不少疑似盜版,但不少係外國的神級電腦程式設計師嘅作品。不少人買添,我睇咗本Tom DeMarco嘅【最後期限】(The Deadline A Novel About Project Management)的譯本。只賣四十蚊港紙,唔買走寶。跟住見到本疑似電腦雜誌,一睇,竟然係介紹某公司嘅CPU結構!真係嘩咗聲。可惜能力不足,未敢買黎睇。但竟然國內有人出呢啲知識嘅雜誌,可見其讀者群技術能力不低。
有時心諗,真係好想香港有本好似【程序員】嘅雜誌。可惜,香港IT人才斷層,睇得明或懂得高科技嘅讀者,無辦法支持呢啲雜誌出到一年。咁北望神州(嘅雜誌)係我最佳(讀物)之選。

四月 22, 2012

我還是程式設計師

Filed under: 職業教育, 技術分享 — - @ 11:05 下午

當以為自己對項目管理及軟體開發流程有研究,發現自己對程式語言、工具應用等開發基礎已經流失了。更重要係,自己太早開始做項目管理的工作,忘記咗揼石仔的基本知識。

約翰·卡馬克是個不折不扣的電腦宅男,他自從中學時期就懂得用Apple II寫程式來整蠱別人。當佢被當時開始係電子遊戲界闖出名堂嘅John Romero發掘,卡馬克加入咗佢地團隊,並且主力開發遊戲引擎。之後,佢地想到一隻遊戲應該如何以第一身模擬去俾人一種強烈投入的感受,因此,由Romero領軍,卡馬克主力程式開發,再加入多名日後都成為遊戲界名人的Tom Hall、Mark Rein、Sandy Petersen等一齊開發呢隻遊戲。

卡馬克知道以前有隻電腦遊戲~捉鬼敢死隊用過一隻第一身玩法,於是利用呢個基礎,再用碎型數學模型,把畫面做到不對稱,加強空間感。製作一隻(偽)3D遊戲引擎,以此開發咗名噪一時的電腦遊戲:DOOM。

之後卡馬克還是以程式設計師及技術總監等位置不斷開發Quake、Orcs & Elves等遊戲,他雖然貴為公司創辦人,管理公司嘅同時亦不忘對高端遊戲技術嘅追求,仲依然以developer身分開發新遊戲,及支持Open source項目的持續發展。因此,佢上年係遊戲開發者會議中獲得終身成就獎,以表揚佢對事業的全程投入。

從中啟發到小廚,覺得自己對好多技術都力不從心,也知道自己唔係仲有精力的時候,好好把程式技術運用得合宜,讓自己踏實啲,會把自己變成沒有技術嘅管理人,非技術專家。因此,決定入某工程師導向嘅大公司,成為一名工程師。由基礎嘢做起,當係對自己嘅一種磨練,亦希望繼續對技術追求嘅一團火燃燒下去。

七月 25, 2010

技術最強的管理專才-程式經理

Filed under: 職業教育, 技術分享 — - @ 11:12 下午

上次介紹咗專案主管(Project manager)同埋架構師,其實只係將兩樣不同職責分開,但不存在於邊個較重要。但真係項目夠大,就要安置一位管理兩方面的人物做統籌了。這就是程式經理(Program Manager)。
係微軟裡面,好多時要處理產品開發、檔案、測試及顧客滿意度,呢類未必係架構師可以抽空去做。但項目經理亦可能未必有能力解決。同樣道理,項目經理亦可能未必知道客戶及行銷人員對技術的難度作解答,架構師亦會提供過多既難處“嚇唬”佢地,咁身為世界最偉大既軟體企業,自然得安排此人既具技術强度,又加上善於溝通協調來監督每件事都確切做到,並要符合公司的期望。既要協調行銷人員、撰寫產品規格、常和產品支援小組共同合作Beta測試的種種事宜。並根據End user的feedback再研究如何改善產品。
程式經理必須成為從定義產品規格一直到軟件發行與行銷過程之間的橋樑,事務複雜又責任重大,職責包括:

  • 設立產品的目標;
  • 寫成產品的規格;
  • 確立產品的開發過程;
  • 決定規格的交換;
  • 在產品開發小組中協調工作。
    因此,程式經理自然大多是由程式設計師升遷上去,並且具有高能力人士才可勝任。又以微軟為例,Microsoft主要從大學畢業生招募回來,大部分程式經理都有技術性學士學位,有的有碩士學位。其餘只有少數是文科或企管碩士出身。對程式經理的訓練,更是要此人『一半學習、一半發明』,去學習如何做個有用的程式經理。
    不過,除非間公司有微軟咁大,否則係香港,只係一個程式設計師處理晒。這是香港對軟件開發嘅唔重視,真可惜。但畢竟世界那麼大,香港亦可能有此人物。只係睇老闆重唔重視啫!

  • 四月 11, 2010

    mobile 才是 web 3.0

    Filed under: 職業教育, 技術分享 — - @ 11:59 下午

    最近放完長假,除左帶咗成班朋友同靚女們拍照同食飯,其他大部份時間都搞緊份Paper。其中都係集中寫社交媒體係mobile既發展。
    有一日同朋友乘船返港講起買新手提電話,不論男女,都講得頭頭是道。我心諗,連女仔都咁識手機上網,相信日後越黎越多手機上網軟件及服務會出現。連Apple、google及Microsoft亦寸草必爭,可見得業界所吹嘅web 3.0,非Mobile莫屬了!
    其實手提電話已經走向支援多媒體、影相功能及touch screen,變成為手提多媒體裝置。加上iPhone咁帶黎熱潮,令人特別係IT業界人仕開發mobile應用軟件及服務。
    或者個人電腦嘅開發始終被各大跨國IT企業佔據山頭,新切入點機會有限。但手機軟件就始終係新藍海,並未有一間公司可以絕對寡頭地位,特別香港背靠中國內地,開發市場可以好大。據簡單資料,中移動下載遊戲收入比NDS及PSP遊戲收入多好多,甚至一年有成百萬收入。我想如果善用不同渠道,去國內以至國外發展,都係有意思。畢竟呢行係先插旗佔地盤為最重要。特別呢行係(手機)台大過(手機)廠,善用內容及策略,我地做內容/服務供應商都可以好揾錢。
    越諗越多,我份Paper應該夠交貨啦啩?!

    三月 21, 2010

    鋼線上行走的Architect

    Filed under: 技術分享 — - @ 11:10 下午

    一提起架構師,好多人都係諗做地盤既土木工程師。正如起樓一樣,編寫一個軟件或者起個系統,都係要有個穩陣框架,同埋有個堅固地基(base)。咁樣出黎個產品先至噤用穩妥,所以好多做到程式設計師由剛入行去到架構師呢個位,無番六七年以上都未必做得到。而且,對於中小企黎講,呢個位好多時已經係公司裏技術職位中最高位了,再上都是處理業務多過技術工作的了。
    開發C++工具的Borland公司的資深技術顧問-李維先生曾提過一個架構師的特質:
    1.掌握核心軟件技術;
    2.了解產品特性;
    3.了解軟件趨勢; 和
    4.具備創新技巧
    因為架構師要做技術又要懂業務,具開發新技術的遠見又要體貼用戶能夠兼容過去軟件。偏重一邊都會令自己跌得粉身碎骨,因此架構師真係一個走鋼線的人。
    好似我以前做技術時一樣,成日遇到網站死咗。果客一定即時打黎投訴,原來先知係Tomcat出問題。
    tomcat太舊版本,未必處理得到太多登入資料。咁就我地諗咗幾個方案,但各有風險。因此我决定新網站要係新tomcat上執行,現行的繼續,下架的就立刻删走。再安排某時段逐個搬走,做到神不知鬼不覺。
    睇黎無乜特別,但係如果個糸統係十年架構,好多人用咗唔知乜嘅coding或方法寫入系統。分分鐘一動就成個系統冧樓咁冧落黎,咪話畀人投訴,可能連起返佢都有問題。因此,果個架構師要做咗好耐既系統工程師先至能夠勝任。
    所以,我認為香港揾個架構師唔易,因為試問一個程式設計師,點會做一間公司超過八年唔走,又唔升上做管理人。仲朝夕相對個系統又唔悶架?!

    三月 7, 2010

    PM唔易做

    Filed under: 職業教育, 技術分享 — - @ 11:30 下午

    不論國內各個聊天室,以至香島不同討論區,一講到係IT呢行工作,好多網友或淡友都成日講。如果到三十歲都升唔到項目經理(Project Manager或簡稱PM)呢個位,咁就係時候好轉公司或轉行喇。先唔講求職市場係咪有咁多PM嘅職位,但其實個人本身有無做PM既條件先至係值得討論!

    小廚以前某位同事,佢啲技術好專程式設計,但也懂得硬體裝配、網絡設置、以至係Game Engine都略知一二。佢寫既系統,既幫公司拿到專利,亦賺到不少錢,更厲害係攞咗本地及國內的獎項。雖然係咁,但都係只可升到系統分析員而已。其實佢係讀商業資訊管理,但就只係十足十既Geek仔,無乜同客講解能力。有時可能要好多因素顧及,但佢未必可能理解埋背後因素(例如個項目只係得個殻,唔駛去做…)。因此有時花咗無謂時間處理,俾人覺得似係缺乏時間管理既能力嘛!而另一方面,小廚需係電腦科學專業出身,但揼code能力極低,起個一個視頻系統之外,好少再處理好高端既技術了。份人又懶,不求完美,只要弄死不了個項目就把該項目close file了。但係,小廚就知道項目有不少野要做,例如:諗成個項目既解決方案、把客戶需要摸清楚(免得做完唔啱客用)、實施計劃(好似人手調配及工具準備)到項目測試/驗收等。我都各樣安排好。因此做咗兩年可以已經自己處理大項目了。

    講到呢度,其實不是比較我跟我同事既各能力誰勝孰劣,也不是想踩PM嘅職位並非平庸之輩不可任。只係想講PM就是有一個合同,需要我們這方派一個人來領導我們這方的人。譲佢和客戶方面的項目班子進行對接。双方平等協商,並不存在誰聽誰的。咁個PM駛唔駛好叻技術呢?其實只要懂得成個項目業務也可勝任,對自家軟件系統有深刻了解就可以了。半懂不懂的只亂糟糟咁去揾出問題根本哂時間,仲可能解決唔到個問題添。如果技術好叻,不如專心做系統/軟體設計分析吧,無謂把才幹錯配去跟個客胡扯哂時間。咁樣分分鐘仲多人工過PM呢~

    雖然依家我既同事做不了項目經理,但都成了公司系統架構師,人工頗高呢。相反自己轉咗小企的技術主管,但距離自己目標還遠呢。所以我到依家都唔知討論區嘅淡友所謂,三十歲之後的業內同工,升唔上PM嘅係轉咗份工,定係體會到專注不同新技術才是呢行出路呢?

    二月 28, 2010

    與熊共舞

    Filed under: 生活點滴, 職業教育, 技術分享 — - @ 11:39 下午

    最近真係頭都大埋,明明個項目都出咗街,但收入唔得,其原因頗多,畢竟每個項目都有佢既風險存在。如果有人夠膽仲講零風險,一係呢個項目係零收入,唔值得去得。一係就錯估可出現既情況發生。
    現在好多MBA嘅新興科目裏面,都會加入咗風險管理呢樣嘢。其實早在捱踢界嘅項目管理裏,早就有唔少書籍及文章講呢個題目架啦~
    其中湯姆‧狄馬克寫的"Waltzing with Bears – Managing Risk on Software porjects"就係一本經典之作。佢將好多人看風險係賭博一樣,總覺得"點可能發生係我地身上丫",因此項目管理人被死線(Deadline)及老闆所控制下,將項目定得死死,跟手只向住美好目標前進。因此項目出現一定數量問題時,PM不斷修正錯處,以至項目只好向其相反方向前行。其主因正是無咗風險管理既準備,錯失咗防止問題發生的機會。
    小廚處理緊嘅項目足足用了半年,只因上手花了不少時間原地踏步,我亦用咗成兩個月才解決早期所有問題。現在收入不高,有啲我預咗,因為用戶太過狹窄,二黎也因為老闆無仔細分析成個項目風險,所以先造成今日局面。
    希望求上天有好心之德,救我快啲甩身就好啦……
    其實諗諗下拍拖都有好大風險,遇著個好伴侶就話啫,遇到唔好就令自己日日悶悶不樂,但我又真係未聽過追女仔有風險管理喎~

    一月 17, 2010

    香港真不賴~

    Filed under: 生活點滴, 技術分享 — - @ 11:50 下午

    睇咗本叫“亞洲電腦爭霸戰”一書,裏面有分析日本及亞洲四小龍的高科技産業報告。其實資料係九十年代的,內容太舊,真係好多野唔夠更新。
    但係有樣資料到依家都可能啱嘅,就係香港要依賴大陸珠三角嘅地緣結合同埋高密度低價錢的通訊基建。呢啲都係香港相對新加坡、台灣、南韓及其他東南亞諸國,缺乏本地生産但有強大內地窗口的。是走不出另一條路。
    或者,小廚認為香港可以走其他國家較弱的路線-軟件開發基地。特別係手提電話軟件,因為香港通訊快捷而便宜。加上內地軟件不能同世界連接,本港國際化可盡展所長。另外,香港流動網絡能觸及外國市場,好似和記、薯麥通、CSL及中移People,佢地嘅海內外建設同支持實為幫助本地中小企發展內容供應商進入海外市場。因此,這行絕對係香港唯一可會有機會建立IT産業的踏腳石。
    風險是有的,如零六年既恆春地震,全部都因海底電纜都“斷纜”而停慢半拍。但流動網絡卻無此問題影響。我相信係用流動通訊上萬維網,比用電腦少咗個風險。希望有公司帶領本地科技産業走出一片天吧。

    p.s.講到地震,真希望海地人民能渡過此危關,求主能看顧他們啦!

    Older Posts »

    在WordPress.com寫網誌.