Kurt's Blog

November 6, 2008

What do Team Foundation Server and Pink Lycra Pants have in common?

Filed under: Software Development — Tags: , , , , — Kurt Häusler @ 12:48 pm

When I was in school, I chose cycling as my school sport, mainly because it was unsupervised and we could simply cycle straight home, but it turns out I was actually good at it and enjoyed it, mainly because I was riding up hills every morning delivering newspapers anyway so had the leg muscles for it. But I only had an old fashioned single speed bike from the 40s that I used for both my paper round and “racing”.

So I asked my parents for a decent racing bike for Christmas. I ended up getting an old 10 speed which was better than nothing, I was not too disappointed as it was reasonably good in its day and we weren’t especially rich. But then I opened the next present. It was a lycra cycling suit, pink no less. I am pretty sure my parents spent more on that than they did the bike, and I secretly thought it would make more sense to have not gotten me the cycling suit, and spent more on the bike.

Now I live in Germany now, and people wear cycling suits all the time even when just riding their bike to work, just as they have a special get-up for walking along trails in the hills (red bandanna around neck, knickerbockers and a ski pole), and no one wears trackpants outside the gym (except Russians.)

But this was New Zealand, and we wear the same things for everything. Trackpants if you are a sporty type, jeans otherwise, or shorts in the summer, fairly independently of what activity one is performing.

If you want to wear lycra you better be a pro cyclist, and have an expensive bike to match, and even then only the shorts will be worn (with a normal t-shirt), and you will get teased anyway.

I wore the full suit anyway, with my old ten speed, and it was an entertaining spectacle. (It was Pink! What were my parents thinking!)

What does this have to do with team foundation server? Well we use team foundation server at work. Started off with version 2005, and we only used a fraction of it. We used its source control feature, and we used the default agile template to store some of the activities that we were supposed to do. The other features like the automated builds, automated testing, the web based interface, the reporting and the project and excel integration, we don’t use. It was administered by the support department.

This version was notoriously buggy and so we started talking about alternatives. I would have preferred a simpler solution to suit our small, fairly informal team, such as mercurial (or subversion) for source control, and a lower tech solution for planning our activities, perhaps a pinboard, or one of the many open source (or otherwise free) web based tools available, and to run them internally within the software development department, so we can experiment ourselves with different development processes and techniques like continuous integration and automated acceptance testing.

But no, support was tasked with upgrading to TFS 2008, which took around a month. Now this isn’t a single package. It requires specific versions of sql server and sharepoint to be set up too. A lot of overhead considering we weren’t even using it properly.

When I talk with other developers about our using TFS, their first reaction is something like “wow that’s some heavyweight stuff, we just use subversion, are you guys using the Agile template? You must have a pretty professional process”. In fact we don’t even have a development process, nor project management, nor technical leadership, nor any quality assurance procedures, just the boss and two developers. The boss asks for a feature, and we type it in. (And yes our quality is what you think it is)

I now understand what people thought when they saw me riding my old 10 speed wearing my tight pink lycra cycle suit. “That mismatch looks rather comical, is he doing it for a joke or does he really think he is getting value out of that cycling suit, surely he should have rather invested his money into a proper racing bike”? Of course what they actually said as I strutted across the school in my tight pink lycra was a little different.

I feel a similar sort of embarrassment now, being part of a team, and I use the term loosely, that thinks they are bleeding edge by (mis)using a specific tool. Why oh why didn’t we invest all that effort into adopting a development process instead? Or introducing unit tests, or refactoring away some of our technical debt? Or implementing a continuous integration system? I suppose some things just require a bit more thought than double clicking a setup.exe

Perhaps I should ask my parents why they chose to buy me a pink lycra cycling suit and I might get a little closer to understanding the types of decision making that go on here at work.


1 Comment »

  1. Similar story on my side.
    I started working for my current company and there was NO source control in use at all. It took me a number of months to convince them that it was vital to implement one cause people seemed to believe that working on a server share was sufficient to enable team development!
    After doing some research it became clear to me that SVN was a better option than VSS and I started using it. Others who had used VSS in the past, and where pro MS, told me that just reading thru blogs and forums, gathering opinions was not sufficient and that VSS was the way to go. I ignored this and kept going. Slowly over time I got people involved in the same projects to start using tortoise and Ankh with SVN. I got constant complaints and had to do all conflict checkins and resolution myself. Eventualy havingworked them selves up against my sneered at “turtle” OSS solution, but at least realizing the need for VC, VSS was setup and every thing had to be put on it.
    It took nearly 3 months and lots of reluctant input from me before people started to understand how it worked (There where numerous recreations of the datastore and one person lost all their work every morning). In the end it turned out to be the same cause as what gave my SVN solution a bad name – Idiot users. One guy would come in every day and instead of opening the project he worked on the previous day, he would recreate the project over the old one “open project from source control”. After all these issues where sorted out I still missed SVN and the features I had come to love, however in that pro MS anti OSS environment, I realized that I stood no chance in restoring peoples confidence. I set out instead to convince them that we should migrate to TFS, a then as yet unreleased product. After MUCH effort I convinced them that the project management and process guidance was worth it.
    We installed TFS2005 and I was excited about how we would be improving processes and getting propper specs and project plans, but the sad reality is that it has been one big struggle to get these features used, even though I have in the meantime been blessed enough to have all of the stubborn antagonists replaced by younger more open minded developers.
    I have since upgraded to TFS2008 which at least resolved some of the source control issues that had me frustrated, but it is still no match for SVN. At last we are using work items for tasks and bugs as well as some technical docs in the project portal. This has not however improved the quality of these technical docs nor the tasks assigned. They are still woefully inadequate and are processes have barely improved.
    I guess I should be thankful that we have made progress even though I am feeling some regret that I did not try harder to get SVN and Trac implemented instead.

    Comment by fangspeen — March 20, 2009 @ 10:43 am

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

Blog at WordPress.com.

%d bloggers like this: