Interesting links for 31st December 2010




WPF / Silverlight / WP7



Interesting Links for 29th December 2010


WPF / Silverlight / WP7

Developers guide to Microsoft Prism :


Windows Communication foundation Firestarter :—wcf. I hope that this series on WCF is as good as the firestarted event for Silverlight. I learnt so much about Silverlight just watching the firestarter videos.


Agile / Lean principles will simply not scale :

Agile is relationship management :


Interesting links for 28th December 2010


After a brief stoppage due to my relocation from India to Singapore, the interesting posts series is back. Enjoy the links.


How to implement a date time picker across multiple drop downs with ASP.NET MVC - This is a nice post which was recommended by Scott Guthrie on twitter.

Resetting form fields in ASP.NET Webforms - Another article by Scott, but this time its Scott Mitchell Smile


Just enough, just in time and sometimes Just because - This is a very nice post by the person whom I interacted a bit in my last organization Jesse Fewell. Good one Jesse.

Theory of Constraints – blaming the bottleneck :

Rotating responsibility for Scrums and Retrospectives - 

Jack Welch’s leadership attributes -

Servant Leader - If you have time please read the linked post about practicing servant leadership in this article.


Yodlee Money Centre–Free online money manager


Few days back I had written about a personal finance manager software called Money Manager. This is a desktop application. My friend Mahesh Sawaiker suggested another open source software called GNUCash. Unfortunately I did have a good first impression about this one as it crashed on my laptop within hours of installing it. This post is about an free online personal finance manager software called Yodlee Money Centre.

Yodlee Money Centre

This is a free software. Initially it takes bit of a time to get used to it because it has a different notion of accounts of different types some of which include Savings, Credit Cards, Insurance, Loan etc. It also has a concept of manual transactions which are nothing but transactions with a particular type of account. One feature which I like about Yodlee is that it gives you an option to register a future transaction. Every transaction has a flag called Cleared which indicates whether a transaction should be considered for summary of accounts or it should just be noted down for follow up.

Here is a screenshot of the cash flow analysis


There is a budgeting feature wherein based on actual spending the graph shows how much are the expenses towards each category. We  can also define our own budget and compare it against the actuals. There are some very good reports available for summary purposes. We can also set reminders for recurring as well as forthcoming payments.

The software also supports multiple currencies. Although the support is limited to few currencies we can hope for more currencies to be added later. There is a nice financial calendar which depicts the income and expenses for each day of a calendar month.


We can also record a transaction as split transaction. For eg. if we want to associate all the expenses incurred during a holiday trip then we can group all of them under one parent transaction but still spilt it further. The list of categories is also quite extensive and we can extend it as per our needs. 

For security reasons at the time of registration there are a set of questions asked. At the time of logging in one of these questions is asked randomly along with the username and password. I like this feature. The random question is asked very occasionally and ensures that the right person is accessing the information.



All in all Yodlee is a very simple web based personal finance manager. I like its features because the reports give very clear trends. Only feature I find missing right now is the double entry system. This means that if I have two accounts A  and B and I transact between them the balance is handled automatically by the system. This feature is supported in the windows based Money Manager EX. But Yodlee doesn’t seem to have support for this. Which means I need to record the transactions in both the places. Apart from that so far I am liking the features provided by Yodlee. The ability to keep track of expenses from anywhere in the world is a great one.

Do let me know if you come across something similar or better than this. Until next time Happy Programming Smile


My Bangalore Experience


This post is like a retrospective of my stay in Bangalore and how I felt about living in this city. I was feeling sad about leaving Bangalore and just wanted to highlight some of the things which made me feel so. I’ll try to keep this very short but its quite possible that this might be one of my longest post.

A bit of professional history

I first came to Bangalore in the year 2000 for a training. I was working with NIIT as a faculty then and within couple of weeks of joining I was asked to attend a training for a MIS system called Encore. I was the only person from Goa in that training. It was the first time I had been to a metro outside of Goa. The trip lasted for about 2 weeks. I did not  get much chance to explore the city but whatever I visited it all looked very extravagant and big to me. A brief visit to M G Road and Brigade road was good enough to differentiate it from a visit to Miramar beach in Goa.

My second visit was as a student of NIIT one year later for my final semester of GNIIT program. This is the first time me and my best friend for last one decade Mr. Vishal Naik came together to Bangalore. We experience many of the things for the first time. Getting an accommodation with the help of an agent, staying in a PG with the landlord who coul speak only Kannada language and we did not understand a single word of what she was saying. It was all sign language then.

After few months we moved into an apartment with few other guys sharing the same. I had also started working in a company called Netgalactic Internet Solutions Pvt Ltd. I started my professional career here. This was the time when finding a job in a city like Bangalore was very difficult. People with far better educational qualifications from me and good grades compared to that of mine were finding it difficult to get a job. Some of the people who were selected in campus interviews had to face delays in joining and some were even unfortunate to have their offers taken back by the companies.

I had enrolled for the placement program of NIIT and I clearly remember the placement officer telling me that I should try for customer support and call centre based jobs. But somewhere deep inside me I knew that my heart lies in being a developer and in the profession of Software Engineering. I remember the words I told that person “I am willing to wait for the opportunity but I’ll not join call centre”. It was just a metter of getting one opportunity to show the world that I belong to this genre of software engineer. I am really thankful to Netgalactic which was later rebranded as the Skelta. If it was not for them I don’t know where I would have been today.

That was the beginning of my journey in Software industry. I learnt some of the very good things in a short span of time here. After about 18 months I joined Thomson Financials which was my first multi national company. The colleagues here were really fantastic. Even today after leaving this company after almost 3 years I remember the good times I had with some of the most wonderful people I have ever met. I got to attend many professional trainings while I was there with Thomson for about 3 years. Whenever I meet people from this company I still feel as if I am part of a family. I miss the work culture of this place very badly. I am yet to come across a better workplace than Thomson in my professional life so far.

In December 2007 I joined Tesco. I had an opportunity to travel to UK within 2 months and a short stay there helped me in many ways. This was beginning of a new journey for me. This is where I started with my exposure to Agile. If I can talk and write a little bit about Agile it all started here. I was the first member of the new Instore team that was getting formed in the Bangalore office of Tesco. I always took a lot of pride in introducing myself to almost everyone saying “ I am the first member of this team”. I am still proud of being associated with some of the best people I have worked with during my tenure in Tesco. These include both the people in Bangalore as well as UK offices. It would be hard to name individuals but I have made some of the best friends here and I value their contribution in helping me in becoming a better person in whatever I am right now at this moment in my life.

Some of my experiences in Bangalore

Apart from working in 4 different companies in the span starting from June 2003 to December 2010 I also tried participating in user groups and stuff like that. I was a member of Bangalore DotNet (BDotNet) group.

From my personal experience I can say that Bangalore is one of the best city to live in India. There are positives and negatives about each city wherever you go in this world. Instead of looking at the negatives I would like to highlight the positives that I feel are working in favor of Bangalore.

The climate is one of the best I have ever experienced in India. Coming from a hot and humid part of Goa, I found Bangalore to be very pleasant. Although off late with all the constructions going around in every corner of the city, it has lost most of its green cover. Compared tow hen I first came to Bangalore I hardly find any resemblance now. But still I would prefer it anytime compared to other places.

If you are in IT industry I doubt any other city in India can boast of so much opportunities. And this is yet to reach the saturation level. I am sure the IT expansion will continue for some more time in Bangalore. You’ll get opportunity to work with some of the best brains in the world if you are in IT industry.

I find the traffic very irritating factor. But then as I read once in an email, you can always take alternatives like coming in early before peak hours if you travel by your own vehicle to beat the traffic. Hopefully once the Bangalore metro starts operating we can see some difference in traffic conditions. Although I have not travelled much in the Volvo busses, whatever little I did I personally liked them. Tell me which other city in India has this facility?

Accommodation is slightly on the higher side but I don’t think anybody in IT industry gets paid so less that they can’t afford a reasonable living in Bangalore. With so many shopping malls coming up in every part of the city, entertainment and shopping are going to be easier.

Earlier when I came to Bangalore for the first time there was problem with the language. In some areas people did not understand Hindi or English. But now a days I find everyone right from auto drivers to maid servants communicating in Hindi. At least they understand  the language. If you know any one of the South Indian languages you can always manage in a city like Bangalore.

When I decided to relocate to Singapore and give my apartment for rent, I sent a mail to the mail group of the apartment residents. Within 2 minutes I got a call from someone asking me about the house details. Within 12 hours of shooting that mail I had already finalized the deal for renting the house. Even for selling the household items and my vehicle I could do it without taking help from any broker or agent just by posting online adds. Half of the items that I managed to sell were just through emails to my friends and ex colleagues.  This was the time I realized the true power of networking Smile. I can safely stake a claim that Bangalore has got the highest Internet penetration in India based on the number of queries I got for my bike and sofa set.


While I spent more than 9 years in Bangalore never did I feel anything bad about it. Right from the time when I was just a collage pass out with hardly any clarity about my future until recently where I could make certain decisions for myself and my family this city has always been wonderful to me. I liked the people, the environment. I don’t know what I liked so much about the place the first time I landed here. But from that time onwards somewhere deep inside my heart I wanted to make this place a place of my work. I never realized when I started saying Our Bangalore from their or your Bangalore. This city became the integral part of my life in a very short span of time. I learnt the tricks of my trade here. At this moment Bangalore is the city I love the most.

It was a very difficult decision to take to move out of Bangalore. Those who know me well would know that I don’t like to show emotions. Even in the worst situations, I have never felt so emotional anytime in my life before. But on the Sunday morning when I was about to leave from Bangalore I felt very sad. I felt I was leaving something which was very close to my heart. I am sure as and when I decide to relocate to India, it will be none other city than namma Bangalore. Thanks once again to all the wonderful people of this city who helped me achieve some of my dearest dreams and also in helping me to become a better individual at what I do.

Until next time wish you all a very happy Merry Christmas!!!


Interesting links for 11th December 2010


Hiring managers admit they need Agile PM -

Why projects fail – the real reason

Manager, nothing depends on you -

Estimating defects using Principled Negotiation - A nice thoughtful post about estimating defect fixes.


Favor privileges over roles -

Using Raven DB with ASP.NET MVC -


Ranking the popularity of programming languages -

Windows Phone 7 Experience -


Interesting links for 10th December 2010


Becoming Lean – The Why, What and How - Nice post regarding Lean concepts and applicability of them to software projects.

Agile Testing Techniques – How to incorporate Testers into Agile teams -

Should a manager know a language? Yes. One that enables communication with people -

7 Tips to boost web application development -


XML Serializable Generic Dictionary -

Using Lambda for sorting in C# -

VS 2010

Visual Studio Explosion by Scott Hanselman

Windows 7 Phone

Windows 7 phone guide -


Interesting links for 9th Dec 2010



Does adding more people increase the velocity? -

But it just had to get done -


Building a sample Web Matrix application -

WPF & Silverlight

Dynamically generating controls in WPF & Silverlight -

A very nice post by Pete Brown on dynamically generating controls in WPF & Silverlight. The post also talks about handling events for such controls.

Entity Framework

Entity Framework Code First CTP5 Release -

EF Feature CTP5 released -

ADO.NET team code walkthrough of EF Code First -

Profiling Database Activity in the Entity Framework - Wonderful post by Julie Lerman on profiling database activities with EF. She also talks about few tools available to do so.


Optional Razor sections with Default Content -

Using Output Caching with WCF Data Services -

Phil Haacks suggested links for NuGet -

Detecting postback or refresh in ASP.NET -


Clean Code : Too much of Good Thing? - This is my personal favorite. Ron Jeffries does a great job in discussing about clean code. I love the last para of this post which says

“Bad code will slow you down if you write it for even a few days. If you write bad code long enough to get an actual product out, you will deliver that product more slowly, and with more bugs, than if you had gone clean.” 

I have personally experienced this situation and would request every developer who is serious about their work and passionate about their skills to read the book on Clean Code by Bob Martin.

Scott Hanselman on Backing up the data to various destinations -


Interesting links for 8th Dec 2010



Everything you ever wanted to know about Deep-Vs-Shallow copy in DotNet -

This is very nice article about different ways of performing deep and shallow copy in DotNet as well as the difference between the two methods.

LINQ secrets revealed : Chaining & Debugging -


ASP.NET and Entity Framework series – Getting started part 1 -–-getting-started-part-1

Nice post about using Entity Framework with ASP.NET.


Train your brain everyday in just 10 minutes -

Career development as a Software Developer without becoming a Manager

This post is pretty close to what I believe in. The author has done a far better job than what I could have if I were to write a similar post.


Interesting links for 7th Dec 2010


There are different sources of information from where we get to know about various things. In this age of hi-tech gadgets and Web 2.0 the channels of communications just keep multiplying day by day. I myself use social media like Twitter and Facebook along with Orkut a lot. Twitter has overtaken my RSS feeds in Google Reader with respect to the links to various topics I am interested in.

I used Google Reader mainly to subscribe to the content of my interest. Most of the technical stuff I manage to keep track with the help of Google Reader. StackOverflow is my favourite go to site for technical issues and problems.

Although I use Delicious to store my favourite links online, still it becomes difficult to manage the flow of information. I remember reading a daily post by one of the blogger (apologize because I don’t remember his name right now) who used to put a summary of links from twitter of all the interesting posts. Off late I have not seen him blog. I am missing his links very badly.

For the benefit of my friends and for my own reference I thought of following a similar practice. I plan to put all the useful links that I came across during a day in a blog. This is the first part of that series.

Interesting links for 7th December 2010


Windows phone 7

A small but important UX improvement for ScrollViewer on the Windows Phone – Jeff Wilcox


Strategies for becoming better programmer – J P Boodhoo JP Boodhoo is the one of the guys who has some very good videos recorded on DNRTv website related to Design Patterns.



Couple of colleagues and some of the ex-colleagues have been requesting me to share the links with them for quite sometime. I think this would be a better option compared to sending an email everyday. I am planning to blog about interesting and useful links related to technologies that I am currently working on. Mostly this will involve stuff like Agile, ASP.NET MVC, WCF, DOTNET, WPF, Silverlight, ORM, JQuery, HTML 5 etc.

Until next time Happy Programming :)


Introduction to Design Patterns

Sometime back I had given a presentation to my team regarding introduction to Design Patterns. I covered the topics like pre-requisites for learning and implementing Design Patterns, principles which drive developers to make use of Design Patterns including SOLID principles etc.

I have uploaded the slides used during the presentation to dropbox. You can download it Design Patterns.pptx. I had used one of the simplest design pattern Singleton as an example to show the demo.

The complete source code of the project related to Singleton is available

Until next time Happy Programming :)


Powertools – December 2010


Back in October 2009 and November 2009 I had written 2 blog posts about the powertools I have been using. There have been some additions to those tools off late. I thought of listing them down for my own future reference.

Visual Studio 2010 Ultimate Edition

With the release of Visual Studio 2010, I have upgraded my development IDE from Visual Studio 2008 to the 2010 Ultimate edition. I love the extensions manager feature along with the performance enhancements done by Visual Studio team. Instead of mixing all the extensions that I use for Visual Studio 2010 in this post, I’ll leave it for a dedicated blog post in itself.

Resharper (VS Add in)

Resharper is indispensible tool for developers. It helps in improving the productivity of developers by many folds. I have been using it for past few months. I am making an attempt not to touch the mouse for any development related tasks. With Resharper you can almost get there. I like the features of this add in like real time code analysis. In my opinion it’s a must for every developer.

Apart from the basic Reshaper add in there are supplementary ones which work along with Reshaper like StyleCop for Resharper. It’s a treat when you have both of them working together within VS IDE. I love TDD and try as much as possible to implement Agile methodology. Resharper is a great tool for refactoring and building software using TDD.

Tweetdeck (Twitter client)

Over the past few years social media has become a very integral part of everyone's lives. I use tweetdeck which is a twitter client. It also has integration with other social media sites like facebook, linkedin, foursquare etc. 


Sesmic Desktop (Twitter client)

Along with TweetDeck, I also tend to use Sesmic Desktop once in a while. One thing I don’t like about Tweetdeck is the size of the columns. Its kind of fixed. If I use Sesmic Desktops single column view I get a nice full screen updates for any of the accounts that I have set up with Sesmic. In terms of capabilities both these twitter clients are almost similar.

Sesmic Desktop 2

Windows Live Writer 2011 (Blog publisher)

For quite some time I was using the Windows Liver Writer 2009 version. After upgrading my hard disc recently, I upgraded to the latest version of the Windows Liver Writer 2011. Its bit surprising that this is in production before 2011 Smile. Anyways that’s for Windows live team to decide. I like the changes to the user interface. Especially the toolbars which follow the same convention like that of Office suite like MS Work and MS Excel. The Ribbon is one of the nice features. I think Windows Live Writer is one of the best blog editing and publishing software available for free right now.

RocketDeck (Desktop / window manager)

This is a nice little utility to manage the taskbar items. It hides all the active programs into a dock and gives a Mac like menus and feel to a Windows desktop. We can drag and drop the commonly used files and program shortcuts onto the dock. This leaves the desktop much more cleaner and gives a very elegant look.

iTunes 10 (Music playlists)

I have been using iTunes to manage the playlists for my iPod. Even when I am not using iPod, I tend to listen to music on my laptop. I like the simple user interface of iTunes. I also prefer to use the smart playlist feature of iTunes.

Skype (Communication / Video Chat)

I have tried various chat clients including Yahoo messenger, MSN messenger, gTalk and still continue to use them. But compared to all those I like Skype. Ability to store previous chat history is one feature which I find very helpful. I have tried video chat with Yahoo messenger, gtalk and Skype. In skype it seems to be very clear and audio quality is also good compared to others.


I am sure many of you would be using the same utilities. There might be some utilities which are better than the ones I am using. I would like to hear about them. Until next time Happy Programming Smile


Money Manager


Since year 2003, I have been using Microsoft Excel as a tool for keeping track of all my financial transactions. I used a workbook containing 12 worksheets for each month. It also contained another worksheet for credit card related transactions. There were few graphs and charts I had used to summarize the transactions. I had also decorated some of the sheets with coloured columns to make them look intuitive. All these while I was looking for some piece of software which could help me keep track of the same using a much better user interface other than Excel.

My colleague Ranjith directed me to a site called AlternativeTo. This was actually in relation to one of my status update on the social networking site Facebook with regards to managing playlists for music library. Accidently I came across this personal finance management software and thought of trying it.

Here are some of the options for software which can be used for managing personal finances I tried couple of them before settling down on Money Manager Ex. Its free and open source. There are other options like Microsoft Money or iBank which are commercial products. But for a single user needs I think Money Manager is sufficient. I think Microsoft Money is no more available for sale. HomeBank is another option which I looked at.

Features of Money Manager

Support for Multiple accounts – Money Manager supports multiple account. I have couple of savings accounts in different banks. Using excel it was difficult to get to know the details related to a particular account. Money Manager gives a very good user interface for managing multiple accounts.

Support for Stock – Money Manager can also be used to track investments in stock market.

Recurring transactions -   Most of us use online banking for payment of various utility bills as well as other things like insurance premiums etc. Money Manager has a option of setting up recurring transaction and reminders will be shown when the due date approaches.

Categories -  Money Manager comes with a set of pre-built categories for income and expenses like Automobiles, Bills, Homeneeds, Income etc. We can define our own categories.

Budget – Money Manager allows us to come up with a budget for a complete year. Based on the categories we have defined in the categories section, we can set the budget for each of them. Here is a screen shot of the budget setup screen.

Budget screen

Simple reports – There are some basic reports like Summary of Accounts, Where the Money Goes, Where the Money Comes From, To Whom the money goes, Income Vs Expenses, Transaction Report, Budget performance etc.


For my current needs Money Manager serves the purpose of giving up to date information about the state of my finances in a single window. I like the simplicity of the user interface and ease of use. The reports are also very minimal but they help in getting us the kind of information we need. I personally like the budgeting feature a lot since it can be used to plan for short term and long term financial needs. Only thing I miss in Money manager is the support for handling credit cards related stuff. This was available in the HomeBank software. But the user interface wasn’t really appealing. I am sure being part of open source community, Money Manager will have the feature for supporting Credit Card related transactions very soon.