Saturday, June 25, 2005

Stored Procedure Invocation Code Generator for VB, C# and JScript.NET:

A great tool that can cut development time multifold, by creating the a sample xml document and defining the name of the stored procedure and its parameters, then assiciate the XML to the custom tool (as part of the install), it will automatically generate the code to call the stored procedure as though it was a class. Download the software and code here

The only disadvantage i have found(dont claim that ive read the entire document /source code to check for bypass) is that we have to specify the DB server name in the XML document. So once we move to a staging server or deployment server then we will have to modify the server name again. I guess you can overcome the limitation by modifying the source code.

All in all *great tool*, will post additional details once i try out the software, can save your project loads of time.

Open Source .NET Projects:
All the projects here are written in c#

NunitForms - a NUnit extension that can track all the UI interactions, save it and execute the steps as in a Unit text context. Find details here

Sunday, June 19, 2005

Friday, June 17, 2005

BILL GATES :

Why do you think, in this time of great technological advancement, people are still working harder and not smarter?

One of the greatest opportunities today is for software to more closely mirror the way people want to work, so they can focus on getting things done rather than managing all the technology in their lives, searching for the information they need, or adapting how they work to how their computer works. I believe the productivity breakthroughs we’ll see in the next decade will be as significant as those we’ve achieved in the past quarter-century.

How do you feel about competing open source platforms such as Unix and Linux?

The software ecosystem can accommodate many different development models, and healthy competition is what produces new innovations and drives technology forward. We focus our efforts on developing products based on the commercial model, which we believe produces the best possible software for our customers.

Thursday, June 16, 2005


What is XP:
eXtreme Programming is a lightweight methodology (see other lightweigh methodologies here), XP is a methodology that is used to delivery software to your customers needs when its needed. XP empowers your developers to confidently respond to changing customer requirements, even late in the life cycle.XP implements a simple, yet effective way to enable groupware style development. XP is a disciplined approach to developing software. XP is successful because it stresses on customer satisfaction.
The methodology emphasizes on team work, from the developers , managers and the client. XP was intended for small project groups but there are examples of projects of 100 members that have used XP eg Though Works. The methodology is a collection of rules, each rule supporting the other rules.

The tenets of XP:
1. Simplicity
2. Communication
3. Feedback
4. Courage

Role of a developer:
One of the key tasks of a developer is refactoring ie thats a task that the client and the managers cannot enforce , only the developer/designer can do so. The programmer is also reasponsible for creating high quality code by
a) pair programming approach
b) refactoring
c) creating test cases before creating code.


XP has 4 phases :
1) Planning
2) Designing
3) Coding
4) Testing

Planning Phase:
User stories: It serves multiple purposes, it can be used instead of a requirement document , the IT integrator can use the document as an estimator and use it for release planning, the document is written by the client in non -technology terms, the client can use the document to derive the user acceptance tests. Once the big picture is created the individual developers go to the client and then get the details of the sub stories and document the same as user requirements, if a user story takes more than 3 weeks then a new story is created

XP uses iterative development process so that the project can get the agility of a change process.





Refactoring: (interesting bit)
A caterpillar is perfectly designed to eat vast amounts of foliage but he can't find a mate, he must refactor himself into a butterfly before he is designed to search the sky for others of his own kind. Let go of your notions of what the system should or should not be and try to see the the new design as it emerges before you
- Kent Beck

Sunday, June 12, 2005

Taking the human out of the loop:
A chain is only as strong as its weakest link, lets face it in a fast moving economy and dog -eat -dog world .. the weakest link to any enterprise is its workforce. Humans are good decission makes, only if they have the will and interest to make an optimal decission and considering that they cannot make decessions 24x7, wouldnt it be better for an Enterprise to hand that job to a machine ? Evolution ! in the way that the enterprise works, the enterprise now can be a 24x7 money making, decession conscious entity that can work optimally. The system doesnt require sleep, it doesnt have to be out of the office .. doenst have to do the laundry ;) and it doesnt require a raise in the pay cheque :D.
Business could really be "business at the speed of thought" well this time that of a machine, and for thought that can be a simple programmed decission well and machine can defanitely beat any carbon based lifeform.
Business process integration:

In the present times when IT system have evolved from basic Mainframe technologies sitting in an isolated room to Grid networks ... IT has defanitely come a long way in a short time (no pun intended there ) but then we have islands of data .. islands every where .. there is no single version of the truth , different systems different data - a different view of the truth, its a bird ... no its a plane... not its DataWarehousing to the rescue !!! well even data level integration doesnt seem to work these days ... we need another means to look at an enterprise level in a holistic view and the answer to that is Business process integration, using Integration techologies. BPI .. the wave of the future.

Saturday, June 04, 2005

Ajax.NET:
A neat .NET utility that lets you call JavaScript asynchronously using XmlHttp. Find details here