之前在 ubuntu 安裝 rvm/ruby/ror 碰了一鼻子灰, 停了好一陣子沒看 ruby 的東西。看到有本書提到 middleman, 就來玩玩看。
使用的 OS 是 Fedora 16, 原則上在安裝時都算順利, 只有在啟動 mm-server 時, 發生了 "no such file to load openssl error" 的問題無法正常啟動。
在 ruby 論壇找到解法 http://www.ruby-forum.com/topic/90083#1022143
rvm pkg install openssl
rvm remove 1.9.2
rvm install 1.9.2 --with-openssl-dir=$HOME/.rvm/usr
這個做法有個缺點, 因為一開始是用 root 安裝 rvm, 所以重新安裝 ruby 時也必須是 root 用戶安裝, 如此一來就不能在其他用戶使用了。
2012-02-27
2011-10-17
jsonTrace 小工具
QopDump 好像有不少人使用,但感覺還是不理想,於是利用 com.adobe.serialization.json package 和 JsonFormater 組合起來,弄了個 jsonTrace() 。
JSONTrace 專案位置在 https://github.com/shinder/JSONTrace
標頭定義為:
public function jsonTrace(rawObj:Object=null, noTrace:Boolean=false, noFormat:Boolean=false):String
參數:
JSONTrace 專案位置在 https://github.com/shinder/JSONTrace
標頭定義為:
public function jsonTrace(rawObj:Object=null, noTrace:Boolean=false, noFormat:Boolean=false):String
參數:
- rawObj : 所欲查看的物件 (主要類型為 Object 和 Array)
- noTrace : true 表示不 trace 輸出, 只回傳結果字串
- noFormat : true 表示不做 JSON 字串的對位格式
2011-10-02
Dropbox 邀請
Always have your stuff when you need it with @Dropbox. 2GB account is free!
立刻申請免費 2G 雲端空間
立刻申請免費 2G 雲端空間
2011-03-30
AS3-Signals 筆記
AS3-Signals 是 ActionScript 中替代 Event 系統的方案。使用 Event 就好了,為什麼還要 signal 呢?在某些專案需要自訂 Event,通常自訂 Event 必須定義一個繼承 Event 的新類別。為了多傳遞一個資料項而定義一個類別,感覺就很累贅。此時使用 signal 就顯得清新許多。
AS3-Signals 好用,但也有些缺點:
An introduction to AS3 Signals
as3signals – An Awesome Solution to Events/Signals in AS3
AS3-Signals 好用,但也有些缺點:
- 不能設定 useCapture。其實 Event 的這個功能,在專案上個人幾乎是沒用過,所以就顯得不重要了。若要用 useCapture 就使用 Event 吧。
- 不能設定 useWeakReference。據作者的說明,weak reference 有 bugs ,目前沒有將這個功能加入。視情況去 remove signal listener。
An introduction to AS3 Signals
as3signals – An Awesome Solution to Events/Signals in AS3
2011-02-22
2010-12-15
開發 CodeIgniter 時,NetBeans 的程式碼自動完成設定
CodeIgniter auto complete with Netbeans
原理是把以下的註解格式存成 php 檔,放置 nbproject 目錄內
原理是把以下的註解格式存成 php 檔,放置 nbproject 目錄內
/**
* @property CI_Loader $load
* @property CI_Form_validation $form_validation
* @property CI_Input $input
* @property CI_Email $email
* @property CI_DB_active_record $db
* @property CI_DB_forge $dbforge
*/
2010-11-30
MySQL 剔除某欄重複的資料
使用 GROUP BY:
SELECT * FROM `some_table` GROUP BY `some_field`
將結果寫入另一張表:
CREATE TABLE `tmp_table` AS (
SELECT * FROM `some_table` GROUP BY `some_field`
)
使用 DISTINCT 只能用於某一欄或著某些欄位:
SELECT DISTINCT `some_field` FROM `some_table`
SELECT DISTINCT `some_field`, `another_field` FROM `some_table`
SELECT DISTINCT * FROM `some_table` (含主鍵的話,此行無用)
另外,計算重複的個數:
SELECT *, count(*) FROM `some_table` GROUP BY `some_field`
SELECT * FROM `some_table` GROUP BY `some_field`
將結果寫入另一張表:
CREATE TABLE `tmp_table` AS (
SELECT * FROM `some_table` GROUP BY `some_field`
)
使用 DISTINCT 只能用於某一欄或著某些欄位:
SELECT DISTINCT `some_field` FROM `some_table`
SELECT DISTINCT `some_field`, `another_field` FROM `some_table`
SELECT DISTINCT * FROM `some_table` (含主鍵的話,此行無用)
另外,計算重複的個數:
SELECT *, count(*) FROM `some_table` GROUP BY `some_field`
2010-11-29
本機設定虛擬網域
在 Windows,修改下列的設定檔:
C:\WINDOWS\system32\drivers\etc\hosts
在 Mac,修改下列的設定檔:
/etc/hosts
在 Mac,用 TextEdit 的方式(使用 Terminal):
sudo -s
/Applications/TextEdit.app/Contents/MacOS/TextEdit /etc/hosts
內容格式為:
127.0.0.1 my_pseudo_domain.com
C:\WINDOWS\system32\drivers\etc\hosts
在 Mac,修改下列的設定檔:
/etc/hosts
在 Mac,用 TextEdit 的方式(使用 Terminal):
sudo -s
/Applications/TextEdit.app/Contents/MacOS/TextEdit /etc/hosts
內容格式為:
127.0.0.1 my_pseudo_domain.com
2010-11-22
在 PHP 中使用 SQLite3
很早就知道 PHP5 內建 SQLite 的功能,但是一直沒在 PHP 上使用 SQLite,原因無它「有 MySQL 幹嘛用 SQLite」。
Adobe AIR 上的是 SQLite3,Firefox 的外掛 SQLite Manager 也(只)支援 SQLite3,搭配起來還蠻方便的。
最近有個案子是要做多國語言的展示平台(當然是用 Flash 做囉),要讓管理人員(不會是我)上平台的內容。問題出在那台機器可能沒有網路,就算有網路,頻寬也可能會是個問題,所以要做單機的版本。
展示端無庸置疑 Adobe Flash/AIR 是個好選項,但內容管理用 AIR 就顯得麻煩。為了方便更新內容(拷貝/貼上),目前考慮使用 PHP + SQLite,而把 MySQL 排除在外。
PHP 目前最新的版本是 5.3.X,我租用的 PHP 空間為 5.1.6,雖然這個專案不會用到租用的空間,但為了可以通用,就會以 5.1.6 為預設版本。
用了 PHP5 的 SQLite 才知道原來它的版本是2。PHP 5.1.6 要使用 SQLite3 必須透過 PDO。PHP 5.3 之後的版本才有直接支援 SQLite3 的類別。SQLite2 有啥不好?其實沒什麼不好,只是個人用慣 SQLite Manager 了,而且用舊版心中總會掛念它是舊版,若要用新版的功能時,可能就悔不當初 :P
Adobe AIR 上的是 SQLite3,Firefox 的外掛 SQLite Manager 也(只)支援 SQLite3,搭配起來還蠻方便的。
最近有個案子是要做多國語言的展示平台(當然是用 Flash 做囉),要讓管理人員(不會是我)上平台的內容。問題出在那台機器可能沒有網路,就算有網路,頻寬也可能會是個問題,所以要做單機的版本。
展示端無庸置疑 Adobe Flash/AIR 是個好選項,但內容管理用 AIR 就顯得麻煩。為了方便更新內容(拷貝/貼上),目前考慮使用 PHP + SQLite,而把 MySQL 排除在外。
PHP 目前最新的版本是 5.3.X,我租用的 PHP 空間為 5.1.6,雖然這個專案不會用到租用的空間,但為了可以通用,就會以 5.1.6 為預設版本。
用了 PHP5 的 SQLite 才知道原來它的版本是2。PHP 5.1.6 要使用 SQLite3 必須透過 PDO。PHP 5.3 之後的版本才有直接支援 SQLite3 的類別。SQLite2 有啥不好?其實沒什麼不好,只是個人用慣 SQLite Manager 了,而且用舊版心中總會掛念它是舊版,若要用新版的功能時,可能就悔不當初 :P
訂閱:
文章 (Atom)