Posted by kostub on November 3, 2010
If I were to take a poll of the political inclination of the fellow Indian Americans that I know, they would heavily lean towards the Democrats. While I have never actually conducted such a poll , the slant seems quite apparent to me. Politically the Indian American community overwhelmingly votes Democrat. This result is actually quite surprising when you look at it in the light of the India-US relationship. The following contradictions start to emerge. The Bush-era has been the high-point of the India-US relationship. Secondly, two trends important to Indians – the growth of a vibrant Indian tech community in the US and the economic boom that India enjoyed in the last 10 years have been a direct result of Republican policy. So if the Republican party benefits India more, then why do Indians sit so squarely in the Democratic camp?
Before we explore possible answers to this question, let us first understand the assertion I made about the Republican party being more beneficial for India. India has dramatically changed in the last 25 years. Long gone are the days when you had to wait in line for multiple years just to get a landline or when a refrigerator was considered a luxury item. Today your street peddler, fish monger and your maid servant all carry cell phones. India has enjoyed a huge economic boom in the last decade. The seeds of economic prosperity were planted by the Rajiv Gandhi government in the late 80s. These economic liberalization policies were cemented in place in 1991 by the then Finance Minister Manmohan Singh, who did away with the License Raj, deregulated businesses and allowed foreign investment and encouraged private enterprise. In short, India moved from being a socialist economy to a capitalist one. Since then subsequent governments have continued on the path set by these reforms despite opposition from the Left. This has transformed the Indian economy from being virtually stagnant to the second fastest growing major economy in the world, next only to China.
Read the rest of this entry »
Posted in india | Tagged: democrat, india, obama, republican | 8 Comments »
Posted by kostub on October 21, 2010
Quality far beyond that required by the end-user is a means to higher productivity.
– Tom DeMarco, Peopleware
In the previous post, I outlined some of the drawbacks of Scrum as a software process. One of the reasons that I mentioned, but did not elaborate on was that Sprints result in a lack of solid software. In this blog post I’ll discuss that issue in more detail. Awareness of these issues which can and do occur in Scrum makes it possible to come up with effective solutions to combat them.
In my opinion, the primary reasons why software quality suffers in Scrum are as follows:
1. Lack of proper design
2. Artificial deadlines
3. Community ownership
Lets start with how software design is handled under Scrum. The design task is one of the hardest to plan for within a Sprint. In fact, Scrum assumes that the design should be completed before a project is even planned. This works only in teams where someone else provides a functional or technical document describing what needs to be done. At every place where I have worked, that has never been the case. The process of designing software is highly asynchronous, involves lots of external dependencies and is difficult to estimate. When using Scrum, people typically follow one of two approaches – including design as a separate story in an earlier sprint, or bundling design and implementation in the same sprint. The first approach works better in practice, but is harder to coordinate. This is especially true when Sprints are longer than 2 weeks, as it creates an unnecessary artificial gap between the design and the implementation. The implementation cannot be scheduled until the next Sprint and sometimes may have to be de-prioritized until the following Sprint or sometimes even later.
The second approach to design, viz. bundling design and implementation as one story, is more natural to execute but is more problematic. The pressure to finish both design and implementation by the Sprint deadline provides little incentive for the developers to complete the design properly by engaging all the stakeholders. For example, after two of our projects were delivered our stakeholders indicated that this was not usable for their purposes, resulting in both the projects getting no usage. The reason for failure was that the customers were just not asked for input during the design phase. The team had two choices either finishing off the implementation with a design with limited external input, or waiting for input on the design but be idle during that phase as nothing else was scheduled for the Sprint. The team obviously chose the former approach. This example is a bit extreme, but even for simpler tasks I have seen that people tend to jump into implementation sooner than they should have, if both the design and implementation are scheduled in the same Sprint.
Read the rest of this entry »
Posted in technology | Tagged: Agile, Scrum, software, Software development, software process, software quality, Sprint | 10 Comments »
Posted by kostub on August 31, 2010
There is no single development, in either technology or management technique,
which by itself promises even one order-of-magnitude improvement within a decade
in productivity, in reliability, in simplicity.
– Fred Brooks, Jr
In the past few years, I’ve worked at various companies which used Sprints to plan their work. Agile methodologies, such as Scrum, have become the latest fads in software development. Every company I’ve interacted with touts how they switched to the Agile software development processes and it is the most frequently cited silver bullet for many establishments. There are many processes that the agile methodology advocates, but the one that is being adopted most rapidly is Scrum. You can find innumerable books, websites and blogs that will extol the benefits of Scrum, but any criticism of the process is really hard to find.
Scrum has many advantages similar to those of other iterative or rapid development processes. But due to the high popularity and the heavy marketing of Scrum as a panacea, very few people realize the potential drawbacks they could encounter. This post describes the various issues that I have observed in the companies that I worked at. I will not go into the details of how Scrum works, you can find many great resources on scrum websites. However, my favorite of post on agile is Steve Yegge’s sarcastic post on Good Agile, Bad Agile.
So what are the drawbacks of Scrum? The two symptoms I’ve seen commonly are:
- Sub-optimal execution
- Lack of solid software
Sub-optimal execution is any activity that results in rework or unnecessary wasted effort. In this post I’ll concentrate on the this issue. A follow-up blog post will delve into details of why Sprints may lead to poorer quality software. Let us look into some of the aspects of Scrum that could lead to sub-optimal execution: Read the rest of this entry »
Posted in technology | Tagged: Agile, Project management, Scrum, software, Software development, software process, Sprint | 1 Comment »
Posted by kostub on August 23, 2010
It has been a few months since the health-care reform bill has passed. Some people have labeled it as a great success while others an abject failure. One thing is for certain though – the overall popularity of this reform is still quite low. So would this law make things better or worse?
While the exact nature in which the provisions of the law will affect the health-care market is something that remains to be seen – people have made strong predictions of the outcomes – the liberals have the rosy ones and the conservatives the scary ones, and some people have even thought of ways to game the system. My guess is that the real outcome will probably be somewhere in the middle, largely leaving the current macro trends such as rising insurance premiums and health-care costs unchanged and that health-care would again be a significant issue in the 2020 presidential elections. Read the rest of this entry »
Posted in healthcare | Tagged: healthcare, healthcare reform | Leave a Comment »
Posted by kostub on May 17, 2010
Public schools were designed as the great equalizers of our society
– the place where all children could have access to educational
opportunities to make something of themselves in adulthood.
– Janet Napolitano
We’ve been searching for a pre-school for my daughter and in that process I started to discover more about how the school system works in the US. And the more I learn about it, the stranger I find the system here. Now, if this system actually had better outcomes then I would have tried to make myself like it. But given that the US education system is considerably inferior to the rest of the education systems in the world, I find it surprising that most Americans like and support this system.
Especially given that in India, where I did my schooling , the education system is vastly differently. There are three kinds of schools in India – publicly funded, semi-private (publicly funded but privately run) and private. While this sounds similar to the US public, charter & private schools on the surface, the demographics that these schools cater to are vastly different. Public schools in India are targetted towards poor & low income families. These are for people who would not normally send their children to school and given the vast illiterate population in India these are crucial for educating the masses. But most people (upper & middle class city dwellers) would not send their children to these schools, and the cities are dominated by people educated in private schools. In contrast, most American students are a product of the public school system.
The big differentiating factor is school choice. School choice is extremely important in India. My parents tried really hard to make sure I get into one of the top schools in the city. And it makes a huge difference – most successful people would come from the top few schools in their city. And so while some of your neighbours’ kids may go to the local neigbourhood schools, they are just not likely to be as successful. Schools compete for the attention of parents – regularly advertising their results and test scores. That’s the one thing that I find sorely lacking in the education system in the US. There is complete lack of competition between schools and a choice for parents. While private schools do offer you the choice, they are almost guaranteed to break the bank unless you decide to have only one child or are a C-level executive of a large corporation.
Read the rest of this entry »
Posted in education | Tagged: education, private school, public school, school choice | 2 Comments »
Posted by kostub on September 15, 2009
The assumption that spending more of the taxpayer’s money will make things better
has survived all kinds of evidence that it has made things worse.
– Thomas Sowell
Rapid increases in the costs of health care in the US has placed an undue burden on small businesses, the self-employed and the uninsured, and the system is need of an extensive overhaul. The White House health care page has an excellent description on the goals of such a comprehensive reform. While the goals themselves are noble, and no person should be denied health care or have to go broke just because they became sick or had an accident, the lawmakers seem to have forgotten the true goal of the reform viz. make health care affordable for all.
The administration’s proposal for cost reduction involves setting up a massive public insurance plan which will be able to negotiate lower payments to doctors and hospitals. But, past experience has shown us that government involvement and socialization does not result in lower costs. Medicare, one of the government’s largest social programs is already running into budgetary difficulties despite the fact that it negotiates far lower rates with medical providers than private insurance. Moreover, similar reform has already been enacted in Massachusetts, and yet we still see rising medical costs there.
Why are these costs rising? In a previous post, I had argued that the reason costs in India were under control was due the presence of free market competition amongst medical providers. By contrast, in the US, neither the provider nor the patient has any incentive to decrease the cost, as all of it is borne by someone else i.e. health insurance. In fact, both have an incentive to increase the cost by ordering unnecessary or more expensive tests – the provider gets paid more while the patient believes that they are getting better treatment. Obama’s plan does little to change this fact. All it does is transfer the cost from employers who pay the premiums (which is indirectly transferred to the employees in terms of lower salaries) to the tax payers. Read the rest of this entry »
Posted in healthcare | Tagged: healthcare, insurance, obama, obamacare | 7 Comments »