Source Control, Team Foundation Service and your Windows Phone app

Source control is really essential when you’re working as part of a team on a software project but it can be just as useful when you’re working alone. This is probably obvious for many experienced developers but this is an article I would have found useful when I was just starting out.

For the development of my first Windows Phone apps such as Travelnapp and YuleTile I just saved my project to a code folder and occasionally backed up to a memory stick (I hadn’t heard of cloud storage at that point). Not only was there a lot to lose if I lost the backup and laptop, but I often found myself stuck with issues resulting from something I’d tampered with but couldn’t remember what.

If a late night’s coding gets the better of me and the next morning the app refuses to work I can now, using source control, look at the changes I made the previous evening and find the offending code.  Or if worse comes to worst, simply go back in time to before my tiredness took it’s toll on my code.

Now, with so many different tools and services available such as Beanstalk, GitHub and BitBucket to host your code repository which should you choose? If you’re largely a sole developer like myself you’ll probably want the cheapest, and it’s for this reason I swapped from Beanstalk to Team Foundation Service to host the Foundbite code repo.

Forget the name, Team Foundation Service is just as suited and useful for sole developers like myself as it is for large complex teams. It’s so easy bullet points are appropriate:

  • It’s free (for up to 5 devs) – yep, it won’t cost you a thing.
  • It’s heavily integrated into Visual Studio – pretty obvious but the ability to compare changes and view changelogs inside visual studio is handy.
  • There’s a nice web interface – The site is nice and easy to use to view changelogs and add new users.

There’s also lots of other features which I haven’t got around to using yet like continuous builds, test execution and agile planning. They’re all a bit foreign to me at the moment but I’m sure I’ll get around to using them eventually.

Have a look over at