• 我不喜歡這個市儈的空間利用

    83560034

    這一處,宜蘭火車站旁的倉庫舊址。我曾經和她走過這一段,雖然晚間經過,總常常觸景傷情,但是這塊空間現在全然的商業化,從所謂的「宜蘭行口」那側蔓延過來,開起了小吃部,更讓我見了不由得火大。

    之前我總認為,宜蘭可能是要把這塊空間,仿照台中 20 號倉庫的作法,讓前站過於喧囂、商業、聲色娛樂的氣氛,用一些人文、藝術的元素來中和,不過呢,我的期望終究是落空了。或許我是個不知社會現實、賺錢艱苦的腐儒、假文青、假知青,或許吧!

  • 聯合目錄當如是

    前幾天看到「カーリル:日本最大の図書館蔵書検索サイト」,非常為之驚艷。而且做到「確認館藏狀態」這點,是以往我見過的聯合目錄系統鮮少落實的重要設計。

    介面的基調也是設計得很軟性,不似其它聯合目錄系統那樣「剛硬」、「冷」。

    官方的 Twitter 訊息更新得勤快,不只是單向操作、當成公告平台而已,還會去 RT 別人進行互動;系統預定還要提供 API 供人做進一步利用。

    說 Library 2.0 退燒、只是個 buzzword 的人,有沒有看到別人是怎麼做這種「真.Library 2.0」的呢?

  • 讀了 ES operating system from Google Code

    花了一點時間,讀完岡坂史紀さん (Shiki Okasaka) 的這篇 [ES operating system from Google Code] 講稿。主要內容是敘述 Nintendo ES 作業系統的設計。(您沒看錯,這真的是任天堂公司釋出的一個開放原始碼作業系統)

    摘錄幾個自己覺得有趣的地方:

    • Component operating system
    • It is not a goal building a simplified, decoupled UNIX implementation on top of the microkernel in the ES operating system. The primary goal has been making it possible for developers to easily create rich applications, like 3D games, using ECMAScript.
    • In ES, we want to provide more meaningful programming interfaces to the programmers from the kernel level, and we want to make the interfaces dynamically extensible.
    • Any component written for ES in C++ are simply accessible from the ECMAScript in ES.
    • If you have a great idea, please implement the most interesting part first, and demonstrate it, demonstrate your concept to the people.

    把 Web 直接拿到 OS 這層來做應用程式,這真的是我近期看過最有趣的作業系統設計。

  • 不曉得有沒有辦法推 XMLTV 讓電視台廣為採用

    不曉得有沒有辦法推 XMLTV 讓電視台廣為採用?如果可以的話,就可以把電視媒體納進來做 mash-up 的個人化節目表加值服務了。

    這麼做的話,就可以像 SongbirdmashTape 一樣,在曲目、節目播送時自動顯示演出者的簡介、維基百科條目、相關新聞等,還可以供人做精準的網路廣告投放啊啊啊。

    電視台老闆,商機、商機啊!

  • 把 Apache Cassandra 在 Ubuntu 9.10 & Ruby 1.9.2(-dev) 上跑起來

    因為 Ubuntu & Debian GNU/Linux 內的 /usr/include/string.h 不似 *BSD,沒有 strlcpy() 函數可用,但是 Ruby 1.9.2 又會自以為系統有這個函數,造成 gem install cassandra 時踩到雷(參考這裡),所以我用了很 dirty 的解法:

    (我的 Ruby 1.9.2dev 是裝在 $HOME 裡,以下提到的路徑請替換成您自己安裝 Ruby 的實際所在)

    1. 先安裝 libbsd-dev (sudo apt-get install libbsd-dev)
    2. 修改 lib/ruby/gems/1.9.1/gems/thrift-0.2.0/ext/struct.c,自己加上 #include <bsd/string.h>
    3. 改好之後直接 make 測試編譯,在此 compiler 應該已經不會抱怨 implicit declaration of function ‘strlcpy’
    4. 到上一層去 ruby ./setup.rb 手動安裝,之後 lib/ruby/site_ruby/1.9.1/thrift 應該要有相關檔案
    5. gem spec ../../cache/thrift-0.2.0.gem –ruby > ../../specifications/thrift-0.2.0.gemspec,做好這步後 gem list 應該會看到已安裝的 gems 裡頭有 thrift (0.2.0)
    6. 回頭再跑一次 gem install cassandra ,安裝過程應該會順利完成
    7. 接著跑 cassandra_helper cassandra,ant 編譯過程順利的話就會把 Cassandra 跑起來

    See also: up and running with cassandra :: snax

  • 人生頭一次在網路買過鹹水的書

    為了買這本 Designing Object-Oriented User Interfaces,一開始還在 Amazon 上碰壁、覺得見到鬼,繞好一陣子才知道上頭的二手書是不送國外的。之後在〈樂多欽城: 美國網站買二手書經驗談〉看到 Alibris 這個二手書仲介網站,終於在 Icapsa Used Books 找到一本書況還不錯的,而且還不到一個月就寄到了。