Thursday, August 20, 2015

ALM days 2015 - Byte sized sessions : Database as source

I often see that the database does not get the love from developers that they give their code. One big topic is always around the tooling and how expensive some of the database management tools are.

Well this session will hopefully give you some insight into the "free" tools that are available and built into the Visual Studio ALM stack.

Interested in how to manage database schemas / source and to discuss some of the scars that one of my client is in the process of picking up?

Our next session is on 17th of September 2015 at the Microsoft Offices in Pinelands. Feel free to register here : http://bit.ly/almdaysSept15 
(and invite anyone you think may be interested!)

Edit: We apologise, but Microsoft has scheduled Dev Days Cape Town on the 17th as well. Due to this conflict we a re-scheduling to the 1st of October 2015. We apologise for any inconvenience that this may cause.

Thank you to Microsoft for sponsoring the venue for this session.

Friday, August 7, 2015

TFS 2015 Finally released!

After waiting what seems like forever, TFS 2015 has finally been released after Brian Harry decided to hold back and get some more testing done.

This time it seems to be the real thing Smile : http://blogs.msdn.com/b/bharry/archive/2015/08/06/team-foundation-server-2015-final-release.aspx

I've had some people ask me if they should upgrade or wait a while to have all the "kinks" worked out. My answer is twofold:

  1. Evaluate the release first and make sure that there is value to be had out of the upgrade
  2. Secondly, I would not worry toooo much about encountering any "kinks". TFS is pretty much production tested in VSO so there is not much of a chance that you will encounter any significant issues

If it makes sense for you to upgrade, by all means do (of course taking necessary precautions as you would in any upgrade situation!).

That said, it is always a good idea to keep up to date with updates and upgrades. This will make future updates less cumbersome and quicker, as well as keep you in the support band (TFS 2010 is not supported anymore and Visual Source Safe should not exist anymore!! (even though the tragic truth is I'm still doing the odd VSS migration Sad smile ))

It should be noted that this will probably be a longer update/upgrade than most. There are some significant database changes due to the project rename (finally!) capability that was added. In most small TSF instances this will not be much of an issue, but I have dealt with some large instances that needed careful planning! Luckily there are ways and means to make it a bit easier.

Need help upgrading ? : give us a shout

Wednesday, July 1, 2015

Visual Studio 2015 RTM on July 20th

woohoo.. finally the RTM date for Team Foundation Server 2015 and Visual Studio 2015 has been made public…

http://blogs.msdn.com/b/somasegar/archive/2015/06/29/save-the-date-visual-studio-2015-rtm-on-july-20th.aspx

Edit: Visual Studio will be released, but Brian has decided that quality is more important than timelines.. So we will have to wait a bit longer for TFS 2015 to land, but be assured the quality will be right up there Smile

Need help upgrading ? : give us a shout

Wednesday, May 6, 2015

Installing and configuring TFS 2015 on-premise xplat build agent

One of the things that really got me exited about TFS 2015 was the cross platform build capability, and that was the first thing that I started to play with as soon as I got hold of the RC.

Interestingly enough, in VSO it is fairly easy to setup when you have the "alternate credentials" on VSO, but, as I was to discover, there are a few more things that you need to do before you can get it working on-prem.

So with my TFS server and newly installed Ubuntu box ready, I started the xplat (pronounced "cross plat(form)" if you were wondering) configuration. The install was fairly straight forward as per the steps indicated. Then came the configuration.

1) Authentication
The first thing the vsoagent configuration asks for is an account to run the xplat agent under. Linux does not play well in an Active Directory environment, and I have spent waaayy to much of my life trying to get linux working on AD. This hinted towards authentication problems…
But there is a Solution
VSO has the concept of alternate credentials, which is basically a "Basic Authentication" mechanism. What we need to do on-prem is to enable this type of behaviour.

  1. Log onto your TFS Server and install Basic auth on IIS 
  2. Go to the TFS application in IIS (Sites\Team Foundation Server\tfs) and enable basic auth
  3. Edit and set the domain and realm to the domain used for authentication

Basic Authentication

2) Security
Once you have the authentication mechanisms setup you need to pick the account that the agent is going to run under and assign the correct rights in TFS and in the build pool. To set the rights for the build pool you need to

  1. Navigate to TFS server web access admin screen (http://<<server>>:8080/tfs/_admin)
  2. Go to the "Agent Pools" tab and either create a new pool or select the default pool
  3. Then assign the account that the agent is going to run under into the "Agent Pool Service Account"

Assign Pool Rights

Not doing this may give you a "Failed Request: Forbidden (403)" error when you try and run the agent

3) Boot her up…
Finally you need to "boot her up". If you have followed the steps outlined here, you should be able to run "node vsoagent" in the agent folder of the newly "installed" agent and you should see something like this beauty..
Agent Config

