2013-12-27

不負責任之IT大未來預測


圖片來源:Federico Ciccarese

個人投入IT領域已有一段不算短的時間,來來去去看了許多IT服務、產品,下面是個人預估十年後、甚至十五年後的IT未來願景。

先點出最重要的關鍵:什麼技術都別談了,對用戶來說,IT就是一個小型的行動裝置

想像一個用戶情境:"每個人透過生物辨識裝置,利用自己的行動裝置(可能是手機)透過網際網路登入遠端的虛擬作業系統、操作各式各樣的APP(已經不管iOS、Android),所有的運算、資料都在雲端;今天不管

2013-09-22

[埃及、約旦] 流浪隨筆 - 約旦死海 Deadsea


死海(Deadsea),記得在懵懂幼年就已經在書籍上閱讀到:死海不是海,其實是一座鹽水湖泊,由於身處幾乎無雨的沙漠地帶,加上水分被太陽烹曬不斷蒸發的結果,讓湖水鹹度越來越高,變成世界鹽度一番的湖泊。顧名思義,因為鹽分相當高根本沒有任何生物可以生存在死海中;而人體在這座湖上能自己浮起來。

這次的埃及行其實原本沒有約旦這個景點,因為某些因緣際會,我們再碰到兩個台灣旅遊全世界的背包客,意識到一個這麼趣的地點,立馬改行程然後上網買了廉價航空飛了過去。真是不虛此行。

到約旦機場囉

搭乘約旦當地巴士

約旦的市區街道,滿街都是豪華轎車,不愧是石油輸出國之一

約旦即將大選,路上全都是競選人的宣傳海報(原來東西方搞選舉也沒什麼新的花樣,說回來,個人也在泰國的蘇美島碰過選舉的造勢晚會)

又是因為某些因緣際會,拖了某個傻蛋的福我們多買一張用不到的機票,所以我們直奔到約旦航空公司的辦公室,結果用很破的英文盧了半天也沒用:航空公司表示因為我們不是直接跟他們買(類似你在台灣用易遊網買長榮的機票),他們不負責,請我們找代理人。(後來回台灣是透過skype打電話到英國的代理人網站進行退訂費,但由於是廉價航空機制,大概只退了五成費用,這是某人第一次用電話跟歪國人聊天談正事...)但還是有一些特別的收穫~
我們明明就在一樓怎麼會寫0 ?

跨龍謀的電梯按鈕

2013-09-16

Note of daily stand-up review 每日站立會議執行心得


圖片來源:http://martinfowler.com/articles

滾石不生苔的法則,適用於惡劣不斷學習的職場、男女之間的感情維持、朋友的交際應酬,當然軟體工程也不例外。

問題在於,要怎麼讓石頭滾起來呢?又要怎麼判斷有沒有滾起來呢?所以某人堅持要執行每日站立會議(Daily stand-up review)

目前團隊跑了剛好一個多月,執行方式:
  • 每日早上九點初準時開始,全員參與,因為開得很快,在其他團隊要用會議室前就結束了,連會議室都不用借。
  • 站著開會,因為乳酸會在站立的姿勢下快速積累於雙腳,能有效加快會議速率。
  • 用google doc進行條列式追蹤,追蹤項目只寫三件事情:昨天我做了什麼今天我要做什麼我需要什麼幫助
  • 在大家報告完後,再行同步其他資訊(某些情況這件事情可以當作熱場用)。

在這裡先澄清一件事情,並不是所有的開發團隊都適用於每日站立會議,首先有幾個條件要滿足:
  • 人不能太少,四人以下團隊基本上就免了吧,因為整天就是這幾個人在你看我、我看你,幹嘛還花時間開會。
  • 人不能太多,雖然目前個人團隊還沒超過十個人,但依現在的負荷量來說,超過十人來開每日會議就會浪費太多時間,每個人報告個3分鐘,全部人報告完就要半小時,還沒有加上其他議題的討論時間。
  • 主席(可能是PM或SA)要有一定的技術能力,否則開了也沒意思,直接用功能完成度來追進度就好了。最好是能當場就決定某些技術環節要如何解決、來解決、何時解決,否則議而不決真的沒意義。

所謂的每日站立會議有幾項原則:
  • 時間不能太長,因為腳會痠。
  • 主席減少發言,最好是

2013-09-10

[Weinberg - Quality Software Management][Book 4][Ch 12] 流程原則


個人看書喜歡跳來跳去,這次直接跳到第四冊啦!

軟體工程大師溫伯格在談軟體管理學的前三本書,內容主要都是在導引如何建置優良的軟體開發,直到第四本書他開始談要如何在一個發展規模龐大組織及舊環境的體制下,我們該如何進行變革

第十二章講述的是流程原則,目的在於用方法論來克服人的惰性,關鍵在於任何環節都需要被掌握,然後怎樣的情況算是有所掌握,以下是摘要:

Note:
  • 專案中的每樣東西必須是顯而易見的,包含程式碼、計畫、需求、設計、測試計劃、測試結果、進展、所有的書面資料...
  • 當你發現任何一件成果看不到,或"無法接受檢驗",一定要停掉那件事情,並開始進行矯正。要避免"吉米是唯一知道那裏面有什麼東西的人"這類情況,先派人協助吉米,然後請吉米把事情記載於文中,如果吉米拒絕,就拿掉他。看不見的事情絕對不會安頓下來。
  • 通過獨立審查前,沒有一樣東西是真實的。
  • 你不做評量的東西,絕對會不受你控制。

2013-08-28

陪你讀冊 | 當責,從停止抱怨開始



奧茲法則

當責(Accountability)一詞,是今年過年父親給我的一本管理教科書看到的,但當時書籍內容過於偏向理論、教條式解說,個人就沒仔細閱讀。而這次筆記書籍則是用全球著名小說綠野仙蹤桃樂絲的故事做為破題,舉了許多實際案例,採取引導式發問、問卷自我檢視等實作面向說明如何做好當責這件事情,以下是重點的心得筆記。

一、個人當責
[當責秘笈]如何辨識自己落在水平線下,落入水平線下被害者循環的18個警訊
  1. 感到自己為際遇所困。
  2. 覺得無法控制現況。
  3. 當別人告訴你可以更努力更出色的完成結果時,卻是一場忠言逆耳。
  4. 發覺自己在怪罪他人。
  5. 討論問題時,越來越集中在自己做不到的事情,而非自己能做的事。
  6. 無法面對艱難的問題。
  7. 發現自己成為某些人的取暖對象,這些人告訴你,別人這回又對你如何不仁不義。
  8. 發現自己不願提出深入的問題,以了解自己是否有能力當責。
  9. 認為自己遭受不公平待遇,而且無能為力。
  10. 不斷發現自己採取防禦的姿態。
  11. 花許多時間談論無法改變的事情(例如:職場、股東、政府、景氣)
  12. 發覺自己茫然失措,但

2013-07-26

如何不用root就可以擷取android手機銀幕畫面



從iPhone陣營跳回Android後,一直有個問題困擾某人,就是Android手機竟然不能擷取銀幕畫面啊,莫大的杯具。尋尋覓覓,大概有六種方式可以擷取手機銀幕,但基本上要能支援擷取功能都要被root過,也就是會喪失保固,以下提供不用root擷取手機銀幕畫面到個人電腦PC的方法

自動傳送簡訊抽獎懶人法


圖片來源:hifree


Bill Gates曾說:"他只雇用最懶的工程師,因為懶,就會懂得用腦筋想方設法找出最好的方法來做事情"

相信大家一定有收過類似的活動抽獎簡訊,內容大概是"XX邀您於O/O前輸入數字回覆本簡訊完成闖關就抽機皇"

