2012年11月24日 星期六

閒聊技術趨勢與產業觀察

圖片來源:photopin


每隔一陣子這句話都會浮上我的心頭
吾生也有涯,而知也無涯。以有涯隨無涯,殆已!已而為知者,殆而已矣!為善無近名,為惡無近刑,緣督以為經,可以保身,可以全生,可以養親,可以盡年。
《莊子‧養生主》
雖然知道這個道理,但是為了求生存混口飯吃(好像講的太消極了?XD),膚淺的我就只能想辦法加緊腳步跟的上時代,不斷的吸收新知,想辦法消化,其實說穿了目的,就只是想知道這個世界到底在發生什麼變化?趨勢在哪裡?下一個機會再哪?此時的我扮演的是一個觀察者


觀察者


身為一個觀察者,但面對的資料量是如此的龐大,資訊來源是如此的多,如果沒有一個系統化的方式去閱讀與整理資訊,只是一味的趕流行,很容易就會迷失在資訊洪流裡面,所以常常會便常以下的狀況(整理自個人辛酸血淚史):
  • 漫無目標的在網路上"看"資料,看完就忘掉。
  • 當個熱血粉絲,訂閱許多網路大大的bloger或是粉絲頁,看完後大大還是大大,而自己還是一樣的小白。
  • 每天的工作就是打開Google Reader 快速掃描有興趣的文章,然後勾選全部以閱讀。
  • 每次看到新的名詞,新的玩意就一直追下去,然後又會連結到其他新玩意,最後就無限發散下去。
因為沒有辦法看從宏觀的角度去看清楚趨勢的全貌,到頭來就如同瞎子摸象般,看似有觀察到什麼,但往往只是個片面現象罷了,稱不上是趨勢。

 瞎子摸象  (圖片來源:網路)

不過如果摸久了,而且肯移動腳步由不同的面相亂摸,也許哪天就能真的給我們拼出個全貌出來!!好啦其實講了那麼多的廢話,只是為了我最近瞎子摸象的不負責任心得鋪梗~XD


趨勢:Social Mobile Big Data Cloud





軟體服務業的發展四大趨勢 (圖片來源:自行整理)

上圖是我由許多談論IT趨勢的文章(有興趣的可以看延伸閱讀),以及在這個產業混了好一陣子,經過摸索與消化所觀察整理出來的,分別是Soical Network,Mobile,Cloud Computing 以及Big Data。

其實這四大塊的議題與應用都是一直存在的,但是回到幾年前單獨拿這幾個領域來看,每個領域都會因為缺乏其他領域技術的幫助,各個都成不了氣候。直到幾年這四個領域的技術都有突破性的發展,突然間這四個領域碰撞在一起,互相成為彼此的幫助,讓這整個產業開始產生一個正向且加速的循環。
  • Social Network 得力於Mobile的普及,以及Cloud Computing 的助益才得以壯大。
  • Mobile 如果沒有Social Network 產生大量運用,以及 Cloud 的基礎建設幫助,也很難發展茁壯。
  • Big Data 也是因為Social Network 與 Mobile 的碰撞加速的產生大量的資料,才凸顯這個議題的重要性,與相關技術的蓬勃發展。

 開發者/技術人員


身為一個觀察者也許可以看清楚趨勢,可以了解每一個領域的關係與內容,已經足夠針對每個議題做個鍵盤評論家或是嘴砲,但是身為一個開發者或是技術人員這樣是遠遠不夠的,因為每一個領域在往下鑽,個個都是得下一萬小時苦心的硬功夫

The 10000 Hour Rule is just that. This is the idea that it takes approximately 10000 hours of deliberate practice to master a skill.  

於是我把上面那張產業的圖,轉換成下面這張技術相依性的拆解圖,因為對技術角度來說,我覺得Social Network比較像是一種應用,而Mobile、Cloud Computing 和BigData 則是圍繞著它在發展。轉換成技術角度的用意是提醒自己,身為技術人員,要有所取捨,雖然彼此都互相有關係,也都是未來的趨勢,但是不能太貪心全部都想摸,全部都想玩,順便也可以檢視一下自己這一路走下來到底跑到哪去了?身處何方?

所以由下圖的顏色可以知道,我自己對於Mobile 和 Social 這領塊領域真的墨真不深,短期間內應該也沒時間和沒精力去碰觸。(我不熟啊不要問我啊~~但是我有很多這領域的強者我朋友。)



四大發展方向的技術拆解圖  (圖片來源:自行整理)

所以講了那麼多今天要聊的還是雲端運算 ╮(╯▽╰)╭

話說雲端運算這個名詞剛開始流行的時候,Big Data 和 Cloud Computing 其實常被當做同一件事在討論,所以出去人家問你搞啥的,只要回答"我是搞雲的~(  ̄ 3 ̄)y▂ξ "就好,反正我自己也搞不清楚,別人也搞不清楚,但是好像很炫。


但是這幾年下來,我覺得市場上已經慢慢了解何謂雲端運算,以及可以分辨出各自的領域屬性,以及分別所要解決的問題,所以Cloud Computing 和 Big Data 這兩塊慢慢可以區別開來,畢竟所用到的技術看似相近,但是本質上還是很大的差別。

所以回歸到我最近到底在搞啥?可以說Big Data 和 Cloud Computing 這兩塊都有些著墨,但是再拆解下去,應該說我比較墨在於Cloud Computing 的 IaaS 這塊(真的是莫名跳入這個領域),以及Big Data 的 NoSQL這塊。不過這樣說還是太籠統了,因為光IaaS又可以再被分為幾個領域:
  • Network 
    • Traditional Data center Network  / Architecture
    • Network Virtualization / Software Define Network (SDN)
  • Storage 
    • Distribute Network file system
    • Network Storage
  • Computing
    •  Virtualization (CPU、Memory)
  • Management
    • Virtualization Management
    • Provision
    • Monitor
    • Hybrid
    • Backup
而Big Data 也被分為好幾個面相去討論:
  • Storage
    • Distribute file system ( HDFS)
    • Object Storage
  • Analytic
    • BI
    • Visualization
    • Machine Learning
    • Recommendation 
  • Computing
    • NoSQL
      • Hbase
      • MongoDB
      • Cassandra
    • Map-Reduce
      • Hadoop
      • MongoDB
      • MapR
    • Streaming Event Process
    • Complex Event Process
光是看Facebook 上的社團發展就可以知道,從一開始BigData Taiwan又細分成NoSQL Taiwan,後來又個別產生MongoDB、Hadoop..等社團,這樣一路拆解下去。越拆解下去我越是膽顫心驚啊,因為一定要選邊站啊,有所取捨啊!

如果現在人家問我懂不懂雲端,我只能說略懂,人家問我在做啥,我只能說打雜的....這正是樣樣通樣樣鬆的寫照吧...Orz...

 很奇怪的結尾和結論...(〒﹏〒)


延伸閱讀:
[1] Timing Your Adoption of Disruptive Tech like Cloud, Big Data
[2] Gartner: How big trends in security, mobile, big data and cloud computing will change IT
[3] Gartner Top 10 Strategic Technology Trends for 2013: Big Data, Cloud, Analytics and Mobile
[3] The "Big Five" IT trends of the next half decade: Mobile, social, cloud, consumerization, and big data
[4] Core digital world issue in 2012
[5] Mobile, social and big data drive cloud computing boom: studies
張貼留言