Thứ Hai, 30 tháng 11, 2009

IT salary survey

Long time no blogging ^_^ Don't want my blog with full of dust, today I decide to compose a new entry.
After reading the statistics from http://www.certmag.com/read.php?start=0&in=3915, I would like to have some notes

1) What we should study?

"Rounding out the top five highest-paying certs in 2009 were: (ISC)2 Information Systems Security Architecture Professional (CISSP-ISSAP) with $136,060; Brocade Certified SAN Manager (BCSM) with $136,020; Brocade Certified Fabric Designer (BCFD or BCSD) with $135,600; and the (ISC)2 Information Systems Security Management Professional (CISSP-ISSMP) with $134,100."

Obviously, I should be Security and Telecom ^_^


2) Should we study graduate schools?

"Another finding is that the majority of individuals in each of the other groups — including those with a high school diploma, a two-year associate’s degree, technical training, bachelor’s degree and master’s degree — reported annual earnings between $100,000 and $109,999 this year. These results are somewhat surprising given the vast difference in qualifications and skill sets that exists among these groups.

What has remained constant, however, is the fact that the majority of those who possess a doctorate command the highest annual salary among all groups — 11 percent of those with a doctorate reported earning between $110,000 and $119,999 this year."

If you have an PhD, you will have an increase of 11% in terms of salary. But reconsider about PhD. You spend 4-5 in graduate schools just to earn an increase of 11%. In terms of opportunity cost, PhD doesn't make sense.


3) If no PhD, what should we study?

"Trends such as “hybrid jobs,” which are positions that blend IT with expertise in another industry — health care, for example — require much more than simply an IT specialization. Often, they entail obtaining another degree in a different subject."


Having a non-IT degree + IT degree are the best. For example, MBA + IT Engineer Master is wonderful.

4) Is Web Development out of date?

"As for lower-salary-tier IT specializations on the slump, Web development seemed to continue its downward trend from last year, with about 17 percent of its respondents indicating that they earn less than $20,000."


The answer is YES.


5) How are developing countries's IT pros, especially Vietnam?

"Last year’s Salary Survey had Vietnam, Sri Lanka, India, the Philippines and Pakistan as its lowest performers in terms of salary — in that order. These countries had similarly low numbers this year, with 82.6 percent of respondents in the Philippines, 76 percent of respondents in Pakistan, 74.8 percent of respondents in India, 73.5 percent of respondents in Sri Lanka and 70.6 percent of respondents in Vietnam earning less than $20,000 a year."


Poor Vietnam, but it reflected that real situation in developing countries.


SUMMARY

BEST JOB: IT Security/Telecom Engineer Bachelor + MBA + Working in US or EU ^_^


Good luck ^_^

Thứ Tư, 5 tháng 8, 2009

Nested Parallel for and OpenMP compilers

Nested parallelism behavior depends on the implementation therefore it's different on different compilers.

For example with nested parallel for

#pragma omp for
for ( , , )
#pragma omp for
for ( , , )
foo();

On GNU compiler (gcc 4,3,3 for example), you will see the warning: "work-sharing region may not be closely nested inside of work-sharing, critical, ordered or master region".

However, on SunStudio 12, an error is thrown: " pragma for is not allowed to be nested inside of for".

Be careful and considerate when using nested parallel for.

GNU Feature Test Macros

Why do we usually specify #define _GNU_SOURCE in our source code?What does it actually mean? #define _GNU_SOURCE is a GNU Feature Test Macro. GNU Feature Test Macros enable extensions on glibc (GNU C Library). I helps the system to have more functionalities.

For more information, please have a look at http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html

Thứ Năm, 30 tháng 7, 2009

Thứ Hai, 1 tháng 6, 2009

Celebrating the release of OpenSolaris 2009.06!

From http://www.opensolaris.org/jive/thre...start=0#382392

********************************************************
********************************************************
Today marks the release of OpenSolaris 2009.06, the third release of the OpenSolaris Operating System.

We've shifted gear, bringing you a new set of features right to your door, from the desktop to the data center. For a complete list of what's new with this release, check out the OpenSolaris 2009.06 What's New Guide

http://www.opensolaris.com/learn/fea...ats-new/200906

OpenSolaris for SPARC is now available as part of this release, and will work on systems with an OBP level of 4.17 or greater. You can check out the required specifications at

http://www.opensolaris.com/learn/specifications/

along with the hardware compatibility list

http://www.sun.com/bigadmin/hcl/data/os/

Download Links:
=============
http://dlc.sun.com/osol/opensolaris/...l-0906-x86.iso LiveCD
x86/x64
http://dlc.sun.com/osol/opensolaris/...l-0906-x86.usb LiveUSB
x86/x64
http://dlc.sun.com/osol/opensolaris/...6-ai-sparc.iso
Automated Install SPARC
http://dlc.sun.com/osol/opensolaris/...906-ai-x86.iso
Automated Install x86/x64

http://dlc.sun.com/osol/opensolaris/...906-hashes.txt MD5
sum hashes

Release notes:
============
As always when installing the latest images, check out the release notes for both x86 and SPARC for any known issues

http://www.opensolaris.org/os/projec...es/200906/x86/
http://www.opensolaris.org/os/projec.../200906/sparc/

How to update:
============
Upgrading from OpenSolaris 2008.11 (or any previous releases) is easy using the Package Manager or pkg(1) command line. Check out a screencast of how to upgrade

http://webcast-west.sun.com/interact...123/index.html


Thanks are due to a large number of people who've helped contribute different projects to this release, both within the OpenSolaris community itself and the wider free and open source world. We'll be celebrating at CommunityOne with a great line up of OpenSolaris content - if you happen to be in the area, please join us and help us celebrate this release!

http://www.opensolaris.com/communityone/

Enjoy!
********************************************************
********************************************************

Thứ Tư, 20 tháng 5, 2009

[Seminars] BKITSun Weekends : JavaFX + SunSPOT






BKITSun Weekends


Breaking Technologies












Session 1: JavaFX


Thứ 7 ngày 23/05/2009


THỜI GIAN: từ 09:00 đến 11:30


ĐỊA ĐIỂM: 302B2 Đại Học BK TpHCM



JavaFX Seminar Outline



*Objectives:


- Grab an overview of JavaFX technology


- Go through some simple demos and get the direction to develop your applications using Netbeans 6.5


*Contents:


Session 1: Introduction



- What is JavaFX?


- Why using JavaFX?


- What can be built with JavaFX?



Session 2: JavaFX SDK



- JavaFX SDK


- JavaFX code: old style vs new style



Session 3: Demos



Session 4: Resources – Q&A











Session 2: Lập trình Robot cho riêng bạn với SunSPOT


Chủ nhật ngày 24/05/2009


THỜI GIAN: từ 09:00 đến 11:30


ĐỊA ĐIỂM: 302B4 Đại Học BK TpHCM



SunSPOT Seminar Outline


*Objectives:


- Knowing about the architecture of SunSPOT and its features - Go through some simple demos and get the direction to develop your applications under SunSPOT platform


*Contents:Session 1: Introduction


- What is SunSPOT ? - SunSPOT devices and hardware - Squawk Java Virtual Machine


Session 2: Java on SunSPOT


- Build and deploy on Netbeans IDE - Some snippets of Java codes


Session 3: Demos


- SunSPOT LED Balls - SunSPOT Airtext (using Accelerometer sensor) - SunSPOT mouse emulator (using Accelerometer and Radio Communication) + demo with Games - Some video clips about applications developed by SunSPOT community


Session 4: Resources – Q&A


Project Sun SPOT http://www.sunspotworld.com/
David's Blog: http://blogs.sun.com/davidgs/
The Squawk Project http://research.sun.com/projects/squawk/



Tham gia buổi hội thảo các bạn sẽ có cơ hội nhận được các phần quà thú vị từ SUN MICROSYSTEMS.

Chủ Nhật, 17 tháng 5, 2009

GCC 4.3 : C++ language issues

Header dependency cleanup

As detailed here (Header dependency streamlining), many of the standard C++ library include files have been edited to only include the smallest possible number of additional files. As such, many C++ programs that used std::memcpy without including , or used std::auto_ptr without including will no longer compile.

Usually, this error is of the form:

error: 'strcmp' was not declared in this scope

Therefore, find out how to include suitable libaries at http://gcc.gnu.org/gcc-4.3/porting_to.html

Thứ Sáu, 15 tháng 5, 2009

What is a Rich Client Platform?

There are some confusion with the definition of Rich Client Platform. Below definition may satisfy yours.

"A Rich Client Application is basically a Desktop Application. A Desktop Application is an application in which most of the implementation is running on the user's local system. This is in contrast with a web application where most of the implementation is on a different system. A Rich Client Platform is a framework for developing Rich Client Applications. The framework provides commodity implementations like window management, menus, help systems, etc. so you, the developer, can focus on implementing the business logic."

Thứ Năm, 7 tháng 5, 2009

Sun Studio and OpenMP

Sun Studio natively support OpenMP.

Specify : Project Properties -> Build -> C Compiler -> Multithreading Level -> OpenMP.

Now, you can easily build and run OpenMPI program with Sun Studio ^_^

Sun Studio to build/run MPI programs

To build/run MPI programs is a little bit stricky and need much effort to complete.

Thank you Nik for his exhautive instruction regarding this issue in Sun Studio Forum ^_^

1)Create a collection tool to build a MPI project

Yes, it is also important to use MPI compilers to build MPI projects.
If you have "mpicc", "mpiCC" and "mpif90" in the same directory,
where "mpirun" is located, you can create a new "Tool Collection",
and use it to build MPI projects. Here is an example. I installed
MPI "Cluster Tools 8.1" in standard location: /opt/SUNWhpc/HPC8.1/sun
To use it from the Sun Studio IDE I created a new "Tool Collection":

- main menu Tools -> Options
this opens "Options" dialog

- select "C/C++", "Build Tools" tab

- press "Add ..." button (in the left bottom corner)
specify Tool Collection name, for example: MPISunStudioExpress

- set the fields:
Base Directory: /opt/SUNWhpc/HPC8.1/sun/bin
C Compiler: /opt/SUNWhpc/HPC8.1/sun/bin/mpicc
C++ Compiler: /opt/SUNWhpc/HPC8.1/sun/bin/mpiCC
Fortran Compiler: /opt/SUNWhpc/HPC8.1/sun/bin/mpif90
Make Command: /opt/SSX200903/SUNWspro/bin/dmake

- press "Ok" button

Now, select your MPI project, right click -> Properties
this opens "Project Properties" dialog
- select "Build" and change the "Tool Collection" - select "MPISunStudioExpress" from the list
- press "Ok" button

Now it should be able to build this project.
If you don't have "mpicc" and other necessary wrappers, you can download MPI "Cluster Tools 8.1"
from this page:
http://www.sun.com/software/products/clustertools/

2)Create script file to run a standard project

Yes, you are right, this is a hack (to use a shell script), and it may not work well in some cases.
First of all, I'm using a "Project with Existing Sources" - this type of projects gives more freedom.
Standard projects (like Sample projects) are not convenient (IMHO), because they use their own
makefiles, and it is hard to understand what is wrong is something goes wrong.
So, if you use a standard project, you can try to add this shell script to the project.
Here is an example:

1. Create a new shell script "mpirun.src.sh" in the same directory where your sources are.
You can do it in the IDE, or in terminal window:

echo '#!/bin/sh' >> mpirun.src.sh
echo 'mpirun -n 16 $*' >> mpirun.src.sh

2. Add these commands to the Makefile, so that it will build mpirun16.sh

# build build: .build-post                 pwd                 ls -l src                 cp mpirun.src.sh mpirun16.sh                 chmod 777 mpirun16.sh



3. Do "Clean and Build", make sure it was successful. It is possible that in your case
there is a "src" directory, so adjust the location of the source script accordingly.
(It is compulsory to fisnish this stage before commencing fourth stage)


4. As soon as the build is successful, specify this "mpirun16.sh" as Output for Linker in Project Properties (for standard project) or as Build Result (if you use a project with existing sources)

5. Insert the name of the executable in the list of arguments (in Project Properties. Run section).
Example:

dist/Debug/MPISunStudioExpress-Solaris-x86/mpi_prime_numbers_5 1 2

where "dist/.../mpi_prime_numbers_5" is the name of my executable, and "1 2" - its arguments.

I hope this solution is acceptable for you, though it looks very complicated :-)
The main problem with the existing projects is that one important field is missed in project properties: Command to Run. That's why we have to invent our own hacks to implement this feature.

Thứ Hai, 20 tháng 4, 2009

Embedding images in OpenOffice text documents

This is an entry posted by Abhishek Mahanty in his Sun blog. He discusses about how to embed images in OpenOffice documents properly.

More information at http://blogs.sun.com/abhi/entry/embedding_images_in_openoffice_text

Thứ Tư, 15 tháng 4, 2009

Yahoo! Messenger Pingbox

Thứ Ba, 14 tháng 4, 2009

[Article]Where did Sun go wrong?

I felt sorry for Sun because of their mistakes in the past. However, I strongly believe in future of Sun Mictosystems and wish it the best innovator as it used to be as well as hope that Sun will prosper in the future.

http://www.javaworld.com/javaworld/jw-04-2009/jw-04-where-did-sun-go-wrong.html?

What they are doing now is on the right way and that will help them back to the name "Silicon Valey Innovator".

Thứ Hai, 13 tháng 4, 2009

OpenSolaris Live USB Creator (Windows/.NET)

Would you like to create a OpenSolaris Live USB on Windows. Now, there is a tool helping you to do it easily. Check it out here.

Thứ Năm, 19 tháng 3, 2009

Typing Vietnamese (VNI + Telex) In OpenSolaris Using SCIM

By default, you could type Vietnamese in OpenSolaris by following these steps:
- System -> References -> Input Methods
- In Gernal tab, choose "Use Input Method Switcher Application" form List Box.
- In Languagues/Scripts tab : Add Vietnemese
- OK
- In right top of the window, there would be a icon which allows you to use List Box to choose which langauge you would like to type.

However, the default Vietnamese Input Method use simple SCIM table and we can't type VNI or Telex, just typing boredly.

Therefore, the solution to use VNI and Telex is to follow below instructions
1) Install SCIM from Package Manager, type "SCIM" in search textbox and install all packages related to SCIM (although some packages are not neccessary).
2) Then, follow the instruction here

Then, you can use Vietnamese as you use with other OSes like Windows.

Mount NTFS / Ext2 / Ext3 / FAT 16 / FAT 32 in Solaris

Today, I came up with new binary packages to mount all types of filesystems in Solaris: NTFS / Ext2 / Ext3 / FAT 16 / FAT 32. I am using OpenSolaris 2008.11.

I cited it here for your reference

**********************************
From : http://misamapjava.blogspot.com/2009/01/mount-partition-in-opensolaris.html
**********************************
Notes: There are some adjustments from the original
1) Link to FSWfsmisc package.
2) I use /usr/bin/prtpart instead of /usr/sbin/prtpart
**********************************

* Download packages
FSWpart
FSWfsmisc

Note these are packages for x86 Solaris .

* unzip the packages and install it

root~#gzcat FSWpart.tar.gz | tar xvf -

root~#gzcat FSWfsmisc.tar.gz | tar xvf -

root~#pkgadd -d . FSWpart

root~#pkgadd -d . FSWfsmisc

* Now run the prtpart tool

root~#/usr/bin/prtpart

It would result in following output
root~#/usr/bin/prtpart


Fdisk information for device /dev/rdsk/c1d0p0

Block Size : 512 bytes
Controller : ide
Disk : cmdk
Capacity : 74 GB

# start block # nblocks startCylSecHd endCylSecHd OSType
1: 0000000063 0006152832 0/ 1/ 1 7e/7f/fe Diagnostic
2: 0006152895 0025173855 7f/41/ 0 ff/ff/fe WIN95 FAT32(LBA)
3: 0031328640 0052432128 ff/ff/fe ff/ff/fe Solaris x86
4: 0083760830 0072535555 ff/ff/fe ff/ff/fe DOS Extended

# start block # nblocks startCylSecHd endCylSecHd OSType
5: 0000000001 0031407012 ff/ff/fe ff/ff/fe Linux native
0: 0031407013 0001994202 ff/ff/fe ff/ff/fe DOS Extended

# start block # nblocks startCylSecHd endCylSecHd OSType
6: 0000000063 0001994139 ff/ff/fe ff/ff/fe Linux swap
0: 0033401215 0039134340 ff/ff/fe ff/ff/fe DOS Extended

# start block # nblocks startCylSecHd endCylSecHd OSType
7: 0000000063 0039134277 ff/ff/fe ff/ff/fe WIN95 FAT32(Upto 2047GB)


Now note the disk id. In the above example its "/dev/rdsk/c1d0p0"

Now run

root~#/usr/bin/prtpart /dev/rdsk/c1d0p0 -ldevs

Fdisk information for device /dev/rdsk/c1d0p0

