好書推一下
2009年12月27日 星期日
2009年12月10日 星期四
I am going to kaohsiung
2009年12月3日 星期四
2009年11月25日 星期三
Microsoft Day 心得
今天是 公司的Microsoft Day的第二天
下午是李匡正介紹微軟目前在雲端運算目前的狀況
我對雲端一直有很特別的想法
幾乎不需要付出成本
就有辦法拿到比
台灣任何一家上市公司的機房
更寵大n倍的算運資源
(想想一個學生就可以輕而易舉的得到這麼大的力量,未來的世界一定會因此而有所變化)
有這樣子的資源我們該如何去運用呢?
大部分的人很像都沒有什麼idea
Tom提了一個例子…
就是美國有一家報社
有一個想歷年來的出版全轉成PDF的計畫
而且希望在一周內就完成
估算過後可能需要1000台以上的Server
那來那麼多Server?
去租?去借?
光準備的時間可能就不止一周了…
最後他們採用雲端運算的力量
使用了亞馬遜的運端服務
一下子就Config出上千台的VM
結果順利完成了這項任務
並付給亞馬遜230塊美元
這就是雲端運算的力量
但是
使用雲端運算也有一些你要考慮的問題
自主權
如果現在用.Net 4.0寫的雲端系統
n年後,微軟宣布目前的雲端平台將在幾個月後,停止支援.Net 4.0
你能把雲端系統接回自己電的server上面執行嗎?資料是不是都要轉回自己家?
你能堅持就是要用.Net 4.0嗎?
目前能力建置雲端運算機房的大咖
用手指是數的出來的
而且他們各有各的規格
所以也是就一旦用了之後
嘖嘖…
矛盾的問題
雲端優點就是有寵大的運算資源
企業如果只是把一些較無爭議的運用(能展現寵大運算資源優點的機會相對較低)放到雲端
感覺是不是很矛盾呢?
3 Party的元件
3 Party的元件也要有辦法支援嗎?
最後有獎徵答A到了一個好康的…
2009年11月7日 星期六
定向運動
2.黃級--跑過3次以上者
3.橙級--較有經驗者
4.藍級--選手等級
2009年10月10日 星期六
快打旋風4 梅原大吾 小野義德
好難得的機會
2009年10月6日 星期二
2009年9月30日 星期三
2009年9月27日 星期日
Tech Days 2009的感想
Tech Days 2009
在技術與知識3天的洗禮
讓我靜下來思考一些問題
自己在過去的一年裡
對新事物的追求很像變得遲頓了
自己的熊度很像變差了
是要好好的整理一番了
為什麼我看到新的技術會這麼開心
我一直在想為什麼 我給了自己一個答案
因為有一群擁有熱情的人
運用他們的生命、智慧創造了這些東西
經過這些新的技術
我感染到他們的熱情了
在工作上
我把自己寫出來的程式視為自己的作品
我希望我能投入更多的熱情
進而也讓見到它們的人
感受到我的熱情、也能夠跟我一樣有開心的感覺
VSTO Excel XmlMapping
Step1:事先準備好一個xml檔cat.xml
這個xml檔是用DataTable產生出來的
<?xml version="1.0" standalone="yes"?>
<CATs>
<CAT>
<NAME>Izzy</NAME>
<BREED>Siamese</BREED>
<AGE>6</AGE>
<ALTERED>yes</ALTERED>
<DECLAWED>no</DECLAWED>
<LICENSE>Izz138bod</LICENSE>
<OWNER>Colin Wilcox</OWNER>
</CAT>
<CAT>
<NAME>Izzy</NAME>
<BREED>Siamese</BREED>
<AGE>6</AGE>
<ALTERED>yes</ALTERED>
<DECLAWED>no</DECLAWED>
<LICENSE>Izz138bod</LICENSE>
<OWNER>Colin Wilcox</OWNER>
</CAT>
</CATs>
Step2:顯示開發工具
Step3:
新增一個VSTO Excel 2007 WorkBook專案。新增後點選[開發人員],再按一下[來源]。就會在excel畫面的右邊
看到xml來源的actions pane。
Step4:
點選[XML 對應…]。彈出[XML對應]對話視窗後,按[新增]選取cat.xml檔。選好按確定後。畫面如下。
Step 5:
按住CAT。拖曳到A1放開後,按一下重新整理。就可以看到下面的畫面了
Step 6:Coding
private void Sheet1_Startup(object sender, System.EventArgs e)
{
Globals.ThisWorkbook.XmlMaps.Add("cat.xml", "CATs").Name = "CATs_MAP";
Globals.ThisWorkbook.XmlMaps[1].Import("cat.xml", true);
}
然後就可以Testing了
VSTO -Excel+ActionsPane+WebService
這一個主題我實在想不到該如何做成一個PPT檔。
所以直接做一個Sample比較快。
為了簡化範例,所以我都Default的命名。
以下的範例是用VS2008+Excel2007
這個Sample Sheet1的功能:
1.輸入一SQL string。
2.透過Web Service去執行這段sql
3.把回傳的結果show在excel中
Step1:新增一個VSTO的Excel 2007 Workbook專案
專案成功建立後畫面會長的像這樣
VS2008裡面為什麼辦法把Excel檔開起來呢?當然是開發的機器也要安裝Excel
你會發現到在這個Project中有一個Excel檔。也就是說我們開發的程式是跟著這個Excel走的。
如果你希望你開發的是Excel外掛,請用Excel 2007 Add-in。
不過它沒有支持像下圖一樣的圖形化開發介面。所以我們先用Excel 2007 Workbook專案來當sample。
Step2:新增一個Actions Pane Control
你可以發現其實Actions Pane他是繼承Windows Form的UserControl而已。沒有很複雜
加入一個TextBox1和一個Button。(允許TextBox輸入多行,不做也沒關系)
Step3. coding
到ActionsPaneControl1.cs的程式碼裡面去吧
加入2個using
using Excel = Microsoft.Office.Tools.Excel;
using System.Data;
為button1 click的事件 加入code
private void button1_Click(object sender, EventArgs e)
{
//停止Excel畫面上 即時的變化。
Globals.Sheet1.Application.ScreenUpdating = false;
Microsoft.Office.Tools.Excel.ListObject list1;
Microsoft.Office.Interop.Excel.Range cell = Globals.Sheet1.Range["$A$1", System.Reflection.Missing.Value];
if (Globals.Sheet1.Controls.Contains("list1"))
{
list1 = Globals.Sheet1.Controls["list1"] as Excel.ListObject;
}
else
{
list1 = Globals.Sheet1.Controls.AddListObject(cell, "list1");
}
//事先準備好的Web Service。用Add Web Reference加入
ServiceReference1.Service1SoapClient client = new ServiceReference1.Service1SoapClient();
//呼叫Web Service回傳結果dt
DataTable dt = client.ExecuteSql(textBox1.Text);
list1.AutoSetDataBoundColumnHeaders = true;
list1.SetDataBinding(dt, null);
Globals.Sheet1.Application.ScreenUpdating = true;
}
最後到sheet1.cs找到Sheet1_Startup方法加入以下的code
private void Sheet1_Startup(object sender, System.EventArgs e)
{
Globals.ThisWorkbook.ActionsPane.Controls.Add(new ActionsPaneControl1());
}
Step4:Config
maxReceivedMessageSize="6553600"
maxBufferSize="6553600"
這是Web Service的config
預設的size有點小
所以我把他加大了
這2個config的用一樣大 。
不然會error。
想知道為什麼,可以自己試試看。
在這裡先不討論這個問題
Step5:Testing
可以看到右邊長出一個Actions Pane
我在TextBox輸入Select * From Orders。我的Service撈的資料是NorthWind的範例資料
2009年9月26日 星期六
善用開放原始碼的寶藏庫 CodePlex
2009年9月19日 星期六
2009年9月12日 星期六
好的程式是…內外兼俱的
2009年9月10日 星期四
2009年9月9日 星期三
2009年9月6日 星期日
XBOX360-CAPCOM Stree Fighter IV FightStick…工欲善其事,必先利其器
這是Brandon教我的
(是不是推給別人就沒事了呢…)
因為原來的RB、LB 是住在上面2個小小的。
面板上只有六個按鈕
要放一次按三顆的招式都放不太出來…
於是乎…
Brandon給了我很充分的理由…
2009年8月29日 星期六
天啟四騎士
當真相剖開後,一切都太遲了
四名騎士,四名毫不相干的被害人,四樁令人痛苦的秘密!
冷酷的警探艾登布雷斯林(丹尼斯奎德飾演),自從妻子過世以後,就和他的兩個兒子亞歷(盧泰勒普奇飾演)和史恩(連恩詹姆斯飾演)愈來愈疏遠了。在工作上,他投入了連續殺人案的調查中,這是依據聖經啟示錄的天啟四騎士預言的變態殺人案,每次犯案後,都會在虐殺現場留下出自於啟示錄的文句:「快來看」,是故佈疑陣?還是向警方挑釁?令辦案陷入膠著。
警方初步判定兇手有四人,而這些自稱為天啟四騎士,智天行道的兇手分別是─白騎士:偽裝詐術高手和不顧一切想征服別人的領導者;紅騎士:意圖讓人類反目自相殘殺的機智戰士,無辜的外表底下藏著熾烈的怒火;黑騎士:邪惡又霸道的暴君,精神錯亂卻永遠搶先別人一步;以及灰騎士:法力無邊的劊子手,決心將死亡散播到人間各處。
布雷斯林在辦案過程中,在每一次令人不忍卒睹的兇案現場,都讓他在血肉模糊的屍塊中有新的發現,慢慢地串連出他自己和四名嫌犯之間驚人的關係。四名騎士,四名毫不相干的被害人,四個令人痛苦的秘密!快來看吧。
心得:
這次章子怡沒有什麼武打動作,純粹靠演技
說真的演員如果演技不夠好,整部片可能就會被弄的很悶
本片也沒有什麼大咖,劇情很緊湊,不拖泥帶水
我還是比較喜歡美式的驚悚片
他可怕的地方是在於劇情
而不是賣弄一些特效、噁爛的畫面
這部片告訴我們:
“多關心自己的孩子,多給他們一點愛”
…就算這孩子不是自己親生的,不要打從心裡把他當外人
不要對孩子太冷漠
不然,很多會令人痛不欲生、後悔莫及的。
2009年8月27日 星期四
對不起閃到你…
好幾天前
寶貝一直叫我要注意收包裏
問是什麼東西也不說…
到底是什麼咧…
今天在下午開會的時候
寶貝突然打電話來
問我:你收到了對吧!
我在開會怎麼會收到呢
寶貝:可是我在網路上看到狀態是送件完成了。
嗯,那我開完會去一樓大廳問問看
開完會…
我問:brandon是不是有我的包裏?
有,我幫你放到五樓的冰箱了
annewu:那是什麼?是門票?
當然不是嚕!門票怎麼會放冰箱
brandon對不起喔!我的包裏還閃到你了@@
於是,我下去拿包裏上來。
joycee還打電話叫jack一起來被閃一下
結果joycee忘了叫jack要拿墨鏡了…
到底是什麼東西呢?
。
。
。
。
。
。
鏘將…
是遲到一天的情人節禮物
會說話的巧克力…
中間那一隻手是yantao 拿他拍的樣子給我看,不是我把他揮開喔!
千萬不要誤會了…
用手機拍的照片不好看,所以回家我又重新拍了幾張
接下來
我正開始在煩惱
到底要從那一個先吃呢?
2009年8月26日 星期三
火焰之舞-向偉大舞者致敬的最後機會
你要不要去看火焰之舞
我想說之前不是去看過了嗎?
而且還是在高雄至德堂看的
舞台太小限制了表演的精采度一直讓我覺得很可惜
寶貝:麥可‧佛萊利 親自下海…
………
………
………
再多點都無法形容我當下的感覺
就像被電到一樣
真的快說不出話來
有人會想說
他不是很老了嗎?
這點不需要我們擔心
他一定是有自信才肯再度下海
所以我超期待
看了一下場次
第一場是在高雄巨蛋演出
另一場是在台中的戶外場地
第一場和戶外場都是我比較中意的
不過最後我們選了第一場
因為他選的日子很特別
是星期三
星期三不塞車
可以很愜意的坐車到高雄
和寶貝吃個好吃的晚餐後
慢慢走去看表演
一起向偉大的舞者致敬
這跟星期六、日的人山人海
感覺一定差很多
當代有三個很偉大的人
都叫michael
michael jackson(1958年生)
http://en.wikipedia.org/wiki/Michael_Jackson
Michael Flatley…也是1958年生的
http://en.wikipedia.org/wiki/Michael_Flatley
Michael Jordan 1963年生的
http://en.wikipedia.org/wiki/Michael_Jordan
其中有2位我都沒有機會現場向他致敬
這一次我一定不能再失去這個機會
2009年8月6日 星期四
最近在聽的一些歌
Rihanna 的 Umbrella
結果在youtube意外發現…
2009年8月5日 星期三
Parallel C# Insert SQL
以下.Net 3.5支援平行運算的寫法
.Net 4.0可以再作跟細的Config。
昨天測試的結果
Select 作10萬次是從38秒降到23秒。
Insert 同一個Table 1萬次(這個Table有設定一個Raw(32)的PK,為了測會不會Table Lock Error!) 1萬次 從180秒降到48秒。
觀查他Connection的用量
Insert時 它同時打開6個Connection...........
以後如果有一些效能考量的程式
不妨可以試看看
/*
* Created by SharpDevelop.
* User: Yup
* Date: 2009/8/5
* Time: ¤U¤E 12:24
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
using System.Data.OracleClient;
using System.Threading;
using System.Threading.Tasks;
namespace ParallelTry
{
class Program
{
public static void Main(string[] args)
{
List<string> items=new List<string>();
for(int i=0;i<1000;i++)
{
items.Add(i.ToString());
}
Console.WriteLine("Parallel Start!");
//1000個loop將被拆成2個500次的task. 會拆成幾次沒有特別指定 會自動判斷,在此用2次為例
Parallel.ForEach<string,OracleConnection>(
//Sources
items,
//localInit 只會在Task進入時執行一次。
()=>{
OracleConnection conn=new OracleConnection("connection string");
conn.Open();//500次loop共用一個Connection.
return conn;
},
//Action 在一個Task裡被執行500次。
(item,index,state)=>{
try
{
using(OracleCommand cmd=new OracleCommand("SQL",state.ThreadLocalState))
{
//Do Something.......................
cmd.ExecuteNonQuery();
}
}
catch
{
state.Stop();//中斷所有平行運
}
},
//localFinally Task結束時執行一次。
finallyConn=>{
finallyConn.Close();
}
);
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
2009年7月31日 星期五
2009年7月25日 星期六
人間條件四-一樣的月光by綠光劇團
是我們改變了世界 還是世界改變了我和你
吳念真導演將台北人快速生活節奏下的冷漠、疏離與寂寞,在《人間條件四 ~ 一樣的月光》裡透過一對姐妹的故事真實呈現,如同《一樣的月光》歌詞裡寫到的:是我們改變了世界、還是世界改變了我和你。
劇中黃韻玲一改以往苦旦的角色,將飾演聰明能幹新女性的妹妹一角,而林美秀擺脫台灣傳統女性的角色,飾演憨厚老實的姐姐,姐妹兩人將激出更多的火花,令人期待。
妹妹 (黃韻玲)
從小功課都名列前茅,在師長父母面前都是一個好學生的形象,大學畢業出國留學後,順利地進入外商公司工作。
姐姐 (林美秀)
則剛好跟妹妹相反,功課不好,國中畢業後就沒有繼續升學,便開始出社會工作,洗頭小妹、幫傭,也擺過地攤,做過各種工作,現在在一家清潔公司工作,做過各種付出勞力的工作,辛苦工作賺錢養家。
姐妹倆同住在台北的一間公寓裡,兩個人截然不同的生活模式與價值觀、愛情觀,面對同樣的事物有著不同的觀感,姐妹間的感情不斷地衝突,將發生一段精彩的故事。
引用自:http://www.greenray.org.tw/p4/index.html
心情跟著劇情起起伏伏的2個小時
一直到劇終心情依然激動
走出演藝廳的第一個念頭就是…
快給我一杯咖啡
心情的激動讓身體快要不能承受
快要哭出來了
一定覺得很誇張吧
吳念真編導的舞台劇
的確有辦法觸到人們的心弦
知識分子
為了尊嚴?還是為了生存?
把知識拿來當武器
為了爭個輸贏
用知識來傷害他人
知識到底是用來掠奪的
還是用來服務的
如果知識就是力量
為什麼有力量的人
不去追求不敗
而是去追求勝利
因為追求勝利的過程中
身邊開始樹立了一個一個的敵人
或者是傷害了身邊一個個愛自己的人
看完一場舞台劇
真的讓我們去思考一些我們不曾碰觸的議題
最後一定要讚美一下 所有演員的表現
林美秀真的太專業
情緒可以在一分鐘內進出
吳導都說 有這些專業的演員 當編劇真的太幸福了
黃韻玲不只是音樂才女,還很會演戲喔
還有吳導有說
小玲出新EP了
叫
在我們之間的事
2009年7月22日 星期三
荷頓奇遇記
一個名為荷頓的可愛小象,在一粒小灰塵中聽到「幾乎聽不到」的求救聲,荷頓相信小灰塵中有生命存在,他帶著這粒小灰塵四處尋找救援,其他動物都認為荷頓八成患了幻想症!無畏大家的冷嘲熱諷與重重阻礙,荷頓決定幫助活在小灰塵中的人...本片改編自蘇斯博士的同名圖文書,從1954初版迄今,首度搬上大銀幕。原著超過2億本,發行15種不同語言譯本。風行半個世紀以來,Horton系列一直都是蘇斯博士所有作品中最受歡迎的排行榜暢銷書。
這應該可以說是寓言故事
我們知道比我們小的生物
有小到肉眼看不到的細菌、病毒…等微生物
那麼相對的
是不是也有大到我們肉眼看不到的生物存在呢?
因為我們的地球對他們來說
只不過是一顆灰塵罷了
本片也傳達了另外一個寓意
萬物皆平等,無論他有多麼渺小
2009年7月21日 星期二
文人相輕 自古而然
今人多訾古人之失,以為所見更廣;多非他人之論,以為所見獨深。輕狂少年尤甚。每每攻人之短。至於前輩名家,當代牛人,苟得其一失,則萬矢齊發,以為高人一籌,沾沾自喜矣。某狂人專好攻人之短,以此自高,取名於當下,且自辯其非文人相輕之屬。今者諸多老人處於風口浪尖矣。山島先生聞而歎曰:“悲夫!畢其所學乃攻人一綻,使等其學,不知幾年,又何陋也!”予退而思之,深以為愧。子曰:“擇其善者而從之,其不善者而改之。”未嘗言“其不善者而攻之”(嘿嘿,其人或可辯證此“改”為“攻”之音近形近而訛)。焉以攻擊為能事耶?是爭其名而不務其實也。
引用自:http://blog.sina.com.cn/s/blog_5d5a51820100dddy.html
靜下來好好思考一下
2009年7月20日 星期一
2009年7月17日 星期五
Google Map API for flash 教學
1.下載Flex SDK.http://www.adobe.com/products/flex/
2.下載的檔名:flex_sdk_3.zip
在D糟新增一個資料夾:flex,把flex_sdk_3.zip解壓縮到此資料夾。
3.設定環境
注意:是;D:\flex\bin
要記得有 ;
4.申請Google Map API Key
http://code.google.com/intl/zh-TW/apis/maps/
輸入你的網站名稱。
注意:這個網站指的是,你會把最後產生出來的swf檔上傳到那裡去。
不是你要擺的blog。用錯了地圖會show不出來。
5.下載 Google Map for Flash SDK
http://maps.googleapis.com/maps/flash/release/sdk.zip
6.解壓縮後從lib目錄裡面把map_flex_1_9a.swc檔放到D:下
7.在d:下新增一個檔案HelloWorld.mxml
檔案內容如下:記得將your_api_key改成你剛才申請的金鑰。24.802064,120.971632為指定的經緯度。這個是新竹火車站的經緯度。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<maps:Map xmlns:maps="com.google.maps.*" id="map" mapevent_mapready="onMapReady(event)" width="100%" height="100%"
key="your_api_key"/>
<mx:Script>
<![CDATA[
import com.google.maps.Map;
import com.google.maps.LatLng;
import com.google.maps.MapEvent;
import com.google.maps.MapType;
import com.google.maps.overlays.Marker;
import com.google.maps.overlays.MarkerOptions;
import com.google.maps.MapType;
import com.google.maps.LatLng;
import com.google.maps.styles.FillStyle;
import com.google.maps.styles.StrokeStyle;
private function onMapReady(event:Event):void {
map.setCenter(new LatLng(24.802064,120.971632), 16, MapType.NORMAL_MAP_TYPE);
var marker:Marker = new Marker(
new LatLng(24.802064,120.971632),
new MarkerOptions({ fillRGB: 0x004000 }));
this.map.addOverlay(marker);
}
]]>
</mx:Script>
</mx:Application>
8.使用命令提示模式執行:
mxmlc HelloWorld.mxml -library-path+=map_flex_1_9a.swc
如果你的機器上沒有安裝Java有可能會失敗。
請到http://www.java.com/zh_TW/ 安裝。
9.安裝到你的Blog………………….
http://xor.myweb.hinet.net/flash/HelloWorld.swf 上傳的地方。
<div id="map_canvas" name="map_canvas">
<embed width="800px" height="600px" src=http://xor.myweb.hinet.net/flash/HelloWorld.swf
quality="high" flashVars="key=your_api_key" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"> </embed>
</div>
10.結果如下: