February 26, 2008 at 11:55 pm · Filed under Giải trí
Hôm qua lang thang trên mạng, tìm được bài này thấy hay hay
Lesson 1: Naked Wife
A man is getting into the shower just as his wife is finishing up her shower when the doorbell rings. The wife quickly wraps herself in a towel and runs downstairs. When she opens the door, there stands Bob, the next door neighbor. Before she says a word, Bob says, I will give you $800 to drop that towel. After thinking for a moment, the woman drops her towel and stands naked in front of Bob. After a few seconds, Bob hands her $800 dollars and leaves. The woman wraps back up in the towel and goes back upstairs. When she gets to the bathroom, her husband asks: Who was that? It was Bob the next door neighbor, she replies. Great! the husband says, Did he say anything about the $800 he owes me?
Moral of the story: If you share critical information pertaining to credit and risk with your shareholders in time, you may be in a position to prevent avoidable exposure.
Lesson 2
A sales rep, an administration clerk, and the manager are walking to lunch when they find an antique oil lamp. They rub it and a Genie comes out. The Genie says, I will give each of you just one wish. Me first! Me first! says the admin clerk. I want to be in the Bahamas, driving a speedboat, without a care in the world. Poof! She is gone. Me next! Me next! says the sales rep. I want to be in Hawaii,relaxing on the beach with my personal masseuse, an endless supply of Pina Coladas and the love of my life. Poof! He is gone. OK, you are up, the Genie says to the manager. The manager says: I want those two back in the office after lunch.
Moral of the story: Always let your boss have the first say.
Lesson 3
A priest offered a lift to a Nun. She got in and crossed her legs, forcing her gown to reveal a leg. The priest nearly had an accident. After controlling the car, he stealthily slid his hand up her leg. The nun said: Father, remember Psalm 129? The priest removed his hand. But, changing gears, he let his hand slide up her leg again. The nun once again said: Father, remember Psalm 129? The priest apologized Sorry sister but the flesh is weak. Arriving at the convent, the nun went on her way. On his arrival at the church, the priest rushed to look up Psalm 129. It said: Go forth and seek, further up, you will find glory.
Moral of the story: If you are not well informed in your job, you might miss a great opportunity.
Lesson 4
A crow was sitting on a tree, doing nothing all day. A rabbit asked him: Can I also sit like you and do nothing all day long? The crow answered: Sure, why not. So, the rabbit sat on the ground below the crow, and rested.
A fox jumped on the rabbit and ate it.
Moral of the story: To be sitting and doing nothing, you must be sitting very high up.
Lesson 5: Power of Charisma
A turkey was chatting with a bull I would love to be able to get to the top of that tree, sighed the turkey, but I haven’t got the energy. Well, why don’t you nibble on my droppings? replied the bull. They’re packed with nutrients. The turkey pecked at a lump of dung and found that it gave him enough strength to reach the lowest branch of the tree. The next day, after eating some more dung, he reached the second branch. Finally after a fourth night, there he was proudly perched at the top of the tree. Soon he was spotted by a farmer, who shot the turkey out of the tree.
Moral of the story: Bullshit might get you to the top, but it wont keep you there.
Lesson 6
A little bird was flying south for the winter. It was so cold the bird froze and fell to the ground into a large field. While he was lying there, a cow came by and dropped some dung on him. As the frozen bird lay there in the pile of cow dung, he began to realize how warm he was. The dung was actually thawing him out! He lay there all warm and happy, and soon began to sing for joy. A passing cat heard the bird singing and came to investigate. Following the sound, the cat discovered the bird under the pile of cow dung, and promptly dug him out and ate him.
Moral of the story:
1. Not everyone who shits on you is your enemy
2. Not everyone who gets you out of shit is your friend
3. And when you’re in deep shit, it’s best to keep your mouth shut!
Bổ ích nhất là cái bài học cuối cùng 
February 25, 2008 at 8:01 pm · Filed under Lập trình, OOP, Ruby

Hic, hôm qua quên béng mất, hôm nay nhìn lại lịch thì đã là 25 mất rồi. Nói chung là các thứ mốc thời gian quan trọng tớ đều toàn bỏ lỡ cả
Vào ngày 25/02/1993, Ruby được chính thức … “thụ thai” bởi Yukihiro Matsumoto (tên gọi trên mạng là Matz) nhờ tình yêu mãnh liệt giữa anh và cái máy tính. Nói đúng hơn là anh ấy bắt đầu xây dựng Ruby kể từ ngày đó, và sau 2 năm, đến năm 1995 thì Ruby mới được chính thức ra đời. Có nghĩa là nói 25/02 là ngày sinh nhật của Ruby thì cũng không chính xác, nhưng mặc kệ, dẫu sao thì cũng là 1 ngày đáng nhớ.
Vậy tại sao Matz lại chọn Ruby làm cái tên cho ngôn ngữ của mình tạo ra?
Ruby không phải một cái tên viết tắt. Đơn giản chỉ là vì Ruby chịu nhiều ảnh hưởng từ Perl, và khi hoàn tất ngôn ngữ này, anh đã đùa với một người bạn rằng nên đặt tên thế nào nghe cho nó giống một thứ đá quý nào đó (Perl lúc đầu cũng được đặt tên là Pearl - ngọc trai). Và bạn của anh đã gợi ý cái tên Ruby. Sau này Matz cũng bất ngờ khi phát hiện ra Pearl là viên đá quý tượng trưng cho những người sinh tháng 6, còn Ruby thì tượng trưng cho những người sinh tháng 7. Anh cho rằng cái tên Ruby như thế là phù hợp vì Ruby kế thừa và phát triển nhiều đặc tính từ Perl.
Một số cột mốc quan trọng trong quá trình phát triển Ruby
- 24/02/1993: Matz bắt tay vào công việc “sáng tạo” ra ngôn ngữ Ruby.
- Tháng 12/1994: Phiên bản alpha đầu tiên của ngôn ngữ được hoàn tất.
- 1997: Tài liệu hỗ trợ cho ngôn ngữ Ruby được chuyển sang tiếng Anh
- Cuối năm 1998: thành lập mailing list ruby-talk cho cộng đồng người sử dụng Ruby ngoài Nhật Bản. Cho đến trước thời điểm này, không có nhiều lập trình viên nước ngoài biết đến Ruby, trong khi Ruby đã khá thành công ở Nhật. Từ đây, cơn bão Ruby dần dần hình thành.
- 2001: JRuby ra đời, đánh dấu bước tiến mới của Ruby. JRuby là trình dịch Ruby viết bằng Java, và giúp cho việc lập trình kết hợp giữa Ruby và Java trở nên dễ dàng hơn.
- Tháng 7/2004: Ruby on Rails ra mắt cộng đồng lập trình viên ứng dụng web. Rails là một framework hỗ trợ xây dựng một cách nhanh chóng các ứng dụng web dựa trên nền tảng kiến trúc MVC (Model-View-Controller). Sau này Rails thu hút được rất nhiều sự chú ý từ các web developer nhờ tốc độ phát triển ứng dụng cũng như tính mềm dẻo của framework này, đồng thời cũng là do những đặc tính thú vị của Ruby. Từ đó trở đi, Rails trở nên phổ biến ngang ngửa với PHP, và Ruby nhờ đó cũng được càng nhiều người biết đến.
- Tháng 5/2006: JRuby hỗ trợ Rails
- 30/4/2007: IronRuby được Microsoft chính thức công bố. IronRuby là nỗ lực của các lập trình viên nhằm đưa Ruby vào .NET framework của Microsoft.
- 23/7/2007: Bản pre-alpha của IronRuby ra mắt trước công chúng
- 25/12/2007: Ruby 1.9 chính thức ra mắt với nhiều tính năng mới (hỗ trợ Unicode tốt hơn, sử dụng YARV .v.v.), tuy nhiên các phiên bản số lẻ thường là phiên bản dành cho cộng đồng phát triển và thử nghiệm. Phải chờ đến phiên bản 2.0 thì lập trình viên mới có thể sẵn sàng tận dụng các tính năng mới mẻ cho sản phẩm của mình.
Sau 15 năm kể từ khi được xây dựng từ những dòng code đầu tiên, Ruby đã có những bước tiến khá xa. Nhiều người vẫn phủ nhận sự thành công của ngôn ngữ này với lí do sau những 15 năm mà Ruby mới tiến tới phiên bản 1.9. Nhiều người khác thì lại trở nên dị ứng với cái tên Ruby vì sự nổi đình nổi đám của nó những năm gần đây. Dân học lập trình Việt Nam thì càng không muốn động tay vào ngôn ngữ có cái tên lạ hoắc này. Nhưng tớ tin là trong 1 thời gian ngắn nữa, Ruby sẽ là cái tên được nhắc đến rất nhiều tại Việt Nam, và sẽ ngày càng có nhiều người học Ruby hơn.
February 22, 2008 at 4:57 pm · Filed under Linh tinh, Lập trình
Năm mới dương lịch được gần 3 tháng, tết nhất thì cũng qua lâu rồi. Thế mà hôm nay mình mới khai bút đầu xuân ở cái blog này
Đơn giản là vì bận quá, vướng mắc vào bao nhiêu thứ việc dù là kì nghỉ 2 tháng: bận học, bận làm và bận chơi.
Về VN nghỉ tết đợt này biết là sẽ chả tập trung vào làm được việc gì (mà thực ra là chưa bao giờ serious với cá gì cả). Năm mới thế là không ổn. Hôm trước còn bị sốt mất 1 ngày, và 3 ngày liền rồi chả học hành và làm việc gì sất, toàn ngồi xem phim, chơi game và lướt web vớ vỉn.
Có lẽ đến lúc phải serious trở lại vì tháng nữa là lại vào năm học, chả có thời gian nữa. Những mục tiêu phải hoàn tất trong vòng 1 tháng:
- Đuổi kịp lớp Ruby của bác Satish.
- Cày xong quyển Pro Drupal Development cho cái project của ông hiệu trưởng (đi đâu cũng khoe là tao làm cho ông hiệu trưởng nhưng thực ra chả chịu làm gì cả
)
- Vọc dần Drupal 6, đến khi ra CCK và Views thì làm 1 cái sản phẩm gì đó cho vui
Ờ thì nói dễ hơn làm. Nhưng mà ít nhất có tí gọi là định hướng. Về Nhật không gian yên tĩnh, chắc dễ ngồi yên 1 chỗ làm các thứ một mạch hơn.
Tiện thể đang quyết tâm, thử “vạch kế hoạch” một phát cho năm sắp tới xem sao:
- Master lại XHTML/CSS
- Học Javascript tử tế từ đầu
- Tập trung vào Drupal
- Học cho xong khoá Ruby, dịch xong đống tài liệu đó sang tiếng Việt
- Động tay động chân vào Rails
- Mục tiêu là ít nhất xong 1 sản phẩm gì đó trong năm
Có vẻ hơi ôm đồm tẹo, nhưng tóm lại 3 cái quan trọng nhất phải xong trong năm là Drupal, Ruby, và Rails. Sang năm sau tính tiếp, nhưng đường hướng là trở thành một web developer.
Đã tiếp tục dịch thêm mấy chương tài liệu về Ruby. Hi vọng là đuổi kịp được lớp trong 2 tuần tới.