About this Theme

    This wordpress theme was borrowed from der-printz.com

    I have changed the theme a little bit to avoid post duplication. Also,the posts have been fetched in random order. Hence this site is designed to change dynamically with every reload.

    Please see the "About me" tab above for more information about me and the web site. Thanks for looking me up!

j2ee

Performance Analysis of a web application
This entry is part 7 of 9 in the series optimization

Application performance testing is just about the last thing that we may have to do before we could certify an application as production ready. Or it may be just about the last thing we do before we decide to discard the app in the dumpster. This may be a loud roar or a death knell […]

management

Business Model vs. Revenue Model

Even code geeks know that a company needs a business model to survive. A busines model tells you about why the company exists, what does it do and how it makes its money. Traditionally, a business model was combined with the revenue model i.e. it has to talk not only about what the business does […]

design

Class Dichotomy

In the beginning was the Class. The class had fields (or instance variables or members ) and methods (or messages or member functions) . The programmer created the class and said “I created thy from nothing. Thou shalt exist and breedeth instances of thyself which would be objects”. And the class was happy and the […]

architecture

The n+1 selects problem..

A few years ago, one of my numerous job sojourns took me to an interesting project at a telecom company.  I was a developer then – as I would like to think of myself today as well – and had to maintain code that connected to numerous databases and published various services. In one of […]

process

On Project Ramp ups
This entry is part 5 of 9 in the series Software Engineering & Agility

As I think back about all the failed projects that I had seen, I recognize one unifying feature about them. They all took too long to ramp up! I am not saying that they did not spend enough time on design or architecture. On the other hand, many of these failed projects spent an inordinate […]

java

Multi Column Sorting in Java

  Link to code. Java provides a reasonable API for sorting. The Collections.sort() static method which has been modelled from C++ STL caters to a decent cross-section of sorting requirements. This accepts a list of objects and sorts them. To summarize what is provided by the sorting API in java, there are two variants of […]

optimization

Perf Analysis – Browser Caches & Response Code 304
This entry is part 5 of 9 in the series optimization

With no offense to the favored species, here is a bad joke about blonds: Question: Why is it a bad idea to give the weekend off to a blond? Answer: Because you have to retrain her on Monday. But browsers, unlike blonds, learn from experience and keep these learnings for sometime. Which means that if […]

OTHER ARTICLES

KPI – Key Performance Indicators

One of the often over looked aspects in an application is the capture of Key Performance Indicators(KPI). As an application ...

IOC, AOP – 101

I had given a keynote in a conference sometime ago, about the Spring framework. It constituted a presentation on the ...

SEPG

Recently, I have been very involved in hiring for and growing our Software Engineering Process Group (SEPG). Thus ...

Identity Crisis

It is hard to imagine going through life without having a name.  This dictum applies to the world of objects ...

On Shells, Pipes and Senile Operating Systems..

I have never lived in New Hampshire. But its motto ('Live Free or Die') reflects the spirit behind free ...

On Choice & Necessity

I see quite a few arguments in various forums bemoaning about the surfeit of choice that is available in the ...

The Power of “NO”

In one of the forums that you are prone to catch me poking in, I saw a question that was ...

The evil Static Method

The keyword static possibly started as the first attempt at encapsulation. C Programs consisted of functions that spanned across multiple ...

On Modularization

Modularization is one of the most important and unfortunately one of the most often ignored features of software development. ...

On the Design of Software Organizations – Balancing Autonomy with Governance

With a spurt in the documented history of any field of endeavor, we will begin to discern some recurring cycles of ...