Thursday, August 30, 2007

Components components all around ...

We are now moving towards more organized application development process. This has been made possible due to the presence of well designed frameworks which bring with them best-practices and turn recommendations into required features. Such a development happens when designers and developers focus on building blocks for the application in a well planned manner. These components are reusable object and interact with each other for implementing the desired functionality. XML is now serving the role of integrating these components, facilitating exchanges of information between components, providing validation and controlling application flow. There is a huge market for such components. Organizations are now focusing on different verticals but a lot needs to be done on the horizontal front as well. The good thing for computer people is that it requires less effort and things are more predictable in horizontals. This is still to be conquered and has lots of scope.

This new paradigm is also bringing with it a new software role – integrators. These will be the people who will study different frameworks and components available for there domain. Unlike software engineers, these are right people to build software for them. I believe that the person who knows what he needs from a computer program is the only right person to build it. And this is what used to happen when computers were new. If a physicist wanted to compute the result of some of his findings he would code it, he never went to a software engineers. But yes he needed the OS, libraries and languages built by software people.

Availability of GUI tools will make it very easy for integrators to built applications. AI will make things more manageable and predictable for them.

The role of software engineers will focus on building components for the verticals and horizontals. This will ease their lives too – instead of building large and complex systems, they will focus on a well defined goal.

Welcome to the world of organized software practices.

Thursday, August 23, 2007

XML and type checking

A lot has been talked about XML – its benefits and how it simplifies application development and integration.

XML has brought a new application development. This facilitates declarative programming which was considered unique to SQL and other 4G languages.

This paradigm is now irradiating type checking and hence introducing loosely typed data usage. Its only when such applications are run, you see the crash screen..

Ecosystem providers should take this into account by following either of these approaches
1. Use DTD or schemas in addition to some validation mechanism to ensure type checking
2. Use XML only for integration with external system.

… more on this later …

Tuesday, July 24, 2007

my first live online meeting demo !!!!

Yupiiiiiii .... today was my first live online meeting demo... we are making a mobile phone application for one of our client ... the meeting was in US and my job was to sent database update command [I won't disclose the technology used ;) ... and by no means will I discuss the implementation :P ] from a mobile phone (which has our sender application) in India to a mobile phone (which has our application) in US .... wonderful experience !! just loved it !!!!

Saturday, July 21, 2007

From concepts to implementation

In mobile world we deal more with concepts than with implementation. The advantange is that we learn more and build a strong base ... the other-side is that your estimates go haywire if you consider just the implementation. For example, not only you have to know about Caching Application Block, but you also need to know how to make it yourself :) since you might not find an implementation.

... more on this later ...... keep watching ...

Thursday, July 12, 2007

oops !!!

We are not in the era of procedural-languages wherein calling a function will do the required action. We now deal with objects, functions behavior depending upon the state of the object. So it is very important that the before trying/suggesting anything, we know the context where the thing will be used and the object's currect state.