Tuesday, December 13, 2005

About application development

I'm a veritable virtuoso at JFC Swing, and I have no qualms about saying so myself (notice that I don't say it about core JAVA though I'm pretty good at that too). And all of it I've learnt from Mr. Manish Parekh & Ms. Darshana Daga. When I joined Veritas Software India Pvt. Ltd. fresh out of campus nearly 5 years back I had lofty ideas about what programming was. I've grown from there. Now I know what software is, and what it should be too. I've some idea about what the business of software development is, and what are the constraints and problems that one would typically face in this industry as a handler of this business. But I'm straying from the topic at hand.

Like I was saying, I'm pretty good at Swing. And in an industry devoid of Swing professionals, it was not difficult to find my place, once I started looking for it. I got a big fat package, but with companies moving towards web technologies, I'm destined to become another antique, like one of those mainframe or COBOL programmers (or am I, maybe I just haven't found the calling). But again, I'm straying from the topic at hand.

So getting back to the topic that's not at hand, is desktop application development a dying industry? I do have some views about the subject. Firstly it is not. But it is surely becoming more and more specialized. I've had a great idea for a utility application for for fitness enthusiasts, but I can't really think of a single reason why it should be a desktop application. Or even a desktop application with a parallel mobile computing interface. It should be a web application. At least for the real mass market. For kiosks in big gyms and the jet set crowd who has no time to sit at a computer.

I'll have to start learning new skills. I'll have to abandon, atleast for the time being, all that I've learnt about application usability, and learn about web usability instead. Or I have to cling on to a rapidly diminishing market as a specialist and hold my own. There's a certain charm about application development that web development doesn't offer. I'll be the first to admit that it is superficial, but it is still there. Its the smell. Its not based on utility computing. The business side also makes better sense. Basically, if you develop a public web application, you have so much invested that if your idea goes for a toss, the services that you've managed to sell are also of no use. Because your infrastructure costs will bring you immediately down (well not really, that's the beauty of utility computing, but still, atleast in the small scale).

My meanderings here have no other purpose than feeling sorry for myself, in a way. I don't have to worry for another 10 years, I think. There's plenty of great software being developed in Swing, so I'll definitely keep my job. Application software is here to stay. If everything else goes there are always IDEs and instant messengers :).

No comments: