Sunday, December 16, 2007

PyS60: Python for S60

I tried PyS60 this morning and I realized that I liked it thanks to its simplicity. Knowing nothing about it, I can write a simple program and make it run on Nokia N72!

If you wanna give it a try,

"Python for Series 60 tutorial

by Jurgen Scheible"

is a best place to get started!

Wednesday, December 12, 2007

Java Podcast

I often read programming news online to get updated information about programming. But it's not always a good way. Often I get eye strain at the end of the day.

Things has changed thanks to Podcast. I can just close my eyes and get my ears to work. Now m listening to

However Podcast is bandwidth eater! I guess I'd get an over use Internet bill again this month.

Sunday, October 7, 2007

Apply Cambodia Visa online!

Accepting following credit cards:
  • Visa
  • MasterCard
  • American Express
  • Discover

Wednesday, September 5, 2007

Sun Java System Identity Manager(With Passion) free online course

The 1st session of free "Sun Java System Identity Manager
(with Passion!)" free online course will start on September
17thd, 2007. The course contents are created based in the
latest IDM version (7.1), providing the basis for
the administration and development activities. This
course is being taught by Gabriel Magarino.

Each topic has a hands-on lab which contains "ready to open
and build" NetBeans projects. For more information, please
go to the course websites below.

Course topics:
Course website:
Course FAQ:

This course runs very much like a regular college course in
which the students are expected to do weekly homework after
studying the presentation material and doing the hands-on
lab but it is free and can be taken online. There is also
class email alias where students can ask/answer questions.

Sang Shin,
(Life is worth living... with Passion!)
Sun Tech Days Developer Conference: Boston
Sep.12th 2007: Sun Tech Day
Sep.11th,2007: NetBeans Day, OpenSolaris Day

Tuesday, September 4, 2007 What font?

I installed Limons, ABC, Siemreap, Ekreach and other Khmer fonts, but the text on doesn't look right.

Do you know what font does the site use?

Netbeans 6M10 & Vista:Workaround

I finally managed to make Netbeans 6 shake hands with Vista.
Here is how I do:

I Right clicked on the setup file and chose Properties.
On the Compatibility tab I ticked the options as shown in the figure on the left.

Netbeans 6M10 & Vista:Disappointment

As my Acer 5630 crashes on XP, I try my luck on Vista.
While Netbeans 6 Milestone 10 runs smoothly on XP, it refuses to play nice on Vista.
When I try to make new project, there's nothing for me to select on the project category list!

I use Java SE 1.6 Beta 2-b86. I guess it's the problem.
I'm going to give Java 1.6 Update 2 a shot.

Tuesday, August 14, 2007

MS Access Unicode & Java JDBC

It's been a nightmare migrating data from MS Access full of unicode data to java database Derby.
Since the JDBC-ODBC bridge driver doesn't support UTF-16, you'll end up with ???????? when it should be កខគឃង.

Fortunately, there are alternative drivers. I've tried HXTT Access which support unicode.
The trial version limits 1000 transactions; enough for my 3225 records with 4 times execution.

After importing the data to Derby.
I'm ready to go to next step. :)

Wednesday, July 18, 2007

I've got the certificate!

It's my first online course and I'm so excited to get the certificate!

Saturday, July 14, 2007

Free "Web Services and SOA Programming" online course

The 3rd session of the "Web Services and SOA Programming" online course
starts from August 24th. The topics of the course can be seen from the
following link:

This new session will have heavy emphasis on the following 4 technology

* New Java APIs for Web Services (JAX-WS, JAXB, REST)
* WSIT (Project Tango)
* SOA Technologies (BPEL, JBI, Open ESB)
* GlassFish (Java EE 5, JBI runtime, Service Engines)

For the Hands-on labs, the "out of the box" support of above
technologies by NetBeans 6.0
(both in terms of designer tool and runtime) will be heavily leveraged.

* XML Schema editor
* WSDL editor
* BPEL designer

If you know anybody who might be interested in taking this free course,
please let them know. In order to register for this course, all you
have to do
is sending a blank email to the following course subscription alias.

Sunday, July 8, 2007

Minimart project: Lessons learnt

After doing the minimart project, I've compiled lessons learnt:

-Be precise about the scope of the project.
Make sure the customer understand what will the result of the project. This serve as the checklist to determine that you have completed the project. If you miss this, customers can suggest more features and your project grows. You will feel that the project has no end.

-Use prototype
What you have done especially user interfaces may be different from what customers expected. Making prototypes for customers to review can reveal the different and can save you lots of time. You can further understand customers' need or capture details customers missed at analysis phase. It can also satisfy customers to a larger extend.

-Backing up
Before making changes, make sure you have backed up everything including database.

-Fixing bugs
When customers find bugs in your program, they will call you. Instead of fixing it at customers' place, note down bugs' information, go back to the company and analyze the dependency of what you change. This is to ensure that what you change will not break other codes. If you have used Unit Test in your program, it'll tell you whether your change will break other codes.

Monday, July 2, 2007

The pain of a wrong decision

Here I'm proudly present to you my pain of a wrong decision, MS.Access.

It's the "Focus"!
Most VB or Access programmers would know what I mean here. If you use Got_Focus and Lost_Focus a lot, you will end up losing control of the flow as the code grows larger. The most painful headache we had was in the receipt form where we were trying to sync between Riel and US Dollar.

No OO.
If you are happy with the benefit of Object Oriented, you will cry with Access(2003). No encapsulation, no code reduce, no inheritance, no polymorphisms, and the list goes on. When our project grows to a certain point, we started to feel the beginning of the hell where code disorders is the curse.

We wished we had chosen the OO language such as VB.Net or Java.

Friday, June 29, 2007

I use it because I used to it

Two of my friends and I worked at a company as the software engineers for a mini-mart project. The project manager told us that he had done a similar project which we could use to customize for the new project.

His project used Microsoft Access as the interface and SQL Server as the database system.

At the early point of the new project, we came to the stage of technology dilemma. Should we use the same technology, MS Access and SQL, VB, VB.Net, or Java?
All three of us were more comfortable with VB or VB.Net than MS Access but we chose the latter.

Before it was a surprise to me to hear most of my friends say that many companies (including a bank) in Cambodia are still using legacy language.

"Why the legacy language?"
"Why not the new and improved VB.Net? Or platform-independent Java?"

In our case, we chose the legacy language simply because that the previous project we base on use the legacy one and that we were told it would simply be a minor customization. But it turned out to be a major work! I'll tell the painful experience in the next blog.

Now why do companies use legacy language?
Possible reasons:
-They are used to it.
-They fear the risk of adopting new language.

It is similar to why Linux evangelists find it extremely hard to lure people out of Windows.

Sunday, June 24, 2007

Khmer Unicode and Netbeans 6

I have managed to use Khmer Unicode with Eclipse 3.2 but not without pain. Netbeans 5.5 is no better. Now Netbeans 6.0 is doing right!!! I hope the upcoming Ecipse 3.3 will breaks the ice.

Khmer Unicode works well with Netbeans 6

I'm really impressed with what Netbeans 6 can do.

Netbeans has a great tutorial on how to use its powerful GUI builder Matisse. Wanna try?
Go here:

Plus a tutorial on "Internationalizing a GUI Form". After the tutorial, you will be able to localize your program, may be as your preference, using Khmer Unicode.

Friday, June 22, 2007

Wanna join?

I have just enrolled in a free online Java course run by a Java evangelist of Sun Microsystem, Sang Shin:

JavaTM EE (J2EE) Programming (with Passion!)

You can register the course at

At the end of the course, you will be given a certificate given that you submit all the homeworks.

If you are already enrolled (or is going to study the course) and need a classmate to discuss the lesson, you are more than welcome to join with me provided that you meet my criterion.

My criterion:
-Basic understanding on Java Standard Edition
-Some basic understanding on XML
-Some basic understanding on HTML
-Is passionate with J2EE
-Have commitment to the course
-Can devote some of your time.

Interested? Leave me a comment! :)