** NOTE **
/dev/dsk/c1d0p0 - Physical device referring to entire physical disk
/dev/dsk/c1d0p1 - p4 - Physical devices referring to the 4 primary partitions
/dev/dsk/c1d0p5 ... - Virtual devices referring to logical partitions

Virtual device names can be used to access EXT2 and NTFS on logical partitions

/dev/dsk/c1d0p1 Diagnostic
/dev/dsk/c1d0p2 WIN95 FAT32(LBA)
/dev/dsk/c1d0p3 Solaris x86
/dev/dsk/c1d0p4 DOS Extended
/dev/dsk/c1d0p5 Linux native
/dev/dsk/c1d0p6 Linux swap
/dev/dsk/c1d0p7 WIN95 FAT32(Upto 2047GB)

The above command scan you hard-disk and displays all available filesystems. Note the required filesystems to be mounted.

To mount NTFS partition use

root~#mount -F ntfs /dev/dsk/c1d0p /mnt/windows

To mount FAT 16 / FAT 32 partition use

root~#mount -F pcfs /dev/dsk/c1d0p /mnt/windows

if the above command fails you can try the below option

root~#prtpart /dev/dsk/c1d0p0 -fat

the above command should list the available PCFS / FAT partitions in colon notation, then use the same for mounting (eg)

root~#mount -F pcfs /dev/dsk/c1d0p0:d /mnt/windows

To mount Ext2 / Ext3 partitions use

root~#mount -F ext2fs /dev/dsk/c1d0p /mnt/linux

To unmount a partition use "umount "

root~#umount /mnt/linux

**********************************

Thứ Ba, 17 tháng 3, 2009

Flash player in OpenSolaris

In OpenSolaris, in order to watch videos via Firefox such as in youtube... you have to follow the following steps:

1. When you visit youtube and do not have Flash player installed, youtube will point you to Adobe website where you download the Solaris version of flash player to your machine.

2. Untar that file.

3. Open terminal.

4. #su

5. cp /libflashplayer.so /usr/lib/firefox/plugins/

6. restart firefox

This is the instruction cited from http://blogs.sun.com/thanhson/entry/install_flash_player_in_opensolaris

Thank Thanh Son for his contribution ^^

Chủ Nhật, 8 tháng 3, 2009

NTFS-3G on Opensolaris - Mount NTFS in OpenSolaris

you are a Linux or Unix user, also you use a windows. Therefore, you may come up with the question "How can I mount NTFS in OpenSolaris"?

It's quite a arduous work but it is fascinating when I successfully mount a NTFS in OpenSolaris. Figure out how to mount NFTS in OpenSolaris at OpenSolaris Forum.

Let's do it and have fun ^^

How to mount ISO in OpenSolaris

You must have met the situation where you want to mount ISO for use in OpenSolaris.
Therefore, the best way is to have a look at mounting ISO images in Solaris.
Download + run his scripts and see how easy it is to mount ISO in OpenSolaris.

Thứ Ba, 3 tháng 3, 2009

Introduction to Zembly

Still mashup is strange definition in Vietnamese social network community; however, it is developing greatly in the world. There are so many tool to create your own mashup. And Zembly is a good one to try.

Being developed by Sun Microsystems and it becomes more and more popular in order to create a mashup.

"Zembly (styled zembly) is a browser-based development environment from Sun Microsystems [1] that enables social programming [2] of applications for Facebook, Meebo, OpenSocial, iPhone web applications, and other social platforms, as well as web widgets. Users of zembly interact with one another via zembly's social networking features to engage in co-development of applications for these platforms."

From http://en.wikipedia.org/wiki/Zembly

I tried my first Zembly mashup and i was greatly impressed by the way we create a mashup : just drag and drop ^^



Try your first Zembly mashup by follow the instructions in http://blog.zembly.com/

Have fun ^^

Thứ Hai, 2 tháng 3, 2009

Boot Environment (BE) in OpenSolaris 2008.11

Today, i came up with a great feature of OpenSolaris 2008.11 . That is Boot Environment(BE).After installing lots of packages in Package Manager, i rebooted. Then, a strange GRUB appeared as follow




After looking inside GRUB boot item "OpenSolaris-1", i recognized that that could have been a BE.





To make sure of what i guessed. After logging in, I opened Package Manager then Boot Environment. Yeah, it was there. All BEs are here, in Boot Environment of Package Manager.


BE is really helpful especially when you want to recover the system after an fail installtion. Every time you install a package using Package Manger, a new BE is to be created.Just click the BE you want to recover to and it's done.


Let's try and have fun !

Chủ Nhật, 1 tháng 3, 2009

What is JavaFX?

Nowdays, Flash is almost eveywhere, in every computer. However, with Flash, you can't write once, run everywhere. You can't use Flash in all TV + browser + computer + TV ... at the same developed code. Microsoft Silverlight is almost the same. I am sure that Silverlight will become stronger because SilverLight is Micorsoft's and Mircosoft will greatly support SilverLight like what they did with Internet Explorer. SilverLight will be popular because Microsoft may attach it with Windows OS (I guess so).

