Wednesday, January 30, 2008

The D-I graph


What is a D-I graph? Its a graph between the total discovery against the total inventions an average person makes in his life time. Its not one or the other but higher the better. The more discoveries you make or are familiar with, a better consultant one can be. The more invention you do better engineer you would be. And these are just two roles. The most successful people I have met score very high on both. Most of the time an average software developer does is discovery. Solution already exists he/she works through its implementation. Where do you lie?

Edwards should not have quit, Or should he?

I didn't like the idea of John Edwards quitting the presidential race. He was nice to hear. Ideas that come from the grass-root America and not a corporation mouthpiece. People who are still not comfortable with an idea of a first black or woman president have lost a choice. Who gained? McCain of course. Edwards should soon endorse one of the Candidates and position himself as a Vice Presidential candidate. After two races I think he deserves that.

Saturday, January 26, 2008

Nuiances of Software deployment

The least well thought component of any software is how it is deployed. Even documentation is getting better but some of these deployment architects remain with questionable sanity.

  • Application related files are deployed in numerous different places and not in one single directory that you asked it to deploy itself in.

  • Stringent dependency on having super-user or root privileges. WHY? What are you trying to do that you can't with "an alternate" way?

  • Using System environment variables without telling it that they are used. If I eventually end up reading the scripts then why the heck do you have an "installer" for?

  • Using hidden directories like "$HOME/.abra".

  • If the CPU light is madly blinking then please notify me what the heck are you doing?
  • Tuesday, January 22, 2008

    Pak not hunting Osama - So where did the Billions go?

    Revelation: According to Pakistan's President Musharraf, Pakistan is not hunting Osama. So lets do a little math:
    1. US didn't have any problems with Taleban only if they had relinquished Al-Qaida.
    2. US invaded Afghanistan not in search of Taleban leaders but in search of Al-Qaida leaders.
    3. US pumped in billions of dollars to Pakistan to help them for what?
    4. Musharraf's priority is to hunt down Taleban entrenched in Pakistan. Al-Qaida don't matter.
    5. Taleban is important for Mr. M because they threaten his government now. Al-Qaida don't matter.
    So why don't they fight Talebans themselves? Why should US send in any more Tax payer's money to them when their priority is different from US'? Why should US residents risk foreclosures when their hard earned money is being burnt in some remote inhabitable mountains?

    Monday, January 21, 2008

    The magic of Brahmastra - A story of Clinton

    Folks who are familiar with Ramayana and in general Hindu mythology would know about a weapon called Brahmastra. Brahmastra means: Brahma's weapon (Astra in Sanskrut). This is a weapon that never fails but what matters is what for, how and where it is used. Also they are not in plenty - just one and once used it goes back to its real owner Brahma. Indrajeet, the son of king Ravana had one. Before going to war that Brahmastra had to be used otherwise it could have been used against Rama. Shree Hanuman plotted its use by Indrajeet much before they go to war. He used it on Shree Hanuman with an intention to capture and humiliate him. A powerful weapon used to fulfill a pity ego.
    Enough said about the story. Bill Clinton happens to be a Brahmastra in Hillary's presidential bid. A person that carries so much of respect not only by American democrats but the entire world. It was important how and when did Hillary use him? And she used him at the wrong time. His rhetorics against Obama, his fairytale comments and that too this early in the primaries not only had very little effect but has now at risk of being permanently neutralized. From now on what Bill says will have lesser and lesser affect. Hillary's goal is not just winning a few primaries but to go all the way. She just hit the panic button and that too this soon. Imagine what Bill could have done when Edwards had pulled out and from then taking straight on Obama and later finishing off the republican candidate. A powerful weapon just being wasted.

    Saturday, January 19, 2008

    The root

    Have you seen a Tree? Branches that spread far and high? But the root which is responsible for it most part stays underground and invisible.

    The sweet sixteen

    Its a number which is a pinnacle of recklessness. A number when we start looking at the world in a different way. Sixteen is the number a lot of folks just wish to stay at. I guess Aussies thought so too.

    Friday, January 18, 2008

    There is a difference between a Zoo and a Jungle

    The news now is that the Tiger killed the person because he was taunting him. Bad move. Its never a good idea to tease and agitate an animal. By spreading these reasons, is the Zoo trying to avoid its responsibility? How come did they design a place that was physically possible for the Tiger to jump? To protect human lives is a bigger responsibility in a Zoo. Its not an open space or a Jungle where the risks are known and you sign up for. It was a bad move for that person to do anything to agitate the animal but the Zoo can not just escape from the fact that the den was not designed for the complete safety. Sick people.

    Thursday, January 17, 2008

    MySQL?

    A few weeks ago I got the last aisle seat in the plane as an earlier flight was late and there were some available seats. The advantage of the last aisle seat is that going to restroom is never an issue. Just free to go anytime. The second, its an observer seat. And so was it as I found one over zealous Marketing professional from Sun Microsystems sitting diagonally opposite to me. He was reading a presentation he might have attended that caught my curiosity as I saw one funny line Keep promoting MySQL to the customers and of course other interesting statements. Now, with MySQL's acquisition I guess that "plan" is taking affect.
    So what actually does it mean to offer a database? Barring very high performance databases like Oracle or DB2, does it really matter if you use MySQL, Postgress or SQLite in the back-end? Who cares what the database is if all your data resides in a Grid like Coherence? The best feature offered by your database can be done in a fraction of a time in the Grid.

    Tuesday, January 15, 2008

    The doom of Gentleman's game

    India and Australia have scrapped the catch agreement. What it means is if a fielder catches a low catch the teams will believe the fielder's and the Captain's integrity rather than to refer it to the Umpires. This agreement has now been scrapped. The Gentleman's game has now doomed to its lowest. The stress level and the pressure to win in Cricket has tremendously increased in the recent times. Whats sad and annoying is that it happened with Australia - the team that held so much of respect. I guess they did not know what they stood for. Sad sad sad. I guess the Cricket ratings now starts with 2.

    Monday, January 14, 2008

    The death of ezMQ

    I am discontinuing any effort I was going to put towards the development of ezMQ, If I was ever going to. First of all what the heck is it? The year: 2003-2004. I was given a task (for sun.com) to manage the caches across multiple webservers. The requirement was to remove the cached contents if any changes occurred in the content management system. I built a reactive system using JMS (With Sun's iMQ) and with messages of updates from the CMS we ended up clearing it from the Cache. The trick was that each individual application instance registered itself as a subscriber to this event and cleared their respective in-memory cache. It was an Optimistic unsynchronized cache. The same copy on each individual node. BTW, I did not write the cache just the MQ part though I was not happy with my own implementation. Of course something was missing. I started a project called ezMQ with an intention of Open Sourcing it "one day". ezMQ - A name for easy Message Queue that could work across multiple instances of JVMs not in a "Pub-Sub" mode but something that would behave like a Grid. The idea was to load only subset of data in individual JVM but allow access to it from any node. [A true partitioning of data works very differently where the provider partitions it automagically. The application had two internal modes - One a simple implementation of Observer-Observable pattern that the app used for "with in JVM communications" and a JavaSpace driven implementation for "Networked JVMs" with the same interface to the application client of course. Never had the motivation to complete the project that remained in my "to-do" list for years. I now know I could not have completed it.
    Now, I am discontinuing this effort. After working with Oracle Coherence I understand why a Space driven architecture could be bad. And who will use ezMQ if its Grand-dad implementation is already there. The second reason being the SwiftMQ. I have not read about it and I only found it's link from one of the blog comments. Don't know what it is but looks like the "swift" will make my "ez" obsolete. Above all, my energy only goes upto 10-15 classes, after that I lose any impetus I have. I have figured it out, for any serious ezMQ I would need many more classes than 15. Woo-hoo, my lazy ass wins again!

    Saturday, January 12, 2008

    Give me a Bharat Ratna

    Indian politicians once again demonstrated how stupid they can be. They are now fighting for "their candidates" to be the next Bharat Ratna - the highest civilian award. Atal Bihari, Kanshi Ram, Karunanidhi and Jyoti Basu are the names popped up. Actually, We common people are the real Bharat Ratnas for who there is no difference between a Muslim, Tamil, Brahmin or a Bengali. Look at the list of awardees in the past, the only one even close enough to these Gems "Is WE" (Remember Times'?).

    Friday, January 11, 2008

    The truth about Nano

    Tata, Cheap, India - No I am not talking about off-shoring. This is Tata Nano a new $2500 car specially targeted for four member middle class families in India who hitherto could only afford to drive scooters with two kids and the wife on it. Its the price that is the catchiest of all - The world's cheapest car on road. This car also reminds the world of a middle class who so far have been hidden under the shadows of the glimmer and shine of recent economic success the country has enjoyed. A wall around four wheels for some protection that the scooter is so infamous for besides the pleasure of owning a Car that still a distant dream for millions. All said, one thing that this car should not claim to be is being the cheapest car of the world. Cheap? Is it even road worthy in some of the other countries? A total of 33BHP, no airbags and a top speed of just 65mph does not qualify it on many roads including that of the World's biggest auto market - America. But its okay if its not street legal on US roads, it is perfect for millions of Indians. It is not meant for America. Just drop the "Cheapest" claim and enjoy the ride.

    btw, one of my friend pointed out this still being the cheapest car in the world. It just happens that no other company ever targeted this segment.

    Thursday, January 10, 2008

    Why Coherence?

  • So Why do you use a Database? When we solution architect a system and consider a database, what is the core motive of doing so? Data Persistence - A common response. But is that really true? If I have a hard-disk and I save a file in it but somehow for some funky reason if my application cannot access that file, even though the process of persistence might have succeeded, it is of no use because I can not access it. So really as a "solution" its not about persistence it is about availability. Data availability is the real reason why we consider a database. Of course other goodies come along with it. Databases take the approach of persistence to address the problem of data availability.
    When we talk about Cache though our perception changes. Its a small short-lived "local space" from where we can access the data Faster. Hmm! So really a Cache and a database they both revolve around the data availability but with different approaches and different problem space. One around Persistence and the other around speed. Oracle Coherence fills the gap. If we can guarantee the All-data availability with faster access why would you ever consider going to a database to fetch it? This problem space is where Data Grids feed. The features of the Cache with the goodies of Database. Of course it is not this straight forward but at a very high level it is. A set of interconnected memory heaps managing Objects, working together with infrastructures of Data Queryability(sp?), managing object life, failover and continuous availability is what Oracle Coherence has to offer.

  • Is this a replacement of an ORM? - No. This is not a replacement of anything. It addresses the gaps of many technologies - Application Servers, Database servers, Messaging but it does not replace any. ORM only addresses the Impedance mismatch between a relational data-model and hierarchal domain-model. Coherence only manages the in memory serialized data. The data can be loaded from a relational database or LDAP or Flat files. It does offer to integrate Hibernate or Toplink with the Grid through CacheStore though.

  • If we have different kind of machines in a grid, Is the Speed of Grid same as the slowest node? Have you downloaded a movie from a P2P system? The chunk of data you fetch or put from/on a slower system will be slower but the data fetched from a faster system will be faster. Coherence is a P2P implementation. Yes, homogeneity matters and is important with your network switches. We can connect any type of system to a Grid either as active members or Extend Clients (decision after system analysis).

  • You only wish to conjoin a Rail engine with a Corvette to achieve Performance and Capacity in one system. It does not work that way. Enabling and Disabling "High Performance with High Capacity" is not a Checkbox option. This is a development process. If you need high speed magnetic train, you need to build it that way. This is the reason why the programming model of Coherence is manual use of APIs.
  • Tuesday, January 08, 2008

    The cry baby wins the race

    Nothing against her (Just a humor). How could you cry being a Presidential candidate? Where was "I am so tough" and "I am so experienced" phrases? But looks like people liked it. So are we going to brace ourselves when Ahmedinazad (Or which ever way it is spelled) threatens to blow up America, instead of 1000 missiles launched at him, for a teary letter - "Please don't do it, I love the public service"? How come McCain didn't cry? Even after unquestionable record for the country, when it seemed nobody was listening to him. He did not cry. He won! Thats called TOUGH.

    Dog vs Monkey

    There is an allegation that Bhajji called Andrew Symonds a Monkey during the second Cricket Test. There are no "proofs" as no one else heard it but Symonds, the charge Bhajji denies. "If" it was said in a bad taste then Bhajji deserved what he got. If not then then this is a start of a very bad blood between these two cricketing teams. Said it or not, but does anyone remember the Cartoon showing Pakistan as a Dog to the American Army? A lot of voices we heard in support of that sketch based on what a "Dog" means to this culture - A very loyal and close friend. These voices not only came from America but from Australia too. Remember? Remember? I know these incidences are not connected but I am curious where those voices are in Australia today that supported the "Dog" comment as being okay. If Dog is good in one culture how come Monkey should be challenged in the other? For the Pete sake, Parents call their Kids Monkey on their mischiefs what a big deal? Professionalism is not just about winning, its losing gracefully too. The world respected the Australian Cricket team for years for what they have achieved. That respect now is at risk.

    Sunday, January 06, 2008

    Steve Bucknor is a jerk..

    ..And he has a history of giving wrong decisions against Indian' batsmen. Winning and Losing is a part of the game. But losing because of continuous bad decisions deserves a kick on this Umpires' @$$. Oz.. you did not win your record 16th.. Mindless SB gifted it to you!

    And Indians: You did not deserve to win but yes did not deserve to lose this way either. In fact the second test was India's if the Umpires had some open eyes and alert ears. On the other hand, In all the four innings this had become a repetition: Jaffer out early (Replace him), Dravid slow as hell, A few struggles in the middle (If they succeed), Yuvraj totally useless in 5-day matches, Bhajji and Kumble managing to harass and then quick wickets at the end. This is not how a strong Test team plays. This series has exposed where Oz's weaknesses lie, so work on it.

    Thursday, January 03, 2008

    Only if this was (politically?) possible

    (Next)
    Vice President: Joe Biden
    First Lady: Elizabeth Edwards
    Minister of Defense: John McCain