0%

常言道 V8 超快 XD

所以心中一直有疑惑,到底是快到哪裡去 = =

node.js 真的有比其他的快嘛?

所以做了一點小實驗

比較 node.js 跟 php 的 performance

閱讀全文 »

好像不用 node.js 寫一些小東西感覺不出來他的威力 而且小郭說每次 Demo 都用 Hello World!

所以決定動手寫一個小小的留言板

搭配的 Framework 有 Express CoffeeScript Jade Stylus

這些 Framework 功能如下

  • Express : 是 node.js 的 Web Framework
  • CoffeeScript : 是快速產生 Javascript 的好物!
  • Jade : HTML 的 Template Engine
  • Stylus : dynamic stylesheet 簡單的語言產生 css

功能有

  • 新增留言
  • 修改留言
  • 刪除留言

Demo site 在 Cloud Foundry


是透過 VMware 的 Cloud Foundry 執行的

Source Code 在 GitHub


以下是說明
閱讀全文 »

Node.js 可以說是今年蠻具有話題性的 server side 技術

在官方網頁上可以看到大大的 Evented I/O for V8 JavaScript

簡單來說她利用了 V8 Javascript Engine 的高速性能 加上了 non-blocking I/O 造就了特殊的程式樂趣

沒想到 javascript 除了 client 端 也可以寫 server 端的程式

原生的 node.js 就可以產生 server

不過當然搭配一些 framework 會讓我們寫程式更輕鬆啦

目前跟 node.js 搭配的 framework 有三種

1. Express
主要提供 view helper 跟 routing
2. Jade
是一個 html 的 template engine 可以減少很多寫 html 的工
3. Stylus
類似 ruby 的 Sass 可以用來快速產生 css

閱讀全文 »

話說十天前看到了 Cloud Foundry 的網頁 可以 Request an invite account 當下馬上就申請了一個 XD

他的特色是… 就是 VMware 的雲 沒了! 屬於 PaaS (Platform as a Service) 最大的特色應該算是他們強調是 Open 的 (Open Source !) 主要是社群維護 cloudfoundry.org Source Code 在這裡 不過在 VMware 的平台(cloudfoundry.com)上營運要付錢 所以免費版就是下載回去自己架起來 XD (目前是 Beta 一切免費!)

目前支援 Java, Ruby, Node.js (via FAQ)

資料庫選擇有 MongoDB、MySQL和Redis

Java 的話可以搭配 Spring 或其他 JVM 可以吃的 framework

Ruby 可以選用 Rails 或者 Sinatra (沒玩過 Sinatra 可是看起來好像很簡單耶)

Node.js 則可以原生就可以支援或者搭配 expressnpm 的 bundle

然後九天後…也就是昨天晚上就收到通知信啦!

今天早上馬上來試玩一下

以下是小小小小小小試玩心得
歡迎切磋指教 :P

閱讀全文 »

dmg (Disk iMaGe) 可以說是 Mac OS X 最常見的磁碟影像檔

但是在其他的作業系統似乎 iso 更常見

而 Mac 本身就提供了 iso 轉檔的功能 指令如下

閱讀全文 »

一 講完了 trac 與 moinmoin 之後

二 這篇要講的是有關 svn

敝單位有使用 LDAP 當做帳號管理

所以要走 ssh+svn 的話首先要建立 LDAP 的認證機制

因為是用 SLES 所以設定也不難 用 yast 建立就好了

閱讀全文 »

最近在搬移 trac, moinmoin wiki 與 svn server 這篇文章記錄一下過程

原本的舊 server 是跑 apache

由於新的 server 是 VM 所以我覺得選用比較 light weight 的 nginx 似乎比較好

首先先講解在新的 server 重新建立環境

1. nginx 的安裝


首先到 nginx 下載頁 下載 (BTW 今天剛好釋出 1.0 萬歲)
閱讀全文 »

在 Google Page Speed 的要點裡 有提到 減少要求 request 的數量
這樣的話會有兩種作法

  1. deploy 時合併成一支大的 .js
  2. 透過 php 把要求的 js 合併一次傳送出去

但是前者失去了彈性,假設我們有十種不同的元件( js 檔),因為不是每次都需要這十種元件的功能,所以不可能每次都 loading 這十隻,如果要選擇性的 loading 就要把全部的組合都合併出來,這樣的排列組合未免也太恐怖了。

因此實務上會寫一支 php (姑且稱之 combo loader),透過傳遞不同的 js 元件需求,這隻 combo loader 可以輕鬆的組合出想要的元件。並且可以把合併的結果 cache 起來,下次遇到一樣的需求就不必再重新組合了。

因此程式碼大概會長這樣。
閱讀全文 »

最近敝單位在更新一些機器,長官決定採用 SLES (SUSE Linux Enterprise Sever)

不過我最熟悉的其實是 Gentoo 對於其他 distro 像 SLES, Ubuntu 之類的都不熟

所以大概花了一整個禮拜在研究 SLES (目前最新的是 SLES 11 service pack 1)

其實最大的問題在於軟體 (software) 的處理不同

Gentoo 的 portage system 實在太強大,從版本控制到 USE 控制哪些小功能要編入

而 SLES 因為是 rpm based 的系統,而且 Enterprise Server 版似乎又很保守,一堆套件不是舊就是根本沒有 囧mm

所以只能自己找 repository 了

以下是新增 repository 的方法

閱讀全文 »

要讓比方說 Safari, MailPlane 或 CSSEdit 吃 Webkit 的核心的話其中一種方法是從終端機打開
如以下設定

export DYLD_FRAMEWORK_PATH=/Applications/WebKit.app/Contents/Frameworks/10.6/
export WEBKIT_UNSET_DYLD_FRAMEWORK_PATH=YES
open /Applications/blahblah.app

即可
可是要從終端機太麻煩了對吧
Mac OS X 提供更方便的方式讓全系統都套用

閱讀全文 »