由一串「數字」轉換「字串」的方法

在 Ruby 中因為可以不用優先宣告資料型態,所以時常會讓程式搞不清楚哪些該是 String 與 Integer ,因此 Ruby 提供 to_s() 這個函數以供轉換。

狀況如下:
[cc lang=”ruby”]
$ irb
ree-1.8.7-2011.03 :001 > myval=101010;
ree-1.8.7-2011.03 :002 > myval[0]
=> 0
ree-1.8.7-2011.03 :003 > myval[0,1]
ArgumentError: wrong number of arguments (2 for 1)
from (irb):5:in `[]’
from (irb):5
from :0
[/cc]

由於要取其中的字串是要用於 String 的類型才能讓 Ruby 正確取得該值。然而我想要做的是我要把這一串數值依照我要的位置取得正確的值,比如說第一位數的 1 與 0 代表 A 功能項目的權限,第二位數代表 B 功能的權限。

使用 to_s 解決方案如下:
[cc lang=”ruby”]
ree-1.8.7-2011.03 :001 > myval=101010;
ree-1.8.7-2011.03 :002 > myval.to_s[0,1]
=> “1”
ree-1.8.7-2011.03 :003 > myval.to_s[1,1]
=> “0”
ree-1.8.7-2011.03 :004 > myval.to_s[2,1]
=> “1”
ree-1.8.7-2011.03 :005 > myval.to_s[3,1]
=> “0”
ree-1.8.7-2011.03 :006 > myval.to_s[4,1]
=> “1”
ree-1.8.7-2011.03 :007 > myval.to_s[5,1]
=> “0”
ree-1.8.7-2011.03 :008 > myval.to_s[0,6]
=> “101010”
[/cc]

因此就可以當作字串來依序取單一值了。

Ubuntu Server 關閉螢幕閒置功能設定方法

平常是用 VirtualBox 來摸擬架Server ,然後再用本機的 Term 去連VirtualBox的SSH ,然而視窗開著,它過一段就黑掉,實在是不習慣。

設定profile的檔案將powersave的功能關閉

[cc lang=”bash”]setterm -powersave off -blank 0[/cc]

開啟profile
[cc lang=”bash”]sudo vim /etc/profile[/cc]

將上頭的指令輸入於最後一行即可。

還有其它的設定,提供參考:

alias dir=’ls -al’ (微軟dos時期看硬碟有啥資料的指令)
alias cls=’clear’ (清除螢幕)
alias ping=’ping -c 10′ (ping IP是否透通,共10次)
alias bye=’sudo shutdown -h now’ (關機指令)
alias reboot=’sudo reboot’ (重新開機指令)
alias ipconfig=’ifconfig | head -n 19′ (觀看ip設定參數指令)
alias run=’chmod +x $1′ (賦予檔案執行權限指令)
alias tail=’tail -n 15 $1′ (看檔案內容後15行指令)
alias netstat=’netstat -an | head -n 15′ (觀看電腦所開啟的port,前15行)
alias useradd=’useradd -m -s /bin/bash $1′ (創造使用者指令)
alias userdel=’userdel -r $1′ (刪除使用者指令)
alias less=’less /etc/passwd |cut -d’:’ -f1|fmt -u ‘(觀看os現有的使用者清單指令)
alias delmac=’sudo rm /etc/udev/rules.d/70-persistent-net.rules’ (刪除MAC設定檔指令)
alias resetmac=’sudo /etc/init.d/networking restart’ (重啟網卡指令)
setterm -blength 0 -powersave off -blank 0 (關閉內建的螢幕保護程式指令)

svn update options

當下了一個svn的指令是要更新自己的工作複本,而且是團體寫code的時候,會出現以下的選項:

[cc lang=”bash”]
C:\workspace\test>svn up
Conflict discovered in ‘test.txt’.
Select: (p) postpone, (df) diff-full, (e) edit,
(mc) mine-conflict, (tc) theirs-conflict,
(s) show all options:
[/cc]

此時新手的我跟本不知道要按啥~~~~囧。

網路上有找到這樣的說明:

 (e)  edit             - change merged file in an editor
 (df) diff-full        - show all changes made to merged file
 (r)  resolved         - accept merged version of file

 (dc) display-conflict - show all conflicts (ignoring merged version)
 (mc) mine-conflict    - accept my version for all conflicts (same)
 (tc) theirs-conflict  - accept their version for all conflicts (same)

 (mf) mine-full        - accept my version of entire file (even non-conflicts)
 (tf) theirs-full      - accept their version of entire file (same)

 (p)  postpone         - mark the conflict to be resolved later
 (l)  launch           - launch external tool to resolve conflict
 (s)  show all         - show this list

 
我是台灣人啊 ~~~~~ 看不懂天書啦!!!(爆)

相關連結:SVN: How to resolve a conflict tutorial

哪些食物偷了你的睡眠

所有coding的工程師朋友們,平常在趕coding之外睡眠不足也是影響coding能力的最大因素,除了要三餐正常外也必需要有良好的睡眠品質,所謂睡在質不在量,睡太少跟太多都會影響coding的集中力,而且離家遠的朋友在上下班途中也很容易發生意外,所以睡眠一定很重要的,公司也必需要了解生產人力的狀況,整個產業才不會讓健康而向下沉淪。

在保健學術中,大家都所熟知「食療」是最好的人體復原療方,想要改善失眠或是睡眠品質不好的人更要參考,有病治病,沒病強身。

轉載自天下雜誌32期

  1. 咖啡一天不超過2杯,且避免在下午4點之後飲用。(我通常過中午就不喝)
  2. 每天飲酒不超過2杯,而且不要在上床前2小時內喝酒。(所以最好在六點時飲用,八點前完畢。以啤酒的標準最好900CC左右,紅酒250CC左右,高梁酒跟威士忌都要在60CC左右,最好以冰塊稀釋。)
  3. 晚餐不要吃太多,建議吃一些含蛋白質的食物,可以避免半夜太飢餓而醒來。
  4. 中午和晚上少吃會令人腹脹氣的產氣食物,並細嚼慢嚥,避免邊吃邊說話,吞入過多空氣。(吃三碗以上我會整天都在打飽噶)
  5. 晚餐少吃太鹹、太辛辣的食物。(就是吃清淡最好)
  6. 不要過度節食或劇烈地改變飲食習慣。(減肥的人就是敗在這裡,減肥減不好,睡也睡不好,睡眠不足會在隔天下意識的加強飢餓感,而讓減肥過程惡性循環)
  7. 睡前2小時吃點高碳水化合物、低蛋白質的點心助眠,例如1份水果加上全麥餅乾,熱量控制在200~300卡之間。(吃全麥土司最好,Gi值低於60,睡前吃二片會更好助眠)
  8. 如果高碳水化合物的食物對你不管用,不妨試一試老祖母的偏方,喝杯溫牛奶。(有些人有乳糖不適症,會落賽的不適用)
  9. 平日飲食要攝取足夠的維生素B群、鈣及鎂。如果要服用補充劑,請事先詢問醫師或營養師的建議。(柳橙、橘子、蘋果這些水果都是常見的,建議食用)
  10. 「晚餐及睡前少吃富含酪胺(tyramine)的食物,像熱狗、培根、巧克力及乳酪等,」台北醫學大學附設醫院營養師張皇瑜說,因為酪胺會刺激正腎上腺素分泌,使大腦神經亢奮,令人活力十足,這下想睡也很難。(這些東西本來晚上吃就很不好了)

Continue reading 哪些食物偷了你的睡眠

LibreOffice 同文件下直式橫式頁面並存

如果有個圖表是或是某個資料需要橫式的頁面,一般說來都要再開新檔再設定橫式,蠻麻煩的做法。其實江湖一點訣,兩鍵就搞定。

在「插入」、「手動換行」、「分頁」的樣式裡選取「橫向」。

安內丟A塞呀~

Mongo DB 工程師的香蕉芒果

這個標題的梗請參照這個連結,俺就不用多說。工程師平日忙於工作與電腦會很少三餐均衡,為了要提醒我們多吃水果,所以,不知道梗是啥的英文語系國家就偏偏把這個水果代號附加上自家的產品(例:微軟的智慧手機 Windows Phone Mango 7 )。芒果的英文叫做 Mango 而日文叫做 マンコ (日文意思請參考這個連結),所以這個 MongoDB 的取名應該是故意的吧!!XD

Mongo DB 是個目前所NoSQL大推的文檔式資料庫也是非關聯式的資料庫,為何需要用到文檔式的資料庫?跟關聯式的資料庫又是有什麼差別?

非關聯資料庫的出現不是為了取代關聯資料庫。具體的說,MongoDB 並不支援複雜的事務,只支援少量的原子操作,所以不適用於“轉帳”等對事務和一致性要求很高的場合。所以純粹是只做成消息發佈、留言板、計數器這一類的App就不必使用MySQL那樣大材小用。

Ubuntu的t安裝方式可以參考這裡

安裝過程很簡單,完成之後下指令mongo即可進入shell模式跟它玩玩。
[cc lang=”bash”]
$ mongo
MongoDB shell version: 1.8.2
connecting to: test
[/cc]
Continue reading Mongo DB 工程師的香蕉芒果

在MAC裡轉換編碼

中文最麻煩的就是要注意編碼,最常見的就是網頁設計,有的網頁從以前到現在就一直 BIG5 ,而在 PHP 寫的就要跟著一樣的編碼設定,在 $_REQUEST 才不會運作不正常。

在 Windows 有「轉碼器」可以用,在 Ubuntu 可以用 MadEdit 轉碼,在 Mac 裡很少 google 裡有這樣的資訊,所以聰明的 Mac 使用者就是打指令,好在的是它就內建 iconv 套件可以供招喚。

所以在你拿這個檔案要套用 UTF8 的網頁執行 PHP ,你可以這樣做;

打開終端機 (TERMINAL) ,然後輸入:

[cc lang=”bash”]iconv -f BIG5 -t UTF8 [你要轉的檔名] > [你要輸出的檔名][/cc]

簡單的步驟就不必用貴松松的 DreamWeaver 來轉換了~