軟體公司與網路公司哪裡不一樣?
有一回,和一個久未見面的學長聊天,他對我說,「你們做軟體的很好哇!爆發力很強!好像Google、Yahoo,還有最近流行的 Web 2.0……」當時,我很想跟他說,「不,我們軟體公司 (Software Company) 跟他們網路公司 (Web Company) 不一樣」,但我還是沒有把這句話說出口。因為我雖知道有所不同,但那時我還不能準確地說出來,到底有什麼不同。
前幾天,參加了一場SaaS (Software-as-as-Service) 的 eSeminar,把軟體公司與網路公司做了個比較,讓我開始能注意到,到底軟體公司(Software Company)與那些網路公司(Web Company)最根本的差異為何,又哪些網路公司其實還是軟體公司,雖不敢說自己想得多完整、說的有多對,但還是試著把這些心得想法寫下︰
第一,雖然同樣有開發軟體,但軟體公司是「賣軟體的公司」,而網路公司不是。讓我繼續衍生這句廢話︰賣軟體的公司,賣的是各式各樣自己開發的軟體,好比作業系統、應用程式等等。在軟體公司的想法裡,軟體它是一樣商品,好像汽車、洗髮精、音樂,要顧客把軟體帶回去之後,想用就用,愛怎麼用、就怎麼用。
網路公司則不是這麼想。他們想的是,不用把商品帶回去,就在網上,讓用戶把想做的事做掉。
一個是要帶回去,另一個則不用帶回去,這個想法的不同,又導致更多不同︰Deploy (部署) 的不同、測試方法不同、開發週期不同。
Deploy 和 Install 其實是件討厭的事。Deploy 到用戶的電腦上是討厭的 Last Mile,安裝更是要考慮一堆相容的問題。想要讓愈多的顧客把軟體帶回家,大量的顧客衍生出複雜的需求,複雜又無限大的configuration 問題,也衍生了更漫長的測試,與更漫長的開發週期。對軟體業者而言,Deploy 和 Install 往往需要引進中間人的力量才能解決,好比養批技術支援人員,好聽懂用戶的問題是什麼;藉助第三方的顧問公司、SI公司、所謂的Partner等等,好弄清用戶的環境是什麼,好為用戶來Deploy 和 Install 軟體產品。
Web Company 可以避掉 Deploy 和 Install 的 Last Mile,對開發者來說,這讓軟體的更新變成極方便的事;對行銷者來說,則是去掉中間人與通路商,與顧客、使用者間有了更緊密的連結。於是乎,Web Company 更能走向Agile 的 Iterative Development,因為可以和顧客一起開發產品、可以有更少的待測環境、更短的開發週期。也因此,許多 Web Company 在帶給使用者新Feature的同時,還能更省時也更省錢。無怪乎許多軟體業者見到YouTube的成功,在酸葡萄心理下不免有一絲疑惑:才二十幾個人的小公司,怎麼能搞這麼大的事?
不過,不是每個網路公司,都是真的網路公司。網路公司的想法,是在網上就把一切的工作做掉,因此省掉了Deploy 和 Install 的麻煩事。換言之,即使有美美的web介面,如果沒有省掉麻煩事,那就還不算真正的網路公司Web Company 。例如,不少線上遊戲還是要下載數百MB的安裝程式,雖然是在網路上和人玩遊戲,但是絲毫未減掉半分Deploy、Install、Configuration的問題。有些網站空有web-based interface,還是要繁複的setup,要下載一堆安裝程式、元件,還是會引起各類相容問題,還是無法讓用戶很容易地開始使用,更不用說與用戶一起來開發了。
最後,我想起近來很多人在討論的Getting Real - 37signals所使用的開發方法。我認為這就是網路公司Web Company的典範。它其實不只是軟體開發的方法論,它還包括了如何行銷、如何與顧客互動合作。但這套典範能否適用於所有軟體開發?部份做法或許可行,但我不認為所有軟體公司能夠跟著這樣做,好比我認為M$公司應該就不行。倒不見得全然是舒適使人懶惰 ,而是其基本想法就還是想要賣軟體。想法未改變,典範是不易轉移的。
問題:當年,某公司提出,其產品的介面都要是web-based,才能到處都能用,省掉Deploy 和 Install 的Efforts。固然有遠見,但今天它是Web Company嗎?
前幾天,參加了一場SaaS (Software-as-as-Service) 的 eSeminar,把軟體公司與網路公司做了個比較,讓我開始能注意到,到底軟體公司(Software Company)與那些網路公司(Web Company)最根本的差異為何,又哪些網路公司其實還是軟體公司,雖不敢說自己想得多完整、說的有多對,但還是試著把這些心得想法寫下︰
第一,雖然同樣有開發軟體,但軟體公司是「賣軟體的公司」,而網路公司不是。讓我繼續衍生這句廢話︰賣軟體的公司,賣的是各式各樣自己開發的軟體,好比作業系統、應用程式等等。在軟體公司的想法裡,軟體它是一樣商品,好像汽車、洗髮精、音樂,要顧客把軟體帶回去之後,想用就用,愛怎麼用、就怎麼用。
網路公司則不是這麼想。他們想的是,不用把商品帶回去,就在網上,讓用戶把想做的事做掉。
一個是要帶回去,另一個則不用帶回去,這個想法的不同,又導致更多不同︰Deploy (部署) 的不同、測試方法不同、開發週期不同。
Deploy 和 Install 其實是件討厭的事。Deploy 到用戶的電腦上是討厭的 Last Mile,安裝更是要考慮一堆相容的問題。想要讓愈多的顧客把軟體帶回家,大量的顧客衍生出複雜的需求,複雜又無限大的configuration 問題,也衍生了更漫長的測試,與更漫長的開發週期。對軟體業者而言,Deploy 和 Install 往往需要引進中間人的力量才能解決,好比養批技術支援人員,好聽懂用戶的問題是什麼;藉助第三方的顧問公司、SI公司、所謂的Partner等等,好弄清用戶的環境是什麼,好為用戶來Deploy 和 Install 軟體產品。
Web Company 可以避掉 Deploy 和 Install 的 Last Mile,對開發者來說,這讓軟體的更新變成極方便的事;對行銷者來說,則是去掉中間人與通路商,與顧客、使用者間有了更緊密的連結。於是乎,Web Company 更能走向Agile 的 Iterative Development,因為可以和顧客一起開發產品、可以有更少的待測環境、更短的開發週期。也因此,許多 Web Company 在帶給使用者新Feature的同時,還能更省時也更省錢。無怪乎許多軟體業者見到YouTube的成功,在酸葡萄心理下不免有一絲疑惑:才二十幾個人的小公司,怎麼能搞這麼大的事?
不過,不是每個網路公司,都是真的網路公司。網路公司的想法,是在網上就把一切的工作做掉,因此省掉了Deploy 和 Install 的麻煩事。換言之,即使有美美的web介面,如果沒有省掉麻煩事,那就還不算真正的網路公司Web Company 。例如,不少線上遊戲還是要下載數百MB的安裝程式,雖然是在網路上和人玩遊戲,但是絲毫未減掉半分Deploy、Install、Configuration的問題。有些網站空有web-based interface,還是要繁複的setup,要下載一堆安裝程式、元件,還是會引起各類相容問題,還是無法讓用戶很容易地開始使用,更不用說與用戶一起來開發了。
最後,我想起近來很多人在討論的Getting Real - 37signals所使用的開發方法。我認為這就是網路公司Web Company的典範。它其實不只是軟體開發的方法論,它還包括了如何行銷、如何與顧客互動合作。但這套典範能否適用於所有軟體開發?部份做法或許可行,但我不認為所有軟體公司能夠跟著這樣做,好比我認為M$公司應該就不行。倒不見得全然是舒適使人懶惰 ,而是其基本想法就還是想要賣軟體。想法未改變,典範是不易轉移的。
問題:當年,某公司提出,其產品的介面都要是web-based,才能到處都能用,省掉Deploy 和 Install 的Efforts。固然有遠見,但今天它是Web Company嗎?