Development

Why it is important to use SCM for your university work

By 17th March 2014 No Comments

When I started university, there wasn’t a focus on us using any form of source control management tools to keep all of our work in one place. Let me discuss with you why using some form of SCM is important though.

Since my second year, the department started rolling out subversion to students to keeping track of what work students were actually doing but fundamentally, keeping you from losing your work and making up excuses for not handing it in. If anything went wrong with the departments subversion and you lost your work, that would then be their fault, not yours.

My experience with SVN & other SCM tools

However, give a computer science student a solution and they will find a problem with it and go for something different. It is just the way that we all work and there is no point in denying it. I was one of those students who instantly took a dislike to subversion and took an immediate liking to Github. Seems unlikely, I know, but Github provided me with a simple interface and it tied into Visual Studio quite well using plugins.

After sometime and an introduction to something new while working at Seed Software, I ditched Github for Microsoft’s Team Foundation Server 2013. While this next section will explain why I like it, this is just my experience. TFS provides much more than just plain source control management. It has reporting, project management (great for agile development techniques), automated building, testing and release management tools to aid you in the complete life-cycle of your projects. As it is a Microsoft product, it integrates perfectly with Visual Studio allowing you to do most of the management using the IDE and not TFS‘ interface. You can even use TFS with non-Windows platforms including Eclipse with a very similar integration to Visual Studio. You don’t even have to use TFS‘ source control management either with TFS. If you prefer Git, it integrates perfectly with that too!

But why is it important to use SCM?

It isn’t about what I think is the best method to use though so don’t all run off to try TFS, unless you really want to. It is just about using some form of source control whether it be Git, Github, Perforce, TFS, SVN or any other SCM tools you can think of. Pick one and use it. You’ll be thanking yourself later if something goes wrong with your PC and you have to fresh install your favourite OS. Everything will be sat waiting for you to pull from source control.

If you’re interested in finding out more about online services that don’t need you to have your own separate server hosting the SCM tool, check out either Github (which provides you with a student account so you can have a couple of private projects) or Visual Studio Online, a free version of TFS which allows up to 5 team members per project however you will be able to get more using a subscription based service. These are two great platforms that I would highly recommend.

Author James Croft

James is a senior software developer for Black Marble and Microsoft MVP in Windows Development with over 6 years of experience developing applications for the Windows platform. James’s passion for learning new technologies gives him the opportunities to expose them to the wider community through tutorials, lessons learned and best practices through his online blog site, personal YouTube channel, and local communities through talks at events, schools and universities.

More posts by James Croft

Leave a comment