但一封封回傳浪費的已經不只是金錢,更還有時間。如果,這裡是說如果,你跟某人一樣電信月租費預設較高,每個月都還打不完,可以考慮多寄送這些抽獎簡訊來增加中獎機會。


懶人做法如下,以Android平台為例:

2013-07-18

[埃及、約旦] 流浪隨筆 - 金字塔 Pyramids



金字塔 Pyramids - 堪稱人類文明史上最不可思議建築之最,即使以今日文明仍無法精確了解其建造目的、建築方法。

眾說紛紜,最廣泛的大眾認知金字塔是法老王的陵墓,很合理,就像秦始皇也搞了一個地下陵墓;但人類的幻想總是喜歡加值未知事物,就有學者發現,金字塔高度乘上十億倍剛好是地球到太陽的距離,是一份早在古埃及時代(距今七千年)古埃及人就能精準計算出地球到太陽距離的證據

為了讓自己更快速融入古文明,某人出發前還去買了本《築夢金字塔》,內容主要講述吉薩金字塔群的法老王歷史、詳細介紹、觀測現象、建築方法推論,而其主推的建築方法是外部、內部坡道建築理論,簡單的說,作者認為石塊搬移的方式是由坡道搬運,如此才可能把偌大的石塊從低處搬到高處,並且放置在合適的位置,至於托運的方式根據石塊落點則分別採用內部坡道或是外部坡道兩種方式。有興趣的朋友歡迎借閱。

埃及人一定覺得其他國家的人有毛病,這麼大老遠風塵僕僕、頂著大太陽只為了看那個大土堆,因為如果天氣許可,在開羅市區的任何角落都可以直接看到金字塔建築物,這樣敘述就可以了解這個土堆有多大了吧!

回到旅遊話題

2013-07-11

[埃及、約旦] 流浪隨筆 - 旅之初





 實際走訪埃及後,發現真正令人神往的不是那封存已久的不可能建築古文明,而是那熱情的沙漠民族精神


最近埃及動亂頻繁,不少朋友問過曾去過該地背包旅行的在下,現在去自助旅行到底安不安全?一句話:"'放心吧!",剩下的故事,聽小的娓娓到來。


所有行程:



2013-05-23

[troubleshooting] HTC Butterfly 音樂app滑動檔案清單直接跳出

Question:用HTC Butterfly發生一個狀況,在進入原生官方app "音樂",進行瀏覽檔案的時候,直接因不明原因馬上跳出app.

Answer:砍掉擴充SD卡裡Download目錄下的檔案即可。

原因研判:

  • 下載的檔案裡可能有些格式損毀,因為某人喜歡抓到一半懶得等就不抓了
  • 檔案太多,超過index索引範圍

2013-05-20

網路爬蟲實作與原始碼分享 Web Crawler implementation & sharing

心血來潮將之前寫的網路爬蟲Web Crawler稍微重構後開源到Github上,以下是簡單的設計介紹及使用說明。

Github:https://github.com/A-Ho/Crawler

簡介:
  • 採link by link的方式大量截取網頁資訊至用戶端
  • 可自行設定探勘深度
  • 支援多線程(multi-thread)
  • 資訊存取方式以Cobweb.java作為abstract class,分別以memory、DB、disk三種資料存取來實作。(後來才知道用到了template method pattern)
  • 支援單獨檔案下載

2013-05-15

不要再Cost Cutting,創新就隱藏在細節裡


偶然機會,跟一個原本在做NB的代工大廠(對!就是俗稱的毛三利四),而現在努力想切入伺服器市場(後PC時代來臨,NB市場已經徹底萎縮)的台灣硬體廠商有交流機會。過程中他們介紹未來要推出的伺服器,雖然個人是很純的軟體RD背景,完全非硬體出身,但聽介紹、看了機器採用外部廠商的基礎元件和整體產出,倒是對所謂的業界俗稱ODM/OEM有更深一層的了解,也了解為什麼毛利率為什麼老是這麼低(雖然台灣軟體業好像也沒好到哪去)。

2013-05-11

Perfect chasing needs streetwise-leadership

我相信在追求完美的道路上是永遠沒有止盡的,但完美的達成需要團隊的完美配合。

如果領導人無法有願景的看到目標、甚至無法體會或理解路途上會歷經的坎坷,那注定無法成功。

2013-05-06

公有雲,易上手?!

2010年起,中國大陸的IaaS多到令人詫異,讓人不禁懷疑所謂的雲計算真的有這麼容易實踐嗎? 提供幾個思考方向:

名詞解釋:
1.主機代管: 資訊服務商將自備機放到IDC,由IDC業者提供機櫃空間、電力、頻寬。
2.主機租用: 資訊服務商為節省成本,不自備機器,向IDC業者租用。
3.VPS: Virtual Private Server。一般來說,對外提供資訊服務的主機,機器使用率往往不會滿載。所以大概在五六年前開始有了這個概念,透過虛擬化技術,在單一主機上虛擬多台作業系統,如此可將機器使用率最大化,IDC業者也可透過這樣的方式以最精簡的機器提供相同給相同數目的資訊服務商。
4.雲主機: 也就是IaaS,上述三種方式都是透過單一主機提供資源,所謂雲計算就是將運算能力、儲存空間、網絡頻寬等等所能想到的原生硬體整合成一個資源池,再由雲平台去做統籌分配,統籌分配管理的雲管理系統業界稱其為CloudOS。

發展現況:
基於以上幾種業務再去分析,中國大陸這麼多的IaaS基本上都有一個共同的特點,就是他們原先就是IDC業者,且早已同時提供了1~3項的服務。基於這樣的企業基礎,加上雲計算又這麼熱門的市場,當然所有業者都開始往第4項IaaS靠攏。

問題是,IaaS有這麼好實作嗎?

2013-05-01

[Weinberg - Quality Software Management][Book 1][Ch 7]

書名:溫柏格的軟體管理學,第一卷,第七章
Title:把穩軟體的方向

概要
軟工發展多年,已有許多方法論可協助軟體開發,例如waterfull process model,或是近年很流行的WBS、agile,無論如何,這些都只是方法,最重要是執行專案的是人,而不是方法;所以首先我們要了解純然規律性的方法不能完全適用這個道理,更糟糕的是方法論往往為扼殺創意,當然,保守的作法也往往比較安全。

方法論講了好幾頁,都不作者要表達的重點,最後他點出人為決定才是對專案造成關鍵干預且會脫離方法論造成多種不可見狀態。所謂不可見狀態,舉例說明如下:
  • 寫出來的程式有大量難以修正的錯誤
  • 專案成員對不該有自信的事情卻充滿了自信

2013-04-24

[Google App Engine] 建置與部署教學


Google App Engine(以下簡稱GAE)簡介
想建置自己的網站系統卻苦無賜服器跟頻寬嗎?GAE提供一個 java/python framework 的 run time environment,於 google 端配置有container,只要確保你的開發程式符合container規範及配置檔案即可即時運行於internet上。

難易度
適合有使用過 Eclipse + Java + Jsp + Servlet 等技術,建構過網頁系統人員。

Step 1. 建置開發環境
厲害一點的人其實不需要IDE就可以做事情,但工欲善其事,必先利其器,時間就是金錢,個人還是搭配一套坊間最知名的Eclipse作為開發工具。
個人整體作業環境是Windows 7 64bits + Eclipse Classic 4.2.2 (JUNO) + jdk1.6.0_43,細節怎麼安裝不贅述,重點是GAE。

2013-04-11

問出技術深度