and in TFS :Active Agent in TFS

and "thar she blows"..

image

Please note that it… .. use at own risk Disappointed smile

Thursday, April 30, 2015

TFS 2015 RC & VS 2015 RC announcements at //BUILD/

As expected there is a bunch of stuff being announced at //BUILD/.

Catch some of the highlights of TFS & VS 2015 from Brian's post and for a more comprehensive list of changes and features go here

Time to play Smile 

Thursday, April 9, 2015

Agile : Failing is a good thing!

I've had this discussion a couple of times over the last number of years, and people tend to not believe me when I say that in the Agile world, we want to fail!
For emphasis I will repeat that : In the Agile world we want to fail

Let that sink in a bit…

OK, now that you think I am full of it and must not have a clue as to what I'm speaking about, lets continue.

Waterfall or Structured methodologies / processes
Let's take the example of a waterfall approach. We analyse the work, get to development and finally deliver the functionality. The only problem is that this could take anywhere from months to years to get the first working software out there.. And now the customer or client can look at it and decide that this is not what they wanted in the first place or the business has changed making it irrelevant.

Here are some very interesting numbers on failing software...
The Standish group released some stats last year stating that "Only 9% of projects in large companies were successful." and that "The most projects, 37.1%, were impaired and subsequently cancelled (Resolution Type 3) in medium companies, compared to 29.5% in large companies and 21.6% in small companies."

With this high rate of failure, how can it possibly be good? Well it is not! Failure is never good, but it is inevitable. What we do however strive for is to mitigate the losses that are incurred due to the failure.
How do we do this?

Fail fast fail often…

Agile methodologies / processes
In contrast to the structured "long running" processed described above, in agile we get working software into the hands of customers, business or clients as soon as possible. They can then interrogate it and communicate where the problems (if any) are and what needs to be done differently or how to fix it. We can then"pivot" to fix the issues, change the focus or scrap unnecessary functionality to continue delivering business value.
The difference here is that if we do "fail", we lose an iteration's worth of work, which should be 2 - 3 weeks. Compare this to the months or years that a structured process could take...

Another difference is that we can then learn from the mistake, make an adjustment and continue delivering value. In structured processes the monolith has been developed and you may very well be too far down the path to make the required changes or fix the issues.

In a nutshell:

Failure is not good, but it is inevitable. Things are changing too rapidly for us to start with a plan and be able to deliver relevant software months/years later.

We need to deliver small chunks of work that can be interrogated and evaluated, gather that feedback and communication and adjust what and how we do things to mitigate the risk and exposure of the failures or losses!

Wednesday, March 18, 2015

End of TFS 2010 Mainstream Support

Wow, time flies. I can remember going to the launch and being really exited about the "major" changes that TFS 2010 brought with it.

And now, it is at the end of its mainstream support

Looking back, it is amazing how much has changed since TFS 2010 to TFS 2013 and even what is coming in TFS 2015.

Here is to some exiting times!

BTW: if you are considering upgrading to maintain support, feel free to give us a shout.