Thursday Mar 06, 2008

Two days after Sun Tech Day in Australia, most of tech talks become blur and only a few points addressed by Matt Thompson still hover in my mind. 

1. Three month turnover.

Nowadays in Silcon Valley Venture Capitalists invest project on three months basis. This means that, if a project/idea is attractive enough to get venture capital, the first investment will be three months ongoing cost. After that, venture capitalist will review the progress and decide if it is worthy of another three months' funding.

World is changing so fast. Novel, interesting, attractive... idea will quickly lose its luster. Therefore, it is important to select advanced tools/languages to quickly develop the first generation product.

2. Participate open source project

Sun recently hired two Python pros. How were they identified? Through open source community. So open source community provides an excellent platform for both recruiter and job hunter. Start to build up reputation today!

 
3. Open source software development helps Sun grow.

Sun has made most of products/softwares open sourced. Apart from selling service contract, what else does Sun benefit from open source? Open source gives more and more people to develop software; some of these software projects will eventually become so successful that they will host in mission critical data center; Sun will supply the most cutting edge, energy-economic and high reliable data centers.


Thursday Feb 28, 2008

Today, 28th Feb 2008, I made my first Campus Ambassador tech demo in the University of Melbourne. 

35 people, mainly faculty members and research students in Department of Computer Science and Software Engineering (CSSE) , attended this demo. Several of them are from other universities and research institutions. It's amazing to see how many people are eager to see Sun SPOT in live.

Deng Peng, a research student from Sensing, Ubiquity and Mobility (SUM) Lab in CSSE, joined me in this talk. He has developed a few applications with Sun SPOT. (I was surprised to learn that they have been using Sun SPOT in mobile computing class for quite a while.)

We used a modified version of Sun SPOT presentation material. We spent about 1/4 time on technical slides, 2/4 time on demos and 1/4 time on discussion. This proved to be a very successful arrangement. Few people asked questions while we are talking about Sun SPOT tech specs and Squawk VM. But, after demos, they are harmed up and start to ask all kinds of questions.

We had four demos:

1. Bouncing ball.

Not only did we demonstrate the standard bouncing ball on one standalone Sun SPOT and between two Sun SPOTs, we also demonstrate that the "ball" can actually bounce between real Sun SPOT and Sun SPOT simulator.

2. Air Text

We turned down the light and shook really hard in order to show text.

3. Sun SPOT Game Panel

This demo was developed by Peng. We use SUN SPOT to simulate a Game Panel and use it to play Neverball. This demo was the most eye-catching one. Many audience asked Peng some detail questions about implementation. Peng is very kind to make this demo code available to everyone.

4. Sun SPOT Sensing

This demo was developed by Peng too. We demonstrate how to use Sun SPOT as sensor to monitor movement, light and temperature and direct the collected data to a Java graph program, Live Graph, so that we can get the real time illustration.

Many audience was interested in knowing how to get Sun SPOT for their research. Some of them mentioned that they were having many problems with application development on other type of wireless sensors and they really wanted to try out Sun SPOT. Some of them asked what exactly the educational discount of Sun SPOT will be. We have forward these questions to Sun local sales managers.

Lessons learned:

Although I asked a friend to help with taking photo, however, he was not able to make it for an urgent reason. So next time I will at least ask to photographers. It's a pity not to take photos for such a great event.

Demo Slides can be found here.

Monday Feb 25, 2008

Check out you should come to Sun Tech Day in Melbourne on 4th March 2008

- Ask questions to James Gosling, the Father of Java (also have chance to Win an iPod Touch 8GB, check the link for detail)
- Learn the latest in web scripting
- Learn how to participate in open source communities
- Learn what's new in Mobile Java Development
- Learn how to get paid a 14% higher starting salary through Sun certification
- Learn how to get a Job @ Sun

According to Sun Tech Day organizer, over 1300 attendees from over 320 companies have registered for the conference so far. It would be a great opportunity to socialize and build up network as well.

http://au.sun.com/sunnews/events/2008/techdays/agenda_melbourne.jsp?epid=922530


Wednesday Feb 20, 2008

VirtualBox provides a number of networking options for guest OS. NAT is the most simple one to use. I was able to have Internet access without any extra configuration at home. However, it appeared no working at University's network. 

After some research, I find out that the fundamental problem is DNS setting. When I start to use Virtual Box at home, the guest OS automatically get DNS setting from my ADSL router. These DNS server were not accessible when I use virtual OS at University network. The solution is very simple: manually assign DNS server address in the guest OS.

Reference:

http://forums.virtualbox.org/viewtopic.php?t=2430&highlight=network+proxy
 

