In India, Internet bandwidth is limited, and the more you want, the more expensive it is. We know that carriers in the U.S. are going in this direction too.
I got myself what is known as a “data card” (essentially a barebones phone, which plugs into your USB port, and allows you to dial out to the internet) with a pretty high band-width plan. The promise is 3 GB per month, at more than decent speeds, and after I go past the 3 GB limit, the speed is throttled down significantly.
3 GB per month seemed adequate when I signed up. In the U.S my mobile plan only has a 2 GB limit, and I barely use half of it each month. I had that in mind when I took the 3 GB plan. However, in the two weeks since I got the data card, I have used up close to 2 GB already. I did not stream any video, or audio. All I have been doing is reading news, and trying to get some work done online. Needless to say I was shocked. It appears that I forgot that most of my usage in the U.S happens over my landline, and through my work. Now, I am forced to pay attention to how I use the Net.
This morning, I was paying some bills through my bank’s online bill payment service. For the first time I noticed how I heedlessly waste bandwidth. I would enter the amount for one bill, submit that, which took me through a couple of pages, and then start my next bill, which would take me through those pages all over again. In fact, my bank allows me to enter payments for several bills at the same time, which would take me through those same two or three confirmation pages, but I would be visiting these pages only once.
I was reminded of how my mother gathers several errands together before she ventures into the city. Any trip from our home in the southern outskirts of Chennai, a place called Kelambakkam, into the city and back, burns through a whole day. It simply is not practical to expect to travel into Chennai two or three times a week. Nothing else would get done at home. You have to try and get a lot of work done on any one trip.
Another thought occurred to me while I was at my bank’s web site. All I really want to do is specify a biller, a payment amount, perhaps a payment date, and say, go. If the bank had a RESTful API, which it exposed to me, I could get this done in 3 lines of script. Pick your poison – Javascript, Python, Groovy, PHP, whatever. Imagine how little bandwidth that would require.
However, this will work only for the geeks. Regular folks need a UI.
Ah, and suddenly, mobile apps make sense. With mobile apps, presentation happens completely at the client. None of the artifacts (images, bloated Javascript, CSS, etc.) that make up the presentation will travel between the client, and the server. Rather, only the data, and a command or two will, just like with an adhoc script I might cook up to talk to a RESTful API.
I should find out exactly what is eating up the bandwidth. I wonder how much the damned advertisements consume.