Tuesday, April 15, 2008

Java/J2EE Project Name proposal.

Choices of names proposed:

  1. William Wallace
  2. Great Alexander
  3. Gladiator
  4. Big Boss
  5. Ashoka (Why not Indian Names?)
  6. Sivaji

I like to choose any one from the list. I would be happy if you could pick up one name and vote it!
Or I can go about choosing one name to separate dev/build release cycles.

So, for whom this name?

I have planned to evaluate Light Weight J2EE Architecture. I am planning to re-engineer SAB with LW J2EE. Or, I am planning to build a biggest sample application that will cover all application life cycle scenarios. I have sent a re-engineering architecture proposal to some of my friends. They wanted me to think about a new one to start from scratch.

I might work on coming up with a new application architecture that will cover

  • Complex persistence scenarios
  • Complex Integration Scenarios
  • Commonly used architectural patterns
  • Light Weight J2EE Components trade off over Heave weight Components to satisfy Non-functional requirements.
  • A complete product development life cycle (including development guide, source control, various testing process, build maintenance, releases, patch releases, bug tracking, etc)
  • Comparing and contrasting different stacks of J2EE/Generic Enterprise application.
Let me work on it for some times.

Fastest Ride on road, ever!

I was so excited to ride my bike towards home. I had planned to take my bike to home. So, I loaded the bike into a Volvo. I got down from Volvo, 80 k.m away form home. Decided to ride. I think it was NH-45, if I am not wrong.

I revved up the engine, and picked up high speed on the road. Here goes all the fun!
It was very morning 7:15 AM. I started from Dindigal bye-pass road. I was very sure about the route. There is a junction, just after Dindigal town. It separates NHes. So, I was riding so fast to reach the junction. Seems, people were working on repairing the roads. So, they kept lots of ‘Take Diversion’ boards. I was going so fast, so, I took quick cuts, as soon I saw the boards. After passing ahead some kilometers, I had a slight doubt whether I was going in right direction. Because, I did not have seen the junction that far! One stranger on the road, made it sure that I was going in wrong route! I asked that guy why I didn’t reach the junction even after riding about 5 km. He said that the ‘Take Diversion’ boards should have misguided me! (There is a joke in tamil movie: Vivek is searching for his interview venue, but he is misrouted to Tirupati!, because of ‘Take Diversion’ boards). At least in my case, I went only for 5 km in wrong direction. (At least, I am lucky that I was not misrouted to Kanyakumari!)

The road was so neat and wide that anyone would drive mad. I am too not an exempt, but not a mad. In my childhood, I traveled many times on the roads by corporation buses. But, they were slow sometimes. I was wondering why not they could be fast on free NH roads.

But, now I am doing it. I was overtaking any vehicle running in front of me. I remember I was driving at 80kmph continuously for 15 minutes, and crossed about 20 km within 15 minutes.
Averaging the speed at 70 to 75 kmph, I passed ahead of 75 km within 1 hour 10 minutes. Our corporation buses take 2 to 2 and half hours to cross the same distance.

I should say, I got so excited at this ride. The white bars on the road were going back so faster; the trees were going back; I felt like I was, kind of flying alone; I realized every tree, plant, on the road was happy! I wanted to still ride, even after reaching home.

Facts behind the ride:

  • It is the fastest journey on earth in my life. (Volvos, Sadapdhi express couldn’t win! :-))
  • It took 1 hour and 7 minutes to cross 77 Km (Including break). Most of the time hitting 80+ kmph, and averaging at the speed at 75 kmph.
  • I overtook all the vehicles hit at my eye-sight. No other vehicle overtook me! 
  • I was listening to the music, while driving for the whole 75 km. (I had to take care of vehicles coming/going in the front only. No need to look back! Because, I am sure, no body is going to come closer to me in that speed)
  • I have not set my front mirrors, during the ride. – (reason is same as above)
  • I was trying to take a right-cut at full speed, the bike was about to skid, I controlled it (just like it happens always!)
  • By reading this post, do not conclude that I am a mad driver. I am very careful at driving, you won’t believe that! :)

Thursday, April 10, 2008

The 300th Blog post!



This post is somewhat special. Yes, it is the 300th post in my blog, following 4 years of blogging history! I published my first post on 5th Oct 2004. Time has gone in its own way.

