Wednesday, June 18, 2008

Sun Tech Days 2008 Day 2 - OpenSolaris 2008.5 Track

Sun admitted that Solaris’ late move to open source is a big mistake. They said that while they were busy making money, they were already losing the server market, Linux is taking over very fast.


Having tried several versions of Solaris and OpenSolaris, in my honest opinion, opening its source code to the public is a good move. :D


What’s cool in OpenSolaris 2008.5?


1. IPS - a network package management system that resembles an apt-get type of command. Thanks to Ian Murdock.


2. Bourne Again Shell - C Shell is no longer the default one. This makes majority of the Linux users comfortable when shifting to OpenSolaris.


3. OpenSolaris Developer Expert Assistance - A dedicated online support service for developers that provides technical assistance for code support, programming questions, diagnostic advice, how-to’s and best practice guidance.


4. OpenSolaris Subscription Support - Telephone and online technical support. Provides automatic notification of security updates.

Tuesday, June 17, 2008

Sun Tech Days 2008 Day 1 - NetBeans 6.1 Deep Dive

Though in a project with a tight schedule, I was given the chance to attend Sun Microsystem’s Sun Tech Days. I got a free VIP pass luckily because our company uses Solaris boxes. Anyway, here’s what I’ve picked up today.


1. NetBeans 6.1 has -/+ 40% improvement in performance - This is good news. I might be able to use this as an argument for replacing Red Hat Developer Studio in our company. It’s an Eclipse-based IDE, it’s not bad though but there are some glitches.


2. NetBeans 6.1 Platform for Desktop Application Development - The wizard for a kick-start is cool! You can jump in and start crafting without worrying some productivity-killer configurations. Mantisse rocks!


3. NetBeans 6.1 JavaScript Support - If you’re a web developer, and you’re worried too much of cross-browser compatibility issues, this IDE is intelligent enough to determine if your code will work in a specific browser.


4. NetBeans 6.1 Improved Refactoring - If you are renaming an identifier that has already been used in several lines of code, you don’t have to do a Find-and-Replace anymore. With just some key-stroke combinations, you will be able to see on the fly the identifier being renamed. This works with JavaScript code as well. This is pretty useful.


5. NetBeans 6.1 Profiler - This is useful for code reviews. You don’t have to worry about how to configure stuffs for the profiler to work and it spits out very useful information. Makes sense if your customer wants a search speed like Google’s. :D


6. Visual JSF Web Plugin - One of the productivity-killers is developing the web application UI. This plugin will keep you focused on the business logic rather than the never-ending battle of JavaScript standardization and strict mark-up layouts. This is pretty useful.


7. NetBeans 6.1 Support for Hibernate and Java Persistence API - This is cool! This makes our life easy! Now I have more time for some other stuffs.


8. NetBeans 6.1 Web Services Support - Pretty cool thing if your application requires more outside intervention such as data coming from sophisticated apparatus (semiconductor-manufacturing or test machines).


There are a lot of useful stuffs to play with at Sang Shin’s site http://www.javapassion.com.

Saturday, June 07, 2008

Data Operations in Java

In my previous posts, I have enumerated the different types of data, the place where they temporarily reside and their characteristics. Those data are no way different from garbages if operation or manipulation is prohibited.


Java operators can be classified in to three categories according to their operands:
1. Unary Operator - requires one operand, examples are:



++a; a++; --a; a--;

2. Binary Operator - requires two operands, examples are:



j + k

3. Ternary Operator - requires three operands, a very good example is:



!isJosetHandsome() ? "You are a liar!" : "Honesty is such a lonely word.";

Java operators can be also classified in to the following categories according to their purpose:
1. Arithmetic - operators that perform basic math operations



a % b

2. Relational - operators that are being used for comparison



mine > yours

3. Logical - operators that are used for applying boolean logic



isClear() && isConcise()

4. Assignment - operators used for temporary assignment of values



Double idealMonthlySavings = monthlySalary * 0.40;

5. Advanced - all other operators such as parentheses, ternary if-else, brackets, new, instanceof, etc. fall here



float f = 8.8;
int i = (int) f;

Tuesday, June 03, 2008

I turned 0x16 last May 31

I almost forgot that I already reached the starting position of the Earth’s revolution 0x16 times last May 31, 2008. Thanks to all.