2009年4月28日 星期二

推薦:孫叔的Yahoo奇摩專訪

我要推薦一個很好的訪問, 我強烈建議網友 "完整的" 看看這段專訪, 我有幸和孫叔相處過幾年做過同事, 孫叔是我最敬佩的同事, 沒有架子, 親和力超級強, 我以前常和孫叔一起走在路上看著孫叔跟走過來不認識的路人打招呼, 和我們年輕小夥子在一起的時候一點點架子都沒有, 孫叔是我打從心底欽佩的人。

影片訪談一開始, 說到孫叔會用電腦, 這也是我欽佩的事情之一, 我教過孫叔電腦, 孫叔的好奇心, 學習能力, 耐心, 是我們這一輩的年輕人望塵莫及的, 孫叔是我人生當中非常非常難得的榜樣。更不用說孫叔的表演專業以及從事公益的愛心, 這也是我一直只能用欽佩兩字形容這位長輩的原因...

我認識孫叔很多年, 對他來說我只是一個小朋友, 但是說真的, 我有幸和孫叔同事的時候, 聽孫叔講話從來沒有覺得乏味或無聊過, 他的人生歷練和對生命的認識, 是我一直都很想學習的...

底下是他在Yahoo奇摩的專訪, 我整個看過了, 推薦給大家...很有生命力!!!
http://tw.leaders.news.yahoo.com/leader/5/93/ (上)
http://tw.leaders.news.yahoo.com/leader/5/94/ (下)

2009年4月25日 星期六

令人徬徨的Silverlight?

昨晚熬夜連續看完兩檔院線片之後, 上網轉換一下心情, 路過自己的BLOG, 驚覺似乎雜草又長高的幾吋, 不上來耕耘一下有點對不起冤親債主(ㄜ...不是, 是親朋好友), 不過, 昨晚熬了一整夜看完兩部片之後發現天已經亮了, 畢竟自己已經老了, 經不起年輕時候這樣糟蹋身體的方式, 補眠後才上網把這篇BLOG寫完。

跟大家報告一下最近的狀況, 話說...最近碰巧有幸拜訪一些微軟的Partner, ISV, 很自然的大家就談到了Silvlerlight這個技術, 我發現大家對Silverlight都花了不少心思, 不論是正在評估或是正在設法導入到自己的產品和專案當中, 當然我也知道這背後的秘辛與原因, 廠商們或多或少是在微軟的淫威之下, 被迫不得不奮發向上...ㄟ...不過我也要幫MS說說話, 不經一番寒澈苦, 哪得梅花撲鼻香...這些努力當然是會有代價的...

例如我最近已經聽到不少客戶對採用Silverlight技術所開發的產品大加讚賞, 一個是國內reporting/BI廠商(聯銓), 另一個, 內舉不避親, 是.NET Solutions上的BPM大廠(K2), 聯銓我很久以前和該公司合作過(也不算合作, 當時我是客戶端), 最近比較沒有接觸了, 關於聯銓使用到Silverlight相關的技術成果都是輾轉從客戶端聽到的, 但是客戶端給的評價都很高, 顯然我以前認識的該公司的開發人員有在Silverlight上下了一些功夫。 K2我當然就很熟了, 如果你對.NET上的BPM產品有興趣, 不難發現從去年開始, K2是第一個將Silverlight用在商業用途上的微軟Partner, 並第一時間推出相關產品(BlackPoint)的廠商, Scott的BLOG上還有介紹。

即便是這樣, 還是有不少學員或讀者會正式或非正式的問我, 到底Silverlight怎麼樣? 會不會取代ASP.NET? 對於Web Solutions的開發將帶來什麼影響?關於這種申論題, 一般而言我比較在書上回答, 而且畢竟我不是搞算命或搞政治的, 我很難掐指一算就告訴你未來的方向...而且,ASP.NET的書我還是會出(最近還有一些Plan, 我想寫寫跟ASP.NET架構設計有關的書), 這也表示我不會立刻放棄ASP.NET, 但是Silverlight又要在Web Solutions中擔當哪種腳色呢?

其實, 這部分我在書裡和研討會上大致上都有跟大家報告過, 但是最近看了Silverlight 3.0的一些新玩意兒,和推估了一下SL 4.0的狀況, 看來這個態勢有逐漸明顯的趨勢, 我發現:
1.確實很多廠商開始考慮使用Silverlight, 現在的障礙多半在開發工具, 但是這會在VS2010和Blend 3會逐步解決
2.如果要建置分散式架構, 用戶端安全性目前是個需要額外花功夫的部分, 並不像ASP.NET這麼單純, 這部分過去focus在ASP.NET的開發人員可能不太熟悉, 但Silverlight 3.0有提供一些解決方案
3.許多過去ASP.NET Solutions上需要花大成本才能完成的UI效果, 用Silverlight變得輕而易舉, 開發人員可以從局部導入做起, 暫時上兩者並存, 在需要的時候將Silverlight崁入ASP.NET即可
4.Silverlight相關的資源成長幅度超快, 你現在已經可以從網路上看到不少控制項, 有的還是免費並有Source Code的
5.我身邊很多朋友密切的問我一些Silverlight的問題, 這些問題都很扎實, 顯然, 不少人開始用Silverlight了
6.很多人已經知道Silvelright不需要去和Flash比較, 至於Flex, 確實跟Silverlight有得拼, 但是我相信在微軟的銀彈攻勢下, 勝利終究會站在有錢的一方的
7.市場占有率現在確實是Flex和Flash比較高, 但who care, 成長趨勢目前對Silverlight有利, 大家just wait and see ^_^

不過從產品開發的角度看, Silverlight就好比Mobile一樣, 對我來說都是presentation的一種, 也因此一直都沒有在ASP.NET或Silverlight中二選一的問題, WinForm/Mobile/Web Form/Silverlight, 這些都是展示層的解決方案, 好在我的專案或產品多半不靠展示層賺錢, 所以對我們來說這只是多了一種選擇, 由於過去的架構設計正確, 因此用Silverlight或是不用, 對於程式碼的調整幅度不大(這部分請參考筆者Silverlight2.0拙著, 有相關說明)

只是由於 Silverlight 3.0中Out of browser和一些新功能的出現, 不免讓我又懷疑MS是不是又想藉此機會在開發市場上一統江湖, 依照Silverlight 3.0的新功能, 如果市場接受, 會有產生底下的狀況, 我先列出來, 請讀者想想:
1.未來你用Silverlight開發出來的程式, 可以同時執行在Browser中或是Browser外(類似WinForm的桌面應用程式), 當然手機也是一個目標, 而請注意, 開發方式是完全一樣的.
2.用戶端可能不需要下載(因為微軟會內建)或下載不大的RunTime, 就可以執行Silverlight應用程式
3.可以跨平台(Linux/MAX/Mobile/Windows)
4.沒有WPF那麼龐大的負擔, 卻擁有類似WPF可實現優質UI效果的開發工具, 呈現出的效果比ASP.NET或WinForm都要好, 且效能也不差開發成本又低
5.不需要再寫JavaScript Code(所以坦白說我沒花多少時間研究最近很紅的一些JavaScript Libraries了), Web Solutions只需要focus在前端SL的C#/VB Code, 至於後端都是WCF Service, 也是VB和C#等.NET開發人員熟悉的語言
6.LINQ/ORM...等技術和一堆微軟正在開發的Service和.NET 3.5/4.0上的新技術可以立即應用, 同時也支援Cloud Computing
7.Web 開發人員不需要學習HTML/JavaScript和CSS, 甚至可能連SQL語法都可以丟一邊去, Focus在前端UI設計和WCF調用即可
8.開發方式與架構更貼近標準的分散式或SOA應用程式, 從各種角度來看, 都會是大型應用程式的一個好選擇

最近半年, 我已經很少鼓勵別人使用Silverlight了, 絕大部分的時間變成回覆別人與Silverlight有關的技術問題, 從這邊我也看到一些趨勢。 當然, 你說Silverlight完全沒問題嗎?當然不是, 畢竟它是一個新且快速改版的技術, 只是先前容或有所缺失, 現在也慢慢看到缺失逐步消除, 從這邊我們大概可以看到微軟的企圖心, 在這邊我不太想下結論或是定論, 我不知道未來技術會怎麼走, 每個技術人都有資格或權利下自己的判斷, 我看到的也應該只是一部分, 就只是提供大家參考了...

2009年4月13日 星期一

關於Silverlight中的RichTextBox以及文字處理

有朋友問到Silverlight當中如何設定TextBlock文字的顏色,例如..
ABCDEFGHIJKL
我才恍然發現一件事情,我一直沒有談論到這個部份...-_-'''

補充一下資料如下, 在SL當中,TextBlock是透過XAML標記...來區分不同的文字區塊, 也就是說, 如果您要針對TextBlock的內容設定不同的文字顏色, 可以透過對TextBlock的inlines集合增加一個Run物件即可...例如..... , 而透過程式碼設定的方式如下 :
Dim wordsWithFormat As New Documents.Run
wordsWithFormat.Text = Words
wordsWithFormat.Foreground = New SolidColorBrush(color)
textblock.Inlines.Add(wordsWithFormat)

如此即可設定特定區域文字的顏色,範例程式請參考底下, 按這邊下載。

至於RichTextBox,在SL 2.0沒有直接提供,但在codeplex上有一個project, 包含 source code, 您可以參考底下這個URL : http://www.codeplex.com/richtextedit
(不過有一些小遺憾是, 這個project停留在beta2)

2009年4月8日 星期三

4/7 南台科大 Silverlight 2與現代互動式網頁程式設計 研討會後的感想

4/7到台南 南台科技大學分享 Silverlight 2與現代互動式網頁程式設計 這個主題, 讓我重溫了很久沒有享受到的校園氣氛, 在這個場次當中, 我介紹了Silverlight這個技術對於網頁與web應用程式的意義, 以及相關的應用, 投影片可以從這裡下載。

我回想起我剛畢業那時候, 算算到現在似乎也已經十多年了, 時間過得真快, 同樣是寫程式, 身為學生的心情和現在面對工作, 可說是截然不同, 從台上看下去, 有些學生對於未來躍躍欲試, 有些學生對於將來的挑戰似乎有些擔憂, 當天我也分享了這一兩年來我看到的兩岸就業狀況以及將來學生會面對到的挑戰, 我不太確定是否所有的同學們都和我一樣感受到種種競爭的迫切性, 面對台灣目前的狀況, 全球經濟的不景氣, 以及兩岸甚至全球人才彼此之間的競爭壓力, 這些對於還有一年才畢業的學生來說似乎有點早了...

但是, 誰知道呢, 或許實際上我們並沒有那麼多的時間可以準備了, 回想到『世界是平的』作者費里曼在書上提到的種種, 在資訊產業中的我們剛好身歷其境躬逢其盛, 書上描述的每一個現象都在我們身邊發生...

最近看到電視上有一個廣告, 蠻touch人的, 廣告中的主角只說了一句話, 我相信這是他的座右銘, 我也佩服他對於面對人生的勇敢與毅力, 看到他的努力, 我想當我們碰到困難的時候, 我們沒有一個人有資格放棄...的確, 機會是給有準備的人的...



2009年4月1日 星期三

線上研討會 4/1 Microsoft Virtual Techdays...完成

謝謝大家參加 4/1 Microsoft Virtual Techdays線上研討會, 呼, 我承認, 要一小時講完時在是太難了...Demo的部分我會在整理後放到 BLOG上, 謝謝大家的熱情參與^_^