分類
程式技術

GO語言

不要吧…

已經一堆學不完的程式語言, GOOGLE又來做這個很妙的超大型計劃, GOLang, 詳情可以參考新聞: http://www.zdnet.com.tw/news/web/0,2000085679,20142689,00.htm

其實我並不覺得這麼多的程式語言有什麼好, 基本上, 所有的程式語言都大同小異, (雖然有的還是有很大的差異), 不過無論如何, 每種語言有每種語言的強項, 也有弱項, 只是一直出新的, 不好好維護舊的, 大打”商品行銷”戰, 到底是為了什麼, 要忙死我們程式設計人員嗎?

不過本著學習是 Developer 最重要的興趣, 我們還是來看看 Golang 在賣什麼, 先到官方網站來看看: http://golang.org/ 網頁真是很有 google 的感覺, 簡潔.

然後 go 語言看起來又像是 C++, 又像是 Java, 也像 script 的 php, 可能都不會差太多吧.

好吧, 只好之後再花一些時間來研究看囉, 這個 google 創建的新語言, go….

分類
Database

SQL Server Replication示意圖

SQL Server Replication (複寫), 也就是用來做資料庫內容同步的一種應用架構, 通常用來做備援或查詢主機應用, 剛在 MSDN 上看到一張說明的圖示很棒, 引用過來, 方便想了解 Replication 技術的朋友參考:

圖片引用自: http://msdn.microsoft.com/en-us/library/aa179423(SQL.80).aspx

其中很重要的觀念在於 snapshot 是做整個資料的複寫, 而 log reader 則是把 transcation log 讀出來存入 distribution database , 再對 subscriber 寫入, 而存在 distribution database 中的 transaction log 用來做資料同步後的持續異動記錄, 以繼續同步 subscriber 中的資料. 由這張圖上看就清楚很多了.

分類
懶得分類

下方購物廣告的系統轉換由monday轉為yahoo(批次作業)

先說明一下, 這篇純綷只是一個工商文. 不過也是小站的廣告, 所以請大家將就一下.

話說最近 yahoo 發 email 通知, 即將停止興奇大聯盟的服務, 而需要大家來進行系統轉換(其實不是系統轉換, 而是重新加入 yahoo 大聯盟的服務). 比較麻煩的是沒有那種一次就可以轉換過去的方式, 因為原本就上了一堆廣告產品, 但是有方法, 而且還蠻單純的.

其實早在去年底, 興奇購物就已被 yahoo 購物併購了, 只是系統轉換和介接需要時間, 現在進行系統調整其實也理所當然, 所以只能配合調整, 不過其實這個 yahoo 購物興奇購物的內容目前是完全一樣的.

所以, 有在用的大家, 就去 yahoo 大聯盟註冊一下, 然後用著一模一樣的後台操作, 挑選一下商品, 並取得代碼如下:

<a href=”http://partner.buy.yahoo.com.tw/pub/gotobuy.ashx?gdid=1613772&amp;mcode=MaaaPQ==“><img alt=”Panasonic 42吋Full HD數位電漿顯示器(TH-P42S10W) ” src=”http://partner.buy.yahoo.com.tw/pub/gd.ashx?s=1&amp;gdid=1613772&amp;mcode=MaaaPQ==” width=”210″ border=”0″ height=”240″></a>

再看看原本的興奇大聯盟的代碼:

<a href=”http://partner.monday.com.tw/pub/gotobuy.ashx?gdid=1613772&amp;mcode=MbbbPQ==“><img alt=”Panasonic 42吋Full HD數位電漿顯示器(TH-P42S10W) ” src=”http://partner.monday.com.tw/pub/gd.ashx?s=1&amp;gdid=1613772&amp;mcode=MbbbPQ==” width=”210″ border=”0″ height=”240″></a>

其實就只有紅色和綠色字的不同而已, 所以基本上, 可以利用文字編輯器, 如 emeditor, ultraeditor 等將網頁上的廣告 replace 這些文字即可,

1. 為由 partner.monday.com.tw 換為 partner.buy.yahoo.com.tw
2. 由 mcode=MbbbPQ== 換為 mcode=MaaaPQ==

其中 MbbbPQ== 是你在 monday 的舊代碼(實際沒這麼短, 我是調整一下方便說明), 而 MaaaPQ== 是你在 yahoo 的新代碼, 所以總共只要 replace 2次即可完成新舊版轉換, 但重點是你要先去 yahoo 大聯盟加入, 並新生成一個廣告, 才能取得那個新的 mcode . 若有任何問題, 請與官方聯絡, 這裡只是提供一個轉換的小捷徑而已. 也還請大家多多利用下方的購物連結, 沒買看看也好.

google docs的方程式編輯器

稍早看到這篇新聞: http://www.zdnet.com.tw/news/web/0,2000085679,20141517,00.htm , 其中我比較感興趣的是有關方程式編輯器的功能(equation editor).

google 的這個在 docs 中的 equation editor 是基於 LaTex 的語法實作出來的方程式編輯器, 所以基本上可以參考這裡的資料, 了解一下什麼是 LaTex : http://en.wikipedia.org/wiki/LaTeX , 簡單地說, 就把它想成一個 format script 或是 tag 來展現方程式語法. 上面是一個”平方和”的公式, 利用 equation editor 在 google docs 中的方程式編輯好, 還可以轉貼出來, 這是在寫上一篇文章時發現的功能, 例如上面的方程式:

他的語法為: \sum_{i=1}^{n}{i^2} =\frac{n(n+1)(2n+1)}{6}
圖檔連結為: http://chart.apis.google.com/chart?cht=tx&chs=1×0&chf=bg,s,FFFFFF00&chco=000000&chl=%5Csum_%7Bi%3D1%7D%5E%7Bn%7D%7Bi%5E2%7D%20%3D%5Cfrac%7Bn%28n%2B1%29%282n%2B1%29%7D%7B6%7D

其實也就是利用 google charts api 的引擎, 加入 LaTex 的繪製功能, 把 equation 繪製出來這樣. 但 google 應該是沒有開放這樣的功能供外連, 根據 google charts api 連結: http://code.google.com/intl/zh-TW/apis/chart/ , 並沒有 LaTex equation 的功能, 不過有需要用到的, 可以這樣利用.

利用這個功能實際寫作的文章是這篇: https://diary.tw/archives/896 (數學證明題-平方和), 畢竟用冷冷的文字來說明數學式, 還不如用方程式來展現說明來得清楚, 若是能好好利用的話, 在應用上將會有很大的便利. 尤其是又和 LaTex 相容, 這個真是方便又好用咧!

繼續閱讀:
http://googlesystem.blogspot.com/2009/09/google-docs-has-equation-editor.html

其他的 equation editor:
http://www.codecogs.com/components/equationeditor/equationeditor.php
http://www.sitmo.com/latex/

分類
數學

數學證明題-平方和

還記得高中有學過證明累加的公式算法嗎? 利用數學歸納法來證明公式是否正確的一個方法, 為了再次熟悉以前的數學, 整理一下數學歸納法的方式.

先來看看 wikipedia 上的定義吧: http://zh.wikipedia.org/zh-tw/%E6%95%B0%E5%AD%A6%E5%BD%92%E7%BA%B3%E6%B3%95

利用數學歸納法, 可以證明數學問題的公式, 例如我們要證明平方和這個公式為 n(n+1)(2n+1)/6 於是就利用如下的步驟:

  1. 當 n = 1 時, 1^2 = 1, 1 * (1+1) * (2 * 1 + 1) / 6 = 1 成立
  2. 假設 n = m 時, 1^2 + 2^2 + 3^2 + … + m^2 = m(m+1)(2m+1)/6 成立
  3. 則 n = m+1 時, 應該就是 m(m+1)(2m+1)/6 + (m+1)^2 (也就是 2式 + (m+1)^2), 展開後得: (2m^3+9m^2+13m+6)/6
  4. 利用 n=m+1 的公式解得 (m+1)((m+1)+1)(2*(m+1)+1)/6 展開得: (m+1)(m+2)(2m+3)/6 = (2m^3+9m^2+13m+6)/6 和 3. 式結果相同
  5. 故得證.

不過用這種不是數學式的寫法看起來不是很舒服, 利用 google docs 的 “公式編輯器” 來寫應該更清楚, 如下:

證明平方和公式為:
1. 當 n = 1 時, 成立

2. 假設 n = m 時, 成立

3. 則當 n = m + 1 時, 4. 利用 n = m+1 的公式展開得:

5. 3和4式結果相同, 故得證.

相信這個證明很清楚地證明了平方和的公式及驗證, 也是數學歸納法的證明方式, 是不是讓久未碰高中數學的各位, 喚起了一些些記憶呢?

分類
程式技術

微軟線上虛擬實驗室

在使用新的開發工具時, 往往需要建一個 lab 來操作及學習. 為方便管理及安裝維護, 通常使用的方式是利用一個虛擬機器, 如 Virtual PC 或是 VMWare, 現在有更方便更好的方法.

剛來到這個微軟線上的虛擬實驗室, http://msdn.microsoft.com/zh-tw/aa570323.aspx 發現還真是有夠棒的, 只要安裝一個小的 activex control, 安裝好的實驗室環境就等著你去學習及操作, 而且你不用自己準備環境, 隨時要玩隨時可以玩. 而且完全免費.

不過他不支援 firefox, 只支援 ie6 以上的 ie, 不過也不損及操作這個虛擬實驗室的便利性. 畢竟不用準備環境, 不用準備自行安裝軟體, 直接開始操作, 是很方便又很省事的一件事. 以往技術人員及開發人員, 需要有一些準備環境的時間, 現在都省下來了, 直接在線上操作, 真的是方便又省事.

整體操作的感覺很棒, 雖然有一點點 lag 的感覺, 但操作起來還算順手哦, 下面是開了一個 ie8 相容性的 lab 畫面:

其實可以看到, 上面的 lab 內容其實就和一台虛擬機器一樣, 很方便地實作 lab 要做的步驟, 又不用去準備環境, 真是是很不錯的設計哦.

分類
懶得分類

專注能讓你做得更好

這篇文章研究指出, 正常人的的多工能力有限. http://www.zdnet.com.tw/news/software/0,2000085678,20140461,00.htm, 坦白說, 或許每個人的能力有差異, 但到底能不能這麼多工呢? 其實因人而異, 不過無論如何, 同事做多件事的效率, 一定沒有做一件事來的好, 即使是很強的CPU, 在多工作業系統下, 會有一個 context switch 的損耗 (overhead), 更不用說一般人的工作在多工下的交換時, 所造成的效率低落.

這邊有一些說明, 讓大家更了解 context switch:
蔡學鏞【言程序】部落格 – 無所不在的Context Switch
安多尼歐老闆的機密檔案櫃 – Context Switch

通常人要能專心, 才能把事情做好, 沒有人有三頭六臂, 而且要同時處理多件事情本來就難, 再加上處理事情除了要解決外, 並不太能用時間來量化, 其中有一個重要的地方, 在於品質, 也就是把事處理完成的結果, 會有一個品質的成績. 這個成績需要大量的專注力及集中精神, 才會有較佳的結果. 若是不能集中精神, 集中注意力, 讓自己專注來進行思考的話, 相信結果一定會差強人意的.

如何集中精神, 集中注意力, 就是要讓心無旁騖, 無雜念, 用心體認及專心思考, 這樣一來, 無論在效率上, 或是品質上, 都一定會有相對較佳的結果. 工作上, 休閒上, 都是一樣的, 若是工作不能用心, 玩不能盡興, 那還不如不要去做, 把時間節省下來休息.

回歸到這篇主題, 專注能讓你做得更好, 與大家共勉之.

分類
好用軟體

MSN強迫升級

8/26開始, 在我的工作主機的 Server 2003 上的 MSN Live Messenger 8.1 的版本在登入時, 發現有通知出現是否要更新, 稍早在朋友那裡得知 server 2003 上裝 Live Messeger 若在按下升級後, 不會有正常 for server 2003 的版本.

只好先放著, 不過在我的另一台工作上 Windows 7 RC 的版本上的 Live Messenger 同樣是 8.1 (後面的數字皆相同), 倒是沒有發生什麼問題.

到了 8/27 晚上再進來 Loing Live Messenger 時, 再續繼測試一下, 發現己經可正常 login 了, 這裡有篇 8/26 發生問題時的文章: http://blog.darkthread.net/blogs/darkthreadtw/archive/2009/08/26/messenger-2009-on-windows-2003.aspx , 不過目前是一切正常囉.

Google Maps提供街景地圖了

令人期待已久的 google maps 的 street view 已經上線了, 其實昨天在操作 google maps 就發現左上的那個小人已經蠢蠢欲動, 一下有顏色, 一下又變白, 原本以為可以用了, 後來又發現還不行, 不過今天證實可以用了.

這個功能相較於日本及美國, 台灣算比較晚推出, 不過相對於對兩者, 台灣也因為較晚推出, 所以拍出來的效果及細緻程度都高很多, 非常非常清晰, 流暢度也很好, 使用方式很簡單, 只要連上 google maps, 瀏覽時, 把左邊的小人(在變橘黃色的狀況下)拖出來, 就可以讓那個小人放在有變藍色的街道上看街景了.

來試看看吧: 台北市政府: link

這個街道地圖的功能很強大, 方便未來在許多應用場合, 可供結合, 而且因為精細程度夠高, 所以效果也很好, 無論是找地址, 找地點, 甚至是不熟的地方, 利用這樣的呈現方式, 相信能讓不熟路況及不知道路的人有很好的參考依據.

但相信這個的建製成本也很重, 再加上提供這樣的服務, google 一樣也是免費, 他們未來想要做的, 相信是非常非常多的, 光是在 gps 上的結合或是應用, 就可以衍生出一堆, 更不用說和其他異業的結合及應用.

雖然目前還沒有全部的地圖都 support , 不過應該會慢慢地上線, 到時候, 小人能到的地方也就愈來愈多囉. 目前有支援的地區還只有大台北地區部分, 可以參考下面當小人飛入時的區域(變藍的地方):

分類
程式技術

Silverlight 3支援h.264耶

Silverlight 3甫上線, 多很許多有用的功能, 今天來談有關於可以播放 h.264的功能. 的確, 經過測試的結果, 果然是可以播放 h.264 (一樣透過 MediaElement 這個媒體播放器來播放即可), 不過相對地, 也可以利用這個功能來播放 youtube 上的 h.264 壓縮的影片囉.

以下使用測試的方法, 主要是用來驗證 silverlight 3 player 可以播放 youtube 上的 h.264 的影片, 目前的做法如下:

  1. 找一個 silverlight 的 player (使用現成的 JW WMVPlayer – http://www.longtailvideo.com/players/jw-wmv-player/ )
  2. 利用 Bookmarklet 將 youtube 上的影片來源找出來, 參考資料: http://googlesystem.blogspot.com/2008/04/download-youtube-videos-as-mp4-files.html
  3. 根據上面 2. 的內容, 將其餵給 silverlight 3 player (JW WMVPlayer), 就可以直接播放了, 效果還不錯

不過實務上, 自己下載影片下來, 在自己本機 play 還很單純, 不過若是要直接播放, 就得利用上面的 Bookmarklet 來調整, 如此一來, 便能利用 silverlight 3 的播放器來播 youtube 的內容, 不過請特別注意, 本範例測試網站是為了測試 youtube 的 h.264 影片是否能被 silverlight 3 播放器播放, 所以實作了這個案例. 讓大家參考一下實際的播放效果, 不過會和 youtube 的官方規範有一些衝突(http://www.youtube.com/t/terms), 這個要請大家留意一下.

範例測試網站: http://sample.diary.tw/silverlight/