當閱讀遇到數位

今天去政大聽了這場研討會(第一次去政大說),當然是衝著台灣Google研究所所長簡立峰去的,所以只聽了早上的場次,中午就落跑了…:p

簡所長先介紹一下Google現狀,提到Google不只是search engine,而是擁有一個龐大的 infrastructure (上萬台的server散佈各大洲),使用者一個簡單的 search 動作就會同時動作各洲的server來做 search,合併結果回傳給user。

要說為什麼Google可以有這麼多創意產品,倒不如說因為有這個架構,只要data進去,各種創意應用就會源源不絕的實現。 閱讀全文〈當閱讀遇到數位〉

Server 搬家,Lighttpd 初登場

還是自己架Server用起來比較方便,之前主要是家裡的頻寬太慢沒辦法架站,所以只好放在遙遠的 bluehost

這幾天家裡延宕已久的ADSL終於升級好了,從 9/8 線上升級到8M/640k,中間不知道打過多少通123,來了三個工程師終於搞定,給中華電信鼓鼓掌。

因為要用 Rails,所以 Web Server 我改用眾所推薦的 Lighttpd,不過第一次用調教了好久,主要是 Rails 的設定跟 wordpress 的 rewrite (跟 apache 格式不同)。

主要是 follow 著  lightyror.blogspot.com/ 來設定,本來想用同一個 domain,不同目錄的方法來跑 rails。一開始跑 fcgi 就出不來,try 了好久才知道沒裝 ruby-fcgi,用 gem install fcgi 也裝不起來,後來用 FreeBSD 的 /usr/ports/www/ruby-fcgi 很快就裝好了。

設好之後,因為多一層目錄的關係,還要改 routes.rb,這裡又try了好久不知道為什麼一直Recognition failed。成功跑起來之後,我發現 public 裡面的css跟圖片連結等還是不對。呼,還是用 domain 區分比較不惱人啊,回頭又把 DNS server 設好跑起來。

支援php+fastcgi照著lighttpd的文件做就可以了(先裝 php4-cgi 再裝 php4-extensions),麻煩在 wordpress 的 permalinks,原本用 apache 有寫好的 .htaccess 檔,換 lighttpd 之後就得自己來設定 rewrite了,找了 google 好像沒有也直接可以套用的… :(

溫伯格 你想通了嗎?

 蠻有意思的一本書,討論”解決問題”這件事情。沒有複雜的理論,可以很輕鬆的看一些故事,提供了一些不錯的思維切入點。

問題是什麼?

  • 在開始解決問題前,先釐清這個問題 : “誰有問題?”
  • 問題往往來自期望和感受之間出現了落差
  • 不要嘗試幫一個沒有幽默感的人解決問題,因為那簡直是自找麻煩。 (註:因為思考需要天馬行空一下,解法也可以很有創意)

這是什麼問題?

  • 不要把別人解決問題的方法,當成問題的定義。尤其是當解決方案是你自己提出的時候
  • 如果你很輕易就解決了別人的問題,那麼他們將不會相信你解決了他們真正的問題。 閱讀全文〈溫伯格 你想通了嗎?〉

學習 Programming 的歷程

thegiive提到他的學習歷程,覺得蠻有趣的。

我自己接觸的順序是

(2001) C++ -> Pascal -> (2002) PHP,SQL,Javascript -> (2003) Assembly、C、Java、Scheme、Prolog、C# -> Perl -> (2004) UML、Design Pattern -> (2005) CSS、XHTML -> (2006) Ruby、unobtrusive Javascript

第一次認真學的程式語言就是C++,啃的是侯捷翻譯的 Essential C++ 中文版,記得當時還唸了兩遍,滿滿的註記,看到了 procedural,generic (STL),object-oriented 等不同面向的精隨。C++不只是物件導向的C而已,而是更好的C,要我建議,我還是認為可以直接學C++,不一定要照先學 C 再學 C++ 的順序。

Pascal 是清大資工的大一程式設計課,不過最近他們開始改上C了,Pascal 是個古董嚕。PHP,SQL,Javascript 是要打工才學的,也開始接觸 web programming,學到很多經驗,一直用到現在。Assembly,C,Java,Scheme,Prolog,C# 都是課堂上學的,並沒有學的很深入,僅只是交作業程度,不過也讓我的廣度增加不少。Perl 是去學校計中打工學的,認真看了駱馬書,看到了一個非常有意思 hacker 語言。接觸了 UML,Design Pattern,才真正了解物件導向的威力與應用。碰到網頁標準興起,才又認真學好CSS。今年則開始認真學Ruby跟RoR,也打算把 Javascript 重新學過(當代的Javascript跟幾年前又有很大的本質差異了)。

老實說,學什麼語言要照什麼順序嗎? 還在學校的話,就學學C++或C吧,因為不論新出了什麼語言,C/C++是會存在到世界末日的那一天的。要做 Web Programming 的話,認真學好網頁標準(至少CSS跟XHTML)吧,只要還用瀏覽器看網站,這都是不變的基礎。至於要學什麼語言來安身立命,我覺得也是看機緣、主流、喜好跟自己的判斷了吧。

話說回來,拿 Ruby 當你的第一個程式語言也是不錯呢,可以看看Learn to Program,超入門的。

大前研一 我的發想術

大前研一最近的書,內容不多也很通俗簡單念,所以花了幾個鐘頭功夫就念完了。雖然沒什麼大學問,倒也可以幫助你思考一些事情啦。另外書印的不錯漂亮,不過其實在書店翻一翻我想就差不多了…:p

大前研一的發想技術(how to create)共有六招 :

1.懷疑成見

不要以為現有的想法都有道理,換個角度思考,可能發現既定的觀念很不合理,而且有其他種解決方法。

例一 : “少子化使大學進入寒冬?”,要打破成見把社會人士找回研究所,利用遠距教學。例二 : “人口減少沒有速效藥?”,推動移民政策。例三 : “人口減少將使國內市場規模萎縮?”,可以把亞洲全境(尤其中國)當作第二個國內市場來思考。

2.從網路思考

在延伸新點子之前,一定要先考慮分析網路,要如何建立網路。廣義的說就是思考現在某樣商品透過什麼途徑送到消費者手中,還可能有哪些其他路徑。作者舉例電視頻道利用衛星電波才打破地面電波的限制。

中立網路比帶有色彩的網路更有優勢,因為消費者喜歡選擇,喜歡比較各家產品。所以入口網站資訊垂直整合是大忌,應該要做全方位外交。從用戶來看,中立是最好的,業者如果優先播放自己的內容,反而不能確實反應觀眾喜好。因此作者認為掘江貴文收購日本放送公司不是真心想融合廣播與IT,
而只是想海撈一票而已,做個greenmailer(為了讓對方買回公司而收購公司股票的人)。另一個失敗例子是AOL美國線上與時代華納的合併。

網路本身的架構也能創造成功事業,像是美國的TCI併購小的地方電視台來整併成長,或是西南航空先建立中型城市的直飛航班。我認為就像是地方包圍中央的策略,不直接與最大的競爭對手火拼。

總之,你要挑最有利的網路,如果現有的網路隊消費者不利,那你就有機會。假使你不能架構網路,也可以利用網路特性,傳達內容(請參考下一招)。 閱讀全文〈大前研一 我的發想術〉