<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.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:feedburner="http://rssnamespace.org/feedburner/ext/1.0"><id>tag:blogger.com,1999:blog-8142021398805582000</id><updated>2009-11-14T01:17:40.131+08:00</updated><title type="text">navyblueshellingford</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://navyblueshellingford.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://navyblueshellingford.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default?start-index=26&amp;max-results=25" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>137</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/shelling" type="application/atom+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-757303651988162589</id><published>2009-11-13T23:36:00.013+08:00</published><updated>2009-11-14T01:17:40.145+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="library" /><category scheme="http://www.blogger.com/atom/ns#" term="python" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">Library for Numerical Computing</title><summary type="text">Briefly summarize some numerical library here. It looks there are too many useful tools. Either for parallel computing or for matrix, numerical calculating and plotting.PLOT:MatPlotLib: it seems to be the most awesome plotting tool among this listPGPlot: C library, also have binding in Perl, Python,RubyPLPlot: cross-platform plot library, also have binding in PerlScientific PythonMRPlotPARALLEL:</summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=757303651988162589" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/757303651988162589" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/757303651988162589" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/JWMTTK-xW6g/library-for-numerical-computing.html" title="Library for Numerical Computing" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/11/library-for-numerical-computing.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-9167000869324644999</id><published>2009-08-30T22:45:00.003+08:00</published><updated>2009-08-30T23:28:36.865+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">Discussion about anonymous function in Perl and Ruby</title><summary type="text">Just for fun, tonight I write a methods invoking two anonymous functions to iterate a Range with specified condition in Ruby. It looks likeclass Range    def each_satisfy()    endendAnd I want to invoke it as(1..10).each_satisfy(condition_lambda, callback_lambda)(1..10).each_satsify { |n| ...condition statment... } do |n|    ...callback statement...endWhen I try to define its prototype asdef </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=9167000869324644999" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/9167000869324644999" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/9167000869324644999" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/KjYA6Q38Fwk/discussion-about-anonymous-function-in.html" title="Discussion about anonymous function in Perl and Ruby" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/08/discussion-about-anonymous-function-in.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-4068314771344537610</id><published>2009-08-23T22:35:00.006+08:00</published><updated>2009-08-24T11:27:31.570+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="api" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><category scheme="http://www.blogger.com/atom/ns#" term="webdesign" /><title type="text">LWP, cURL, OpenSSL and Posterous</title><summary type="text">The fun of programming is there is always subtle mechanism in implementation. It costs time to discover but sometime is deserving. for example.$ curl --basic -u &lt;user&gt; http://example.com/api/$ echo -n "user:pass" | openssl base64 -eand to  </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=4068314771344537610" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/4068314771344537610" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/4068314771344537610" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/GavRw58t0m8/lwp-curl-openssl-and-posterous.html" title="LWP, cURL, OpenSSL and Posterous" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/08/lwp-curl-openssl-and-posterous.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-7553618526252741262</id><published>2009-08-17T23:48:00.005+08:00</published><updated>2009-08-20T19:27:47.102+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="webservice" /><category scheme="http://www.blogger.com/atom/ns#" term="api" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><title type="text">Posterous API in Perl</title><summary type="text">Posterous.com is a new (micro)-blog mesh-up system.You can use it mesh up almost all your (micro)-blog. Post once, Publish Everywhere. And there is still many funny features.It looks pretty good, so I translated its API to Perl. You can get it from CPAN. Still work in progress, but would be productive soon. </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=7553618526252741262" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7553618526252741262" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7553618526252741262" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/SJ6Owx3baL4/posterous-api-in-perl.html" title="Posterous API in Perl" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/08/posterous-api-in-perl.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-386893438197368684</id><published>2009-08-15T23:43:00.005+08:00</published><updated>2009-08-16T01:10:08.741+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="git" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">Can't locate Git.pm in @INC</title><summary type="text">Well, the installation of Github::Import worked well on Linux boxs but always reported "can't locate Git.pm in @INC" on Macintosh boxs. It is just a little trick and the answer is here.Git.pm comes with git instead of being a part of CPAN. Building a copy of git-core or copying from other box solve it quickly. </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=386893438197368684" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/386893438197368684" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/386893438197368684" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/7FV8LMg1d-4/cant-locate-gitpm-in-inc.html" title="Can't locate Git.pm in @INC" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/08/cant-locate-gitpm-in-inc.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-690938893762094417</id><published>2009-07-07T12:34:00.005+08:00</published><updated>2009-07-07T12:44:31.174+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mood" /><title type="text">the roadmap of upgrowth</title><summary type="text">和長輩們聊天總是很有趣的。即使那是一句老生常談，從長輩提攜的口吻中說出，依然受用。6/26 的謝師宴，和賴暎杰老師坐在一起，我是這麼問的：「研究遇到瓶頸時，是怎麼面對的。」「每天都多學會一件事，就不用擔心。」yep... </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=690938893762094417" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/690938893762094417" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/690938893762094417" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/coaj9FvqfrA/roadmap-of-upgrowth.html" title="the roadmap of upgrowth" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/07/roadmap-of-upgrowth.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-6277271559442810430</id><published>2009-07-06T22:24:00.006+08:00</published><updated>2009-07-06T23:19:33.823+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="perl module" /><category scheme="http://www.blogger.com/atom/ns#" term="tutorial" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">Data::Model</title><summary type="text">Data::Model is a new ORM created by yappo, Its usage style is similar to DataMapper and Jifty::DBI.Different from most famous equivalent, Data::Model handles multi-database. In order to do that, every model was appointed its database and table name in addition to its schema specification.Let's see a simple example:This is a simplest model in Data::Model, Only two DDL in it. The first, base_driver</summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=6277271559442810430" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/6277271559442810430" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/6277271559442810430" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/F3C2XevR3xU/datamodel.html" title="Data::Model" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/07/datamodel.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-3385659171861213944</id><published>2009-06-25T22:19:00.006+08:00</published><updated>2009-06-25T22:47:51.449+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="emacs" /><title type="text">disable beep in emacs</title><summary type="text">使用 Emacs 也有一段時間，在 Mac 的 GUI 環境下使用 touch panel 撥弄 emacs 的 scroll bar，總會有令人中斷思緒的嗶嗶聲。Emacs Wiki: AlarmBell 這頁把處理警告的設定方式寫的頗為清楚。要把警示聲換成視覺警示，可以寫成 (custom-set-variables '(visible-bell t))在 GNU Emacs，這樣預設是閃爍第一行或最後一行，端看 touch panel 是轉哪一邊，XEmacs 則是閃爍整個螢幕，要讓 XEmacs 僅閃爍一行，則要寫成(custom-set-variables '(visible-bell 'top-bottom))。完全關閉警告，可以設成(custom-set-variables '(ring-bell-function 'ignore))。ring-bell-function </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=3385659171861213944" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/3385659171861213944" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/3385659171861213944" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/CZfA_fnwLKA/disable-beep-in-emacs.html" title="disable beep in emacs" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/06/disable-beep-in-emacs.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-6439405613116111062</id><published>2009-06-25T15:20:00.001+08:00</published><updated>2009-06-25T22:49:45.538+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="database" /><title type="text">Connect to SQLServer(MSSQL) in php5 with FreeTDS</title><summary type="text">In Debian It needs to $ aptitude install freetds-common php5-sybase Then add configuration about SQLServer to /etc/freetds/freetds.conf[ConfigName]    host = host_of_sql_server    port = port_of_sql_server    tds version = correct_version    client charset = use_utf8_as_betterAll thing done. </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=6439405613116111062" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/6439405613116111062" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/6439405613116111062" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/3FQya6DQALc/connect-to-sqlservermssql-in-php5-with.html" title="Connect to SQLServer(MSSQL) in php5 with FreeTDS" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/05/connect-to-sqlservermssql-in-php5-with.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-5789920404031529056</id><published>2009-06-08T12:13:00.004+08:00</published><updated>2009-06-08T18:17:16.725+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="c" /><title type="text">Pseudo-OO syntax in C</title><summary type="text">總是會忘記的 syntax </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=5789920404031529056" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/5789920404031529056" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/5789920404031529056" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/MacHgwYtyxw/syntax.html" title="Pseudo-OO syntax in C" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/06/syntax.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-7938676923121856371</id><published>2009-04-28T19:25:00.005+08:00</published><updated>2009-04-28T19:35:00.140+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="rails" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><title type="text">some notes</title><summary type="text">1. do find =&gt; rescue2. model operation more than 3 lines =&gt; define class method in model3. def current_user4. render_as_form5. more than one relation in one table6. composite primary key =&gt; hook </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=7938676923121856371" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7938676923121856371" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7938676923121856371" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/1f0xdWl-Gj8/some-notes.html" title="some notes" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/04/some-notes.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-3490761602167664963</id><published>2009-04-07T23:49:00.021+08:00</published><updated>2009-04-14T23:44:50.852+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="perl module" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">Class::Implant - No &amp;import() !</title><summary type="text">Class::implant is a experimental little helper implemented when I developed Railsish with gugod. Manipulating mixin and inheritance outside package is its primary function, also with abilities to select methods which would import.Original idea is inspire by the purpose: we want to import whole Helper methods into Controller which the Helper is named after. And it is should not be left to </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=3490761602167664963" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/3490761602167664963" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/3490761602167664963" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/fckXqXFtj3U/classimplant-no.html" title="Class::Implant - No &amp;amp;import() !" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/04/classimplant-no.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-7223901178856701402</id><published>2009-04-07T22:15:00.004+08:00</published><updated>2009-04-07T22:27:44.527+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="debian" /><category scheme="http://www.blogger.com/atom/ns#" term="unix" /><title type="text">debian manpage-zh</title><summary type="text">上次寫 C 的時候對 Debian 還沒有很熟，今天偶然查 manpages 時才注意到有中文的 standard C library manpages。真相如下：希望我沒有太後知後覺...XD </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=7223901178856701402" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7223901178856701402" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7223901178856701402" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/1fS9zYxNaN4/debian-manpage-zh.html" title="debian manpage-zh" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_EItDiCrpGpY/SdtiTRdrQCI/AAAAAAAABOI/P0lHuMpHhlU/s72-c/manpage_zh_fopen.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/04/debian-manpage-zh.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-4276806729265788078</id><published>2009-03-25T18:35:00.013+08:00</published><updated>2009-03-26T01:00:09.815+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="rails" /><category scheme="http://www.blogger.com/atom/ns#" term="bsd" /><title type="text">Rails on FreeBSD 7.1</title><summary type="text">Today I was first time trying to install rails on freebsd 7.1. Neither the ports version nor the gem file version, rails could not work, even only simply creating a new project. It returns message as following.    undefined method `camelize' for "app":StringI had try to reinstall ruby, rubygem, and try other version rails but a nonsense. And finally I forgot how did I discover it needs ruby-iconv</summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=4276806729265788078" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/4276806729265788078" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/4276806729265788078" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/N--HmAZ8FDU/rails-on-freebsd-71.html" title="Rails on FreeBSD 7.1" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/03/rails-on-freebsd-71.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-4904894049351117991</id><published>2009-03-14T21:04:00.002+08:00</published><updated>2009-03-14T21:07:09.412+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">REPL in Perl</title><summary type="text">Read-Evaluate-Print Loop 在現代語言中非常常見，諸如 Scheme， Haskell， Ruby， 與 Python 都有內建，實際工作時是非常實用的工具，Perl 6 也即將內建 REPL Shell，Perl 5 則沒有。這幾天偶然想在 Perl 中使用 REPL，搜尋了一下，在 use.perl.org 得到 2007 年發表的這篇文章，介紹了四個以 Perl 5 實做的 REPL Shell，翻譯如下。Continue reading REPL in Perl. </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=4904894049351117991" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/4904894049351117991" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/4904894049351117991" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/_HhIsMMZNYs/repl-in-perl.html" title="REPL in Perl" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/03/repl-in-perl.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-2069229702921391761</id><published>2009-03-02T23:31:00.006+08:00</published><updated>2009-03-02T23:42:04.711+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="command usage" /><category scheme="http://www.blogger.com/atom/ns#" term="shell" /><title type="text">two pragmatic commands</title><summary type="text">$ cp /some/path/to/myfile{,.back} # cp-the-file$ mv filename.{old,new} # quickly-rename-a-file </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=2069229702921391761" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/2069229702921391761" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/2069229702921391761" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/WAz5m_Dl31c/two-pragmatic-command.html" title="two pragmatic commands" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/03/two-pragmatic-command.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-2412349222200865346</id><published>2009-01-16T22:35:00.004+08:00</published><updated>2009-01-30T19:59:50.900+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="note" /><title type="text">day spec</title><summary type="text">#!/usr/bin/env perluse warnings;use strict;$csg = CSG-&gt;new;$csg-&gt;FristPhaseNote({  date     =&gt; "2009/01/16",   location =&gt; "Lib, 5F, Column Q30",   prepare  =&gt; ["9:40~11:50", "13:30~14:00"],  end      =&gt; "17:10",});__END__ </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=2412349222200865346" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/2412349222200865346" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/2412349222200865346" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/0GuCm2cxiok/day-spec.html" title="day spec" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/01/day-spec.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-3960519419533776363</id><published>2009-01-08T17:07:00.008+08:00</published><updated>2009-01-08T17:19:36.014+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="quote" /><title type="text">摩羯座老公使用說明書</title><summary type="text">hmmm 只能說很中肯 XDDD品名：摩羯座老公生產日期：摩羯月(12月22日——1月19日)，年份憑個人喜好。主要成分：奮鬥力51%，忠誠29%，正直13%，樸實木訥7%。主要功能：1、本產品能動性很強，可大量減少用戶勞作時間。2、能為用戶的生活、情感、物質提供穩定保障。3、能默默地儘量實現用戶需要。適用人群：適用於溫順嫻雅、勤儉節約的女性。注意事項：1、不要對該產品的浪漫因子抱有太多期望，不然失望的人一定是用戶。2、本品在運作時，請別隨意打擾。3、用戶在使用時，儘量少做錯事，否則要承受其冰冷外殼下的噪音騷擾。4、別強行把該產品推到熱鬧、繁雜的環境中去。5、請尊重本產品的勞作能力和對工作的偏愛。6、用戶如遇到無法解決的障礙時，請立即諮詢「科技紫微星座網」，以免搶修不及時，要到民政局申請繁雜的換貨手續。禁忌：太以自我為中心、缺乏家庭經營觀念、無法理解本品事業心的人，為拒絕往來戶；本品對於</summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=3960519419533776363" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/3960519419533776363" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/3960519419533776363" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/AHV52TtQshM/blog-post.html" title="摩羯座老公使用說明書" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/01/blog-post.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-1266372675770842025</id><published>2009-01-03T20:37:00.006+08:00</published><updated>2009-01-03T20:46:34.511+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="tool" /><category scheme="http://www.blogger.com/atom/ns#" term="git" /><category scheme="http://www.blogger.com/atom/ns#" term="github" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">GitHub Creator</title><summary type="text">Install# cpan Git::Github::CreatorSetting in ~/.github_creator.ini[github]        login_page="https://github.com/login"        account=joe@example.com        password=foobar        remote_name=origin        debug=1Then, in local git repositorygithub_creator --name my-project --desc "an awesome thing"Arguments are optional in a Perl module with META.yml.GitHub Creator's repository and manual on </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=1266372675770842025" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/1266372675770842025" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/1266372675770842025" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/3eK3kAKq8rE/github-creator.html" title="GitHub Creator" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2009/01/github-creator.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-726116526899107093</id><published>2008-12-30T10:43:00.005+08:00</published><updated>2008-12-31T23:50:51.274+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="note" /><title type="text">0d6d98</title><summary type="text" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=726116526899107093" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/726116526899107093" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/726116526899107093" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/uUYAnzVRkzQ/0d6d98.html" title="0d6d98" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_EItDiCrpGpY/SVmLK67cuZI/AAAAAAAABKM/JVe9fLJ7XGM/s72-c/Picture+3.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2008/12/0d6d98.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-1416070989392280129</id><published>2008-12-13T21:09:00.007+08:00</published><updated>2008-12-13T21:53:59.130+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="jquery" /><category scheme="http://www.blogger.com/atom/ns#" term="github" /><title type="text">simple clone of GitHub Badge</title><summary type="text">Thanks to jQuery, I just spend three hours to create GitHub Widget, a clone of GitHub Badge. The widget is put in the sidebar of this page.Compare with GitHub Badge, GitHub Widget is full written in jQuery, so that it is also compatible with IE. And the usage and html structure is full compatible with GitHub Badge.I host it here temporarily. Please feel free to use it. </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=1416070989392280129" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/1416070989392280129" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/1416070989392280129" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/knqPuGtqtvI/simple-clone-of-github-badge.html" title="simple clone of GitHub Badge" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_EItDiCrpGpY/SUO8zNicigI/AAAAAAAABIY/zzCFSDBXU1o/s72-c/Picture+1.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2008/12/simple-clone-of-github-badge.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-7064462189176434699</id><published>2008-12-13T16:04:00.009+08:00</published><updated>2008-12-13T16:23:04.852+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="api" /><category scheme="http://www.blogger.com/atom/ns#" term="github" /><title type="text">github api callback</title><summary type="text">Not documented on Official GitHub API Guide, GitHub provide "callback" parameter to allow corss-site json accessing.Example in jQuery:&lt;script src='http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js' type="text/javascript"&gt;&lt;/script&gt;&lt;script&gt;function myFunction(data) {    // data is the json we would get}$.getScript("http://github.com/api/v1/json/username?callback=myFunction")&lt;/script&gt; </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=7064462189176434699" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7064462189176434699" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/7064462189176434699" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/9z1JIRxzsLA/github-api-callback.html" title="github api callback" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2008/12/github-api-callback.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-375046303422053970</id><published>2008-12-13T11:39:00.002+08:00</published><updated>2008-12-13T11:42:09.514+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="css" /><title type="text">hide blogger navigation bar</title><summary type="text">memo:.Navbar {    visibility:hidden;    display: none;} </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=375046303422053970" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/375046303422053970" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/375046303422053970" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/V3a585Zuf2E/hide-blogger-navigation-bar.html" title="hide blogger navigation bar" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2008/12/hide-blogger-navigation-bar.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-379769204600328582</id><published>2008-12-05T20:20:00.017+08:00</published><updated>2008-12-13T22:17:34.735+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="photonics" /><category scheme="http://www.blogger.com/atom/ns#" term="presentation" /><title type="text">OPT presentation</title><summary type="text">Slide which was uploaded to slideshare.net: OPT PresentationView SlideShare presentation or Upload your own. (tags: photonics physics)PDF of submitted paper:http://sites.google.com/site/shelling/Home/archive/opt2008%5Brevisedrelease%5D.pdf?attredirects=0PDF version slide:http://sites.google.com/site/shelling/Home/archive/opt-presentation.pdf?attredirects=0 </summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=379769204600328582" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/379769204600328582" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/379769204600328582" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/d0v5TzX9X2Y/opt-presentation.html" title="OPT presentation" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2008/12/opt-presentation.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-8142021398805582000.post-6296354568422899613</id><published>2008-11-06T19:34:00.009+08:00</published><updated>2008-11-07T11:43:09.134+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="perl module" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">perl work with growl</title><summary type="text">Excerpt fromhttp://oreilly.com/catalog/9780596526740/toc.htmland http://search.cpan.org/~cnandor/Mac-Growl-0.67/lib/Mac/Growl.pmA quick method to post notification to Growl.#!/usr/bin/env perluse warnings;use strict;use Mac::Growl qw(:all);Mac::Growl::RegisterNotifications(      # register your application in Growl before posting.    # just one time enough.    'growlalert',   # app name    ['</summary><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=8142021398805582000&amp;postID=6296354568422899613" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/6296354568422899613" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8142021398805582000/posts/default/6296354568422899613" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/shelling/~3/Gs7ZYz3HTEQ/perl-work-with-growl.html" title="perl work with growl" /><author><name>shelling</name><uri>http://www.blogger.com/profile/03349665394793041301</uri><email>navyblueshellingford@gmail.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16038532866075763594" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://navyblueshellingford.blogspot.com/2008/11/perl-work-with-growl.html</feedburner:origLink></entry></feed>
