Review

Top Ten Programming Things of 2006

Interestingly, everyone have their top ten, e.g., Blognone, Bangkok Post, GameSpot, IGN and many more. I would like to add some more specific topic regarding programming.

Principle of Drupal 5

Drupal 5 seems to be one of the most flexible content management system. In fact, I would like to call it as a content management framework instead of a complete system. Drupal is not perfect for all situations but it is possible to make it perfect easier than other candidates. Imagine what you need to do if you want to develop a kind of web application. There are 2 approaches; library or framework. Library means you are going to develop the web application from scratch by given building blocks. Framework, like the name said, comes with everything but your application. To develop application using a framework, you are about to follow the rule of that framework. It also provides collection of APIs; however, the main mechanisms are also available and must follow.

The League of Extraordinary Programming Languages in Thailand

ภาษาสำหรับเขียนโปรแกรมในโลกนี้มีมากมาย แต่ภาษาที่ได้รับความนิยมสูงนั้นมีไม่กี่ภาษา ซึ่งก็มีผลให้ภาษาอื่นที่ไม่ได้รับความนิยมก็ยังคงไม่ได้รับความนิยมต่อไป ในความเป็นจริงแล้ว ทุกภาษามีจุดประสงค์ของตนเอง การเลือกภาษาจึงเป็นเรื่องของความเหมาะสมมากกว่าอารมณ์ และความรู้สึก แต่เอาเข้าจริงการเลือกภาษาสำหรับงานซักงานก็เป็นเรื่องของ The One ที่มีอำนาจตัดสินใจ ถ้าเป็นงานส่วนตัวคุณก็คือ The One แต่โชคร้ายงานส่วนตัวมักจะไม่ใช่งานทำเงิน สุดท้ายก็มี The One มาเลือกภาษาให้เสร็จสรรพ ภาษาที่เลือกมาแต่ละทีก็มักเป็นภาษาที่ค่อนข้างเป็นที่รู้จัก ยกตัวอย่างเช่น PHP Java และ C# ซึ่งก็ไม่แปลกอะไร นี่เรียกว่า ทีใครทีมัน หรือ ทีเอ็งข้าไม่ว่า ทีข้าเอ็งอย่าโวย ตรงตามหลักการเป๊ะ ถ้าทำงานประจำแล้วต้องทำตามการตัดสินใจของ The One แล้วเก็บกดก็จงกลับบ้านมาเขียนโปรแกรมด้วยภาษาที่ชอบซะ ยิ่งถ้าอยากให้คนอื่นหันมารู้จักภาษา นั้นกับเราด้วยก็ต้องแจกโค้ดของเราซะบ้าง นี่ไม่ใช่การเผยแพร่ลัทธิหรือศาสนาอะไรทั้งสิ้น เพราะเราทำสิ่งที่ชอบ ไม่ได้บังคับให้ใครทำตาม ถ้ามีคนเห็นว่าเราทำดี เค้าอยากทำบ้างก็ไม่แปลกอะไร มีคนบอกว่าภาษาพวกนี้เรียกว่า ภาษานอกกระแส (mk rawitat) มันก็ใช่อยู่ แต่ผมไม่อยากให้คิดว่ามันเป็นแค่ทางเลือกซักเท่าไหร่ ฟังดูแล้วเหมือนมีความสำคัญน้อยไปนิด เลยขอเรียกเป็น Extraordinary ดีกว่า ฟังแล้วดูยิ่งใหญ่ดี จะได้ไม่ด้อยกว่าภาษาอันโด่งดังทั้งหลาย ช่วงนี้กำลังมีการระดมพลของผู้ที่มีภาษาแปลกๆ ในดวงใจ ผมก็เป็นหนึ่งในนั้นเหมือนกันเลยต้องเขียนถึงซะหน่อย

Improve performance of Apache HTTPD by Expires

Apache HTTPD is one of the most popular web server in this world. It may handle wide range from light load to heavy load. Another popular one is lighttpd. There are so many benchmarks to compare these two softwares. For lighttpd, lighttpd is the best. In other view, Apache HTTPD is the best for themselves. These benchmarks are just to measure performance under heavy load. Another approach to improve performance is to reduce load.

Installing Jabber for Access Grid Tool Kit 3 - A long tale

I'm not familiar with Jabber server for so long. Anyway, I used its client all day all night to access . Jabber is one of the most powerful open-source instant messaging software based on XMPP. Actually, installing Jabber should be quite easy as long as you don't need SSL support. I used to setup Jabber long time ago. At that time, it was very easy so I expected to just do it again by recent version as a backend for Access Grid Text Chat.

Working with XML and namespace in Python

One important thing in programming today is XML. Many applications rely on XML because it want to store hierarchical data in persistent storage aka file. This truth is applied to most Java application because it seems, in my opinion, Java has the most larger sets of XML libraries from the top to the ground. In other words, ones may do anything with XML in Java very easy. Unfortunately, I am not a good Java programmer in any point of view. My favorite language is Python and OS is Linux. XML in Python is not as good as that one in Java. That's a problem.