Monday, June 25, 2007

I am back!

After a long time today, I read the blog of a person who is very close to me. Even though he is not related to me through blood, but he is as close and as dear to me as my brother. His name is KS. He was my brother's classmate and a real gem of a guy. I learnt a lot from him on maturity, thought process, family values... The list is too big to summarize here. Then, for sometime, we were out of touch. Today i chatted with him after a long time, and I feel very nostalgic about all those times when he was at home, studying and struggling to get into a Business School and I was working in Delhi. We used to write to each other mails ... and boy o boy, they were just images of our hearts, being shared with some other self.

I miss all those times. I miss that innocence, that little pleasures in life that we wanted to share. Those moments that used to sway us. I still remember that small poem that I wrote for him, to encourage him.

Gone are all those days, and gone is that time. But I still cant help the love I feel for him. He is my brother, my friend. He still is my younger brother, who never fails to amaze me through his actions, words, deeds, in countless ways.

I lost myself in the meaningless run of life. In that pointless chasing of pleasures, necessities and luxuries that I have come to find no free time for myself. But, now I do. It is just a matter of time and patience that I rediscover myself.

I feel totally blessed to have my bro and KS in family and circle. These two people have influenced me so much, and in so many ways that I want to thanks God with all my heart. The mad rush of life had made me move differently. But now, I am back, and back with vengeance.

Tuesday, June 19, 2007

NewCastle United - Giants in Coma

I am disappointed with the performance of NewCastle United. Always called as the sleeping giants, I have started to wonder if they have are 'Giants in Coma'. Whenever I look at the team line up, I fail to find a reason why this team fails to deliver. Last month, it lost matches to Blackburne, Reading, drew with ManU and Arsenal whereas I feel that they should have run riot in 4 out of last 7 or 8 matches.

Ever since Alan Shearer has retired, I am note sure how successful the team has been. I dont even know what kind of team building efforts these people have. It is not important to have a team full of big names like Barca or Chelsea. All that you need is a team, like Sevilla. You want your team to play as a unit, understand each other and above all, behave like a team, not just off the pitch, but also on the pitch.

I am hardly in a place to comment on what is going wrong. However, I feel there are some basic things wrong about this team.
1. Defence sucks.
It is only my opinion, but I am pretty convinced that Newcastle United has one of the worst back-lines in the premier league and Europe. I have seen them concede so many times that it seems as if the defense lacks the depth. It lacks that level of expertise. I am not sure if I will attribute this to inexperience/lack of skill. It may be more of lack of proper coaching or lack of clarity of purpose. As the season ends, I would have sacked the coach only on the basis of the number of times we conceded.
2. Midfield is not aggressive.
I have watched the matches a couple of times, and I have found that the midfield is not very fast. They are fast, but they have to be faster. They have to have that mentality to score on the counter. All the successful teams are deadly on counter. Juve still is, even after losing Ibrahimovic. This is where I appreciate the likes of Rooney, Ronaldo; and that is where Man U are doing so good. And that is what Tottenham addressed by getting Barbatov(dont know if intentionally). They should learn something from German soccer. I feel German soccer is amazing on counter, especially Podolski and Klose.
3. No Poachers!
I think this is something very basic that has gone wrong. Newcastle has no poachers. Every successful team needs one. Look at what Inzaghi did to Liverpool in UEFA CL final! Martins and Owen try to do that, but why are they unable to do well? Look at #1 and #2. They are needed behind the central line after some time.
4. Strategy sucks.
At best, I have seen some hint of players knowing what they should be doing!?!? Most of the time, they are simple random bunch of blokes trying to get their hands on the ball or looking to retain it. Either there is a lot of communication gap or most of the time the strategies are misfiring. Only people in the dressing room know the truth.

I hope someone from NewCastle United is reading it and above all, someone in a position to act is reading this blog. I dont say sack the coach, probably communication lessons are enough.

It is a little disheartening to see that one of my favorite clubs is going further down in the table. Don't know what's the plan for the new season. Hope there is something planned to address all the above issues.

Wednesday, June 6, 2007

Spring + Effective Communication = (Good!?) Agile

Currently, in my project, this is my first brush with Spring, and I have come to find that spring is the ideal framework for developing applications with intense business logic. There are certain features in spring that I find immensely powerful. However, there is one feature that really takes the cake: Dependency Injection!

Imagine a system where there is one flow for creation of some account. And there are various steps, which will be performed by different sub-systems. As of now, given that these systems have been developed by different people, the most popular and simplest way is to write these components and call one after the other component. More or less every component is hard-wired and will need some or the other portion to be written into the code. So, it also goes to say that changes will be that tougher to implement, you will have to change things in the code to get any change working.

What Spring can make you do is to define your entire flow in one XML and business interfaces and their implementations. It will ask you to create an XML that will pull all these implementations together and provide references to your component through the interfaces. Your business operation class' setters will be used for dependency injection.

For example, for creation of an account, I may have n number of operations like background check, credit history check, professional background check, etc. I just have to formalize input and specify interfaces, write an XML and will detail implementations of these interfaces and add references of these implementations to my account creation class. It is like defining a flow chart. Yes, it is as simple and as debuggable as that. Add the AOP concept for logging and security, and VOILA! you are ready for an app that is better debuggable and maintainable than never!

But... there is a catch. The entire magic of this arrangement works with impeccable integration between components. There has to be a clear protocol and business picture between two components. They have to be on the same understanding of the protocol.

So, organizations, that have good managers, can look forward to excellent applications using Spring. I am sure since Spring creates the entire application through smaller portions and pieces, it is the perfect platform for using Agile technologies. And as usual, agile also faces the biggest challenge of clear and precise communication.

Agile is being touted as the silver bullet for many issues, whereas it is not. Agile has its own list of pain-points. Combined with Spring, Agile can be a magical journey of controlled and managed software development. However, it can be an anathema for both Applications development company and its client.

The key here is... Communication!

Hare Krishna.