Posted by Revolution
Tue, 29 Apr 2008 07:04:00 GMT
I monitor this application typo 5.0.2 consume too much memory about 50 – 80 MB which full feature. So i will try to make lite version for typo because I still like it. By the way, If my try is not successful, I will make my own blog system
มันกิน mem มากเหลือเกินไม่ไหว ถ้ามีโอกาศ จะลองทำแบบ lite ดู แต่ถ้าไม่ได้ลองเขียนใช้เองแล้ว ไม่ไหวเปลือง
Posted in ruby | Tags rails, ruby, typo | no comments | no trackbacks
Posted by Revolution
Mon, 28 Apr 2008 06:52:00 GMT
วิธีลง จาก ThaiLinuxPDA.COM
MPKG Installer คือตัวติดตั้งโปรแกรมต่างๆแบบที่มาในไฟล์นามสกุล mpkg (.mpkg) สำหรับ E680i
การติดตั้ง MPKG Installer ทำได้โดย
- ลง LinLoader ก่อน
- แตกไฟล์ออกจะได้ mpkg.lin และ MPKG.mpkg นำไปไว้ในโทรศัพท์
- จิ้มที่ไฟล์ mpkg.lin 1 ที รอจนได้ยินเสียงคนจีนพูด
- restart เครื่องใหม่ หรือเปลี่ยนลำดับไอคอน แล้วไอคอน mpkg จะออกมาครับ ลบไฟล์ดอกไม้ทิ้งด้วยครับ
การติดตั้งโปรแกรมต่างๆ (.mpkg) ด้วย MPKG Installer ทำได้โดย
- เปลี่ยนนามสกุลไฟล์จาก .mpkg เป็น .pkg
- ในการติดตั้งครั้งแรกให้จิ้มค้างที่ไฟล์แล้วเลือกเปิดด้วย mpkg installer (ไอคอนรูปคอม) และติกที่ใช้โปรแกรมนี้เปิด แล้วตกลง
- ในครั้งต่อๆไปจิ้มที่ไฟล์ .pkg ได้เลยรอจนมีเสียงคนจีนพูด
- restart เครื่องใหม่ หรือเปลี่ยนลำดับไอคอน แล้วไอคอนโปรแกรมที่เราลงจะออกมาครับ
การลบโปรแกรมที่ติดตั้งด้วย MPKG Installer
- จิ้มที่ไอคอน MPKG Installer (รูปคอม) จะได้ไฟล์ชื่อ mpkg ในตัวเครื่อง (diska)
- เปลี่ยนชื่อไฟล์จาก mpkg เป็น mpkg.txt
- เปิดดูในไฟล์ mpkg.txt จะมีรายชื่อโปรแกรมทั้งหมดที่ลงด้วย MPKG Installer ไว้
- ลบชื่อโปรแกรมออกโดยให้เหลือเฉพาะโปรแกรมที่ต้องการลบไว้ และบรรทัดแรกให้เว้นว่างไว้
- หลังจากแก้ไขไฟล์ mpkg.txt แล้ว ให้จิ้มที่ไอคอน MPKG Installer อีกครั้งเพื่อยืนยันการลบโปรแกรม
- รอจนมีเสียงพูดแปลว่าลบโปรแกรมเสร็จเรียบร้อยแล้วให้ restart เครื่องใหม่ เป็นอันเรียบร้อย
Posted in linux | Tags linux, mobile, motolora | no comments | no trackbacks
Posted by Revolution
Fri, 18 Apr 2008 07:35:00 GMT
Now Speedthai Rails hosting in Thailand switch from Fcgid to Passenger (mod_rails) which consume less memory and better performance
ตอนนี้ Speedthai Rails Hosting ในประเทศไทยได้เปลี่ยนจาการใช้ fcgid ไปเป็น Passenger (mod_rails) ที่มีประสิทธิภาพดีกว่าและยังบริโภคแรมน้อยกว่า
อยู่ในขั้นทดสอบ
Posted in ruby, linux | Tags debian, linux, mod_rails, passenger, ruby | no comments | no trackbacks
Posted by Revolution
Mon, 24 Mar 2008 13:40:00 GMT
พักนี้หลายคนคงได้ฟังข่าวเกี่ยวกับทิเบต และก็อาจจะทำให้คิดได้ว่าจีนมันช่างโหดร้ายอะไรเช่นนี้ ผมเองก็มีความคิดบ้างพอสมควร ก็เลยไปลองหาข้อมูลมาได้ดังนี้
แต่ก่อนทิเบตถูกปกครองโดยชนชั้น 3 ชนชั้น ได้แก่ กะสัตว์ ลามะ และขุนนาง ซึ่งเรียกได้ว่าเป็นชนชั้นปกครองและมีชาวนา, พ่อค้า, และผู้ใช้แรงงานเป็นคนชนชั้นล่าง โดยมีระบบศักดินาเป็นการปกครองโดยไม่มีทาส (หรืออาจจะมีก็ไม่ทราบ) ชนชั้นปกครองก็จะมีที่นาเป็นของตัวเองแต่ไม่ต้องลงมือทำเอง (อาจเดาได้แล้ว) คือให้พวกชาวนามาเช่าที่นาเอาไปปลูกข้าวแล้วแบ่งผลประโยชน์กัน ผมสมมุติว่าเป็น 70:30 คือให้ชาวนา 70 เจ้าของที่ 30 ซึ่งมันก็ดูพอไปไหว แต่มันเกิดเหตุการตามระบบ คือความต้องการที่และจำนวนที่ มันมีจำกัด ทำให้อัตราการต่อรองสูงถึง 60:40 หรือมากกว่านั้น เจ้าของที่เองก็ต้องการเงินมา ขณะที่ชาวนาก็ต้องเลี้ยงชีวิต จึงต้องจำทนกันต่อไป
เหตุการณ์ที่มันระอุคือความไม่พอใจในชนชั้นล่าง คือมันเริ่มไม่พอเลี้ยงตัวเอง มันก็เลยเกิดความรู้สึกที่ไม่เป็นธรรม (ที่จริงผมก็ไม่เคยหาเจอ) กรอบกับจีนก็เข้ามาเสนอทางเลือกให้คนทิเบตเอง ซึ่งในขณะนั้นมีลามะ 2 คน สายแรกมาจากชนชั้นปกครอง ไม่สนับสนุนให้ทิเบตเปลี่ยนการปกครอง ส่วนอีกสายมาจากไหนก็ไม่ทราบแต่เป็นผู้นำให้เปลี่ยนการปกครองแต่มาตายหลังการลงคะแนน
การลงคะแนนให้เปลี่ยนระบอบการปกครอง ก็คงเดากันได้ คนส่วนมากที่โดนกดขี่มานานก็ย่อมต้องโหยหาความเท่าเทียม ดังนั้นระบอบการปกครองแบบคอมมิวนิสต์คือคำตอบในขณะนั้น จีนก็จะเข้ามาแบ่งสรรปันส่วนให้ทุกคนสามารถทำมาหาเลี้ยงชีพเองได้ แล้วจะเอาที่ดินมาจากไหนล่ะ? แน่นอนก็ต้องเอามาจากชนชั้นปกครองเดิม ก็เลยทำให้ชนชั้นปกครองไม่พอใจอย่างมาก
หลังจากที่ลามะสายที่ต้องการความเปลี่ยนแปลงตายลง ลามะคนปัจจุบันก็ดำรงค์ตำแหน่งแทนซึ่งมาจากสายปกครอง ถ้าจำไม่ผิดน่าจะเป็นคนที่ 14 เมื่อมีความวุ่นวายย่อมมีมือที่สามเข้ามา ส่วนนึงน่าจะเป็นอเมริกา(ตัวเหี้ย) ให้การสนับสนุนับพวกชนชั้นปกครองเดิม คือถ้ามันสำเร็จสามารถให้พวกปกครองเดิมเข้าไปสร้างฐานอำนาจได้ ก็จะเป็นบุญคุณกันต่อมา แต่ถ้าไม่สำเร็จก็จะเอาไว้เป็นเครื่องมือต่อรองกับจีนได้
การพลาดท่าครั้งใหญ่ของลามะคนปัจจุบันคือการไม่สามารถควบคุมสถานการณ์ความวุ่นวายได้ ใจคนหยั่งยากแท้ แม้ว่าจะเกิดการชุมนุมและก่อจราจลที่ทิเบต และหวังว่าจะให้เกิดเหตุการเดียวกับเทียนอันเหมิน แต่จีนเองก็ไม่ได้โง่ เจ็บแล้วจำ (ไม่เหมือนแดนสุวรรณภูมิ ไม่เคยจำ) ภาพที่ออกมาคือส่วนใหญ่คนที่ตายคือคนฮั่น(จีน) และทหารก็ไม่ได้ใช้ความรุนแรงเกินเหตุในการระงับจราจล
ผมเองคิดว่าลามะพลาดท่าอย่างแรงและจีนเองก็มีความอดทนอดกลั้นเพียงพอ อาจเป็นเพราะใกล้งานโอลิมปิกแล้ว งานนี้ถ้าลามะจะแก้เกมได้คงมีหนทางไม่มากนักการที่ออกมาประกาศว่าจะลาออก คิดว่าเป็นเพียงการแก้เกี้ยว ทางออกที่ดีที่สุดของลามะ ตอนนี้คือการสอนศาสนาแล้วคิดทบทวนตัวเอง
จีนเองก็ประสพปัญหาคล้ายกับประเทศไทยคือพวกคลั่งศาสนานึงหัวรุนแรงมากด้วยอยู่แถบซินเกียง (ก่อนถึงทิเบต) เรียกว่าชนเผ่าหุย คิดว่าพระเจ้ามันดีสุดๆ จีนเขาไม่ใจดีเหมือนไทย เขาทำงานมีประสิทธิภาพจับได้คาหนังคาเขา ยิงทิ้ง สถานเดียว ล่าสุดมีพวกนี้ถือขวดน้ำขึ้นเครื่องบิน ปกติเขาจะไม่ค่อยยุ่งกับพวกหุย เพราะเดียวหาว่ารังแกชนกลุ่มน้อย (เรื่องจริง เจอมาที่เซียงไฮ้ พวกขายเนื้อย่างถ้าหน้าฮันหรือจีนๆ จะโดนตำรวจไล่) เอาขวดน้ำไปไว้ในห้องน้ำเครื่องบิน เปิดฝาทิ้งไว้ โชคดีแอร์มาได้กลิ่นเป็นน้ำมัน เลยจับได้ มันบอกว่าจะระเบิดเครื่องบิน โชคดีจริงๆ ความรุนแรงที่แก้ด้วยความรุนแรงมักจะไม่จบ ยกเว้นฆ่าล้างเผ่าเหมือฮิตเลอร์ ไม่แน่ว่าอีกหน่อยจีนอาจต้องมาดูงานในไทย(ถ้ามันสงบจริง) ก็เป็นได้
ป.ล. จำแหล่งอ้างอิงไม่ได้ โปรดใช้วิจารณญาณในการอ่าน
Posted in Gerneral | Tags China, han, hui, politic, tibet | no comments | no trackbacks
Posted by Revolution
Wed, 20 Feb 2008 09:40:00 GMT
อยู่ในภาคทดสอบ แบ่งเป็น 2 แบบคืออ่านธรรมดากับแบบค่าเงิน
ทดสอบได้ที่ num2word
class Number
def initialize
@unit = %w[ศูนย์ หนึ่ง สอง สาม สี่ ห้า หก เจ็ด แปด เก้า]
@qtys = ["แสน", "หมื่น", "พัน", "ร้อย", "สิบ", "หน่วย"]
@mils = "ล้าน"
@zero = "ศูนย์"
@twenty = "ยี่"
@unitone = "เอ็ด"
end
def self.th_word(number)
Number.new.to_s(number)
end
def self.th_currency(number)
Number.new.to_s_currency(number)
end
def self.commify(number)
(s=number.to_s;x=s.length;s).rjust(x+(3-(x%3))).gsub(/(\d)(?=\d{3}+(\.\d*)?$)/, '\1,')
end
def to_s(value)
if (number = value.to_s.split(".");number.length) >2 then return ("'.' more than 1") end
re = []
f = to_s_float(number[1]) if !number[1].nil?
out = to_s_decimal(number[0])
re[0] = f if !f.nil?
re[1] = out
if !f.nil? then re[2] = re[1] + "จุด" + re[0] else re[2] = re[1] end
return re.reverse
end
def to_s_currency(value)
w = to_s(value).reverse
f = value.to_s.gsub(/(\w*)+\./,"0.").to_f if !w[0].nil?
w[0] = to_s_decimal((f * 100.0).round.to_s) if !f.nil?
if !f.nil? then w[2] = w[1] + "จุด" + w[0] else w[2] = w[1] end
return w.reverse
end
def to_s_float(value)
return float_wordify(value).flatten.compact.join(' ').gsub(/ ,/,',')
end
def to_s_decimal(value)
return quantify(value).flatten.compact.join(' ').gsub(/ ,/,',')
end
private
def padded_groups(v)
out = []
padded = (s=v.to_s.gsub(/\D/i,"");x=s.length;s).rjust(x+(6-(x%6))).gsub(/ /,'0')
padded.scan(/.{6}/)
end
def wordify(v)
out = []
@unitone = "หนึ่ง" if v.to_i == 1
for cur in 0 .. v.length - 1
if cur ==4 and v[cur] == '2'[0]
out << @twenty
elsif cur ==4 and v[cur] == '1'[0]
out << ""
elsif cur ==5 and v[cur] == '1'[0]
out << @unitone
else
out << @unit[v[cur]-'0'[0]]
end
end
return out
end
def float_wordify(v)
out = []
for cur in 0 .. v.length - 1
out << @unit[v[cur]-'0'[0]]
end
out.pop while out.last == @zero
return out
end
def quantify(v)
v = padded_groups(v).reverse
pos = v.length - 1
out = []
while pos >= 0
if v[pos] == ','
out << ','
next
end
word = wordify(v[pos])
for po in 0 .. word.length - 1
if word[po] == @zero then next end
if @qtys[po] != "หน่วย" then out << word[po] + @qtys[po] else out << word[po] end
end
out <<@mils if pos > 0
pos -= 1
end
out.shift while out.first == @mils
out << @zero if out.length.zero?
return out
end
end
Posted in ruby | Tags class, number, ruby, word | no comments | no trackbacks
Posted by Revolution
Tue, 12 Feb 2008 10:35:00 GMT
Source จาก http://sohne.net/articles/2006/04/30/convert-numbers-to-words/ เท่าที่แกะดูก็ไม่ยากแต่ไม่เข้าใจว่า หลายที่เงื่อนไขไม่ลงเลย สงสัยทำเผื่อไว้
Source from http://sohne.net/articles/2006/04/30/convert-numbers-to-words/ I have some confuse with this code, some condition will not may happen but i still be.
มีที่ดีกว่านี้ที่ http://www.deveiate.org/projects/Linguistics/wiki/English
class Number
def self.to_words(number)
Number.new.to_s(number)
end
def self.commify(number)
(s=number.to_s;x=s.length;s).rjust(x+(3-(x%3))).gsub(/(\d)(?=\d{3}+(\.\d*)?$)/, '\1,')
end
def initialize
@unit = %w[zero one two three four five six seven eight nine]
@teen = %w[ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen]
@tens = %w[zero ten twenty thirty fourty fifty sixty seventy eighty ninety]
@qtys = %w[hundred thousand million billion trillion quadrillion quintillion]
@zero = ["zero"]
@hundred = "hundred"
@sepr = "and"
end
def to_s(number)
out = quantify(number).flatten
for x in 0 .. out.length - 1
out[x] = nil if out[x] == @sepr && out[x+1] == @sepr
out[x] = nil if out[x] == "," && out[x+1] == ","
end
out.compact!
out = @zero if out.length == 1 && out[0] == @sepr
out.pop while out.last == @sepr
out.shift while out.first == @sepr
out.join(' ').gsub(/ ,/,',')
end
private
def padded_groups(v)
out = []
padded = (s=v.to_s;x=s.length;s).rjust(x+(3-(x%3))).gsub(/ /,'0')
padded.scan(/.{3}/)
end
def wordify(v)
out = []
zero = '0'[0]
h, t, u = v[0] - zero, v[1] - zero, v[2] - zero
if h != 0
out << @unit[h]
out << @hundred
end
out << @sepr if h != 0 && (t != 0 || u != 0)
out << @sepr if h == 0 && t == 0 && u != 0
if t == 1
out << @teen[u]
else
out << @tens[t] if t != 0
out << @unit[u] if u != 0
end
return out
end
def quantify(v)
v = padded_groups(v).reverse
cur = pos = v.length - 1
out = []
while pos >= 0
if v[pos] == ','
out << ','
next
end
word = wordify(v[pos])
if word[0] != nil
out << word
out << @qtys[cur] if cur != 0
else
out << @sepr
end
cur -= 1
pos -= 1
end
return out
end
end
puts Number.to_words(1234567890)
puts Number.commify(1234567890)
ถ้าอยากรู้ว่า code ทำงานอย่างไรอ่านต่อข้างใน
Read more...
Posted in ruby | Tags ruby | 1 comment | no trackbacks
Posted by Revolution
Mon, 11 Feb 2008 10:31:00 GMT
เมื่อก่อนเคยกินบ่อยมาเมื่อ 5 ปีที่แล้วตอนยังเรียนอยู่ ไปกินที่ เดอะมอล์ บางกะปิ แต่ครั้งล่าสุดเมื่อปีที่แล้วที่ เดอะมอล์ บางกะปิ ของหมดหลายอย่างเหมือนรู้สึกว่าโดนโกง เลยคิดว่าคงไม่กินไปอีกนาน
5 years ago, I liked to have shabushi at The Mall Bangkapi. Last time that I ate that is 1 year ago, at that time many meats were away (out of shelf)
เมื่อวันอาทิตย์ที่ 10 กุมภาพันธ์ 2551 ไปกินชาบูชิ เพราะอยากลองกินน้ำซุปต้มยำดู ราคา 199++ ก็ประมา 234 บาทต่อคน เห็นของไม่หมด เลยลองดูที่ ซีคอน ด้านหน้าโลตัสชั้นหนึ่ง โคตรๆ สกปกเลย จานที่ใส่อาหารก็ล้างไม่สะอาด น้ำยังเลอะอยู่เลย กากก็ติดจาน ปลาซาบะก็ทอดไหม้ น้ำมันไม่เปลี่ยน โต๊ะก็เช็ดไม่เกลี้ยง หม้อมาชาไม่บวกเวลาให้ ที่สำคัญ ไอ้ของที่มันโฆษณาอยู่หน้าร้านมีไม่ถึง 70% ที่อยู่บนสายพาน ต้องขอจากคนที่อยู่ในซุ้ม เช่น เบคอน, หมูสไลด์, ไข่, ข้าวปันแซลม่อน, ไข่หวาน, ฯ
At Sunday 10 Feb 2008, I went to Seacon Square to have Shabushi because i want to try Tom Yam soup. Price is 199++, 234 Baht include vat and service charge. I tried it at 1 floor in front of Lotus. I conclude that Dirty!!!. Dish was surface with water and some food that stick on dish, Saba Fish is over fired, Pot and soup came too late (10 minutes), what are at ads board was not appear on conveyor i had to ask to waiter
เมื่อก่อนคิดว่าอีกไม่ไปกินอีกนาน แต่ตอนนี้คิดว่าคงไม่ไปกินอีกแล้ว
Before i think i will not take it for long time but this time i think that i will not take it again
ป.ล. ผมชอบ hotpot มากกว่านะ
P.S. I Love You
Posted in Gerneral | Tags buffet, food | 1 comment | no trackbacks
Posted by Revolution
Tue, 05 Feb 2008 12:23:00 GMT
วันนี้เป็นวันจ่ายของตรุษจีนต้องซื้อของมาไหว้เจ้าและบรรพบุรุษมากมาย เช่น ไก่ เป็ด หมู พรุ่งนี้ไหว้
Today Chinese people buy thing to pray to angle and ancestor, such as duck, chicken, and pork
ต้องไปแล้ว
I have to go now
Posted in Gerneral | Tags chinese, yearly | no comments | no trackbacks
Posted by Revolution
Tue, 05 Feb 2008 12:20:00 GMT
เขียนลง Blognone
Ruby เป็นภาษาที่ได้รับความสนใจไม่น้อย จนกระทั่งมีคนอยากให้ใช้งานกับ .NET ได้ด้วย ทางด๊อกเตอร์เคลลี่ ผู้พัฒนา Ruby.NET ได้ประกาศผ่านทางกูเกิ้ลกรุ๊ปแล้วว่าเขาจะเลิกพัฒนา Ruby.NET โดยเหตุผลว่า IronRuby นั่นประสพความสำเร็จและไปได้ไกลกว่า
เนื่องจาก Ruby.NET เองแรกเริ่มก็เป็นโครงงานที่แตกตัวออกมาจาก IronRuby ซึ่งถ้าจะทำ Ruby.NET ให้เข้าได้กับ DLR (Dynamic Language Runtime) ต้องทำการเปลี่ยนแปลงหลายอย่าง และด๊อกเตอร์เคลลี่มั่นใจว่ามันจะดีกว่า CLR (Common Language Runtime) ที่ใช้อยู่ในปัจจุบัน
ทางผู้พัฒนา Ruby.NET ก็มีทีท่าจะไปช่วยพัฒนา IronRuby อยู่ด้วย
ที่มา: Google Group
Posted in ruby | Tags ruby, .net | no comments | no trackbacks
Posted by Revolution
Thu, 31 Jan 2008 10:18:00 GMT
สำหรับธรรมเนียมจีนแล้ววันนี้ถือว่าเป็นวันส่งเจ้ากลับขึ้นสู่สวรรค์เพื่อไปรายงานเง็กเซียนฮ้องเต้เกี่ยวกับความดีความชั่วของมนุษย์ เรียกว่าวัน ซิ้งเจี่ยที ก็จะต้องมีของมาไหว้หร้อมกระดาษเงินกระดาษทอง 13 ใบ (เพราะปีนึงมี 12 เดือนแต่บางปีมี 13 เดือน (เขาว่ามาอย่างงั้น)
For Chinese tradition, today is the day that all angels go back to heaven and report human’s virtue or sin to Angel Emperor. it’s usually call “Sing Jian Ti” in chinese. People pay respect and make a spirit offering to angel with 13 gold papers (Because a year has 12 month and some year have 13 month)
หลังจากนี้อีก 7 วันก็ตรุษจีนแล้วครับ
After this 7 days is chinese new year
Posted in Gerneral | Tags chinese, yearly | no comments | no trackbacks