有多少人會相信魔鬼終結者的世界會成真?智慧會從石頭裡蹦出來嗎?
比起有一天人類會以技術打造出純粹無機的智慧生命,我覺得我們會更早打造出與人類Hybrid的『混和物』出來。有機化學、分子生物學跟奈米科技的差距並沒有想像中來的大,人機介面的開發與進展,將很有可能大大地改變人類生存的方式。
想像一下以下情境:
盲人有一天可以透過新的電子眼接收影像,而處理視覺訊息的大腦區塊是採用幹細胞誘導技術『打造』出來的。
某種特殊的奈米元件透過自體組織培養技術消除抗原反應後,可以安全的注射進人體不產生免疫反應,目標先照過核磁共振描繪出生體藍圖,再穿上緊密貼合人體表面的定位衣準備對注射進人體的奈米元件進行『電波誘導』,被誘導的奈米元件經過自組織後著床在特定生理區塊即形成『奈米地基』,之後數波注射進去的奈米元件即可根據在前批構築起來的基礎上以特殊的酵素端子或誘導訊號繼續架構。
以這種方式,人類就可以把各種可能的裝置元件無縫的植入到人體裡面。想像一下,人的眼睛可以看到熱紅外線、耳朵可以收聽電波頻道,而只是觸摸或是貼上一個電極就能跟身體外部的運算、執行裝置做直接溝通。醫療用途上,骨折可以用陶瓷、碳纖維奈米元件直接接合,一個星期就可以出院強度還加倍。面對未來的超級電腦加上奈米機器大軍組合起來的超級多工處理能力,全身擴散的癌症細胞將面對可以每秒開2000臺微奈米級手術的奈米機器人醫生。而持續埋在老年人身體裡的監控系統也將透過居家電腦與醫院連線,新型感冒、流行病、毒物的抗體抗原監測、突發性血管栓塞抗凝血劑直接投入、無徵兆大量內出血阻截都可以自動執行。
這套裝置如果用用在腦部,人機介面就可以從機械式的操控進化到化學、電子式的操控。
奈米單元分散在整個腦部,就可以當成控制點,對腦部各部位以三角測量的方式定位出相對座標,同時透過被動電磁波偵測或是對人體既有的大型訊息傳遞線路-脊椎神經做訊息截聽,都可以做動作行為的預測與確認。由於靠近皮膚的元件可以跟外部的運算裝置做無線溝通,內部網路本身並不需要太強大的運算效能,很可能只是個可重新活化的奈米級生物晶片矩陣,使用體內的化學環境做運算。(待續...)
2009年11月19日 星期四
2009年11月8日 星期日
舊文:關於平等2006/04/29
在古代,窮人是完全無法想像真正有錢人的生活的。一個要飯的乞丐是無法想像娶了一打姨太太,家裡一兩百名傭僕的大戶是如何生活。
然而在現代,拜科技進步、媒體與資本主義發達所賜,不管吃的、穿的、住的、用的、有錢人能玩得到的我們通通都可以Google過來瞧瞧。而商人們也無所不用其極的想要將這些高價奢侈品賣入百姓家,來賺取更多利潤報酬。
也許我們的確一輩子也賺不到這麼多錢來享受這些,但是看得到就覺得不能擁有這些的自己很渺小、很失敗、覺得人生能作的"有限"的話,我想那不是命運殘不殘酷的問題,那是個人修養到哪裡問題。
的確這個世界不平等,的確不是每個人都有相同的機會與天賦。但是"大家都有一樣的起點"從來就不是這世界應該要有的東西。這樣的認為與抱怨,不過是人太過自我感覺良好的一種傲慢罷了。
在物理學實驗當中我們知道要讓一團氣體裡頭所有的分子都處於相同能階態是多麼不可能的一件事,我們也知道要產生出一團光子都同頻且朝單一方向行進有多困難。
這些都不是自然界有的,光阱才有可能讓幾顆分子同能階而雷射則是人為激發出來的,這些都是人類用智慧創造出來的東西,換言之,都是人們努力得來的成果。
我們活著的世界,也是人們努力出來的成就。
然而在現代,拜科技進步、媒體與資本主義發達所賜,不管吃的、穿的、住的、用的、有錢人能玩得到的我們通通都可以Google過來瞧瞧。而商人們也無所不用其極的想要將這些高價奢侈品賣入百姓家,來賺取更多利潤報酬。
也許我們的確一輩子也賺不到這麼多錢來享受這些,但是看得到就覺得不能擁有這些的自己很渺小、很失敗、覺得人生能作的"有限"的話,我想那不是命運殘不殘酷的問題,那是個人修養到哪裡問題。
的確這個世界不平等,的確不是每個人都有相同的機會與天賦。但是"大家都有一樣的起點"從來就不是這世界應該要有的東西。這樣的認為與抱怨,不過是人太過自我感覺良好的一種傲慢罷了。
在物理學實驗當中我們知道要讓一團氣體裡頭所有的分子都處於相同能階態是多麼不可能的一件事,我們也知道要產生出一團光子都同頻且朝單一方向行進有多困難。
這些都不是自然界有的,光阱才有可能讓幾顆分子同能階而雷射則是人為激發出來的,這些都是人類用智慧創造出來的東西,換言之,都是人們努力得來的成果。
我們活著的世界,也是人們努力出來的成就。
舊文:論平等與自由 2006/05/07
自由是太過抽象而沒有定義的東西,從某個觀點來看,那是人類的幻覺。
從來沒有人能脫離慾望達到自由而還擁有做任何事物的動機。
從來也不存在完全脫離理性控制的自由,事實上,你完全脫離了理性大概就是完全的被慾望支配。
如果同時失去了這兩者,靈魂還可以剩下些什麼?
所以,在理智表層底下的慾望,受到外在環境的觸發或背景資訊處理的事件回應,不時的生產作為各式各樣行為的動機,最後受到理性的控制真正的發生行為,說不定就是吾人思想所擁有的全部了。
自由可能只是對於這種結構的不夠深入瞭解而產生的錯覺。
平等則是價值判斷的問題,除非眾人在同一件事情上都有相同的價值觀且以該價值觀觀之,所有人目前所處狀態皆相同,才能說這群人在這個問題上是平等的。
人們誕生自不同的土地,說著不同的語言,以不同的文化養育。最後,環境中不同的因果緣法將之塑造成不同之人...
命運相同的人只有一個,因為命運指的是一個人從出生到死亡一整個連續的時空地點所構成的世界集合。命運跟個人的定義是綁在一起的。
如果沒有完全相同的命運,何來相同的價值觀?
人既然只能有不同的命運,就只能有不同的價值觀。
而不同的價值觀底下,何來比較與公平?
在不同價值體系下的同一實然事物,並不必然具有相同的應然標準。
在不同的標準下作比較,也只是浪費時間而已。唯一存在的,就只有價值的載體(也就是個人)彼此間力量的相較了。
而力量有很多種形式,在人類社會裡頭最強的力量就是規範。舉例來說,法律與道德。
法律與道德,就是巨觀下社會作為一個體,其所相信的價值。而社會的力量即稱作權威。
面對這樣的權威,不去順從的就會被社會組織排除掉。
中古世紀不相信教廷的都會被當成異端而被全歐洲獵殺。在現代美國社會,不相信男女平等價值的會被告性別歧視而賠上大筆金錢。
從這點來看,人類世界就是眾多的意念載體粒子彼此交流、碰撞所呈現出來的圖像。
從來沒有人能脫離慾望達到自由而還擁有做任何事物的動機。
從來也不存在完全脫離理性控制的自由,事實上,你完全脫離了理性大概就是完全的被慾望支配。
如果同時失去了這兩者,靈魂還可以剩下些什麼?
所以,在理智表層底下的慾望,受到外在環境的觸發或背景資訊處理的事件回應,不時的生產作為各式各樣行為的動機,最後受到理性的控制真正的發生行為,說不定就是吾人思想所擁有的全部了。
自由可能只是對於這種結構的不夠深入瞭解而產生的錯覺。
平等則是價值判斷的問題,除非眾人在同一件事情上都有相同的價值觀且以該價值觀觀之,所有人目前所處狀態皆相同,才能說這群人在這個問題上是平等的。
人們誕生自不同的土地,說著不同的語言,以不同的文化養育。最後,環境中不同的因果緣法將之塑造成不同之人...
命運相同的人只有一個,因為命運指的是一個人從出生到死亡一整個連續的時空地點所構成的世界集合。命運跟個人的定義是綁在一起的。
如果沒有完全相同的命運,何來相同的價值觀?
人既然只能有不同的命運,就只能有不同的價值觀。
而不同的價值觀底下,何來比較與公平?
在不同價值體系下的同一實然事物,並不必然具有相同的應然標準。
在不同的標準下作比較,也只是浪費時間而已。唯一存在的,就只有價值的載體(也就是個人)彼此間力量的相較了。
而力量有很多種形式,在人類社會裡頭最強的力量就是規範。舉例來說,法律與道德。
法律與道德,就是巨觀下社會作為一個體,其所相信的價值。而社會的力量即稱作權威。
面對這樣的權威,不去順從的就會被社會組織排除掉。
中古世紀不相信教廷的都會被當成異端而被全歐洲獵殺。在現代美國社會,不相信男女平等價值的會被告性別歧視而賠上大筆金錢。
從這點來看,人類世界就是眾多的意念載體粒子彼此交流、碰撞所呈現出來的圖像。
舊文:理性與感性 2007/05/13
當我們對一件事情有所主張的時候。
是藉由客觀理性去假設、分析,取得『何為實然』的背景。
再經由主觀意識來權衡價值輕重,獲得『何為應然』的結論。
西方哲學家說:
『對於不可言說之物,你只可保持沉默。』
『務須把能說清楚的說清,而不能言論的,就讓清楚的部份去澄明其輪廓。』
也像東方的山水藝術:
『畫木、點石、描遠山, 一切風景自在飄渺間。』
所以,雖然『留白』本身是不能描繪的,但若連『可以著墨』的部份都不能恰如其分的表現,那麼,喪失了希冀賦予的意義,白,也就是『無』了。
理性,也就是把握住真實的繪畫技巧。
對一個無法良好掌握理性的人來說,個人的主張常常是一時的衝動、激昂,而所謂『理性分析的結果』也不過是情緒上捍衛個人定見的自圓其說而已。
失去理性,也就無所謂對善惡、價值的區別...要瞎子討論顏色是無意義的。至於人活在世間的一切美好也就與醜惡混雜一氣而無從感受起。
是藉由客觀理性去假設、分析,取得『何為實然』的背景。
再經由主觀意識來權衡價值輕重,獲得『何為應然』的結論。
西方哲學家說:
『對於不可言說之物,你只可保持沉默。』
『務須把能說清楚的說清,而不能言論的,就讓清楚的部份去澄明其輪廓。』
也像東方的山水藝術:
『畫木、點石、描遠山, 一切風景自在飄渺間。』
所以,雖然『留白』本身是不能描繪的,但若連『可以著墨』的部份都不能恰如其分的表現,那麼,喪失了希冀賦予的意義,白,也就是『無』了。
理性,也就是把握住真實的繪畫技巧。
對一個無法良好掌握理性的人來說,個人的主張常常是一時的衝動、激昂,而所謂『理性分析的結果』也不過是情緒上捍衛個人定見的自圓其說而已。
失去理性,也就無所謂對善惡、價值的區別...要瞎子討論顏色是無意義的。至於人活在世間的一切美好也就與醜惡混雜一氣而無從感受起。
2009年11月7日 星期六
如何幫助你的使用者成為最好的
如果你要經營一家公司,或者,你要加入一間公司,你應該好好看看這篇
http://www.globalnerdy.com/2009/10/17/its-about-helping-your-users-become-awesome-or-being-better-is-better-by-kathy-sierra/
如果你不幸或極幸運地是個軟體開發者,你該看看這位CEO這十年來做些什麼。
http://www.joelonsoftware.com/items/2009/11/01.html
http://www.globalnerdy.com/2009/10/17/its-about-helping-your-users-become-awesome-or-being-better-is-better-by-kathy-sierra/
如果你不幸或極幸運地是個軟體開發者,你該看看這位CEO這十年來做些什麼。
http://www.joelonsoftware.com/items/2009/11/01.html
2009年11月3日 星期二
NoSQL:一群 開源、叢集而且討厭RDBMS的人的聚會
NoSQL是一個社群,積極思考如何架構一個Open Source, 叢集, 採用非關聯資料庫的系統架構。
這次聚會裡面介紹了很多很棒的東西,詳細內容可以看看這篇文章:
http://blog.oskarsson.nu/2009/06/nosql-debrief.html
(話說回來我一直很討厭ORM,現在可好,有人給我很好的藉口拉~)
以下是主要的聚會議程:
Presentation slides and videos
Intro session - Todd Lipcon, Cloudera (slides, video1, video2)
Voldemort - Jay Kreps, Linkedin (slides pdf ppt, video1, video2)
Cassandra - Avinash Lakshman, Facebook (slides pdf ppt, video)
Dynomite - Cliff Moon, Powerset (slides, video)
HBase - Ryan Rawson, Stumbleupon (slides, video)
Hypertable - Doug Judd, Zvents (slides pdf ppt, video1, video2)
CouchDB - Chris Anderson, couch.io (slides, video1, video2)
VPork - Jon Travis, Springsource (slides, video)
MongoDb - Dwight Merriman, 10gen (slides, video)
Infinite Scalability - Jonas S Karlsson, Google (slides, video)
其中有Linkedin喔。
我的個人心得是,RDBMS有他強大的地方,但這些強大不見得是系統真正所需要的。
我們常常需要的不過是一堆的one -to-many關係的超級大Table,可以裝下超級多的資料,承受超大量的request per second。
Foreign Key真的是必要的嗎?在實際運轉的系統中,實在很少聽到資料庫的資料是可以刪除的。
ORM真的是必要的嗎?在Concurrent programming的世界裡,取回來的Mode通常只活了一個短短的request,Collection Data幾乎只用來Read,而對這個Model的任何Entry做Data Update常常不是一個簡單的操作,而是許多操作、資料檢核所構成的交易問題。
其實『資料庫網路應用程式』可以很不簡單、很豐富、不只是Table CRUD而已。
這次聚會裡面介紹了很多很棒的東西,詳細內容可以看看這篇文章:
http://blog.oskarsson.nu/2009/06/nosql-debrief.html
(話說回來我一直很討厭ORM,現在可好,有人給我很好的藉口拉~)
以下是主要的聚會議程:
Presentation slides and videos
Intro session - Todd Lipcon, Cloudera (slides, video1, video2)
Voldemort - Jay Kreps, Linkedin (slides pdf ppt, video1, video2)
Cassandra - Avinash Lakshman, Facebook (slides pdf ppt, video)
Dynomite - Cliff Moon, Powerset (slides, video)
HBase - Ryan Rawson, Stumbleupon (slides, video)
Hypertable - Doug Judd, Zvents (slides pdf ppt, video1, video2)
CouchDB - Chris Anderson, couch.io (slides, video1, video2)
VPork - Jon Travis, Springsource (slides, video)
MongoDb - Dwight Merriman, 10gen (slides, video)
Infinite Scalability - Jonas S Karlsson, Google (slides, video)
其中有Linkedin喔。
我的個人心得是,RDBMS有他強大的地方,但這些強大不見得是系統真正所需要的。
我們常常需要的不過是一堆的one -to-many關係的超級大Table,可以裝下超級多的資料,承受超大量的request per second。
Foreign Key真的是必要的嗎?在實際運轉的系統中,實在很少聽到資料庫的資料是可以刪除的。
ORM真的是必要的嗎?在Concurrent programming的世界裡,取回來的Mode通常只活了一個短短的request,Collection Data幾乎只用來Read,而對這個Model的任何Entry做Data Update常常不是一個簡單的操作,而是許多操作、資料檢核所構成的交易問題。
其實『資料庫網路應用程式』可以很不簡單、很豐富、不只是Table CRUD而已。
2009年10月28日 星期三
The Rules of AJAX Web Application Design - Part 1
Because I'm a Taiwanese, So I'll try to keep my blog in two languages, English and Chinese.
After more two years working in ZK, I think I'm quite good at how to design an Web Application based on Java technology, although I'm still not familiar with Javascript, He~ He~.
Using ZK to build a Website is very simple, you write a XUL-like xml file(with extension .zul) to describe page structure, then you add event-listening method in controller, sub-class java file or even in zul file as some kind of sever-side script. finally, Inside event-listening methid you operate widgets and trigger business logics do make something really happen.
But, it's simple doesn't means it's easy, to build an AJAX Web Application would never be easy if you don't have enough knowledge and experience of the differences from plan-old HTML.
About knowledge I GOT NOTHING to say, you JUST NEED TO KNOW the very detail of Markup Language, browser, HTTP, app server and the programming language that you choose. ZK in here is YET ANOTHER AJAX FRAMEWORK, so it won't help you to make them easy, nor GWT or JQuery. All of them will torturing and fool you around before you have solid base knowledge.
Role No 1: 1024 * 768 No longer to be the limitation.
In traditional page based dynamic web programming(like ASP, PHP, JSP), the most popular resolution that user had in there screen had limited(not complete yet...)
算是把這兩年來一些做開發的心得給整理一下吧?
可能的話,打算給個三部曲之類的東西。
心得一: 1024 * 768 不再是網頁大小的限制。
傳統的Page Base網頁,螢幕解析度是多少頁面元素就是多少,跟堆積木一樣,1024 * 758 的畫面就是塞不下面積和超過的元素。
但是在AJAX網頁裡面,透過動態Layout元件(layout, tree, group, listbox)的幫忙,畫面可以被Flip, Swap, Collapse, popup, 我們在單一頁面空間裡能塞進的元素、功能都爆增了。
心得二:Browser Request's Response的資訊量管理比以往都更加重要。
在Page Base的時候,一個頁面能夠呈現的資訊量有限,而網站不同的操作介面會透過Hyperlinking切割到其他的Response的結果裡,所以單一Response裡server需要初始化的項目不多、一個畫面需要載入的元素也不多。
但是切到AJAX這個2.5D概念的世界之後:
期待一個Response要Provide的資訊量有多大,那麼Server-side要執行的運算量就有多大、
一個AJAX網頁做的越複雜,Browser的運算負擔也越增加。
客戶用的瀏覽器越爛、網路越慢、server等級越差,就越考較開發者架構設計上的資訊量管理能力。
以下是一些常見的技巧:
After more two years working in ZK, I think I'm quite good at how to design an Web Application based on Java technology, although I'm still not familiar with Javascript, He~ He~.
Using ZK to build a Website is very simple, you write a XUL-like xml file(with extension .zul) to describe page structure, then you add event-listening method in controller, sub-class java file or even in zul file as some kind of sever-side script. finally, Inside event-listening methid you operate widgets and trigger business logics do make something really happen.
But, it's simple doesn't means it's easy, to build an AJAX Web Application would never be easy if you don't have enough knowledge and experience of the differences from plan-old HTML.
About knowledge I GOT NOTHING to say, you JUST NEED TO KNOW the very detail of Markup Language, browser, HTTP, app server and the programming language that you choose. ZK in here is YET ANOTHER AJAX FRAMEWORK, so it won't help you to make them easy, nor GWT or JQuery. All of them will torturing and fool you around before you have solid base knowledge.
Role No 1: 1024 * 768 No longer to be the limitation.
In traditional page based dynamic web programming(like ASP, PHP, JSP), the most popular resolution that user had in there screen had limited(not complete yet...)
算是把這兩年來一些做開發的心得給整理一下吧?
可能的話,打算給個三部曲之類的東西。
心得一: 1024 * 768 不再是網頁大小的限制。
傳統的Page Base網頁,螢幕解析度是多少頁面元素就是多少,跟堆積木一樣,1024 * 758 的畫面就是塞不下面積和超過的元素。
但是在AJAX網頁裡面,透過動態Layout元件(layout, tree, group, listbox)的幫忙,畫面可以被Flip, Swap, Collapse, popup, 我們在單一頁面空間裡能塞進的元素、功能都爆增了。
- 透過 Collapsible,我們可以在需要的時候滑出特定Panel呈現功能介面。
- 透過頁籤,我們可以將多個Tab疊在同一個Panel裡,每個Tab放各自的東西。
- 透過Tree,具有Hierarchy特性的DataModel可以不佔空間的呈現其結構。
- 透過popup,我們可以隨時使用一個佔據整個畫面中間的Dialog呈現非特定的操作介面與訊息。
心得二:Browser Request's Response的資訊量管理比以往都更加重要。
在Page Base的時候,一個頁面能夠呈現的資訊量有限,而網站不同的操作介面會透過Hyperlinking切割到其他的Response的結果裡,所以單一Response裡server需要初始化的項目不多、一個畫面需要載入的元素也不多。
但是切到AJAX這個2.5D概念的世界之後:
- 更多的Business Object, Service initialization需要被執行。
- AJAX元件的overhead一定比陽春的HTML高。
期待一個Response要Provide的資訊量有多大,那麼Server-side要執行的運算量就有多大、
一個AJAX網頁做的越複雜,Browser的運算負擔也越增加。
(不要忘記HTTP就是HTTP,HTML就是HTML,而該死的IE6全球還是有超過40%的用戶。)
當Browser Request's Response的資訊量開始產生Responsiveness的問題時,如何在可接受的範圍內不損及Usability 將這個資訊量切割到不同的Response裡,就是開發者的責任。客戶用的瀏覽器越爛、網路越慢、server等級越差,就越考較開發者架構設計上的資訊量管理能力。
以下是一些常見的技巧:
- Lazy-loading:將特定區塊的UI 元素以AJAX Request延遲載入到畫面上,這可以降低Browser Request latency。
- Paging:對於Collection Component的呈現筆數進行限制是必須的,想要一次把10000個AJAX Component load到頁面上並不聰明。
- Hyperlinking:不要AJAX過頭,有些開發者一開始AJAX之後就覺得用Hyperlink有罪惡感。HTML就是HTML,Hyperlink在阻隔不當操作、區分狀態、降低單一頁面Controller的複雜度、支援SEO是非常管用的。
- Remove Unused Elements: 元素加得上去也可以拔得掉,可能已經不用的AJAX元素可不可以先拔掉,以後要用到再接回來呢?
訂閱:
文章 (Atom)