Although Virtual Box provided an option of shared folder, it is not straightforward to use this shared folder. It took me some searches on VirtualBox forum to find it how Ubuntu guest OS can access the shared Folder on WinXP host OS.

1. Add folder(s) to shared folder menu.

 

It is important to write down the folder names at this step. 

 

2. Boot guest system, open a terminal and type in the following commands
 

sudo mkdir /mnt/tao_xp

sudo mount.vboxsf TAO /mnt/tao_xp

The shared folder would be accessible now: read & write!

Reference:

[1] http://forums.virtualbox.org/viewtopic.php?t=3201&highlight=share+folder

[2] http://virtualdebian.blogspot.com/2007/12/sharing-folders-with-virtualbox.html

Wednesday Feb 13, 2008

"SANTA CLARA, CA February 12, 2008 Sun Microsystems, Inc. (NASDAQ: JAVA) today announced that it has entered into a stock purchase agreement to acquire innotek, the provider of the leading edge, open source virtualization software called VirtualBox." [1]

This is the first time I heard about VirtualBox. Immediately I went VirtualBox website and download VirtualBox binaries on Windows, VirtualBox_1.5.4_Win_x86.msi. It's quite small, only 17Mb. It takes less than one minute to install.

VirtualBox main window

There are a number of options for various virtual images: complete Windows family, Linux, BSD family, OS/2 and Solaris. I created a Linux 2.6 virtual disk and installed ubuntu 7.10 iso.

However, the screen resolution of guest system is surprisingly low, 800x600 and 640x480. After I did some search on VirtualBox forum [2], I finally can get the "real" full screen. I summarize the solution here:

1. Finish guest OS installation and start the guest OS.

2. There is an ISO file in VirtualBox installation directory, called "VBoxGuestAdditions.iso"

   In Windows, by default, it is located at C:\Program Files\innotek VirtualBox\VBoxGuestAdditions.iso

   Click "Device"-> "Install Guest Additions" to mount this iso file.

 

3.  Find "VBoxLinuxAdditions.run" as shown below. Run it in a terminal window, "sudo /media/cdrom/VBoxLinuxAdditions.run"

4. Run "sudo dpkg-reconfigure -phigh xserver-xorg". Select "vboxvideo" as video card and all of screen resolutions you want

5. Edit /etc/X11/xorg.conf as super user

    Change line

       Driver "mouse"

    to

       Driver "vboxmouse"

6. Restart X by press "Ctrl+Alt+Backspace".  

Conclusion:

1. VirtualBox is easy to use. I did not find that I have to consult any user document in order to start using it.

2. VirtualBox's functionality is equivalent to VMWare Workstation. I can create various virtual images on my own. More importantly, it is free. VMWare Workstation for Windows would cost US$189.00

 

Reference:

[1] http://www.sun.com/aboutsun/pr/2008-02/sunflash.20080212.1.xml


[2] http://forums.virtualbox.org/viewtopic.php?p=15806

Netbeans automatically uses the Windows system default language as the default user interface language. I believe that it means to be a nice feature for localization. But I personally find it uncomfortable because I have been used with English interface.

After I did some Google search, I learned a few tips to set the Netbeans UI language.

1. Temporary Solution

Add "--locale en:US" at the end of Netbeans startup command. 

"C:\Program Files\NetBeans 6.0.1\bin\netbeans.exe"  --locale en:US 

2. Permanent Solution

Go to Netbeans installation directory, for example,

C:\Program Files\NetBeans 6.0.1\etc

Open "netbeans.conf" and find netbeans default option line

netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Xverify:none -J-Dapple.laf.useScreenMenuBar=true"

Add "-J-Duser.language=en -J-Duser.region=US" to the end of this line

netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Xverify:none -J-Dapple.laf.useScreenMenuBar=true -J-Duser.language=en -J-Duser.region=US"


It would be nice that there is an option to allow me choose the user interface language in the next Netbeans release.

Reference:

http://hantsy.blogspot.com/2007/05/netbeans.html

http://www.9php.com/FAQ/cxsjl/java/2007/11/555583596050.html

Monday Dec 24, 2007

 

It is hard to believe that Solaris 11 b79 only comes with mono color terminal. I have spoiled too long by Ubuntu. I simply could not live without colorful indication when I typed "ls". Here is a few steps to make colorful Gnome terminal.

1. Install coreutils from http://www.sunfreeware.com/.

 The easiest way is to install pkg-get first and then type "pkg-get install coreutils-6.4" as root.

2.  Add " alias ls='/usr/local/bin/ls --color=auto' " into $HOME/.bashrc

In case that there is no .bashrc at your home, here is an example.

3. Open a new Gnome terminal and type "ls". This is what you would expect. It is more fun with a bit of colors, isn't it?

colorful gnome terminal