Here goes my personal view on blogging:

What do you like about blogging?

I like to blog. Either, let it be a good moment or bad moment. Blog can be thought as log for life. My blog captures my lifestyle, almost all incidents in the recent years. If I want to recap what I have done in the past, I go through my blog simply. So, I like blogging.

How frequently do you blog?


Depends. Depends on mood, time availability and etc.

How much time does it take to publish a single post?

I usually do not think too much while writing a post :-) I just put in whatever it comes to my mind. It usually takes less than 20 minutes. Also, I type faster on keyboard. So, it does not take much time for me.

What do you like to post and what not?

I prefer posting only personal stuffs. I do not like posting any social matters. Because, it leads to unwanted issues. Also, I do not want to post any specific technical junks/code here. Because, I like to keep the blog to be a complete personal space. I write about technical stuffs here: http://java-j2ee-architecture.blogspot.com/.

Whom do you think, your readers?

Actually none. I do not think about any readers/audience while writing a post. As I said already, it is personal stuff. But, I am forwarding some posts to some people, thinking their interest will also be on the same lines. However, all the readers are warmly welcome!

Thanks to all readers! Happy Blogging!

Tuesday, April 08, 2008

The real Hitler's speech!

When somebody is arrogant or very aggressive, we curse him as Hitler. Then, just thought how the real Hitler should have lived. I watched this video 'Hitler's speech' in youtube.! damn, he throws sparkles in his speech. Though I could not understand his language, I am getting scarred to see his body language. Till date, I never ever seen any politician or any leader has spoken in that aggressive/motivating style! This 55 seconds speech can wake up any lazy human being.

Monday, April 07, 2008

ATM Machines..! Who has written?

It was late night. I reached my home by a taxi. As the taxi driver did not have change, I asked him to park at a near by ATM. I came running to the ATM Machine to draw some hundreds. Here goes my interaction with the ATM:
---
Enter the card no: xxxx

Enter the Amount: 400

Choose Type: Saving Account

Confirm: OK

Output: Error: Please enter amount only in multiples of hundred (100).

---

I repeat the same use cases multiple times but, the output is the same error message. Even, I cross checked many times whether 400 is entered correctly. I am totally confused myself, whether 400 is divisible by hundred or not! Then, I couldn’t understand why the error message was displayed. I ran to another ATM, and I was getting some other error message there. Error: You have exceeded the maximum limit. (I have not drawn any money using my card for the last two days). Are the machines gone drunk?

Whenever, the ATM machines are ‘out of service’, I am not upset. Because, there might be ‘N’ number of reasons. It is agreeable. But, when they display such misleading/incorrect error messages, I easily get tensed. I am searching for the guy, who has written that kind of software.

It is not that, only the functional deviations are bugs. Also, if a system does not handle a error situation, or does not display a proper error message, then that is also a bug. It is a serious bug, at customer perspective. Leave the customers aside. Just few questions to the guy, who has developed the ATM software:

  1. With this incorrect error message, how will you find out what has gone wrong/failed in the system?
  2. Without knowing the actual failure, how are you going to fix it?
  3. What do you think, either an end user (me), or the bank people can react to the incorrect error message?

Wednesday, April 02, 2008

Java: Collest bug, ever seen!

Recently, I was a fixing a bug (which was introduced by me!). The bug is very silly, you may never catch it!

Issue is, a there is a java bean factory class with factory methods. In one of the factory method, a recursive call was there (which was not supposed to be), it was causing a stack overflow exception.

The factory method is supposed to be like this,

(I am providing a sample code, not actual code)

public Employee newEmployeeImpl()
{
return (Employee)new EmployeeImpl();
}

Instead of this, the code was mistakenly written as,

public Employee newEmployeeImpl()
{
return (Employee)newEmployeeImpl(); //there is no space in between new and EmployeeImpl!
}

It was accidentally typed without leaving a space between new and EmployeeImpl class. It is syntactically correct. So, the compiler didnt crip for the expression. But, at runtime, it goes as a recursive call!

So, the newEmployeeImpl() factory is getting called at infinite number of times and results in Stack Overflow Exception...

I laughed out to myself when I found this issue!