會問自己到底做對了沒有才是重點:
1. 你的目標客戶在哪?
2. 你的產品到底優勢在哪?為什麼客戶要選用你的產品?
3. 你的技術強度到底夠不夠?競爭對手要用多少時間可以超越?
4. 你的產品到底賣多少錢了?要多久時間可以回本?
5. 你的客戶數現在有多少?你自己公司的員工有在用嗎?他們自己願意花錢購買嗎?

要如何了解您所帶的技術團隊強度,不要隨便就被幾個技術名詞忽悠,導致一個其實很簡單的技術被過度強化。嘗試問以下問題:

2013-03-21

Power of Script Language



寫過幾種程式語言,雖然個人不偏好任何一種,但script不那麼嚴謹的特性,寫起來總是特別有種快感。script可以做到一些很特別的事,例如說code已經在runtime才決定自己要做什麼事情,以下用python作一個簡單示範。

2013-03-17

Cloud OS Design Sharing


近日參與CS Design Camp,最後演講者分享如何將自己擅長的語言Ruby與CS整合的設計,聽完後個人也不禁熱血起來,在此野人獻曝個人的Cloud OS設計,以下簡稱COSM


COSM定義:
雲計算IaaS管控平台,提供使用者簡易Web管理介面,虛擬化部分能自由選用hypervisor,整體架構符合NTIS的雲端五大特性。


COSM設計宗旨:
  •  絕對彈性佈署(用戶根據運算需求快速佈署雲平台)
  • 既鬆散、又耦合,功能模組化(每個模組都可以切割出去單獨販售)
  • 允許動態調配資源(不中止服務)。

2013-02-20

[troubleshooting][xenserver] The bootloader for this VM returned an error -- did the VM installation succeed? Unable to find partition containing kernel


A:使用XenServer6.0安裝比較新kernel OS(例如CentOS 6.3)的VM時,碰到The bootloader for this VM returned an error -- did the VM installation succeed?  Unable to find partition containing kernel

Q:選擇預設安裝VM的OS類型時,選 other 即可解決。

2013-02-05

當全世界都在用Win/Mac, 你如何用Linux獲利




當世界已經被 Windows 或 Mac 占領,你還有辦法用賣免錢開放原始碼的 Linux 獲利嗎?

最重要的是找到商業模式

- 蘋果模式 Apple Pattern:Mac OS 底層用的是 BSD Linux,但他做了相當多的加值,除了從核心把原生致命的記憶體管理改善,最廣為人知的莫過於 Steve Jobs 畢生都在推行的一體化軟硬整合,瞧瞧2008年七月就上市 iPhone3,他那指尖翻閱頁面滑溜無比的順暢度,到了2013年的今日也沒有幾隻手機能超越。喔~對了,他還有個叫做 AppStore 的應用程式平台,不僅提供 Dev 一夕致富的機會,也讓 user 有十輩子也玩不完的 content。

2013-02-04

下一座台灣新資訊城:台中野孩子


十五年前,如果當時你還只是個名校高中生,你有想到自己全班將有超過六成的同學最低學歷是碩士嗎?

五年前,你有想過周遭有越來越多有出國(或將)工作的朋友嗎?或聽到超過九成五的台灣人想"登陸"發展嗎?

不過是趨勢,因為三個字:不得不

斗膽猜下一個趨勢:"台中是一個很好的資訊產業部落"

最愛用發問來引領思考:
1. 你想靠自己買好房子嗎?台灣薪資水準低落,科技新貴早已是過去名詞,日前某內湖科技公司,開出19k網羅硬/韌/軟體身手的RD,能在台北這樣高房價、高物價獨立置產的年輕人早已是鳳毛麟角。

[troubleshooting] Please close interfering processes

Q:透過XenConverter2.5將Windows7 64bits實體機轉虛擬成XenServer可用的vhd,如遇到

Please close interfering processes
需要格式化磁碟機的磁片才能使用

A:把GoogleDestop.exe停用就能繼續進行轉換了~