訂閱本網誌: Facebook, Google+, 電子報, RSS

程式設計的 Top 10 做與不做

May 2nd, 2011

聊完了軟體工程估算時間的問題,工程師薪水的問題,今天來和大家分享兩個很不錯的程式設計「做」與「不做」列表。首先,是 Andres Taylor (安綴斯‧泰勒) 寫的「Top 10 Things Ten Years of Professional Software Development Has Taught Me」,翻成中文就是「十年的程式設計經驗教我的十件事情」。

原文不長,裡面有很多不錯的觀念,我鼓勵你們去讀讀。以下是中文版:

  1. 物件導向比你想像中的還難,很多
  2. 程式設計師最重要的技能:溝通
  3. 你必須要學會說「不」
  4. 如果所有的事項都一樣重要,那意思是它們都不重要 — 無論如何必須把先後順序排出來
  5. 千萬別把事情複雜化
  6. 深入問題的核心,但是不要被困住了
  7. 非常清楚的了解其他人在做的事情,無論是行銷、設計、客服
  8. 你的同事就是你最好的老師  (你該試試 Pair Programming)
  9. 無論如何最後的產品必須是好用的
  10. 這世界上總會有一些混蛋

而至於什麼事情應該要避免,大家可以參考 Dare Obasanjo (戴爾‧歐巴桑侯) 寫的「Top 10 Signs Your Software Project is Doomed」,翻成中文就是「十個軟體專案注定失敗的跡象」。

  1. 第一個版本就想做太多功能
  2. 採用太新的技術平台
  3. 「複雜的問題,需要複雜的解法…」
  4. 團隊人手不足
  5. 成員開始隱藏進度落後的事實和原因 (Schedule Chicken)
  6. 不斷更改、增加的需求 (Scope Creep)
  7. 不知道客戶在哪裡
  8. 2.0 症候群 — 後繼版本非要更大、更強、更美 (Second System Syndrome)
  9. 與公司裡面另一個很有份量的產品競爭 (這在創業團隊應該不可能發生)
  10. 根本從一開始就選了一個你無法解決的大問題

以上,跟大家分享,希望能夠幫助你們在做的產品更順利、更成功,加油!

(via Coding Horror, photo via stianeikeland CC license)

為什麼工程師的薪水和生產力如此不成比例?

April 29th, 2011

算起來軟體工程師大概是全世界最特別的一種職業,因為一個最好的 programmer 和一個最爛的 programmer,生產力相差至少 10 倍,有時候甚至可以高達 100 倍。這在其他的職業幾乎是沒聽過的 — 像 Jordan (麥可‧喬丹) 這樣強的籃球員,平均一場比賽的生產力,頂多也只是菜鳥板凳的 10 倍。即使是其他腦力、創意密集的行業,例如:IC 設計、建築、商品設計等等,生產力的差別也都是在 10 倍的這個級距,很少達到 100 倍的。

但又為什麼,當 Jordan 的薪水是 NBA 菜鳥的 100 倍,一流建築師的費用是菜鳥的 1,000 倍時,最好的軟體工程師,他們所賺得的卻往往連新人的 5 倍都不到?這個問題我一直想不透。它也不是壞事,因為很久以前當我第一次發現了這個現象後,我就學會要花 3 倍的價錢去顧一個 10 倍強的工程師 — 多麼划算的一個買賣啊!只是這件事情發生的原因,讓我非常的困擾。第一,它一點都不符合經濟學上「邊際效應遞減」的原則,你看其他職業,例如上面提到的 NBA,當你要雇用一個生產力 10 倍的球員,你必須付出 100 倍的成本。更重要的是,它一點都不公平,生產力 10 倍的人,就算沒有拿 100 倍的薪水,少說也應該要拿 10 倍的薪水。

直到昨天,讀了 John D. Cook (強‧庫克) 的這篇文章:「Why programmers are not paid in proportion to their productivity」,才給我了一個天大的啟發。

原來,這件發生的原因主要有兩個 — John 其實也是引述  Joel Spolsky (喬‧史波斯基,有名的 Joel on Software 作者) 的說法:

第一,雖然全世界的工程師優劣差很多,但是一間公司的工程師優劣卻是差不多的,因為一流的工程師不可能長期忍受跟一群蠢蛋一起工作,所以遲早會離去,於是久而久之這間公司的工程師品質就會趨向一致 — 這也就是為什麼你必須要花很多力氣在團隊上面

而另一個更重要的原因,是一個好工程師的生產力,其實很難被察覺。如果你要判斷一個業務好不好,那很簡單,看看他的業績就行了。你要看一個建築工人的生產力,那也很簡單,看看他多快把房子蓋好就行了。以此類推,如果你要知道到一個軟體工程師的生產力,就看看他寫了幾行程式…

大錯特錯!!

一個軟體工程師生產力最高的時候,是當他可以少寫幾行程式的時候。當他可以用一些現成的東西,在很短的時間內拼湊出你需要的產品、解決方案的時候;當他可以跟你明確的溝通,不會浪費時間在開發錯誤的東西上的時候;當他可以正確的解讀數據,然後快速的修正產品的時候。這些…

通通不是用幾行程式碼去衡量的!!

問題是當一個優秀的工程師,快速的把產品湊出來,或者是很有效率的溝通時,老闆的反應是什麼?99.9% 都沒有辦法聯想到這就是極致生產力的表現,然後說:「嘿!我應該幫他加薪 10 倍!」所以,難怪好的工程師往往沒辦法獲得合理的報酬。

