Thursday, August 31, 2006
Mysaifu JVM 0.2.9
You can find out more about Mysaifu JVM here.
IDEA Plugins contest
Update: An article about writing IDEA plug-in. Don't wait anymore, earn prizes now ;-)
Wednesday, August 30, 2006
IntelliJ IDEA 6 build 5646 is released
Changes in build 5646 from 5622:
* Possibility to suppress Unused Property inspection in .properties files.
* VCS. Update and commit are performed in background.
* VCS. Actions to move files between changelists and to select files
in Changes view.
* IDETalk. SSL support.
* Permute arguments quickfix on method calls which have reversed order
of arguments - for example, (int,String) instead of (String,int).
* VCS. New search scope "Changed files".
* OpenAPI. Possibility to plug custom FormattingModel.
* OpenAPI. Custom suppression actions for inspections.
* Bugfixes and minor improvements.
Complete list of changes here
Update: A bug
Tuesday, August 29, 2006
Manifest drives me crazy
Manifest-Version: 1.0
Main-Class: kr.co.xxx.rfReader2SerialPort.RFReader2SerialPort
I create a BAT file to run my application. Here is its content:
java -cp ./lib/converter.jar;./lib/comm.jar
-jar ./RFReader2SerialPort.jar
When I run it, command prompt shows me ConnectionException. It means my application cannot connect to reader (via socket connection). It's not correct, my reader still working. I tried some times and got another error, NoClassDefFoundError, seems it cannot find comm.jar
But if I change the BAT file to
java -cp ./RFReader2SerialPort.jar;./lib/converter.jar;./lib/comm.jar
kr.co.xxx.rfReader2SerialPort.RFReader2SerialPort
It works well.
What happens with my manifest? Or do I miss something?
JavaTech: An Introduction to Scientific and Technical Computing with Java
Another resource for Java beginners: http://javaworkshop.sourceforge.net
What is a small ISV?
+ An ISV is not a consulting shop but sometimes it does consulting
+ An ISV is not a value-added reseller but sometimes it resell something from other stuff
+ An ISV makes, markets and sells software by itselt. This means it accepts the risky from its products and maybe its customers will go away and take it alone
+ A small ISV is not big. A small ISV has 5 developers, 25 developers, 50 developers but if over 100 developers, you should consider it still small or not
Monday, August 28, 2006
You're gone
You're gone
Diamond Rio
I said hello I think I'm broken
And though I was only jokin'
It took me by surprise when you agreed
I was tryin' to be clever
For the life of me I never
Would have guessed how far the simple truth would lead
You knew all my lines
You knew all my tricks
You knew how to heal that pain
No medicine can fix
And I bless the day I met you
And I thank God that He let you
Lay beside me for a moment that lives on
And the good news is I'm better
For the time we spent together
And the bad news is you're gone
Lookin' back it's still surprisin'
I was sinking you were rising
With a look you caught me in mid-air
Now I know God has His reasons
But sometimes it's hard to see them
When I lie awake and find that you're not there
You found hope in hopeless
You made crazy sane
You became the missing link
That helped me break my chains
And I bless the day I met you
And I thank God that He let you
Lay beside me for a moment that lives on
And the good news is I'm better
For the time we spent together
And the bad news is you're gone
The bad news is you're gone
Saturday, August 26, 2006
Rafting
Most of time we stayed in the boat on quiet surface of water. It's OK 'cause we are not professionals also this is the first time I play rafting. But sometimes we met bumpy area and the team need to work together to win. I had a lot of joy and fun.
But the most interesting thing is I have an opportunity to analyze what I read in "Practices of an Agile Developer: Working in the Real World": Developing software like surfing (at this time, rafting), the way to get success is adapting to the waves which come non-stop to dominate them.
This journey is a good memory for me when I were working in Korea. In the future, I want to have more opportunities to play rafting and other danger games. And of course, I hope that my girlfriend will join with me.
Friday, August 25, 2006
Be careful before install IE 7 RC 1
After searching around on Internet, I found the solution (God blesses me, I have a Linux notebook :-D).
If you want to install IE 7 (seem this problem relates with all IE7 versions, included Beta 2, Beta 3 and RC1, which maybe happen when you install or uninstall IE7), please backup Normaliz.dll first. After install IE 7, don't be crazy if you meet this problem. Here is the solution:
+ Press Ctrl + Alt + Del then click Task Manager
+ In tab Applications, click New Task...
+ In Create New Task dialog, click Browse...
+ In Browse dialog, copy Normaliz.dll you already backed up to Windows\System32
+ Now run explorer.exe (in Windows folder) and smile with a large mouth
Buildix - The Agile Development Platform
Thursday, August 24, 2006
Spam
Công việc đã vượt được qua phần khó khăn nhất rồi. Giờ mình đã có thể làm việc với cổng serial được cả bằng .NET lẫn Java. Còn ngày mai với tuần sau nữa để hoàn thành công việc. Vẫn còn nhiều thứ để làm...
Firefox 2 Beta 2 and FlashGot
How can I open it when you only provide Save and Cancel option?
My short answer for Java closures
Some acronyms
+ KISS: Keep It Simple Stupid
+ WYSIWYG: What You See Is What You Get
+ DRY: Don't Repeat Yourself
+ LOL: Laughing Out Loud
+ AFAIK: As Far As I Know
+ IMO: In My Opinion
and there are many more.
You can found more here, here and here.
Mysaifu JVM
As you can see the Mysaifu's objective, the author of Mysaifu wants to make a JVM which conforms to J2SE. It means that you can write an application for PC and then run on Pocket PC without limitation. I think it's a nice project.
If you have some experience with other JVMs for handle devices (except the one from Sun) you seems don't like them very much. An example is Ewe VM. When you write an application to run on Ewe VM, your source code will look like Visual J++, not pure Java.
If you have time, and of course, a Pocket PC, please try to play with Mysaifu you will have something fun.
FYI: A ported library of Java Communications API for Windows CE/Pocket PC --> http://www.teilo.net/software/CEJavaComm/
Wednesday, August 23, 2006
New method in Java SE 6 makes IDEs more difficult
Tuesday, August 22, 2006
How to mount a flash drive manually
With my very little experience, I don't know how to get the content of xorg.conf. Suddenly, I remember my flash drive. EUREKA!!!
I tried to find a solution to mount my flash drive and found here and here. The first post is very good one but when I try
sudo mount -t vfat -o uid=t800t8,gid=users /dev/sda /media/flash
it doesn't work.
OK, try with
sudo mount -t vfat -o uid=t800t8,gid=users /dev/sda1 /media/flash
Now everything is fine. I can copy xorg.conf and Xorg.0.log to my flash drive.
With the second post, I know how to unmount a device.
sudo umount /media/flash
Friday, August 18, 2006
TestNG 5.1 is released
Now waiting for Mark (and Hani?) update their TestNG-J...
IntelliJ IDEA's trend
If it's correct, IDEA should support for Czech's language and Chinese, not Japanese.
Just for fun :-D
Gyach-E - Yahoo! Messenger for Linux
+ Gyach-E can log on with invisible mode (Gaim can't do)
+ Gyach-E can voice chat others (Kopete and Gaim can't do)
+ Gyach-E supports web cam (Gaim can't do)
+ Gyach-E can show popup when someone logs on and logs off (Kopete and Gaim, again Gaim, can't do)
+ Gyach-E can show popup when receives a new mail (with a voice message) (Gaim can't do)
+ Gyach-E supports to open your Yahoo! Mail directly from Gyach-E (Kopete and Gaim can't do)
+ Gyach-E can detect an user is invisible if he's online then change status to invisible (nice feature, huh?)
+ Gyach-E can keep connection really well (Try to log on to your account by another computer, it will be out immediately)
If you only need to chat with other YM users, Gyach-E is for you.
(I will provide more when I found any nice features Gyach-E can do)
How to install Gyach-E? (Thanks endersshadow)
1. Download http://www.politicalcrossfire.com/temp/enderavsig/gyach-install.tar.bz2, and save it to your home directory (important!).
2. Run these commands in the terminal, in sequential order:
tar -xjf gyach-install.tar.bz2
cd gyach
sudo ./install
Now try to run Gyach-E by "gyach" at terminal console.
Note: Maybe you need to install libtldl package to run Gyach-E.
Thursday, August 17, 2006
Black belt
It's a good site which has many volunteers they participate to guide you the basic of J2SE, Servlet, JSP, Spring, Hibernate and many more. It's really good for you if you want to get Java certificates.
Learn and contribute!
No Dolphin anymore, get the first build of JDK 7 now
Wednesday, August 16, 2006
IntelliJ IDEA 6 build 5622 is released
* HTML Preview plugin for previewing Web pages in an embedded Mozilla
browser.
* Bugfixes and minor improvements.
For more details, see here.
Tuesday, August 15, 2006
Sun and open source Java
Monday, August 14, 2006
My desk
One thing I don't like in Ubuntu Dapper Drake
Another problem in SuSE 10.1 relates with wireless network: I saved my wireless network's properties but every time I reconnect, I need to re-enter my network key.
I don't have these problems with a very little experience with Fedora Core 5.
Thursday, August 10, 2006
Decided to move
After my Samsung Sens X10 is fixed, I will install Ubuntu in my Dell Inspiron 8600.
And beyond this, I decided to move a big bigger thing... ;-)
Tuesday, August 08, 2006
A song for Vietnamese men who are lovelorn
Lệ Đêm (by Linh Kent)
(Thanks my young cousin, a jolly guy)
Friday, August 04, 2006
IntelliJ IDEA Demetra build 5594 is released
HOWTO setup xvnkb to type Vietnamese in Ubuntu
$sudo apt-get install gcc xlibs-dev libxft-dev make cvs
1. Get xvnkb source code from CVS (When it prompts password, please press Enter)
$ cvs -d ':pserver:anonymous@xvnkb.cvs.sf.net:/cvsroot/xvnkb' login
$ cvs -z3 -d ':pserver:anonymous@xvnkb.cvs.sf.net:/cvsroot/xvnkb'
checkout xvnkb
2. Make the source code
$ cd xvnkb
$ ./autogen.sh
$ ./configure
$ make
3. Install xvnkb
$sudo make install
Now you can start to type Vietnamese by using "xvnkb" at terminal console.
Update: After install xnvnkb, you can type Vietnamese in Word or gedit but cannot in Firefox. To type Vietnamese in Firefox, you need to install CHIM extension for Firefox from this address: http://xvnkb.sourceforge.net/chim/chim.xpi
Get free domain name now
Ngày nhiều việc
+ Reconstruct cái cấu trúc của dự án
+ Đánh vật với cái Ant build dài 488 dòng
+ Download được 3 album nhạc: Queen - Greatest Hits 2, Lifetime Of Romance - Be My Love và Lifetime Of Romance - Heartbreakers
+ Download được 2 cuốn sách
+ Cài cái IETab extension cho Firefox + viết hướng dẫn cho cái H nhà mình
+ Cơm ăn no
+ Rửa mặt 2 lần
+ Ngáp nhiều cái
+ Giờ thì đang mỏi mắt, buồn ngủ và chuẩn bị report một lỗi của IDEA
Ha ha, mình làm được khối việc đấy chứ.
Giờ này cô ấy đang làm gì nhỉ? Mấy hôm nay ở nhà đang bão nên giờ này chắc cô ấy đang ngủ khì. Hôm trước nói chuyện với cô ấy thấy cô ấy thật vui vẻ với nụ cười có lẽ lâu lắm mình mới thấy ở cô ấy.
"Em cứ yên tâm nghỉ ngơi ở nhà, không phải lo lắng gì cho anh đâu. Mọi việc của anh tốt cả. Báo cáo em, đêm qua anh tiêu diệt được 4 con muỗi."
Thursday, August 03, 2006
How do you construct your projects?
In my opinion, I construct my projects like this
[project-root]
|
|------- \Module1
| |
| |------- \src
| |------- \test
| |------- \javadoc
| |------- \lib
| |------- build.properties
| |------- build.xml
|
|------- \Module2
| |
| |------- \src
| |------- \test
| |------- \javadoc
| |------- \lib
| |------- build.properties
| |------- build.xml
|
|------- \build
| |
| |------- \production
| | |
| | |-------- \Module1
| | |-------- \Module2
| |
| |------- \test
| |
| |-------- \Module1
| |-------- \Module2
|
|------- \dist
| |
| |------- \Module1
| |------- \Module2
How about your opinion?
A bug in IntelliJ IDEA build 5581
Sometimes the icon of files in tab bar will disapear. If I close IDEA then reopen, they will appear.
Wednesday, August 02, 2006
Subversion + Apache2 + SSL on Ubuntu in 10 steps
sudo apt-get install subversion libapache2-svn
libapache-mod-dav apache2
2. Enable SSL support in Apache
sudo a2enmod ssl
3. Stop Apache
sudo /etc/init.d/apache2 stop
4. Let Apache2 listen on port 443
sudo gedit /etc/apache2/ports.conf
Add to the end of file
Listen 443
5. Create SSL certificate
sudo apache2-ssl-certificate
Provide some information following the prompt
Country Name: <country_code> (example: VN)
State or Province Name: <state_name>
Locality Name: <city_name>
Organization Name: <organization_name>
Organization Unit Name: <organization_unit_name>
Server Name: <server_name>
Email Address: <email_address>
6. Configure site
sudo cp /etc/apache2/sites-available/default
/etc/apache2/sites-available/<sitename>
then edit
sudo gedit /etc/apache2/sites-available/<sitename>
- Change NameVirtualHost to NameVirtualHost *:443
- Change <VirtualHost> to <VirtualHost *:443>
- Append before </VirtualHost> the following
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
Then create a symbol link to your site configuration in sites-enabled
sudo ln -s /etc/apache2/sites-available/<sitename>
/etc/apache2/sites-enabled/<sitename>
Note: <sitename> should be same as your hostname
7. Create a Subversion Repository
sudo svnadmin create /var/lib/svn
sudo chown -R www-data:www-data /var/lib/svn
sudo chmod -R g+ws /var/lib/svn
8. Use Apache for Authentication
sudo htpasswd -c -m /var/lib/svn/conf/htpasswds <username>
9. Configure mod_dav
edit dav_svn.conf
sudo gedit /etc/apache2/mods-available/dav_svn.conf
DAV svn
SVNPath /var/lib/svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /var/lib/svn/conf/htpasswds
Require valid-user
SSLRequireSSL
Disable anonymous browsing by commenting out the following:
#<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require valid-user
#</LimitExcept>
10. Start Apache
sudo /etc/init.d/apache2 start
Now try to browse https://<sitename>/svn and import something
Tuesday, August 01, 2006
New blog's address
KIẾM TIỀN
"Em cũng muốn thế lắm nhưng khốn một nỗi em chưa tìm được cái công việc em thích làm mà tiền lại ít hơn một chút. Giữa lựa chọn hiện giờ, tháng hơn 1000$ ở đây và tháng cùng lắm 300 - 400$ ở VN, thì cái khoảng chênh lệch kia là cả một vấn đề lớn rồi." (Tất nhiên là mình nhìn nhận trên thực tế khả năng của mình và cả môi trường xung quanh nữa.)
Cũng vì cuộc sống, vì tiền mà phải làm ở một công ty thế này. Có những thằng tốt như Park, Nam, Lee nhưng cũng có những thằng củ chuối như Kang. Chúng nó nhìn nhận mình làm việc thế nào dựa vào việc trên màn hình của mình hiển thị gì. Nếu mình vào Internet, đọc sách, mẹ khỉ, "thằng này có vẻ lười". Thiếu điều mình mở cửa sổ code quay bốn phía và mộng mơ.
Cuộc sống chó thế đấy. Mà mục đích của mình sang đây là để làm gì? Phải rồi, KIẾM TIỀN. Mẹ kiếp, mình đang KIẾM TIỀN đấy chứ...