Google自訂搜尋

目前日期文章:200609 (17)

瀏覽方式: 標題列表 簡短摘要
我絕對沒有唬爛
這件事情是真的
如果你有裝Rails
請開啟irb,依照下列步驟code

irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'active_support'
=> true
irb(main):003:0> puts 1.hours
3600
=> nil
irb(main):004:0> puts 1.minutes
60
=> nil
irb(main):005:0> puts 1.seconds
1
=> nil
irb(main):006:0> puts 1.years
31557600
=> nil
irb(main):007:0> puts 1.days
86400
=> nil
irb(main):008:0>

該死
這讓我回想起當初在寫PHP的Wretch Blog RSS Reader時,在判斷檔案建立時間的部份寫得多痛苦
這麼直覺化的東西.. 就算會讓我腦殘我也要去用.. Orz

嗯.. 要來寫個XMLBB嗎XD?

hechian 發表在 痞客邦 留言(0) 人氣()

嗯... 今天坐校車
內埔是最後一站,而我旁邊沒有人坐
等到了內埔,有個學妹沒有位子坐... 車長過來問了我一句...
"請問妳旁邊有人坐嗎?"
我看了旁邊一眼,然後把書包拿起來說沒有...
這時我心理想著...


(終點站,已經不會有人上車了.. 這句話會不會是白問的=  =" 我想她應該是想問"這邊可不可以坐?" XDDDDD)

hechian 發表在 痞客邦 留言(4) 人氣()

Rails在你用scaffold建立時,會幫你建立分頁
但是這個分頁感覺沒啥用...

in your controller...

def list
  @user_pages, @user = paginate(:user, :per_page => 10)
end

In fact...
非常不堪用=  =
一般來說,我有10筆資料,per_page設定成2
應該要分成五頁(這有做到),然後照順序排

如果說,我在list.rhtml內寫著

<% @user.reverse.each do |x| %>
  <%= @user.username %>
 

  <%= pagination_links(@user) %>
<% end %>

errr.. I'm sorry.. 失敗!

怎麼說呢?分頁的確是產生了.. but!!!
10
9
8
7
6
5
4
3
2
1
這是原本的順序
第一頁要有10跟9
第二頁要有8跟7
可是卻沒有..
變成第一頁2跟1
第二頁4跟3..

是我作錯了還是怎樣?

======
補充:


剛想到,或許@user這邊.. 必須要reverse一下再傳?
也許這樣就可以了...

不過昨晚沒有睡.. 整晚在寫Private Message System..
算了.. 先去躺一下="=

養肝千日,爆在一時...

hechian 發表在 痞客邦 留言(4) 人氣()

妳是我第一個看過最噁心的人
先是說妳開餐廳
後來又說結婚
然後最後跟我說沒錢
再來是跟老公分手(結婚還有分手的嗎?
再來又說妳有了寶寶,是幸福的小媽媽
然後說一個長得不怎樣的人是妳的帥老公
接著在弄出跟以前不一樣的人說那是妳拍的藝術照
故意點破一點還給我硬凹說以前的是別人..
但也許妳忘了

妳給我看過妳的視訊...

hechian 發表在 痞客邦 留言(2) 人氣()

上Data Structure時,很不巧的老師說要用Java
hmmm... 心裡一個字浮現,倉頡碼是"十十人一十"
好吧,認了...
結果老師用VB讓我們重新熟悉一下寫程式的Fu~
yeah... 對我來說,多此一舉...
但我還是乖乖的開了VB要寫程式
結果... OX.,VB不能開XDDD
只好ssh回家用Ruby寫
結果老師居然知道那是Ruby... Orz

從此,我們知道
大仁在9/20多了一個知道Ruby的老師拉XDDDD
哦?今天寫啥程式喔...

puts (gets.to_i * (9.0 / 5.0) + 32)

OK.. 程式碼就這樣XD

hechian 發表在 痞客邦 留言(2) 人氣()

葛力~ 葛力~ 葛力葛力葛力~ 好吃拉XD... 不對= ="
各位Google Fans + 黑咪飯團重度愛好者們,現在HEMiDEMi推出Google Gadget拉!!!
所以可以很方便的就在Google個人化首頁或者Google Desktop上使用喔!
那說得這麼好聽,到底要怎樣加入呢?
來來來,網址底加拉!!!
請按此
預設只會顯示3個書籤,請加入後按下編輯改成9個(最多只能9個了....)

有任何問題記得回覆一下唷!

hechian 發表在 痞客邦 留言(0) 人氣()

微軟阿... 你不是在作什麼WGA嗎?
那沒有用拉!
快點,讓所有盜版電腦全部報銷!
快快快~

剛看到一句話..
"我朋友說的好, 現在叫他們改用自由軟體, 沒人理你, 改天微軟開始全面封鎖盜版電腦時, 就等著向朋友收諮詢費吧! "

我剛好缺錢,你快點讓所有盜版系統都掛掉
這樣我才方便推廣Linux + 收服務費
而且我一定會收錢!

微軟,算我求你了..

hechian 發表在 痞客邦 留言(4) 人氣()

I don't know what's wrong..
But I'm closing..
I'm afraid lots of things...
And.. afraid you will leave me alone...

I'm praying the day will never come... but I don't know it that helpful?

Praying you will never go..

#!/usr/bin/env ruby

str = "axdI   asljaoalvjse   sayseojlu".chomp
puts str
3.step(str.size, 3){ |i|
  puts "#{i}: " + str[i, 1].to_s
}

hechian 發表在 痞客邦 留言(0) 人氣()

媽的... 當中國人最爽的一件事情就是可以享受中文的奧妙
X仔隊!跟X一樣,聞到什麼就衝去那邊翻垃圾,可以吃的吃,不可以吃的就硬把它弄成可以吃的
不給吃的就逼,沒有逼成功就亂說,活像條X!
每次都成群結隊出動,跟狼群一樣!
別的國家是人,偏偏台灣的都是X
然後跟某種叫作X察的生物合作,X察說啥,你們就寫啥
然後再開始發揮你們幹他媽沒有細胞的腦,想一些根本就沒有的東西寫上去
科技資訊,啥都不懂,寫得很像很厲害很懂一樣
普普技術,還可以寫出什麼史上最強,強你他媽的一陀屎!
幹,怎不要寫完吃下去?

逼人家下跪,不讓人家走
幹!你們誰?路你們家開的嗎?
如果那條路是你們打槍射出來的ㄒㄧㄠˊ形成的,我連過的意願都沒有
到時候要管那是你們家的事

幹!台灣真是人才輩出
怪事平常有有,七月總是最多!
糗事各國都有,台灣天天都出!

hechian 發表在 痞客邦 留言(0) 人氣()

操!
幹你媽的!倒酒的有比較屌嗎?
不去打手槍幹老婆,在那邊抓,抓三小?
你們除了抓,不會幹點有意義的事情嗎?
不要說上頭怎樣怎樣!
那個名字叫打泡的,很屌嗎?副組長而已,很強嗎?
幹上司老婆第二名,才當副組長是嗎?
還是射得比較少?

外面在倒扁,幹嘛不要跟著去?
不都是政府的狗嗎?
主人去當然你們要去幫忙阿!
幹!政府的走狗!

來抓我阿!說我未成年看A片打手槍阿!
幹!

hechian 發表在 痞客邦 留言(2) 人氣()

就在剛剛,我終於終於終於終於終於找出為什麼會出現錯誤的原因了
原因就是,幹!lib/底下少兩個檔案!
1. authenticated_system.rb
2. model_extensions.rb

剛剛跑去svn,也沒看到這兩隻檔案
hacking code也沒看到會產生這兩隻檔案
generate後,也沒產生這兩隻檔案!!!!!

不知道是Bill Katz有改版還是怎樣
他的sample抓下來,跟他release的版本,好像有些許不同?
吼!


in app/controller/applications.rb:

class ApplicationController < ActionController::Base
  include AuthenticatedSystem
end

要使用必須加上這個
沒有加的話,會產生undefined local variable or method
加上去,少了authenticated_system.rb的話
會產生uninitialized constant AuthenticatedSystem什麼的

真是該死
終於好了..
開始開發拉XD
不過得先去睡覺...

Night all...

For piggy:
  別太傷心拉... >"<

hechian 發表在 痞客邦 留言(0) 人氣()

我好像有蠻多問題的... 囧
全文轉貼至:http://blog.xuite.net/gmi279/ourbaby/7949932

知識分子「英年早逝」問題,一直受到社會各界的廣泛關注。一代精英因過勞累而英年早逝,對家庭,對社會都帶來了巨大的損失。同時,也為中年人過度透支,拉響了要關注身體健康的警報。

   「過勞死」即過度勞累導致的死亡。國際定義「過勞死」是因為工作時間長,勞動強度加重,心理壓力大,存在精疲力竭的亞健康狀態,由於積重難返,將突然引 發身體潛在的疾病急性惡化,救治不及時而危及生命。據報導:日本每年約有1萬人因過勞而猝死。猝死又稱急死,醫學定義為:1小時內不明原因的突然死亡都屬 於猝死。相當一部分人是在睡眠中發生,尤其是凌晨2點~4點,其中80%的人都是由於心臟問題引起的。「過勞死」和「猝死」發生病因和時間上有所不同。 「猝死」發生從出現不適到死亡的時間非常短,而「過勞死」可能因心血管疾病或是腦出血引起,它不是短時間突發,通常會持續一段時間或幾小時甚至幾天。「過 勞死」和「猝死」發病都有提前預知症狀,遺憾的是被眾多的發病者所忽視。「過勞死」和「猝死」一般在發病前都會有短暫的胸前區劇烈疼痛的心絞痛的典型症 狀,或是覺得咽部哽噎不適,吞東西費力;還有人會有伴有出汗,出現3~5分鍾的胸悶,最常見的預兆是渾身無力,胸悶。而這些症狀常被中年人所忽視,尤其是 有心血管疾病自己不知道。更多的中年人則認為身體好,即使過度透支體力偶感不適,認為休息一下便沒事了,殊不知這些疾病先兆被疏忽,使之付出了生命的慘重 代價。

  所以,定期健康體檢對於中年人來說並不是一件多餘的事,並且工作、學習要勞逸結合,避免過度勞累。「過勞」的表現主要是不能安靜下來,日常有慢性致病因素積累而難以消除,也不易用咖啡等興奮劑緩解,尤其應引起大家注意的是:「過勞」是疾病的前奏。

  研究者認為:在這27項症狀和因素中佔有7項以上,即是有過度疲勞危險者,佔10項以上就可能在任何時候發生「過勞死」。同時,在第1項到第9項中佔兩項以上或者在第10項到18項中佔3項以上者也要特別注意,這27項症狀和因素分別是:

  1.經常感到疲倦,忘性大;

  2.酒量突然下降,即使飲酒也不感到有滋味;

  3.突然覺得有衰老感;

  4.肩部和頸部發木發僵;

  5.因為疲勞和苦悶失眠;

  6.有一點小事也煩躁和生氣;

  7.經常頭痛和胸悶;

  8.發生高血壓、糖尿病,心電圖測試結果不正常;

  9.體重突然變化大,出現「將軍肚」;

  10.幾乎每天晚上聚餐飲酒;

  11.一天喝5杯以上咖啡;

  12.經常不吃早飯或吃飯時間不固定;

  13.喜歡吃油炸食品;

  14.一天吸菸30支以上;

  15.晚上10時也不回家或者12時以後回家佔一半以上;

  16.上下班單程佔2小時以上;

  17.最近幾年運動也不流汗;

  18.自我感覺身體良好而不看病;

  19.一天工作10小時以上;

  20.星期天也上班;

  21.經常出差,每週只在家住兩三天;

  22.夜班多,工作時間不規則;

  23.最近有工作調動或工作變化;

  24.升職或者工作量增多;

  25.最近以來加班時間突然增加;

  26.人際關係突然變壞;

  27.最近工作失誤或者發生不和。

  針對如何擺脫過度疲勞,一些專家開出如下處方:

  消除腦力疲勞法:適當參加體育鍛鍊和文娛活動,積極休息。如果是心理疲勞,千萬不要濫用鎮靜劑、安眠藥等,應找出引起感情憂鬱的原因,並求得解脫。病理性疲勞,應及時找醫生檢查和治療。

  飲食補充法:注意飲食營養的搭配。多吃含蛋白質、脂肪和豐富的B族維生素食物,如豆腐、牛奶、魚肉類,多吃水果、蔬菜,適量飲水。

  休息恢復法:每天都要留出一定的休息時間。聽音樂、繪畫、散步等有助解除生理疲勞。

  科學健身方法:一是有氧運動,如跑步、打球、打拳、騎車、爬山等;二是腹式呼吸,全身放鬆後深呼吸,鼓足腹部,憋一會兒再慢慢呼出;三是做保健操;四是點穴按摩。

 

hechian 發表在 痞客邦 留言(0) 人氣()

說真的... 真的很感慨
在一堆人擁護微軟的同時
有沒有想過,OpenSource帶來的效益是什麼?
看過我其他的文章的人,應該知道
我以前玩過VB
後來走向PHP,玩PHP跟PHP/TK PHP/GTK
也走過Perl,Perl/tk
後來再走向Ruby(其實我摸Ruby比摸PHP早,只是Ruby在之前很少關心)
現在沈浸在Ruby內,不可自拔XD

不要拿OpenSource的東西文件很少來搪塞,來當作是理由
OpenSource的文件為什麼少?不!它根本就不少!相反的還有可能多!
之前回去以前的高中,跟電腦老師聊了一下
他說,微軟的文件很多阿
可是我反駁:"中文文件多,不代表文件多,相反的,Linux在網路上隨便Google都是文件"(當時在談Linux)

我相信在短期內(至少這幾年內)英文文件絕對更新得比中文文件快!
而身為一個開發人員,看英文是在所難免的!
接觸OpenSource,你可以得到更多的東西!
看看Rails,跟任何一個東西比起來,生產力我相信一定最高
你還可以隨心所欲的去改它的原始碼,變成最適合你的工具
PHP可以,JSP呢?ASP?ASP.NET?

現在,Nitro!,這是影片:http://www.nitroproject.org/videos/nitro.html

Nitro又更加簡單!
我相信Ruby on Rails影響到很多人
cakePHP、Nitro等等好用的工具都出來了
這些,全部都是Open Source的產物
然後,Nitro這麼棒!DHH(Rails的作者)有可能坐以待斃嗎?NO!我相信他會去翻Nitro的Source,然後在未來的版本作更新!
因此,Nitro也有可能在Rails中看到影子!
不過我相信多少有些.. Nitro出來也有段時間了(晚Rails兩個月多吧?)

Ubuntu Linux出來之後
又多了Kubuntu、Edubuntu、Xubuntu
還有其他的
而我之前原本打算向Ubuntu-TW的Leader:BlueT尋求協助
製作Rubuntu (Ruby Ubuntu)
可是... 我還沒來得及跟BlueT說這件事情,剛剛在Railscn的Gtalk群組上有人發了這個Link:http://brainspl.at/articles/2006/02/16/rubuntu-is-almost-born
我暈了...=  =

不過,這也印證了Open Source的好處
好在哪?好在我可以自由的做出、分享適合我的東西!
好在我可以讓我工作方便的東西!
好在.. 這個社會可以透過Open Source的截長補短的能力不斷進步!

hechian 發表在 痞客邦 留言(0) 人氣()


hechian 發表在 痞客邦 留言(0) 人氣()

這次的這個版本,則是將 "最新書籤(整個網站)", "使用者最新書籤", "群組最新書籤" 3個合併囉
也就是說,使用者只要下參數,就可以抓到資訊了!
參數:

$ ruby ./recent.rb [要抓的資訊] [要顯示的書籤量] [名稱]

* 整個程式省略掉參數的話,就是整個網站的最新書籤

要抓的資訊:
  0: 整個網站的最新書籤
  1: 使用者最新書籤
  2: 群組最新書籤

這個版本還沒有Method overload... 因此沒有辦法省略掉其中的幾個參數..
未來版本會修正這個問題
程式碼如下:

#!/usr/bin/env ruby
# Code by CFC Zuso Security
# # Taiwan Ruby Users Group: http://www.ruby.oss.tw/
# # Rails Taiwan: http://www.rubyonrails.org.tw/
#
# Hemidemi bookmarks loader: Ver. 0.0.0.2 Beta
#
#==========
#
# 1. Recent: http://www.hemidemi.com/rss/bookmark/recent.xml
# 2. User's recent: http://www.hemidemi.com/rss/user/#{@usr_name}/bookmark/recent.xml
# 3. Group's recent: http://www.hemidemi.com/rss/group/#{@grp_name}/bookmark/recent.xml
#
#==========
#

require 'rexml/document'
require 'open-uri'
include REXML

class Recent
  def initialize(opt, count, name)
    case opt.to_i
      when 0
        @url = "http://www.hemidemi.com/rss/bookmark/recent.xml"
      when 1
        @url = "http://www.hemidemi.com/rss/user/#{name}/bookmark/recent.xml"
      when 2
        @url = "http://www.hemidemi.com/rss/group/#{name}/bookmark/recent.xml"
      else
        @url = "http://www.hemidemi.com/rss/bookmark/recent.xml"
    end
    @channel = @channel || {}
    @items = []
    if count == nil
      @count = 6
    else
      @count = count.to_i
    end
  end

  def run
    load_in
    show
  end

  def load_in
    open(@url) do |f|
      xml = Document.new(f.read)

      xml.elements.each("*/channel") do |chnl|
        @channel["name"] = chnl.elements["description"].text
        @channel["link"] = chnl.elements["link"].text
      end

      xml.elements.each("*/channel/item") do |item|
        itm = {}
        itm["title"] = item.elements["title"].text
        itm["description"] = item.elements["description"].text
        itm["link"] = item.elements["link"].text
        itm["creator"] = item.elements["dc:creator"].text
        @items << itm
      end
    end
  end

  def show
    line = "=" * 100
    puts @url
    puts line
    puts "#{@channel["name"]} [ #{@channel["link"]} ]"
    puts "共有#{@items.size}個書籤"
    puts line
    @count = @items.size if @items.size < @count
    @count.times { |cnt|
      puts "張貼者:#{@items[cnt]["creator"]} [ http://www.hemidemi.com/user/#{@items[cnt]["creator"]}/home ]"
      puts "標題:#{@items[cnt]["title"]}"
      puts "網址:#{@items[cnt]["link"]}"
      puts "敘述:#{@items[cnt]["description"]}"
      puts "-"*10
    }
    puts line
  end
  public :run
  private :load_in, :show
end

rss = Recent.new(ARGV[0], ARGV[1], ARGV[2])
rss.run

下載點:
http://stmail.tajen.edu.tw/~593092514/recent.rb

hechian 發表在 痞客邦 留言(0) 人氣()

哇哇哇
http://flickr.tw的站長推出這麼棒的Hemidemi hacking...
只是小弟遜咖,沒辦法像他那樣>"<
好吧.. 我只好寫個個人用的小工具

這個程式是適用於群組的,一般來說群組都會有最新書籤,而這個是將最新書籤印出來的..
程式只能跑在純文字模式下.. 輕巧咩~另外網管如果沒有在管沒有X Window的主機時,也可以用這個拉!
Usage:
$ ./grp_recent.rb group_name [count]
Options:
    * group_name: 沒錯!就是群組名稱!
    * count: 可省略參數,用於顯示幾個書籤(從最新的開始算起,預設是6個)

程式碼如下:
#!/usr/bin/env ruby
# Code by CFC Zuso Security
# Taiwan Ruby Users Group: http://www.ruby.oss.tw/
# Rails Taiwan: http://www.rubyonrails.org.tw/
#
require 'rexml/document'
require 'open-uri'
include REXML

class Recent
  attr_accessor :grp_name, :channel, :items

  def initialize(grp_name, count)
    @grp_name = grp_name
    @url = "http://www.hemidemi.com/rss/group/#{@grp_name}/bookmark/recent.xml"
    @channel = @channel || {}
    @items = []
    if count == nil
      @count = 6
    else
      @count = count.to_i
    end
  end

  def run
    load_in
    show
  end
  def load_in
    open(@url) do |f|
      xml = Document.new(f.read)

      xml.elements.each("*/channel") do |chnl|
        @channel["name"] = chnl.elements["description"].text
        @channel["link"] = chnl.elements["link"].text
      end

      xml.elements.each("*/channel/item") do |item|
        itm = {}
        itm["title"] = item.elements["title"].text
        itm["description"] = item.elements["description"].text
        itm["link"] = item.elements["link"].text
        itm["creator"] = item.elements["dc:creator"].text
        @items << itm
      end
    end
  end

  def show
    puts "="*10
    puts "群組:#{@channel["name"]} [ #{@channel["link"]} ]"
    puts "共有#{@items.size}個書籤"
    puts "="*10
    @count = @items.size if @items.size < @count
    @count.times { |cnt|
      puts "張貼者:#{@items[cnt]["creator"]} [ http://www.hemidemi.com/user/#{@items[cnt]["creator"]}/home ]"
      puts "標題:#{@items[cnt]["title"]}"
      puts "網址:#{@items[cnt]["link"]}"
      puts "敘述:#{@items[cnt]["description"]}"
      puts "*"*10
    }
    puts "="*10
  end
  public :run
  private :load_in, :show
end

rss = Recent.new(ARGV[0], ARGV[1])
rss.run


下載點:http://stmail.tajen.edu.tw/~593092514/grp_recent.rb

hechian 發表在 痞客邦 留言(0) 人氣()

原文章轉至:http://lightyror.blogspot.com/2006/09/ruby-syntax-suger.html
 

剛剛正在寫一個計算 apache 有多少 process 的 Ruby Script


`ps auxw | grep apache `.split("\n").each do |line|
user,pid,cpu,mem,vsz,rss,tty,stat,start,time,command = line.split("\s")
process_count += 1 if command == '/usr/sbin/apache'
end


注意這一段
user,pid,cpu,mem,vsz,rss,tty,stat,start,time,command = line.split("\s")
寫完之後,興奮之情仍然無法消去
平行 asignment 雖然被人稱為是 syntax suger
但是這樣的 syntax suger 可以很有效的幫助 programmer 整理邏輯
而這樣的寫法,以後我要做什麼擴充像是 user = 'abc' 都很方便
也不用重新查一次 ps 的排列順序

誰說 syntax suger 不重要的


==========
底下是心得
==========

嗯..
簡單的說
我可以偵測CPU使用率,過高的就`kill -9 #{pid}`
對於系統管理員來說,無疑是極大的方便阿!!

hechian 發表在 痞客邦 留言(0) 人氣()