因此,如果你是創業團隊,該怎麼做?當然是用力的利用這個市場不平衡,把優秀的、在大公司鬱鬱不得志的工程師,通通都吸收到你的團隊來。而這也就剛好解釋了為什麼 EZTABLE 會說:我們在找的是「人」,而不是技術

PS. 意猶未盡的人,這裡有一篇 Hackers vs. Coders 的故事。

PPS. 我超喜歡下面的討論,比文章本身還精采,大家千萬不要錯過。

(Image via scobleizer, CC license)

「曝光」將死 — 社群媒體時代,可口可樂品牌行銷首重「表達」

April 28th, 2011

啊,多麼懷念過去那段美好的時光啊!什麼?老闆要做品牌行銷?沒問題,預算拿來,我去找間媒體代理,買一個全媒體廣告,給他來個三、五千萬次曝光,保證把全部消費者通通打暈,沒有一個人敢說沒看過我們的廣告。你看,我這行銷副總多威風啊!手頭上這麼多錢要花,這麼多代理商在巴結我,什麼?成效?拜託,做品牌是一門藝術,這是一個長期的工作耶,哪是讓你一兩年就可以看得出來的。

你看,以前在做品牌的,是不是很爽?可惜,隨著過去這十多年來網路的發達,接著是近三年社群媒體的到來,我得在這裡鄭重跟你宣布:

快醒醒吧!那些都是過去式了

沒錯,昨天 Harvard Business Review (哈佛商業評論) 上登出了一篇由可口可樂集團行銷長 Joe Tripodi (喬‧楚波第) 親自提筆撰寫的文章:「Coca-Cola Marketing Shifts from Impressions to Expressions」,不但正式宣告新時代的來臨,更詳盡的解釋了 Coke 這個百年老店,正在如何擁抱社群媒體。按照慣例,英文不錯的人,我鼓勵你們去讀讀原文。以下,則是我綜合了自己的意見,做的整理。

曝光將死

在舊媒體的時代,只有品牌能夠購買媒體,所以也只有品牌能夠發出聲音。那時的行銷講求的是「訊息最佳化」和「曝光管道最大化」– 也就是拍出一批好廣告,然後再去買收視率高的時段播放。但隨著網路的到來,這個遊戲的效果也越來越讓人質疑。或者應該說,跟網路戰斧飛彈般的精準相比,舊媒體量測「曝光」的行為,簡直就像瞎子摸象沒什麼兩樣。

權力下放

更重要的是,在社群媒體的時代,你不是唯一可以發聲的人,任何消費者,任何一個個人,如果對你的品牌有任何意見,無論是好的、壞的,他都能夠直接站起來向全世界宣告他的想法。也就是說,消費者互相影響的能力大大抬頭,而品牌主的發言權則大大衰退。因此,你不該再盲目追求「曝光」(impressions),反而應該要開始擁抱「表達」(expressions)。

擁抱表達?

沒錯,你必須這麼做,才能變身為一個新時代的品牌。至於詳細的方法,Joe 提出了以下這些非常精闢的建議:

  • 認清消費者能夠產生的品牌資訊遠勝過你的 — 打不贏,就加入他們,把你的品牌化為「優質的內容」(有沒有跟你說內容會取代廣告),去觸碰他們的心,讓他們幫你宣傳。所有 Coke 上傳到 Youtube 的影片,總共產生了 1.5 億次觀賞,但其中只有 18% 是他們「買來的曝光」,剩下的 82% 都是消費者透過社群媒體幫他們宣傳的結果。(還記得 Blendtec 的案例嗎?)
  • 關鍵在「流動又能聯想」的內容 — 「流動」的內容也就是病毒的內容,它讓消費者看了之後會有迴響,還很容易分享。但千萬別忘了「聯想」,如果看完內容又分享之後,卻不會想到你的品牌,那還是失敗。
  • 認清消費者才是品牌的真正主人 — 還記得新可樂事件嗎?那是 Coke 第一次認知到消費者才是品牌的真正主人。目前可口可樂的 FB 頁已經累積了 2,500 萬個粉絲,但剛開始卻不是他們自己開的,而是兩個住在 LA 的忠實 fans。
  • 全公司都必須要知道 — 經營品牌再也不是行銷長一個人的任務,全公司的人都可能在社群媒體上代表品牌發言,所以你必須要讓所有人知道什麼東西消費者喜歡,什麼東西他們會討厭。
  • 當社群的「推動者」,而不是「管理者」 — Coke 在 2009 年辦了一個 Expedition 206 活動,出錢讓 3 個由粉絲票選出來的大使,代表可口可樂到全世界訪問,就是最好的例子。
  • 反駁?還不如讓粉絲先替你出頭 — 當你在社群媒體上受到攻擊時,往往第一個反應就是想要回應。別急,先讓忠實的粉絲們有機會替你辯護,這也可以讓社群有更活躍的互動。

你看,可口可樂是不是真的懂了?而如果連百年老狗都能學新把戲,那請問你還在混什麼?我說社群媒體真的來了,所以你也別再懷念舊時代,它真的已經過去了。也別再消極的把社群行銷外包給別人了,趕快袖子捲起來,研究你該怎麼做,否則就等著被淘汰吧!我建議的第一步?試試開個 Twitter 帳號如何。

(Image via funkyah under CC license)

©2025 MR JAMIE.
網站由 Allen Hsu 設計 | Logo 動畫由 Wen Chen 完成