So, what is JavaFX. JavaFX is not Flash or SilverLight imitation. You can say that JavaFX is a new programming language (actually it's a new platform) supported by Sun Microsystems which inherits Java Platform in either Desktop, Mobile devices or other devices. With JavaFX, your code can be deploy everywhere, on desktop, on browser or in mobile devices and even in TV.

Let's see what JavaFX examples at http://www.javafx.com/samples/
Then, what JavaFX can do at http://www.javafx.com/launch/index-linux.jsp
Then, what you can do to start your own JavaFX applications at http://www.javafx.com/

Have fun ^^

Thứ Bảy, 28 tháng 2, 2009

[OpenSolaris] DNS & Routing not work

In OpenSolaris, sometimes DHCP can work properly and you can obtain an IP. However, there are some cases when you can't access Internet because of DNS problem.

To resolve DNS problem in OpenSolaris, follow these instruction:

 $cp /etc/nsswitch.dns /etc/nsswitch.conf 
Check if the DNS client is already running
$svcs -a | grep dns 
and see this result
online   14:17:45 svc:/network/dns/client:default
If the result doesn't look like this one, you can restart NWAM and then see the result:
      $pfexec svcadm restart network/physical:nwam

Because the DNS client uses "/etc/resolv.conf" to find the "nameserver". Therefore, run
$pfexec vi /etc/resolv.conf
make sure I had this entry in there.
nameserver 192.168.1.1
where 192.168.1.2 is your DNS server IP.


****After those instructions, try a ping ($ping www.google.com) to see if you can access Internet or not ?

$ ping www.google.com

When you see:

www.google.com is alive

It means that now you can surf web ^^

There are some cases when you can still not access Internet and you will see this after a ping

ICMP Host Unreachable from gateway 192.168.1.3
for icmp from 192.168.1.3 to tx-in-f147.google.com (72.14.203.147)
ICMP Host Unreachable from gateway 192.168.1.3
.....

Don't worry, just do as follow to resolve default gateway problem :

- Open file /etc/defaultrouter and then check if there is a default gateway IP in this file. If there is not, manually add your default gateway (usually 192.168.1.1).

- Run the following command
     $pfexec svcadm restart network/routing-setup
Then, enjoy your life with OpenSolaris.

***
Those entry was solved under help of many Sun Microsystems staffs and reference in this article.

Thứ Năm, 26 tháng 2, 2009

Playing mp3 in OpenSolaris

In order to play mp3 files in OpenSolaris with Totem Player or Songbird, you have to install a mp3 decoder and your choice may be Fluendo. Check out how to do it here

Thứ Tư, 25 tháng 2, 2009

Try a mashup ^^

Today, after having a glance at what Microsoft is doing, i recognize that you pay much of their attention to Silverlight and other stuffs like Visual Studio 2008...

I also had a first glance at mashup, a new and interesting type of web application mainly for social networks. After surfing around, i recognized that there are many mashup tool such as Microsoft Popfly (based on Silverelight) , Yahoo Pipes, Mask Maker... Therefore, I decided to create a mashup myself and the easiest tool is Microsoft Popfly. And here it is :





You can have a look of how to use it here

Thứ Hai, 16 tháng 2, 2009

Netbeans & Eclipse comparison

Today, after wandering around Internet, i came up with an article about Netbeans & Eclipse comparison at http://javabyexample.wisdomplug.com/component/content/article/61-select-your-ide-netbeans-vs-eclipse.html
The author used Google Trend to show that Netbeans is increasingly popular over Eclipse and thoroughly explained the reasons.
It is sure that Netbeans has a brilliant future !

5 lý do để tham gia OSUM (Sun Open Source University Meetup)


OSUM (Sun Open Source University Meetup)
là một cồng động mã nguồn mở rộng lớn mà SUN MICROSYSTEMS tạo ra cho sinh viên thì khắp nơi trên thế giới. Vậy là OSUM có những đặc điểm gì và tại sao chúng ta nên tham gia OSUM ?


1) Cơ hội học hỏi về các công nghệ mã nguồn mở, tạo ra nhiều cơ hội về nghề nghiệp cho sinh viên

OSUM ra đời với mục địch kết nối sinh viên yêu công nghệ mã nguồn mở từ khắp nơi trên thế giới, góp phần tại ra một cộng đồng mã nguồn mở sôi động và mạnh mẽ. Tham gia vào OSUM, chúng ta có cơ hội tiếp cận với các công nghệ mã nguồn mở "hot" nhất trên thế giới từ ngôn ngữ lập trình như Java đến IDE như Netbeans , DBMS như MySQL , Web Application Server như Glassfish , công nghệ ảo hóa Virtual Box , hệ điều hành cách tân OpenSolaris ....và rất nhiều công nghệ khác, những dự án mã nguồn mở thú vị như Darkstar hay Wonderland ...

Bên cạnh đó,ngày nay, phần mềm mã nguồn mở đang là sự lựa chọn thiết thực của các công ty trong việc tiết kiệm chi tiêu, tăng hiệu quả hoạt động. FOSS (Free and Open Source Software) - Phần mềm mã nguồn mở và miễn phí ngày càng trở nên là sự lựa chọn số một của các công ty cũng như chính phủ. Điều này góp phần tạo ra nhiều cơ hội việc làm cho sinh viên trong một lãnh vực còn khá mới mẽ ở Việt Nam : Mã nguồn mở.

2) Cơ hội tiếp cận những tài nguyên online , những webinar (web + seminar : hội thảo web), forums, blog posts, các events cũng như những tutorials... chuẩn bị hành trang cho nghề nghiệp tương lai

Thông qua OSUM, SUN MICROSYSTEMS và các chuyên gia của mình đã mang đến cho sinh viên rất nhiều tài liệu, thông tin, hướng dẫn rất bổ ích , từ những resource online đến learning path ...đến những hình thức e-learning mới như Webinars, SAI ....Dựa vào những tài nguyên này, OSUM hứa hẹn sẽ mang đến cho thành viên môi trường học tạo hiệu quả, chuyện nghiệp theo sự hướng dẫn và hổ trợ nhiệt tình từ SUN MICROSYSTEMS.


Đặc biệt, thông qua SAI - một trang e-learning nổi tiếng - SUN mang đến cho sinh viên những course vô cùng hữu ích về Java , Solaris , business ...

Hãy tham gia, khám phá và cùng tận dụng những tài nguyên vô cùng bổ ích mà SUN đã dành cho sinh viên.

3) Cùng nhau chia sẽ và học hỏi những tri thức về khoa học với sinh viên từ khắp nơi trên thế giới

OSUM không chỉ đơn thuần là một website mà còn là một mạng xã hội kết nối tất cả các thành viên. Khác những mạng xã hội như Facebook và MySpace thiên nhiều về giải trí, OSUM là một mạng xã hội thiên về tri thức, về học thuật. Các thành viên tham gia vào mạng xã hội OSUM có cơ hội chia sẽ cũng như học hỏi từ bạn bè khắp năm châu tạo nên một "thế giới phẳng" - thế giới OSUM.

4) Tạo cơ hội cho sinh viên cộng tác với các cộng đồng sinh viên khác thông qua các forums, events và seminars

OSUM phá vỡ tất cả các khoảng cách về địa lý, tạo nên một môi trường thuần nhất cho sinh viên trên khắp thế giới. Bạn , đang ở Việt Nam , nhưng hoàn toàn có thể tham gia vào các hoạt động, events của các nhóm trên khắp thế giới từ Trung Quốc , Singapore đến Châu Âu ...Đơn giản chỉ cần vào tab "Groups" của OSUM , chọn quốc gia và trường phù hợp , bạn có thể tham gia vào hoạt động của tất cả các nhóm trên thế giới.


Tương tự, việc tham gia vào các events, forums trong OSUM cũng hết sức dễ dàng.


5) Kết bạn năm châu

Thông qua OSUM , chúng ta có thể tìm ra những người cùng đang mê, cùng sở thích cũng như kết bạn với những sinh viên đến từ khắp nêu trên thế giới. Thông qua tab "My Page" , hãy xây dựng profile cho mình và rồi "Wall" của bạn sẽ đầy ắp những lời comments bằng mọi thứ tiếng từ bạn bè trên khắp thế giới.

Việc tìm bạn trên OSUM cũng rất dễ dàng , hãy dùng tính năng của tab"Friends" để tìm ra những người bạn mới cho bạn.


Nào ! Chúng ta hãy cùng OSUM , cùng GET - LEARN - SHARE - CONTRIBUTE
http://osum.sun.com/

Bài có liên quan:
1)
Hướng dẫn đăng ký tham gia OSUM (Sun Open Source University Meetup)
2) Một số hướng dẫn về OSUM - Khám phá OSUM cùng OSUM tour (Open Source University Meetup)
3)
Một số vấn đề cần lưu ý khi tham gia OSUM

Thứ Sáu, 13 tháng 2, 2009

Chuyễn từ Java sang EXE - Java to EXE conversion

Many programmers are thinking of the ways to convert from Java to exe . There are many issues in this conversion. The article below thoroughly explain the issues. Give a look and discover what they are at http://www.excelsior-usa.com/articles/java-to-exe.html

[Open Solaris] How to reinstall GRUB

Sometimes, your GRUB is damaged. It may happen because you reinstall an Windows and Windows MRB overrides your GRUB.

To recover GRUB , follow these instruction.

You need to have an OpenSolaris Live CD. Insert an OpenSolaris Live CD and boot it.
Open terminal and begin to recover your GRUB

Firstly, list all items in /dev/rdsk/
to find an appropriate OpenSolaris partition.

$ ls /dev/rdsk/

The item you are looking for usually has the same pattern like cXd0s2. In this example, i discover the partition c5d0s2

Secondly, as follow:

$ pfexec prtvtoc /dev/rdsk/c5d0s2


* /dev/rdsk/c5d0s2 partition map
*
* Dimensions:
* 512 bytes/sector
* 63 sectors/track
* 255 tracks/cylinder
* 16065 sectors/cylinder
* 9297 cylinders
* 9295 accessible cylinders
*
* Flags:
* 1: unmountable
* 10: read-only
*
* First Sector Last
* Partition Tag Flags Sector Count Sector Mount Directory
0 2 00 4209030 145115145 149324174
1 3 01 16065 4192965 4209029
2 5 01 0 149324175 149324174
8 1 01 0 16065 16064


By convention s2 means the "entire disk."
The Tag value for slice 0 is 2, indicating slice 0 is the root slice
Thirdly, reinstall GRUB using :

$ pfexec installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c5d0s0

By default installgrub does not modify the MBR

If, however, you do want the OpenSolaris GRUB installed to the MBR, specify the -m flag on the installgrub command line:

$ pfexec installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c5d0s0

For more information, please visit SUN blog and
"How Solaris disk device names work"

[Open Solaris] GRUB menu not work because menu.lst is missing

You may encounter the situation when we unintentionally deleted or damaged menu.lst file in /rpool/boot/grub/ . This causes your GRUB menu missing because GRUB reads menu.lst to identify bootable OS choices. You will see a GRUB CONSOLE instead of a GRUB menu


To solve the problem and recover menu.lst, you should manually boot OpenSolaris first by typing below commands in GRUB CONSOLE

grub> bootfs rpool/ROOT/opensolaris

grub> kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS

grub> module$ /platform/i86pc/$ISADIR/boot_archive
grub> boot

After that , you can boot OpenSolaris as usual.

Secondly, log in OpenSolaris.
After logging in , you might recover menu.lst by using this command:

pfexec /boot/solaris/bin/update_grub


And menu.lst would be recovered.

Thứ Năm, 12 tháng 2, 2009

Một số vấn đề cần lưu ý khi tham gia OSUM

Bạn có thể tham khảo hướng dẫn chi tiết cách tham gia OSUM tại đây và giới thiệu chi tiết về OSUM tại đây

1) Tham gia một Group

