Blog moved to


It has been six months since I joined microsoft. I have moved this blog to a new location.

Please update your bookmarks to the new URL. Link to RSS feed :


Public readonly string vs. public readonly property

EricGu (Microsoft) has made an excellant post on readonly strings and read-only properties. Check it out

Want to work for Microsoft? Send me your resume

I contract with Microsoft through Volt ( and currently there are lot of contract positions available.

If you are interested to work with the best brains in the world and love developing challenging products used by millions in the world, send me your resume at . These are strictly contract positions.

US Citizen, Green card or H1 visa required. My company Volt does not sponsor new H1, but will willingly transfer your existing H1.

Looking forward to receiving your resumes. Just send me your resume and I will try to find a position bets suited to your skills.

If you have any questions, feel free to send me an email  and I will reply to you as soon as possible.

Beginning Smart Clients


Smart Clients is a concept (not technology) of a Rich Internet enabled application. You can think of it as hybrid of thick & thin clients providing best of both worlds. Smart client applications provide richest user experience, intuitive/easier navigation, greater performance & throughput, leverage local computing horsepower, provide access to full keyboard (shortcuts), faciliate fast data-entry, provides easier/seamless integration with devices & local desktop applications (Office, LOB apps, etc), consume web-services (internet enabled), and can be designed to function in connected and disconnected/offline scenarios and still offer seamless/transparent deployment (main reason behind the adoption of web applications). Microsoft Smart Client solutions/applications may comprise one or more than one of these technologies (Windows Forms, InfoPath; XML Based Form Designer, Visual Studio Tools for Office, .NET Compact Framework based apps running on mobile devices). WinForms is the primary technology for building smart client applications/solutions, but other technologies may come into picture based on use case scenario, end-users and device Please note that you can embed web/browser based applications in smart client shell, so you are not giving up on either technology.

Here is more information.

Test Post: Testing out Community Server

Moving from .Text to Community Server.. Test post.

Developer Blogs for watch out for

With a plethora of blogs floating on the internet, it is hard to find the blogs which make a difference. Below is a collection of blogs of authors whose books we have read and blogs of people who make the technology.

I spent some time to find out such information and post it so that it will be useful for people who want to hear (read) from the horse’s mouth.

Below are the links of blogs of personalities whose blogs I find interesting to read:



Blog Link



Charles Petzold (Windows programming guru)

Windows programming, C#, Indigo



Don Box

Windows Architech (Microsoft)



Stanley Lippman

C++ guru




Corporate VP, DevDiv, Microsoft



Brad Abrams




Scott Hanselman

ASP.NET guru



C# Faq




Sahil Malik




Robert Scoble

Various Technology



Larry Osterman

Core technlogies




There are many others whose blogs I read and I will be updating this site as soon as I get some time. If you feel that there is more to the list, please leave me a comment and I will check it out.


Who’s who in the list above:


Charles Petzold: The guru of Windows programming. Since Windows 3.1, he has been writing books on Windows programming. If anyone can talk on Windows programming, he can.


Don Box: The architect of the next version of Windows (Vista) and the geek (not Greek) mythology that shadows it can be answered by him and him only. When not confusing (enlightening) me on the future of Messages & designing the next generation of Windows, he takes time to write a blog and is quite humorous in his style.


Stanley Lippman: C++ guys should watch out for his blog



Somasegar: When the Corporate VP of Developer Division at Microsoft writes, the developers across the blog read, coz what he writes about affects their bread and butter. His is the blog to look out for happening in the Microsoft Developer Tools camp.


Brad Abrams: No one speaks of the CLR internals with as much clarity as the Lead Program Manager of CLR team at Microsoft.


Scott Hanselman: ASP.NET guys and .NET developers in general cannot afford to miss this blog. His post in the questions every .NET developer should know (link) should be familiar to anyone appearing for interviews for .NET positions.


C# FAQ: The C# team at Microsoft has a FAQ blog, which is updated by C# team and C# MVPS.


Sahil Malik: Kiss-ass attitude is what I like about his blog. His latest book Professional ADO.NET 2.0 is selling wonders. His language may be rough, but he gets his point across.


Robert Scoble: Think blog! Meet Robert Scoble. No, RSS does not stand for Robert Scoble Syndication, but this guys writes all about Microsoft, good and bad. Hats off to him.


Larry Osterman: His is a very geeky blog and he explains everything in detail.



Comments are very welcome.

I passed the 8th Grade

You Passed 8th Grade Math

Congratulations, you got 10/10 correct!


How about you?

Test post to check MSN Alerts

Test post


MSN Alerts

My Resume

                                                                      Vipul Patel                                                                     





Masters in Computer Applications                                               


Bachelor of Engineering


Certifications           MCSD (Microsoft Certified Solution Developer in .NET)

                                    View Transcript. (ID = 657210, Code = vipuldp868)


Recognitions              Awarded the MVP award from Microsoft.




Aug ‘04-Present                         St Jude Medical LA, CA

St Jude Medical is an industry leader in the field of cardio-devices. The project involves verification of Next Generation Programmer.

                                    Platform                                    Java, Excel, TDE

                                    Operating Systems                     Windows 2000/XP

                                    Testing tools                              TDE

                                    Duration                                                1 year – ongoing


(Stages involved: Analysis, Testing)

                                    Software Test Engineer

    Responsible for developing Test design, automated as well as manual test scripts and executing the same.

    Formulating test strategy for the use cases.


Till – Aug ’04                

                                    Software Engineer

Executed projects for multiple clients.

a. Telelogic USA  (DOORS Test Director Integration, C#, ASP.NET Web-service)

         Platform                           C#, .NET, XML Web Services, VS Installer

         Operating Systems            Windows 2000/XP

         Testing tools                     N/A


Telelogic Technologies Ltd. is the leading provider of solutions for advanced systems and software development. The project involved designing and implementing a XML web service in C# which would communicate between DOORS (Requirements Tool) and Test Director (Test Management Software) and synchronize the datasets between the two applications. This would help see which requirements were matched with test scripts.

         (Stages involved: Coding, Testing)

         Software Developer, Build & Release Engineer

          Implemented the web service which communicated between Test Director and DOORS

          Created the installer for deployment of the product.


b. Vorne USA (Display-Pro XL , C#, ASP.NET)

         Platform                           VC#. NET, ASP.NET, XML, MSDE

         Operating Systems            Windows 2000/XP

         Testing tools                     Manual testing


The project involved creating an integrated Windows-cum-web application suite called Display-Pro XL, designed to work with Vorne-compatible industrial devices. This software is designed to configure products for specific applications as well as support factory floor data acquisition and data distribution, which would communicate between industrial displays and set/get values from it through serial port communication through RS-232 and RS-485 interfaces. The data was stored in XML files and in MSDE.

         (Stages involved: Analysis, Coding, and Testing)

         Software Development & Test Engineer, Build & Release Engineer

          Study of Functional Specifications of the application and formulating the test strategy.

          Implementing functionality as per Functional Specifications

          Preparation of exhaustive test cases in accordance with the functional specifications and executing them in coordination with the developers. The scope of the test cases included unit testing, integration testing, and regression testing.

          Formulation of coding standards guidelines and verification of the implementation of the same in the developed code.

          Make suggestions/recommendations to the client to make the requirements specifications document more understandable.

          Report the test results to the development team and verify the fixes implemented.

          Created the installer for deployment of the product.


c. Telelogic (DOORS 6.1 Internationalization, C++)


         Platform                           VC++ 6.0, VB 6.0

         Operating Systems            Windows NT/2000/XP (English/Chinese/Japanese/

                                                Korean/Taiwanese), Unix (Solaris 2.7/2.8), Citrix

         Testing tools                     Test Director, WinRunner

         (Stages involved: Testing)

         Software Test Engineer


The project involved internationalization & localization of the already existing requirements management software of Telelogic DOORS. The end product was the first truly internationalized product in the field of requirements management software.

          Managed a team of 3 testers

          Study of Functional Specifications of the application and formulating the test strategy.

          Preparation of test cases in accordance to the functional specifications.

          Guiding a team of dedicated testers for design and executing the test cases.

          Report the findings to the development team and verify the fixes implemented.

          Formulation of coding standards guidelines and verification of the implementation of the same in the developed code.


d.  Dairy Centric Integrated Application


            Platform                        VB 6.0, SQL Server 2000, Microsoft Transaction


Client                            Uttam Dairy


The project involved automation of all the basic processes of a typical dairy industry, such as Inventory management, Purchase order management, Veterinary module, Marketing, Sales, Fixed deposits, etc. The project involved requirements study of the dairy industry, developing GUI prototypes of the designated modules.



·         Study of Functional Specifications for the inventory module.

·         Review of Design.

·         Design and coding of application, business and data layers of the application.

·         Preparation of test cases for the implemented functionality and executing the same.

·         Fixing the defects found during testing.

e.      Metrics Generator


Platform                  VC++ 6.0, Crystal Reports

Case Tools              Visio

Client                     Patni


The project involved development of a Software Metrics generator application. The metrics to be evaluated included the different metrics of project, class, file, such as LOC, number of functions, number of classes, number of private members, public member, protected members, etc.


The developed application was used to determine the actual efforts put in by a person by evaluating the source code developed.


Technical                    Programming Languages:           C#

                                    Operating systems:                    Windows (all platforms)

                                    Databases:                                MS SQL Server


Other Activities:                Assistant Manager, Mumbai User Group

                                    Chairperson (Computer Society of India, Nirma University Chapter – academic)



MCSD(for NET) at last

After one year, I have migrated my developer credentials from MCAD.NET to MCSD.NET when I  cleared 70-229 today…..

Kudos for this effort  goes to my wife who stood by me all the time and enabled me to get through.

Next Page »