<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-21201903</id><updated>2012-02-16T23:05:40.187+08:00</updated><category term='Python'/><category term='Tech'/><category term='Other'/><category term='License'/><title type='text'>OpenFoundry Bloggers</title><subtitle type='html'>OpenFoundry Bloggers 是自由軟體鑄造場工作人員交流新知、分享學習心得的非正式園地，主題包括 FLOSS 的趨勢、技術、法律、政策等。這裡的文字，僅是基於個人的想法與經驗，並不代表自由軟體鑄造場的官方立場。</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>OpenFoundry</name><uri>http://www.blogger.com/profile/11482145092279774711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>56</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-21201903.post-5889739129735470188</id><published>2012-02-09T17:09:00.000+08:00</published><updated>2012-02-09T17:09:15.414+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Interactive Programming Learning</title><summary type='text'>在 http://ask.inside.com.tw/ 看到「如何教國一的弟弟寫程式」，順便找到幾個線上資源：

http://www.codecademy.com/
http://tryruby.org/
http://www.trypython.org/
</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/5889739129735470188/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=5889739129735470188' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5889739129735470188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5889739129735470188'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2012/02/interactive-programming-learning.html' title='Interactive Programming Learning'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-2722838453158972416</id><published>2012-02-03T17:01:00.001+08:00</published><updated>2012-02-03T17:01:12.403+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Canonical URL Links</title><summary type='text'>如果網站裡存在不同網址，卻回傳同樣 (或類似) 的內容，考慮將這些網頁"整併"掉時，一項稱為 Canonical Link Element 的方式，值得參考。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/2722838453158972416/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=2722838453158972416' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2722838453158972416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2722838453158972416'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2012/02/canonical-url-links.html' title='Canonical URL Links'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-5409141766238683148</id><published>2012-01-17T18:26:00.003+08:00</published><updated>2012-01-17T18:26:56.356+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Plone User's Joomla Adventure</title><summary type='text'>我下載的說明文件是 http://downloads.joomlacode.org/docmanfileversion/1/6/0/16087/1.5_Installation_Manual_version_0.4.pdf 寫得很詳細，像是在讀論文，常讓我有找不到重點的感覺。作業系統環境是 CentOS，第一個卡關的地方，新版的 PHP 把 MySQL 的支援設定，改到 php.ini 檔案裡，這在文件裡是寫成 You must ensure that you have the MySQL, XML, and Zlib modules functionality enabled within your Apache Web server installation. These are controlled within the php.ini file.
平常太少跟 Apache 打交道</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/5409141766238683148/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=5409141766238683148' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5409141766238683148'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5409141766238683148'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2012/01/plone-users-joomla-adventure.html' title='Plone User&apos;s Joomla Adventure'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-7111417023420410719</id><published>2012-01-03T18:09:00.001+08:00</published><updated>2012-01-03T18:09:07.191+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Vim Auto-indenting for Code Paste</title><summary type='text'>編輯程式碼時，雞婆聰明的 Vim 會自動縮排，這時可以用 :set paste 來處理，更多資訊可參考 http://vim.wikia.com/wiki/VimTip906</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/7111417023420410719/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=7111417023420410719' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7111417023420410719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7111417023420410719'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2012/01/vim-auto-indenting-for-code-paste.html' title='Vim Auto-indenting for Code Paste'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-5672386870674185198</id><published>2011-12-10T20:53:00.001+08:00</published><updated>2011-12-10T21:42:00.498+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Firewall Port Config</title><summary type='text'>想要新增能通過 firewall 的 port 號碼，在 Mandriva 環境常用 drakconf，在 CentOS 環境，了解詳細的設定方式之餘，也可以用 system-config-securitylevel 來直接設定。在 Ubuntu 環境可用 ufw</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/5672386870674185198/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=5672386870674185198' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5672386870674185198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5672386870674185198'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/12/firewall-port-config.html' title='Firewall Port Config'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-281411412029885293</id><published>2011-12-06T17:00:00.001+08:00</published><updated>2011-12-06T17:02:42.944+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>PHP is Object Capable</title><summary type='text'>Of course, PHP is not Object Oriented. Luckily, most software written in PHP does not care much about objects, I guess.</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/281411412029885293/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=281411412029885293' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/281411412029885293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/281411412029885293'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/12/php-is-object-capable.html' title='PHP is Object Capable'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-8409756107512161612</id><published>2011-11-26T15:14:00.001+08:00</published><updated>2011-12-23T18:12:53.403+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>rsync + ssh on different port</title><summary type='text'>$ cat .ssh/config
Host another.site.IP
    Port 8022
    User marr
    Hostname another.site.com


$ rsync -av --progress --inplace --rsh=ssh another.site.com:my_folder/* my_backup

# and this is for normal cases:
$ rsync -av -e ssh myid@mysite.com:/my_folder/my_file .
</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/8409756107512161612/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=8409756107512161612' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8409756107512161612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8409756107512161612'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/11/rsync-ssh-on-different-port.html' title='rsync + ssh on different port'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-7423225082121203752</id><published>2011-11-09T21:35:00.000+08:00</published><updated>2011-11-09T21:35:35.116+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Apache Plone Maintenance</title><summary type='text'>檢查已啟用的 module 清單：
$ ls /etc/apache2/mods-enabled/
alias.conf            authz_host.load  deflate.conf  mime.load         setenvif.load
alias.load            authz_user.load  deflate.load  negotiation.conf  status.conf
auth_basic.load       autoindex.conf   dir.conf      negotiation.load  status.load
authn_file.load       autoindex.load   dir.load      reqtimeout.conf
authz_default.load    </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/7423225082121203752/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=7423225082121203752' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7423225082121203752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7423225082121203752'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/11/apache-plone-maintenance.html' title='Apache Plone Maintenance'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-8984136101593221144</id><published>2011-10-30T01:02:00.000+08:00</published><updated>2011-10-30T01:02:43.062+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>CMS Comparison</title><summary type='text'>This is a historical document by marr, Open Source Software Foundry
first published on 2006/12/15, last edited on 2008/06/11
我們以 Packt Open Source CMS Award 2006 年的前三名，做為比較對象，並參考 Gnome.Org CMS requirements 的技術要求，整理出合適的比較項目，包括有：核心開發隊員的規模、擴充模組的集散處、開發工具、測試工具、多國語文支援等。
Open Source CMS Comparison Matrix








 
Joomla
Drupal
Plone



Language
PHP 4.2 for 1.0.3
PHP 4.3 for 1.5
PHP 4 for 4.5 and </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/8984136101593221144/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=8984136101593221144' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8984136101593221144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8984136101593221144'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/10/cms-comparison.html' title='CMS Comparison'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-231805216208122998</id><published>2011-10-17T15:24:00.002+08:00</published><updated>2011-10-17T15:24:29.279+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Ubuntu Locale</title><summary type='text'>sudo apt-get install update-locale
sudo apt-get install localization-config
sudo update-locale LANG=en_US.UTF-8
完成設定後的內容存在 /etc/default/locale 檔案裡。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/231805216208122998/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=231805216208122998' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/231805216208122998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/231805216208122998'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/10/ubuntu-locale.html' title='Ubuntu Locale'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-6669816308898643413</id><published>2011-10-17T11:02:00.001+08:00</published><updated>2011-10-17T11:02:57.129+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Ubuntu Mounts Windows</title><summary type='text'>首先要設定 Windows 檔案分享，成功的話，可以在 Ubuntu Network - Windows network 看到分享出來的目錄，接著再執行 mount 指令，主要步驟如下：
sudo apt-get install smbfs
sudo mkdir /media/sharename
sudo vi /etc/nsswitch.conf
sudo mount -t cifs //netbiosname/sharename /media/sharename
 -o username=winusername,password=winpassword,iocharset=utf8,file_mode=0777,dir_mode=0777
當然，還可以把設定值寫進 /etc/fstab 裡。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/6669816308898643413/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=6669816308898643413' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6669816308898643413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6669816308898643413'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/10/ubuntu-mounts-windows.html' title='Ubuntu Mounts Windows'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4587120738002386907</id><published>2011-08-15T07:42:00.002+08:00</published><updated>2011-08-15T07:46:23.924+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Testing Tools</title><summary type='text'>Unit Testing CSSAutomated Browser Compatibility Testing</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4587120738002386907/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4587120738002386907' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4587120738002386907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4587120738002386907'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/08/testing-tools.html' title='Testing Tools'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4553594058365517599</id><published>2011-07-19T15:22:00.002+08:00</published><updated>2011-07-19T15:29:17.818+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Online FlowChart</title><summary type='text'>試用 http://flowchart.com/ 發現功能豐富，今日 web app 成熟的程度，讓很多事情能在線上完成。版本 beta 2.4-r23 在匯出 PNG PDF 時，圖案會移位，只好手動抓圖。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4553594058365517599/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4553594058365517599' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4553594058365517599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4553594058365517599'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/07/online-flowchart.html' title='Online FlowChart'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-2649158233707661561</id><published>2011-07-08T16:47:00.001+08:00</published><updated>2011-07-08T16:50:53.847+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>ffmpeg + libmp3lame</title><summary type='text'>works for my Ubuntu 11.04.sudo apt-get install libavcodec-extra-52ffmpeg -i myfile.mp4 -acodec libmp3lame -ab 192k myfile.mp3</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/2649158233707661561/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=2649158233707661561' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2649158233707661561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2649158233707661561'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/07/ffmpeg-libmp3lame.html' title='ffmpeg + libmp3lame'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-787884651395421205</id><published>2011-06-22T11:39:00.003+08:00</published><updated>2011-06-22T12:38:46.230+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>User Experience in an OpenSource Fashion</title><summary type='text'>形容 UX 是 Open Source 的頭號問題，並不為過，以 Google 不願意馬上開放 Android 介面成果為例，謠傳原因來自，開放會造成阿貓阿狗的加入，造成產品介面和預期價值的下降，白話地說，Android 相信 Open Source 開發方式有害於 UX。有反例嗎? Firefox 和 Gnome 似乎證實沒那麼糟。另外，網頁或 thin client UX 的進展速度較快，甚至進而影響 fat client 的設計。終究 UX 也可以用 Open Source 方式來搞嗎? 我還不知道答案，但看到 Art will stay Art. 這句時，我笑了。random read: CodePlex example by Microsoft</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/787884651395421205/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=787884651395421205' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/787884651395421205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/787884651395421205'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/06/user-experience-in-opensource-fashion.html' title='User Experience in an OpenSource Fashion'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1301359926550133410</id><published>2011-06-11T14:59:00.005+08:00</published><updated>2011-06-16T10:53:31.141+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>SWFTools</title><summary type='text'>為了安裝 wc.pageturner 需要 SWFTools，在 CentOS 下載 rpm 後再用 yum 安裝:yum --nogpgcheck install swftools-0.8.1-1.el5.rf.i386.rpm libmp3lame0-3.98.4-22.el5.i386.rpm t1lib-5.1.2-5.i386.rpm在 Ubuntu 是把 deb http://free.nchc.org.tw/ubuntu/ hardy main universe 加進 /etc/apt/sources.list 這樣較簡單。實際上傳 PDF 時，日誌檔裡會記錄INFO wc.pageturner Running command /usr/bin/pdf2swf /tmp/tmp_oIQQW -o /tmp/tmpODfpYG -T 9 -f -t -G------INFO </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1301359926550133410/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1301359926550133410' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1301359926550133410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1301359926550133410'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/06/swftools.html' title='SWFTools'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1775175829688511201</id><published>2011-05-06T17:32:00.003+08:00</published><updated>2011-05-06T17:42:33.906+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Selenium Basic</title><summary type='text'>下載安裝 Sauce Builder 後，就可以在 Firefox 裡，使用這個 IDE 來錄製測試動作，還有匯出成 Python 或自己喜歡的程式碼，結果類似下列內容，可以在 local 執行：self.selenium = selenium(    "localhost", 4444, "*chrome", "http://google.com/")想把上述程式碼改在雲端執行，可藉助 OnDemand 服務，並把內容修改成下列這樣：self.selenium = selenium(    'http://ondemand.saucelabs.com',    80,    """{      "username": "USERNAME",      "access-key": "ACCESS_KEY",      "os": "Windows 2003",      "browser</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1775175829688511201/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1775175829688511201' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1775175829688511201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1775175829688511201'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/05/selenium-basic.html' title='Selenium Basic'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-7656764271510579977</id><published>2011-05-04T10:32:00.002+08:00</published><updated>2011-05-04T10:35:26.805+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>plone.dexterity zh_TW translation</title><summary type='text'># Translations template for plone.dexterity.# Copyright (C) 2010 Plone foundation# This file is distributed under the same license as the plone.dexterity# project.# marr &lt;marr.tw@gmail.com&gt;, 2011.#msgid ""msgstr """Project-Id-Version: plone.dexterity 1.0b3\n""Report-Msgid-Bugs-To: dexterity-development@googlegroups.com\n""POT-Creation-Date: 2010-07-09 15:38+0200\n""PO-Revision-Date: 2011-05-04 10</summary><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7656764271510579977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7656764271510579977'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/05/plonedexterity-zhtw-translation.html' title='plone.dexterity zh_TW translation'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-6669940403757239816</id><published>2011-05-03T14:10:00.002+08:00</published><updated>2011-05-03T14:21:18.594+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>VBA Macros in OpenOffice</title><summary type='text'>Random links:imacat is VBA expert.Novell released to the open source community, for better or for worse, its VBAAPI compatibility layer for Open Office.</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/6669940403757239816/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=6669940403757239816' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6669940403757239816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6669940403757239816'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/05/vba-macros-in-openoffice.html' title='VBA Macros in OpenOffice'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1318917662699824306</id><published>2011-03-25T10:00:00.002+08:00</published><updated>2011-03-25T10:14:29.429+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Quotes of Erik Naggum</title><summary type='text'>蕭永慶為 Erik Naggum 摘要的譯文"一個程式設計師讀過的程式碼, 應該是他寫過的程式的10倍以上, 才算夠資格的好的程式設計師."the greatest benefit of free software is, in my mind, not the availability of free software _products_, but the availability of _source code_ for other programmers to read and use, like sheet music, plays, books, etc, are like source code for _their_ respective kinds of production.在我的觀念裡, 自由軟體最大的好處, 不是供應自由軟體的產品, 而是對其它的程式師供應了原始碼</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1318917662699824306/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1318917662699824306' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1318917662699824306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1318917662699824306'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/03/quotes-of-erik-naggum.html' title='Quotes of Erik Naggum'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1150120313220211971</id><published>2011-03-23T10:06:00.003+08:00</published><updated>2011-03-23T10:53:11.383+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Sheng Bao: Ask me again in ten years too!</title><summary type='text'>原文在 http://narnia.cs.ttu.edu/drupal/node/44Quotes of the day:* 求名當求萬世名，計利當計天下利。* 軟體是一種奇特的商品，其需要大量的測試人員，這就是 "enough eyeball" 的作用，而 GNU 正做到了這一點。* 美國人用腦子裡面想出來的東西賺錢，日本人用手裡面作出來的東西賺錢，更窮的國家只能用地裡長出來的東西賺錢。* 知道何時該合上書本。* Classes 是否會 dull you mind 取決於你是如何面對課堂。* Plato is dear to me, but dearer still is truth.* Science is what we understand well enough to explain to a computer. Art is everything else we do.* </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1150120313220211971/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1150120313220211971' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1150120313220211971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1150120313220211971'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/03/sheng-bao-ask-me-again-in-ten-years-too.html' title='Sheng Bao: Ask me again in ten years too!'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-5795619997552664070</id><published>2011-03-14T14:57:00.004+08:00</published><updated>2011-06-16T16:11:44.712+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Install Ubuntu with ISO</title><summary type='text'>自己電腦常用的硬體分割方式，是分成四個 primary 分割區，前三個是 ext4 最後一個是 swap。第一和第二個分割區，輪流安裝新版 Linux，第三個分割區是使用者資料。把 Ubuntu LiveCD ISO 下載到硬碟後，可以直接使用 ISO 來安裝，不需要燒成開機片，首先要參考 http://www.panticz.de/MultiBootUSB 說明，把 Grub 設定好，下列是個範例：sudo vi /etc/grub.d/40_custommenuentry "Ubuntu Live 11.04 64bit" {  loopback loop /boot/ubuntu-11.04-desktop-i386.iso  linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/boot/ubuntu-11.04-</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/5795619997552664070/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=5795619997552664070' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5795619997552664070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/5795619997552664070'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/03/install-ubuntu-with-iso.html' title='Install Ubuntu with ISO'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-2068990148180058412</id><published>2011-01-21T15:22:00.002+08:00</published><updated>2011-01-21T15:31:36.543+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Discussion Log</title><summary type='text'>活動記錄 – 20040711 – 自由軟體鑄造場 by kianghttp://blog.twpug.org/86比較精彩的是當時的 comment log，原網站已不存在，也沒找到 google 備份，貼在這裡當記錄：9 Comments:   Blogger  autrijus said...          "ps. 該網站發表評論的系統不會還要經過審核吧，這樣好像不太自由...；希望          Movable Type 發表評論應該是自動登的, 你可能需要強制重新載入頁面 (shift          所以大概是多慮了.          11:33 上午   Blogger  autrijus said...          "我問的是為什麼OpenFoundry要自行開發專案維護系統而不是像日本一樣跟隨著          系統本地化"          </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/2068990148180058412/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=2068990148180058412' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2068990148180058412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2068990148180058412'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/01/discussion-log.html' title='Discussion Log'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-8302194183838146696</id><published>2011-01-14T17:14:00.003+08:00</published><updated>2011-01-14T17:35:04.975+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Embedded Playing Windows Media</title><summary type='text'>想在網站以嵌入方式播放 Window Media 的話，先要註冊 audio/x-ms-wma 格式，再安裝 embedded playback 程式。例如 vPIP 就是一套支援 Window Media 的播放程式，下列是範例程式碼片段，值得留意的是，要特別提供 image 或 text 來提示使用者，以便點取後再存取要播放的檔案。&lt;div class="hvlog"&gt;  &lt;a href="http://mysite.com/media/niceday.wmv"     rel="enclosure" title="My Movie!"     class="hVlogTarget" type="video/x-ms-wmv"     onclick="vPIPPlay(this, 'width=320, height=260, \     autostart=true, </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/8302194183838146696/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=8302194183838146696' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8302194183838146696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8302194183838146696'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2011/01/embedded-playing-windows-media.html' title='Embedded Playing Windows Media'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4077248814149135492</id><published>2010-10-04T11:09:00.004+08:00</published><updated>2010-10-04T11:58:39.914+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Software Localization and Content Exchangeability</title><summary type='text'>實際想問的是：如何改善軟體操作方式因地制宜，同時，內容交換和呈現方式盡可能一致。這問題的本質，包含理論或標準層面的議題，也包含實務或不同系統實作差異的議題，似乎大到難以撼動，但是，擾人的程度，不禁又讓人想問：可能集合眾人之智來改善它嗎?如果覺得上述問題過於空泛，白話地舉例來說，某個中文使用者，發現某個不錯的 open source 系統，想要引進推廣，先從介面訊息翻譯做起，這通常並不太難，直到想要整批資料匯入系統時，就常發現資料會出現亂碼、遺失、根本不能執行等狀況，常見來自於 Windows 與 Linux 之間的資料交換。再以 Windows 系統 CSV 資料整批上傳為例，檔案是否以 UTF8 編碼存檔，又是否包含 BOM 字元，都是要確認的細節。網路上找得到零散的說明，但找得到一份穩定的知識來源嗎? 我們需要這樣的來源嗎?</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4077248814149135492/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4077248814149135492' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4077248814149135492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4077248814149135492'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2010/10/software-localization-and-content.html' title='Software Localization and Content Exchangeability'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-8852467074892953946</id><published>2010-05-04T09:54:00.003+08:00</published><updated>2010-05-04T17:22:20.970+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Breadcrumb Navigation</title><summary type='text'>breadcrumb 稱為「麵包屑」，最常見的型式是利用一行文字，顯示目前網頁在網站體系裡的位置。它的目的是改善操作親和度，以往常和網站地圖同被視為是第二線的工具，第一線的導覽工具，通常是指主選單和搜尋方框。不過，麵包屑的重要性日益提昇，原因之一是 Windows Vista 使用這項技巧來提示作業系統的目錄位置，使用者習慣之後，期待網頁上也看到這樣熟悉的介面。另外，到處都看得到 AJAX 的情況下，當然也有 jBreadCrumb 囉。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/8852467074892953946/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=8852467074892953946' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8852467074892953946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/8852467074892953946'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2010/05/breadcrumb-navigation.html' title='Breadcrumb Navigation'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-7479050531605795969</id><published>2010-04-09T12:21:00.002+08:00</published><updated>2010-04-09T12:41:50.136+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Website Without www. In Front</title><summary type='text'>常見的網址會以 www.some.com 形式，也就是 www 開頭，但這只是個慣例，依照需要也可以選用其他名稱，或是直接用 some.com 做為網址。一般情況下，用 www.some.com 和 some.com 兩種網址都能存取同一份網頁，設定方式是先在 DNS entry 裡讓 www.come.com 和 some.com 都有 type A record，指向相同 IP，再到設定檔裡加上 alias 的設定值，以 Apache 為例，就是 ServerAlias example.com 的內容。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/7479050531605795969/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=7479050531605795969' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7479050531605795969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7479050531605795969'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2010/04/website-without-www-in-front.html' title='Website Without www. In Front'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-7742204188474285559</id><published>2010-02-26T01:23:00.002+08:00</published><updated>2010-02-26T01:30:29.557+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Apache Proxy Configuration</title><summary type='text'>把 plone 換主機執行，搬完系統及資料庫後，以為就會成功，想不到 apache + plone 的結果，一直在 /var/log/httpd/error_log 檔案裡出現 client denied by server configuration 訊息，由於不同主機的 apache 版本小有不同，先懷疑設定檔內容有所不同，最後才由 http://www.cps-project.org/static/doc/howto-virtual_hosts.html 發現是 /etc/httpd/modules.d/30_mod_proxy.conf 要修改。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/7742204188474285559/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=7742204188474285559' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7742204188474285559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7742204188474285559'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2010/02/apache-proxy-configuration.html' title='Apache Proxy Configuration'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-2814380342242775639</id><published>2010-02-06T10:48:00.002+08:00</published><updated>2010-02-06T11:10:36.067+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Relational Database Doomed?</title><summary type='text'>Tony Bain 表示，在擴充彈性高度要求的環境下，傳統關連式資料庫之外的方案，顯得越來越重要。文件導向式的資料，或是物件導向式的應用程式，最好使用 key/value 型式來處理，這類場合如果使用關連式資料結構，反而容易造成限制。老兵未死，只是凋零。此乃關連式資料庫的寫照。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/2814380342242775639/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=2814380342242775639' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2814380342242775639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2814380342242775639'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2010/02/relational-database-doomed.html' title='Relational Database Doomed?'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-6158037699042167391</id><published>2010-01-24T11:07:00.004+08:00</published><updated>2010-01-24T14:44:38.679+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Javascript to Grab Last Part of the document.url</title><summary type='text'>在 stackoverflow.com 有範例，例如：var lastPart = window.location.href.split("/").pop();但遇到 http://example.com/test/action?foo=bar 之類的網址，想避免抓成 action?foo=bar 的結果，就該使用 location.pathname.split('/').pop(); 的方式。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/6158037699042167391/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=6158037699042167391' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6158037699042167391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6158037699042167391'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2010/01/javascript-to-grab-last-part-of.html' title='Javascript to Grab Last Part of the document.url'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-2838036247651935356</id><published>2009-09-19T10:38:00.002+08:00</published><updated>2009-09-19T11:10:55.325+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Ticket Processing</title><summary type='text'>開發者常用 tracker 來管理 issue ticket，包括 bug report, patch, feature requirement 等，處理 ticket 的過程中，需要視流程來指定 ticket 狀態，例如 fixed, closed, reopened 之類。以 fixed 為例，有時候我們不只關心問題是否被處理，還在意 patch 或修訂的片段是否已被納入新版的程式碼裡，此時該使用 fixed and released 這類的狀態才夠明顯，同時，最好也主動確認新增的程式碼是否沒有著作權問題。可參考 http://n2.nabble.com/Re-patches-in-Trac-tp3672728p3672853.html 的實例。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/2838036247651935356/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=2838036247651935356' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2838036247651935356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2838036247651935356'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2009/09/ticket-processing.html' title='Ticket Processing'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-6011705018036926679</id><published>2009-07-24T16:28:00.002+08:00</published><updated>2009-07-24T16:31:58.005+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Resume SCP transferring</title><summary type='text'>Tip from http://www.linuxquestions.org/questions/linux-networking-3/scp-resume-aborted-download-290836If the following command aborted,$ scp file_to_transfer user@remotehost:/path/remote_filethen use rsync to resume:$ rsync --partial file_to_transfer user@remotehost:/path/remote_fileAnd$ export RSYNC_RSH=sshto use ssh as the transport layer.</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/6011705018036926679/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=6011705018036926679' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6011705018036926679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6011705018036926679'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2009/07/resume-scp-transferring.html' title='Resume SCP transferring'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-2119483507482471058</id><published>2009-05-07T09:19:00.002+08:00</published><updated>2009-05-07T11:38:59.033+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Version Control</title><summary type='text'>平常只用 subversion 的基本功能，還沒遇過重度使用者的問題，諸如 merge 的不便，離線時的處理。另外，名人或知名專案的加持，也會影響跟牌的人數吧。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/2119483507482471058/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=2119483507482471058' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2119483507482471058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/2119483507482471058'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2009/05/version-control.html' title='Version Control'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1548213145740138388</id><published>2009-03-07T15:47:00.002+08:00</published><updated>2009-03-07T15:55:08.049+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>sudo : Basic</title><summary type='text'>管理員建立一般帳號後，要考慮為哪些帳號設定 sudo 權限。設定方式是利用 visudo 指令來編輯 /etc/sudoers 檔案，請注意，這個檔案不能直接用一般的 vi 指令來編輯。sudoers 檔案的格式內容，依序是「帳號」「可執行的主機」「可使用的身份」「可使用的指令」，最簡單的設定如下：  root    ALL=(ALL) ALL上述的設定結果，是指 root 可以「在所有主機上」「以所有身份」「執行所有指令」，例如 sudo -u marr ls -l ~marr 是指「以 marr 身份」「執行 ls -l ~marr 指令」。預設情況下 sudo 會詢問原帳號的密碼，確認後才能成功執行指令，如果想要取消詢問密碼的動作，可用 NOPASSWD 選項：  marr    ALL=(ALL) NOPASSWD: ALL更詳細的設定方式，可參考 visudo 與 </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1548213145740138388/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1548213145740138388' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1548213145740138388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1548213145740138388'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2009/03/sudo-basic.html' title='sudo : Basic'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4068466609045872052</id><published>2008-08-19T17:14:00.003+08:00</published><updated>2008-08-19T17:59:42.598+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>DaVinci</title><summary type='text'>da Vinci 就是達文西，不過，我不是要介紹這位義大利天才，而是德州儀器在嵌入式領域的產品。處理器的工作大抵可分成兩類，一是週邊或網路存取、使用者介面的控制工作，二是影音資料的壓縮解壓縮工作。由於多媒體嵌入式產品，同時要因應系統控制與影音資料的雙重工作，德儀將兩種特性的處理器加以整合，納入週邊支援，改善處理效能，並以 DaVinci Technology 稱之，它包含 DSP 晶片、軟體、開發工具、技術支援等，開發工具以 MontaVista Linux 著名。OMAP 則是另一系列的類似產品，德儀表示，希望兩者在品牌知名度有所區隔，當提到手機時，是直接聯想到 OMAP，而提及視訊時，會直接選擇 DaVinci。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4068466609045872052/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4068466609045872052' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4068466609045872052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4068466609045872052'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2008/08/davinci.html' title='DaVinci'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4826435459585753725</id><published>2008-04-17T16:04:00.001+08:00</published><updated>2008-04-17T16:07:13.245+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>update urpmi database</title><summary type='text'>使用 Mandriva Linux 的 urpmi 遇到 Installation failed, some files are missing: ... You may want to update your urpmi database 可執行 urpmi.update -a 完成更新後應該就可以了。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4826435459585753725/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4826435459585753725' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4826435459585753725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4826435459585753725'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2008/04/update-urpmi-database.html' title='update urpmi database'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-6218773269790195202</id><published>2008-03-18T09:45:00.002+08:00</published><updated>2008-03-18T10:01:19.920+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>What Is Open Source</title><summary type='text'>" Open Source is a set of principles and practices that promote access to the design and production of goods and knowledge. " -- Wikipedia依據 Wikipedia 的內容，Open Source 是指一套原則與實務方法，用來設計與創造。最常應用 Open Source 的場合，就是軟體開發。在網路上，四成的 email server 由 Sendmail 提供服務，五成的 web server 由 Apache 提供服務，九成的 domain name server 由 BIND 提供服務，還有 Linux 作業系統，這些都是知名的 Open Source 軟體。許多 Open Source 軟體的創作動機，來自於軟體人員想要寫出有趣、有用的程式，</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/6218773269790195202/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=6218773269790195202' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6218773269790195202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/6218773269790195202'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2008/03/what-is-open-source.html' title='What Is Open Source'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-3707168579560126995</id><published>2008-02-22T21:53:00.003+08:00</published><updated>2008-02-22T23:08:27.334+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>CMS Comparison</title><summary type='text'>CMS Watch 每年通常會提出評比報告，評估的大項包括 technology, content production services, content delivery services, vendor intangibles 等，有人還整理出積分。Plone 在評比中獲得不錯的分數，但使用者仍應視自己的需要來選出最合用的產品。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/3707168579560126995/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=3707168579560126995' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/3707168579560126995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/3707168579560126995'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2008/02/cms-comparison.html' title='CMS Comparison'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4322044901682521756</id><published>2008-02-14T14:02:00.001+08:00</published><updated>2008-02-14T14:06:47.115+08:00</updated><title type='text'>20080214-Make Your Open Source Software GPL-Compatible. Or Else.-請將您欲釋出的自由軟體GPL相容化。要不然程式的後續散布可能會遭遇到許多不甚方便的困境。</title><summary type='text'>1、此文譯自David A. Wheeler所寫「Make Your Open Source Software GPL-Compatible. Or Else.」一文，翻譯並未經過原作者授權及認證，且摻雜許多原文所無之贅字以幫助讀者得其真意。2、關於「Make Your Open Source Software GPL-Compatible. Or Else.」可參照此 ，此一英文版本方為原作者傳達其意涵的唯一正確版本。by David A. Wheeler作者：David A. WheelerJune 5, 2002; revised August 9, 2007初稿完成於2002年6月5日；修訂時間2007年8月9日；翻譯時間2008年2月14日。This essay argues that developers of open source software / Free </summary><link rel='related' href='http://lucien.cc/index.php?option=com_content&amp;task=view&amp;id=147&amp;Itemid=20' title='20080214-Make Your Open Source Software GPL-Compatible. Or Else.-請將您欲釋出的自由軟體GPL相容化。要不然程式的後續散布可能會遭遇到許多不甚方便的困境。'/><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4322044901682521756/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4322044901682521756' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4322044901682521756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4322044901682521756'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2008/02/20080214-make-your-open-source-software.html' title='20080214-Make Your Open Source Software GPL-Compatible. Or Else.-請將您欲釋出的自由軟體GPL相容化。要不然程式的後續散布可能會遭遇到許多不甚方便的困境。'/><author><name>lucien.cc</name><uri>http://www.blogger.com/profile/18098660422869711093</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1932945350532588776</id><published>2007-10-24T17:34:00.000+08:00</published><updated>2007-10-25T11:01:14.164+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>OSS for RFID</title><summary type='text'>找了 open source 在 RFID 應用的範例，發現 RadioActive Foundation 有嘗試整理相關的軟體及文件，目前能看到一些架構說明及討論區，既有的子計畫大致有三，分別開發 B2B data exchange 的工具，tag/sensor 的管理工具，driver based 硬體模擬器，包括 Object Naming Service (ONS) 底層服務，但目前的原生軟體原始碼似乎還很少，而且發展策略上，是主動去納入其他更積極發展的網路專案，做為實作的基礎。例如 logicalloy 就是「被相中」的專案，而且許多開發環境及規範文件都參考 Java 環境。如果擴大來看，RFID 可以一種工具，和常見的 video/image processing 技術一樣，被應用在 surveillance 或 digital identity 的場合。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1932945350532588776/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1932945350532588776' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1932945350532588776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1932945350532588776'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/10/oss-for-rfid.html' title='OSS for RFID'/><author><name>TsungWei Hu</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh3.googleusercontent.com/-mvYQdBmEuVw/AAAAAAAAAAI/AAAAAAAAAAA/e8vMLM8BnrE/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-3730205942889073994</id><published>2007-07-10T23:24:00.000+08:00</published><updated>2007-07-11T11:26:36.025+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>自動將貼到Blog的程式碼Code或HTML Code做轉換及編排</title><summary type='text'>希望可以直接把寫好的程式碼貼到Blog上，又能夠保持他原來的格式，並且做好排版，之後還要方便修改．．．請看 WangAguo開發手記</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/3730205942889073994/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=3730205942889073994' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/3730205942889073994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/3730205942889073994'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/07/blogcodehtml-code.html' title='自動將貼到Blog的程式碼Code或HTML Code做轉換及編排'/><author><name>wangaguo</name><uri>http://www.blogger.com/profile/01716107925205765897</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp0.blogger.com/_S4MquLqv4ms/SJaWc6tdh5I/AAAAAAAAAks/_-o-TDLZqag/S220/DSCN1585.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-1104309052633107411</id><published>2007-07-04T17:46:00.000+08:00</published><updated>2007-07-13T10:24:24.241+08:00</updated><title type='text'>專案開發平台提供者</title><summary type='text'>SourceForge.nethttp://sourceforge.net/Trachttp://trac.edgewall.org/GForgehttp://gforge.org/Launchpadhttps://launchpad.net/Google Codehttp://code.google.com/===================================http://everydo.com/潤普 http://zopen.cn/收費, 對 open source project 免費.开源大本营－－GForge.osdn.net.cn－－开源项目全程生命周期开发管理系统http://gforge.osdn.net.cn/http://news.csdn.net/n/20070524/104497.html是 gforge based, 和 collabnet </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/1104309052633107411/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=1104309052633107411' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1104309052633107411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/1104309052633107411'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/07/blog-post_04.html' title='專案開發平台提供者'/><author><name>LCamel</name><uri>http://www.blogger.com/profile/17322637380810346171</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://2.bp.blogspot.com/_8S2nYAgyFoY/SVYu3wfqI5I/AAAAAAAABX8/N41XJUhARu4/S220/%E8%B2%93%E8%B2%93_%E6%96%B9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4145606549556164241</id><published>2007-07-04T11:48:00.000+08:00</published><updated>2007-07-04T22:26:06.207+08:00</updated><title type='text'>想在 blogger.com 上面貼 code ?</title><summary type='text'>想在 blogger.com 上面貼 code ?先貼些相關連結.http://puzzleware.net/codehtmler/default.aspxhttp://www.csie.ntu.edu.tw/%7Epiaip/unihtml/http://formatmysourcecode.blogspot.com/http://pastebin.com/941691http://syntax.rubyforge.org/http://www.rubyinside.com/advent2006/7-coloring.htmlhttp://lightyror.thegiive.net/2007/05/coderay.htmlhttp://pastie.textmate.org/其實這邊有個問題等著被解決: 許多 blog / CMS 系統不能好好的顯示 source code.</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4145606549556164241/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4145606549556164241' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4145606549556164241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4145606549556164241'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/07/bloggercom-code.html' title='想在 blogger.com 上面貼 code ?'/><author><name>LCamel</name><uri>http://www.blogger.com/profile/17322637380810346171</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://2.bp.blogspot.com/_8S2nYAgyFoY/SVYu3wfqI5I/AAAAAAAABX8/N41XJUhARu4/S220/%E8%B2%93%E8%B2%93_%E6%96%B9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-7739116831039298889</id><published>2007-07-02T23:17:00.000+08:00</published><updated>2007-07-02T23:37:53.772+08:00</updated><title type='text'>專案名稱可以改嗎?</title><summary type='text'>在 OpenFoundry 上開專案得要個名字, 而且開了就不能改.問題是, 當我有個 idea 的時候, 我想花時間想這個 idea 可以作什麼, 怎麼作. 在這些觀念釐清之後, 才好取個能代表專案的意涵同時又響亮的名字. 但是, 如果專案名稱取了不能改, 那不是強迫使用者得想到很後面了才能開專案嗎?我不喜歡想名字, 特別是有其他更重要的事可作的時候.</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/7739116831039298889/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=7739116831039298889' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7739116831039298889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/7739116831039298889'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/07/blog-post.html' title='專案名稱可以改嗎?'/><author><name>LCamel</name><uri>http://www.blogger.com/profile/17322637380810346171</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://2.bp.blogspot.com/_8S2nYAgyFoY/SVYu3wfqI5I/AAAAAAAABX8/N41XJUhARu4/S220/%E8%B2%93%E8%B2%93_%E6%96%B9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-959230504114408491</id><published>2007-06-21T11:37:00.000+08:00</published><updated>2007-06-21T11:38:54.985+08:00</updated><title type='text'>丁丁蜘蛛人</title><summary type='text'></summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/959230504114408491/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=959230504114408491' title='2 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/959230504114408491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/959230504114408491'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/06/blog-post.html' title='丁丁蜘蛛人'/><author><name>Ally</name><uri>http://www.blogger.com/profile/13664100453425770497</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://photos1.blogger.com/blogger/5855/1521/1600/face.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SXz2aLjDEPU/RnnysxU4b_I/AAAAAAAAAIU/z3jzZoqeQc4/s72-c/16.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-4700638954817869163</id><published>2007-06-14T11:03:00.000+08:00</published><updated>2007-06-14T11:10:51.713+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>crypt 好聰明?</title><summary type='text'>如果每次拿一樣的字串和 salt 給 crypt 去跑, 第二次以後就會很快跑完(難道有cache?).也就是說, 以下的測試程式是沒有用的:perl -e 'foreach (1..1000) { crypt("a", q($1$b)) }'要測也至少要這樣測:perl -e 'foreach (1..1000) { crypt("a$_", q($1$b)) }'</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/4700638954817869163/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=4700638954817869163' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4700638954817869163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/4700638954817869163'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2007/06/crypt.html' title='crypt 好聰明?'/><author><name>LCamel</name><uri>http://www.blogger.com/profile/17322637380810346171</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://2.bp.blogspot.com/_8S2nYAgyFoY/SVYu3wfqI5I/AAAAAAAABX8/N41XJUhARu4/S220/%E8%B2%93%E8%B2%93_%E6%96%B9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-116314110381314365</id><published>2006-11-10T14:45:00.000+08:00</published><updated>2007-06-12T11:20:58.518+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Create Event from Gmail</title><summary type='text'>Gmail 的服務裡有整合行事曆，要怎樣使用這項服務呢?在讀信的同時，點一下「More actions...」下拉選單。  會看到「Create Event」選項。  接著填寫行事曆內容，結束時按「儲存變更」即可完成。 回到讀信的操作畫面時，在右方會看到「View event」的提示文字。 </summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/116314110381314365/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=116314110381314365' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/116314110381314365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/116314110381314365'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/11/create-event-from-gmail.html' title='Create Event from Gmail'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115968073816487399</id><published>2006-10-01T13:02:00.000+08:00</published><updated>2007-06-12T11:20:58.518+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Macintosh History</title><summary type='text'>Apple 電腦的誕生，為微電腦時代躍上歷史舞台揭開序幕，從 Apple II 到 Macintosh，這段革命 Andy Hertzfeld 曾親身與役，在 Revolution in the Valley (中譯為矽谷大革命) 一書中，他記錄了麥金塔開發功臣們遇到的趣事、難題、爭執，與分裂，引領讀者一同回顧這項劃時代產品的成長歷程。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115968073816487399/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115968073816487399' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115968073816487399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115968073816487399'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/10/macintosh-history.html' title='Macintosh History'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115951848000865885</id><published>2006-09-29T16:27:00.000+08:00</published><updated>2007-06-12T11:21:55.192+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='License'/><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Applying OpenSource License</title><summary type='text'>簡介將軟體專案以 open source 授權方式釋出的注意事項。我們以一個 "MyProject" 專案為範例，說明將軟體專案以自由軟體授權方式，特別是 GNU GPL 條款來釋出時，應注意哪些事項。檔案目錄的慣例假設 MyProject 專案的原始碼檔案，全部位於 "MyProject" 目錄之下。下列為常見之檔案目錄命名及內容慣例：MyProject/README.txt提供專案的基本資訊，包括專案「完整之正式名稱」「簡寫名稱」「開發單位或人員」「版本資訊」「功能特色」「專案網址」「參考資訊之取得方式」。MyProject/CHANGELOG.txt 或 MyProject/HISTORY.txt提供原始碼修訂改版的說明資訊，包括「臭虫修訂狀況」「程式執行所需滿足之相依關係」「新增功能介紹」。MyProject/LICENSE.txt說明軟體原始碼的「著作權所有者 (</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115951848000865885/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115951848000865885' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115951848000865885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115951848000865885'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/09/applying-opensource-license.html' title='Applying OpenSource License'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115872366077692919</id><published>2006-09-20T10:39:00.000+08:00</published><updated>2007-06-12T11:20:58.518+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>OpenID: Framework for Digital Identity</title><summary type='text'>OpenID 利用 URI (也就是所謂的網址) 來當作識別身份的工具，其運作方式包括 consumer, service provider 等角色。目前已加入實作行列的語言很多，當然也包括 Python 在內，應用軟體方面則包括 Plone 在內。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115872366077692919/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115872366077692919' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115872366077692919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115872366077692919'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/09/openid-framework-for-digital-identity.html' title='OpenID: Framework for Digital Identity'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115610073463724940</id><published>2006-08-21T02:52:00.000+08:00</published><updated>2007-06-12T11:20:58.518+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Game Fun</title><summary type='text'>除了搖滾樂，另一個讓自己廢寢忘食的東西是電腦遊戲。有個電腦遊戲我特別喜愛，叫做「鐵路大亨 (Railroad Tycoon)」，遊戲者扮演鐵道公司的經營人，進行商場爭奪戰。起始資本是固定的，雖然只是真實商戰的簡化模擬，遊戲間要留意的事情也是不少，包括：尋找具備遠景的車站設置點，控制車次及發車時間，安排物資動線，甚至與競爭公司進行經營權爭奪。不僅是個有趣的遊戲，還可以認識鐵道史，也體驗商場經營的基本觀念，像是財務報表跟資本市場操作。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115610073463724940/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115610073463724940' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115610073463724940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115610073463724940'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/08/game-fun.html' title='Game Fun'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115596405496962507</id><published>2006-08-19T12:15:00.000+08:00</published><updated>2007-06-12T11:20:58.518+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Find What You Love</title><summary type='text'>高中的時候，我很迷搖滾樂。身為搖滾樂迷，純粹個人聽歌享受，要是還不夠過癮，就可能會想玩樂器、搞樂團、作曲編詞，或是經營樂迷會。有人說過「You've got to find what you love.」，我認同這句話，也相信，對於心愛的事物，一個人就能持續投入熱情，甚至去感染別人，願意的話，都會發現意想不到的回報。那時候，有人問我「將來想做的事」，脫口而出的是「開唱片行」。後來才發現，我真正想要的，是一個交流分享搖滾樂的空間，它的原型來自於「雷電華」「陋室」「藍儂 」，而既有的「女巫店」「五四三音樂站」已是夠棒了。感謝經營這些空間的人，讓我們輕鬆地做自己想做的事 -- 分享關於搖滾世代的傳奇演義。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115596405496962507/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115596405496962507' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115596405496962507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115596405496962507'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/08/find-what-you-love.html' title='Find What You Love'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115337515418880252</id><published>2006-07-20T13:43:00.000+08:00</published><updated>2007-06-12T11:20:58.518+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Refactoring and Testing</title><summary type='text'>"A refactoring will change memory consumption, probably have a detectable effect on speed, etc."中文的軟體文件把 refactoring 譯為「重構」，這是一個改善既有程式碼設計的工作過程，以便提昇記憶體使用效率及整體執行效率。那麼，又該如何衡量重構後的成效呢? 如果原本已存在測試規劃的話，那重構後的第一步，就是既有的 Testing Case 仍能執行通過。A refactoring is a test-preserving transformation.測試規劃在軟體改善過程中所佔的重要性，由此可見。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115337515418880252/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115337515418880252' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115337515418880252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115337515418880252'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/07/refactoring-and-testing.html' title='Refactoring and Testing'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-115243568802866066</id><published>2006-07-09T16:35:00.000+08:00</published><updated>2007-06-12T11:20:58.519+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Automatic Summaries Using Haystack</title><summary type='text'>在 Automatic news summaries with Plone using Haystack 文章中，提到如何利用 Plone 建置一個新聞網站，再搭配 Haystack product 來分析新聞稿的內容，自動進行內容摘要的工作。處理底層分析工作的則是 libots (Open Text Summarizer) 工具軟體，目前支援主要的歐美語文，如果想要加入中文支援，則可以從記載分析規則的 XML 檔案進行修改。文章摘要是項常見的需求，可應用的內容包括新聞稿、學術論文等。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/115243568802866066/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=115243568802866066' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115243568802866066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/115243568802866066'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/07/automatic-summaries-using-haystack.html' title='Automatic Summaries Using Haystack'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-113777467035191069</id><published>2006-01-21T00:19:00.000+08:00</published><updated>2007-06-12T11:20:58.519+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Empower to Save the Life</title><summary type='text'>電腦網路是我們的重要工具，而程式語言是駕馭電腦網路的好工具。有效地應用程式語言，生產力提高之餘，能夠讓人們靜下心來，更常面對我們生命裡真正重要的課題。在 Programming at Python Speed 一文中，Guido van Rossum 提到，「一個兩萬行的 Python 程式，可能相當於一個十萬行的 Java 或 C++ 程式，或是一個二十萬行的 C 程式。如果想要偵錯或進行系統調整，十萬行的程式和兩萬行的程式相比，花的工夫就天差地遠。在規模小一點的程式裡，這樣的道理還是存在的，一個伍佰行的程式，和一萬行的程式，相比起來是很不一樣的。」程式設計人員的生產力，關係著他們的生活品質，也關係著更多其他人的福祉。如果我是一個程式設計人員，除了解決自己的問題之外，還要能協助別人也解決他們的問題。這就是我學習 Python 語言的意義所在。在電腦世界裡，零件已經太多了，</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/113777467035191069/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=113777467035191069' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/113777467035191069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/113777467035191069'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/01/empower-to-save-life.html' title='Empower to Save the Life'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21201903.post-113768924349376828</id><published>2006-01-19T22:30:00.000+08:00</published><updated>2007-06-12T11:20:58.519+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Other'/><title type='text'>Plone Customization</title><summary type='text'>很多人對修改 Plone 預設網站樣式感到興趣，Jon Stahl 是建置網站的好手，平常樂於分享自己使用 Plone 協助非營利組織的經驗談，最近便撰寫一篇心得，從設計到實作，介紹客製化的技巧。另外，也可以從 ZopeMag 找到 Hawaii 州政府應用實例。</summary><link rel='replies' type='application/atom+xml' href='http://openfoundry.blogspot.com/feeds/113768924349376828/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21201903&amp;postID=113768924349376828' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/113768924349376828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21201903/posts/default/113768924349376828'/><link rel='alternate' type='text/html' href='http://openfoundry.blogspot.com/2006/01/plone-customization.html' title='Plone Customization'/><author><name>marr</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