Nếu bạn tham gia một Group nào đó, bạn sẽ được email về mọi hoạt động của nhóm như là khi có những event mới, những discussion mới ... Tuy nhiên đôi lúc bạn có thể bị làm phiền vì nhân quá nhiều email như vậy. Bạn hoàn toàn có thể tắt tính năng này bằng cách truy cập vào trang của Group mà mình tham gia, click chọn "Stop Following".
Bạn cũng có thể gởi lời nhắn của mình tới tất cả các thành viên của nhóm bằng cách chọn mục "Send Message To Group".
Nếu không còn muốn tham gia nhóm nữa, đơn giản bạn chỉ cần chọn "Leave Group"


2) Tham gia một discussion
Khi tham gia một cuộc trao đổi hoặc tranh luận nào đó, bạn không muốn bỏ sót bất kỳ chi tiết nào. Vậy thì hãy chú ý tính năng "Follow" của OSUM ở phần cuối trang discussion. Nếu bạn chọn "Follow" , nếu có bất cứ một reply nào, bạn cũng sẽ nhận được email thông báo.

Một số hướng dẫn về OSUM - Khám phá OSUM cùng OSUM tour (Open Source University Meetup)

OSUM (Sun Open Source University Meetup) là một cộng đồng mã nguồn mở ngày càng gần gũi hơn với sinh viên yêu thích công nghệ ở Việt Nam và thế giới, nơi chúng ta , những sinh viên, có cơ hội giao lưu, học hỏi với sinh viên khắp nơi trên thế giới cũng như nhân được sự hậu thuẩn từ các chuyên gia mã nguồn mở nổi tiếng trên thế giới.

Để tham gia OSUM , các bạn có thể tham khảo hướng dẫn chi tiết.

Nếu bạn đã là thành viên của OSUM, thế thi bạn có thật sự biết OSUM là gì không ? Hãy cùng với tôi khám phá OSUM !

I. Trang chủ của OSUM , tab "Main"
http://osum.sun.com/

OSUM không chỉ đơn thuần là một website mà nó còn là một mạng xã hội, một cộng đồng yêu thích công nghệ mã nguồn mỡ. Đến với trang chủ của OSUM, bạn sẽ được cập nhật những thông tin mới nhất của sinh viên từ khắp nơi trên thế giới.
Bạn cũng có thể theo dõi hoạt động các nhóm mã nguồn mở của một quốc gia, một trường nào đó bằng cách chọn ở những vòng tròn màu đỏ của hình bên dưới.


II. Tab "Invite"

Bạn có thể dùng chức năng "Invite" để mời bạn bè của mình cùng tham gia OSUM


III.Tab "My Page"

Như đã để cập ở trên, OSUM là một mạng xã hội chuyên về mã nguồn mỡ trong sinh viên, mỗi thành viên sẽ là một cá nhân đóng góp cho cộng đồng ngày càng phát triển.
"My Page" chính là trang Home Page hay Profile của bạn. Mỗi thành viên OSUM sẽ có một "My Page" của riêng mình và bạn có thể tự do "tung hoành" blogging mọi thứ mình muốn trong "giang sơn" My Page của riêng mình.
Việc thiết lập cho "My Page" cũng tương tự như việc thiết lập cho các mạng xã hội khác như Facebook hay MySpace ... Bạn sẽ có Wall, FriendList, Groups, ....Bạn hoàn toàn có thể thực hiện những chức năng như Comment trong Page của người khác hay gởi tin nhắn cho bạn mình ...
Một tính năng đáng lưu ý của OSUM là bạn có thể thêm RSS cho MySpace của mình. RSS có thể là nơi bạn cập nhật thông tin từ website mà mình quan tâm.
Và hãy còn nhiều chức năng khá nữa, bạn hãy tự mình khám phá đi nhé ^^

IV. Tab "Groups"
"Groups" giúp bạn tìm và tham gia vào những nhóm OSUM từ khắp nơi trên thế giới. Đó có thể là một nhóm ở cùng quốc gia của bạn hoặc là những OSUM từ những "miền xa lạ" như Mỹ , Singapore , Châu Âu ...


Hãy cùng tham gia các nhóm và cùng GET - LEARN - SHARE - CONTRIBUTE theo tinh thần của công đồng mã nguồn mở.

V. Tab "Members"
"Members" giúp bạn theo dõi cũng như tìm hiểu , kết bạn về cộng đồng mã nguồn mỡ khắp nơi trên thế giới. Chỉ cần chọn Quốc Gia,Trường và Nhóm phù hợp, tất cả những thành viên của nhóm sẽ được liệt kê.


Bạn có thể kết bạn, làm quen với mọi người trên khắp thế giới thông qua tính năng này. Hãy "search" , biết đâu bạn sẽ tìm được "một nửa kia" thật "đỉnh" của mình ở một OSUM nào đó chăng.

VI. Tab "Forums"
"Forum" là nơi chúng ta cùng học hỏi, chia sẽ về tất cả những mặt trong đời sống từ những kiến thức nghề nghiệp "Career" đến những công nghệ mã nguồn mỡ mới nhất như là Java, MySQL, OpenSolaris , Netbeans , Glassfish ... Bạn cũng có thể mở một Topic mới cho riêng mình bằng cách click chọn "Add a Discussion".


VII. Tab "Events"
"Events" sẽ cập nhật mới nhất những sự kiện (seminar , discussion ,webinar ...) sắp diễn ra trên khắp thế giới. Chì cần chọn Quốc Gia và Trường phù hợp, bạn sẽ nắm bắt được những hoạt động đang diễn ra ở đó và bạn cũng có thể theo dõi hoạt động của tất cả các nhóm OSUM bằng cách chọn "All countries"


VIII. Tab "Blogs"
"Blogs" là những entry/post mà bạn muốn chia sẽ với tất cả mọi thành viên OSUM, cũng như qua Blogs bạn cũng sẽ được chia sẽ từ sinh viên khắp nơi trên thế giới.

IX. Tab "Photos"
Tập hợp những hình ảnh chai sẽ mà các thành viên OSUM muốn chia sẽ với tất cả mọi người. Tương tự đối với những tab khác, chỉ cần chọn Quốc Gia và Trường phù hợp, bạn có thể "chộp" được những bức ảnh chia sẽ nhiều khi rất chân thật và ngộ nghĩnh của mọi người.

X. Tab "Videos"
Tương tự như tab "Photos" nhưng "Videos" sẽ là nơi chúng ta chia sẽ video với mọi người trên khắp thế giới.

XI. Tab "Notes"
"Notes" là những chỉ dẫn, những câu hỏi thường gặp khi chúng ta tham gia OSUM.

Vậy thì còn chờ gì nữa, hãy cùng tham gia với chúng tôi tại http://osum.sun.com/ .

LET'S GET - LEARN - SHARE - CONTRIBUTE.

Hướng dẫn đăng ký tham gia OSUM (Sun Open Source University Meetup)

Bài viết sau đây sẽ hướng dẫn các bạn một cách chi tiết làm thế nào để đăng ký tham gia OSUM (SUN Open Source University Meetup).
SUN OSUM là một trang mạng xã hội rộng lớn nối kết sinh viên yêu thích công nghệ mã nguồn mở từ các trường đại học trên khắp thế giới, tạo nên một cộng đồng học thuật sôi nổi.

Để đăng ký vào OSUM các bạn làm theo các bước sau:
1) Truy cập vào trang http://osum.sun.com/ . Hoặc nếu bạn muốn trực tiếp tham gia vào một nhóm nào đó đã có sẵn trong OSUM thì bạn có thể truy cập vào trang http://osum.sun.com/group/bkitsun (ở đây tôi xin ví dụ là nhóm BKITSun).
Chọn Sign Up để đăng ký thành viên OSUM


2) Điền các thông tin cần thiết vào form


3) Tiếp tục điền thông tin profile

Cần chú ý check vào option "Yes" để tham gia SUN Develper Network.


Click "Join" để hoàn tất quá trình đăng ký

4) Như vậy, kể từ lúc này, bạn đã là thành viên của OSUM.
Nhưng cần chú ý là bạn vẫn chưa tham giam một nhóm cụ thể nào.
Để tham gia một nhóm cụ thể, các bạn click vào tab "Groups" , chọn Quốc Gia và Trường cho phù hợp. Ví dụ ở đây, tôi chọn Viet Nam và trường đại học Báck Khoa Thành Phố HCM "HCM VNU University Of Technology".


Sau đó, tất cả các nhóm OSUM của trường ĐH BK sẽ hiện ra, bạn click chọn nhóm cần tham gia (ở ví dụ này là BKITSun OSUM).


Bạn sẽ được chuyễn tới trang của nhóm BKITSun OSUM, để tham gia nhóm, click chọn "Join BKITSun OSUM".


Bạn sẽ nhận được thông báo hoàn tất việc tham gia nhóm.


Từ đây, bạn đã là thành viên của nhóm BKITSun OSUM, mọi thông tin về hoạt động của nhóm sẽ được gởi vào email của bạn. Bạn cũng có thể mời bạn bè mình cùng tham gia nhóm OSUM bằng cách nhấp chọn "Invite More People"




Vậy là bạn đã hoàn tất việc tham gia vào OSUM , một cộng đồng mã nguồn mở dành cho sinh viên nơi mà chúng ta GET - LEARN - SHARE - CONTRIBUTE.

Thứ Tư, 11 tháng 2, 2009

MAC OS X installation

Finally, i managed to install MAC OS X on a real MACbook. Thank to my friend, i had a great chance to "touch" a Mac.Mac is a great deal different from Windows such as EFI and BIOS,GPT and MBR.

After googling for a while, i found many documentations related to how to dual-boot MAC OS X and XP and even how to tripple boot MAC OS X, XP and Linux.
Below is some useful links for references:
* Tripple boot via BOOTCAMP : MAC OS X , XP and Linux
http://wiki.onmac.net/index.php/Triple_Boot_via_BootCamp
* Tripple boot via BOOTCAMP : MAC OS X and XP
[English tutorial] http://labnol.blogspot.com/2006/04/boot-camp-tutorial-install-windows-xp.html
[Vietnamese Tutorial] http://pdaviet.net/showthread.php?t=22641

There are some notes:
- With MAC OS X Leopard, XP drivers are bundled with MAC OS X CD. We don't have to create a XP drivers CD as we used to. We only install XP via BOOTCAMP and then log in XP , insert MAC OS X CD and it will automatically install BootCamp on your XP.

Thứ Ba, 10 tháng 2, 2009

Mac vs. PC -- Which Is for You?



The title and picture is taken from the website http://www.switched.com/2008/08/06/mac-vs-pc/ which exhautively show us the comparation between MAC and PC. The answer is obvious : It depends on your purposes, what kind of user you are.

SWT or Swing ?

Today, after hanging out for a while with my friends, we gossiped about every thing and there were some related to Java such as SWT, a competitor of Swing developed by the giant "IBM". After googling, i figured out what SWT was and whether it could compete with SWING or not depends on your application purposes. There are many useful links talking about SWT; however, i recommend my unknown neighbor's blog (because he also uses blogspot) for more info about SWT http://nhuthuan.blogspot.com/2005/11/swt-phn-1.html

For informative tutorials, please visit
http://www.developer.com/java/other/article.php/10936_3330861

Chủ Nhật, 8 tháng 2, 2009

Obama + Open Source + Sun Microsystems

In economic crisis, econimists and politicians are trying to reduce expenditure and Open Source is quite a right choice. Let's listen to governors talk about Open Source trends at http://news.bbc.co.uk/1/hi/technology/7841486.stm

The beginning !!!

Today, i decided to blog !!!