Monthly Archives: March 2009

Google Apps & Privacy

I use Google Apps for many websites. One of the reasons is that for just $10 a year, I can register the domain with privacy protection and also get a nice email application. Recently I have chosen not to renew one of the websites. So, the domain expired. Then, to my dismay I found my information when I searched for the expired domain in one of the whois directories.

What’s not clear to me is, if this is a standard practice where the privacy information is no longer protected once the domain is expired or if it is something specific to the terms & conditions between Google and eNom. Whatever be the case, I think it is inappropriate to not protect the privacy just because the domain has expired.

Leave a comment

Filed under Google Apps, Privacy

The One Dollar SAAS Solution

Back in 98 when I signed up for a web hosting solution, I was paying about $30 a month with very little hard-disk (in MBs), bandwidth (MBs again) and CPUs (probably also in MHz though I don’t remember) shared by many others like me. But for the last two years, I have a hosting account for which I pay about $8 a month with unlimited hard-disk and bandwidth and much better CPU and what’s more unlimited domains and databases and on and on.

Yesterday I found that one of the SAAS vendors was using another SAAS vendor for one of their online services. And the pricing was about $19.95/month per single agent. That’s when I realized that in a decade from now, the SAAS landscape is going to evolve in ways similar to the web hosting solutions.

There are going to be big players and then there are going to be smaller ones. The reason why some web hosting providers are able to offer the “unlimited” promises are because they know that more than 90% of the small startups don’t use even 1% of what they were being allocated. So, collectively it would seem like unlimited resources.

Right now a lot will be invested in defining a SAAS platform and infrastructure. But in a couple of years, hopefully people will rely on more standard components. One great example I can think of is the cpanel. Today most web hosting solutions provide cpanel to manage the account. Anyone switching a hosting provider usually doesn’t have to learn a new system to manage the account. Eventually SAAS will evolve to this stage and at that time, the SAAS solutions will be offered with the “unlimited” offering and very cheap prices.

Ofcourse, just like the dedicated hosting solutions are still expensive, there will be SAAS offerings for high-end customers who would pay more.

Leave a comment

Filed under SAAS

3/14 is a Pi Day

So it seems March 14th has been officially named as the Pi day. The value of Pi is roughly equal to 22/7 which is equal to 3.14159…. So, that’s why 3.14 is used to represent the Pi day.

So, what if you are in a country that uses a different date format? For example, in India, the dates are written as dd/mm/yyyy rather than mm/dd/yyyy. So, perhaps such countries should consider July 22nd as the Pi day? To represent 22/7?

Leave a comment

Filed under Random

Is Open Source Saving You Money?

May be. But here is an interesting conversation I had with a guy who worked for me in the past. Recently he contacted me to suggest technical solution for something. He also said “I would like to know whether any freeware which would address this kind of requirements”. I replied him pointing to a webpage that contained a lot of commercial and open source solutions. And asked “Why are you looking for a open source? Is your customer not ready to pay for commercial software? :).” (If you read this carefully, you would notice I used freeware and open source interchangeably but that seems to be usually the perception to many anyway).

The reply to my email mentioned “The reason why we were thinking about open sources is that , We can customize open sources as per our requirement and absorb the license cost into services . Also, We can delink any technical risk which could be faced by customers. It was purely a cost benefit option in terms of customer and implementing partners.”

So the interesting observation for me is that next time a consulting firm recommends an open source solution, realize that the reason for that is not entirely the benefits of open source over a commercial solution but the fact that the consultant might be hoping to get the license piece of your allocated budget moved towards consulting service!

Interestingly in this specific case, they went with a commercial solution as they couldn’t find a similar open source alternative. Perhaps the estimated consulting cost outweighed the cost of licensing.

The intent of this post is not to mention that open source is not the right way to go but to make people realize why someone might propose going with open source solutions.

Leave a comment

Filed under open source

The Toilet Testing

Testing software is an important step within the software development lifecycle. However, sometimes I think it’s overdone. A lot of time and effort, which translates into money, is wasted in testing for every corner case. The problem with software is, if there are N variables and each on average has M values, then there are N^M variations and it simply is not possible to test all these cases. It is possible to identify some critical test cases that cover this exponential space. I mean, I am not talking about the more test cases, the more the coverage. Instead, it is likely to be possible that carefully picking a set of distinct test cases can actually cover a broader space. However, this is a difficult task and requires a much more coordination between developers and QA teams and obviously the problem is that this seldom happens.

Usually large corporations can afford to spend a lot of money on quality testing. Or may be that’s not correct given the quality of software we see from some of the large corporations. On the otherhand, perhaps they are actually spending a lot of money and effort, but not to do it the right way.

So, the question really is, what if you are a small company or just an individual service provider? Can you afford to spend so much time on testing? Given that the software testing is often wrongly linked to construction industry and people keep questioning why can’t there be building blocks that can be easily plug-and-played, I am going to take an analogy from the construction industry as well.

Say someone got a new house built. When they move in, would they put some sand down their toilet and get it clogged? The point is, there is an expected behavior and then there are all sorts of “I-want-to-break-this-thing” actions. Obviously the builder has not taken any special steps such that the home owner doesn’t shoot his foot by doing something stupid and clogging his toilet.

Yet, there is a lot of emphasis on corner case testing or in some cases monkey testing where any random data is fed into the system. Part of the problem for this is that the QA team is considered doing it’s job based on the number of bugs discovered. However, the goal should be not on just how many bugs are found, but how many bugs are found by customers after the product is released. What good is if the customers are able to find bugs inspite of all those zillion test cases verified, filed as bugs and fixed by developers? Why did the test cases that the customer is interested in not tested?

For small companies and ISPs, the best thing is to focus more on the features that help the customer and less on fixing every possible incorrect data scenario. Customers are not interested in putting a string where a number is required, they are only interested in using the software to do their business, or homework or their freelancing gig. Whatever the case may be, your software is just yet another tool to get things done for the day. They have no passion in discovering issues with either their toilet or your software.

Leave a comment

Filed under QA, Testing

The Cost Of Performance, Or The Lack There Of!

Recently I helped someone to build a dropship like solution. The product data from the provider was accessed using a web service. Initially I was expecting the number of items would be just a few hundred and carefully hand picked. However, he just choose to put in thousands of items. As a result, the cron job setup to pull the item data on a daily basis was running for much longer duration and also consumed higher CPU. As a result, his shared hosing solution couldn’t handle it and the cron job used to get killed due to the quota limitations.

I thought about ways to sync the product data without reaching the resource limits but that meant a lot of redesign and would have costed him quite a bit upfront for the development. So obviously, not designing a program keeping the resources under which it has to work in mind has a cost.

But here is the kicker. He decided to go from shared to dedicated hosting that costed him 20 times more per month than what he was paying! Yeah, that’s 20 times more! He would probably recoup the money he would have to spend to optimize his program for performance within a year if he could go with the shared plan.

When the cost of performance tuning goes up, with hardware becoming cheaper and cheaper, it becomes cost effective to live with sub-optimal programs most of the time. However, in cases like SAAS or hosting solutions where the hardware is loaned, the extra cost would add up over time.

Leave a comment

Filed under performance, performance tuning