Blog Home  Home Feed your aggregator (RSS 2.0)  
.Net Jonesie - July, 2008
A simple programmers blog
 
# Thursday, July 17, 2008

Thanks Matt. I cringed when I first saw this, but it’s actually quite challenging remembering the past in any detail.

How old were you when you started programming?

My first computer was a ZX80 but I didn’t do much with it.  In fact, I think it turned me off computers for a while.  The first real programming I did was at high school in the 6th form.  Burnside didn’t have any computers in 1980-ish so we used to cycle to the university and submit our coding sheets or collect the punch cards and ‘run’ our Fortran 77 app’s on the PDP.

image

Later we discovered the DEC VDU’s where we could spend 30 minutes entering the code directly and see the results on the line printers.  I don’t know if it was the ozone or the clacking sound but I really miss using line printers as a terminal – they also had keyboards!  There is something very satisfying about mechanical interactions with a computer.   

image

How did you get started in programming?

I had a friend at Christs College and being a private school they could afford lots of cool stuff.  They had a small PDP.  Alex created some pretty nifty graphical applications on the this.  After I left school he introduced me to PC’s and it wasn’t long after that I had my own – 8086, 4.77 Mghz, green screen, 256K RAM I think and twin floppies! – no HDD.  

What was your first language?

Microsoft Basic Compiler – BASCOM – v 6 I think.  I created some large applications with that but gee, it was slow.  Before that I tried to learn COBOL via correspondence school.  That was like learning to drive without a car so I can’t really count that.

I guess the first real language I used was C which I learnt at Christchurch Poly night classes.  I soon realised it wasn’t for me though and discovered dBase and then Clipper.  Clipper is/was a dBase compiler (pcode only) and if you don’t know what dBase is then think Access for DOS. 

What was the first real program you wrote?

With Clipper I created my first applications that I actually got paid for.  It was a system for managing club memberships.  I formed a partnership with a friend of a friend and we sold about 20 of those I think mostly to Working Men’s clubs.  

The last of my Clipper apps was only decommissioned about a year ago – 15 years from a DOS application is pretty good I think.  

What languages have you used since you started programming?

Fortran, MS Basic, C, dBase, Clipper, Pascal, VB, Forte (4GL), Delphi, C#, VB.Net, Java, JavaScript, English, Geek and a little Klingon. 

What was your first professional programming gig?

My first real programming job was with a very small 1 product company.  The product recorded output from telephone systems and calculated usage and cost.  It was called CAPP Plus (CAPP, the original was written in Turbo Pascal and became unmaintainable – for various technical and personal reasons! I re-wrote it with Clipper).  It was through this job I met my wife and when the company karked we took over the product and sold it for a few more years until Telecom decided to get out of the business.   

If you knew then what you know now, would you have started programming?

When I was young I always said I had no regrets and while that’s still true – give or take a few stupid ideas that I shouldn’t have acted on! - I just wish I’d started sooner.  In the famous words of Oscar Wilde - ‘youth is wasted on the young’.  

If there is one thing you learned along the way that you would tell new developers, what would it be?

If you love it, programming is easy, it’s humans that are hard.  Spend as much time learning the business as you do learning your craft.  Developers are easier to find than developers with real business knowledge.  If you don’t understand the business then software bombs are also a good way to get promotions – or legal trouble. 

What's the most fun you've ever had... programming?

I get a big kick hearing that an application you wrote years earlier is still being used every day and you never hear a word from the customer, but the best thing about this career is the opportunity to work with great people and maybe even marry them :) 

I Choose

Hmmmm.  The people I choose either don’t have a blog or their site is not working.  I’ll try to update later…

Thursday, July 17, 2008 7:29:08 AM (New Zealand Standard Time, UTC+12:00)  #    Comments [1]   General  | 
# Monday, July 14, 2008

I'm on a client site this week upgrading TFS 05 to TFS 08 and unlike my previous installation, this one has not been quite as smooth. 

Server Setup

A brand new shiny server was proived for the update (dual quad core with 4Gb of ram).  Initially we had tried to install on another similar server that had some other software on it for their helpdesk.  Unfortunately, the install of TFS 05 or WSS 2 or both screwed this software and we had to restore the server and leave it alone.  Not good!

Lessons learnt 

1) don't expect any useful support from Symantec - Support guy:  "Sorry but that is not one of our products", Me: "Ahhh, but I downloaded a trial version from your web site!".

2) don't install TFS (05) onto a server running anything that uses SQL Reporting or the default web site or WSS (2 or 3).  I fact, it's way simpler to have a clean server.

Moving

I neglected to check that TFS SP1 was installed on the old server before configuring the new server with SP1 so I had to update the old server then redo the backups.  No biggy, but it meant sitting arond for an hour.

Then the fit hit the shan.  After 3 hours trying to figure out why the restorative move process was giving me stupid TFS errors I realised the TFS 05 installation media I was using was for the Workgroup edition.  Dur!  Luckily, it was a simple matter of removing WSS2 and TFS 05 then running through the process again (for the 4th time) with the correct installation.

At the end of this everything was working apart from SQL Reports - which I ignored as it was late in the day.

I then upgraded TFS 05 to TFS 08 which tool another hour, tested and I was done!

Lessons learnt

1) Make sure the source and target TFS installations are patched to the same levels.  Same goes for WSS.

2) Make sure the installation media is the correct version/edition!

3) Create and save the DB restore scripts the first time you do it - it gets borng very quickly having to redo the restore 4 times using the SQL Management Studio GUI.

SharePoint

Thanks to a useful blog post I felt a lot more comfortable about attempting a SharePoint upgrade.  The customer had not done any customisations to the project portal site so the prescan ran without issue and the upgrade comlpeted without errors.

Lessions learnt

1) An inplace upgrade is ok if the prescan is completely clean and you have experts available to help (or google).

Other Tips

I had made a binder with all the documentation I needed, including the Move instructions from MSDN, the TFS P&P Guide (all 500 pages), the licensing white paper, my upgrade plan - including the steps, servers, logins and other site relevant information - and a DVD with the software I needed in case the client could not find something (next time I'll check the DVD works tough as the TFS 08 iso was corrupt - thankfully the client had this).  I'll leave this binder with the client as a parting gift :)

I'm not quite done yet, I still need to configure some build scripts.. will update this post later.

Monday, July 14, 2008 8:26:59 AM (New Zealand Standard Time, UTC+12:00)  #    Comments [0]   Team System  | 
# Tuesday, July 08, 2008

As usual, we get ripped. http://www.stuff.co.nz/4610626a28.html

Will someone please do something about corporate greed/crime in New Zealand?

My advice, if you really want one of the new iPhone, buy it overseas and hack it to work here – don’t give your money to Vodafone.  Better yet – leave New Zealand.

Tuesday, July 08, 2008 11:33:02 AM (New Zealand Standard Time, UTC+12:00)  #    Comments [3]    | 
# Sunday, July 06, 2008

Is it just me, or does anyone else find themselves driven to buy funny stuff?

StraightCroissants

Sunday, July 06, 2008 3:32:52 PM (New Zealand Standard Time, UTC+12:00)  #    Comments [1]   General  | 
# Saturday, July 05, 2008

A couple of weeks ago I upgraded our Team Foundation Server from 2005 to 2008.  This is my story…

I was very nervous about upgrading the server as the installation procedure requires un-installation of the existing TFS2005 version and an install of TFS 2008 over the top.  The source code and work items are very important asset for us and loosing them, even for a day, would cost us a lot of money (and be somewhat embarrassing).  So, I was very careful about the process. 

Preparation

I needed to ensure that I could recover our current TFS installation should the upgrade go pair-shape so I created a Virtual Server image on our main domain with a clean install of TFS 2005.  I then restored the TFS setup to this new server, which had a new name.  Microsoft provide detailed instructions on how to move a TFS install here:  http://msdn.microsoft.com/en-us/library/ms404860(VS.80).aspx. This process also taught me how to do a disaster recovery – a very useful and necessary skill!

The creation of the VM, getting it on the domain, installing TFS, migrating the databases and reconfiguring the server took me the best part of 3 days.  I took my time and followed the instructions precisely.  If I had to do this again it don’t think it would take more than a day.

I also migrated the SharePoint content to the new server.  This is documented in the above MSDN article.

I tested this new install, and while it was slow, it all worked and developers could connect and do work.

The testing highlighted a couple of issues.  I had installed Conchango’s Scrum Template on TFS but it was not being used so I had uninstalled it. Unfortunately it had made some changes to the TfsWarehouse database that did not get removed during uninstall.  The test scrum projects were deleted but I didn’t want to futz with the database directly so the scrum stuff had to stay.

Doing it for real

After all the preparation, the upgrade process was somewhat anti-climatic.  It took an hour and half to uninstall TFS 05 and install TFS 08.  Again, the instructions provided my Microsoft are precise and simple to follow.

I next updated Team Build and Web Access with the latest versions,  Again, this was very simple and painless.

Problems

On the Monday morning following the upgrade I found that the Warehouse cube was not being updated.  In fact, some of the dimensions were empty.  It turned out there was a permissions issue with the analysis services. The error in the event log was :

Some or all identity references could not be translated.

A bit of Googling around quickly solved that one: http://blog.salvoz.com/2008/01/26/TFSWarehouseIssues.aspx

During my test run I had a lot of trouble with the SharePoint Services upgrade.  As we don’t use the project portals very much. I made the decision to stick with WSS2 for now.  Next time one of our SharePoint config guru’s is in town I may get it updated, or we might just switch to using the corporate MOSS platform.

I’ve now also notices that some Team Builds are failing.  It appears that projects using our custom Work Items are having a problem building.  I haven’t had time to investigate this yet, but I don’t expect it will be too hard to solve.

Recommendations

If you need to do any work with TFS read the MSDN documentation first – it’s exhaustive and complete. For any issues or problems Google first then post a message on the MSDN TFS forums – you will almost always get a quick answer from a Microsoft expert, MVP or other similarly brainy person.

Put your hand up if you can afford to lose all your source code – for even a day.   Hmmm, I thought so.  Create a disaster recovery plan and test it.  Yet again, Microsoft provide all the documentation you need for this on MSDN, but here’s what I did:

  1. Create a VM with Windows Server installed on it.
  2. Add the server to the same domain as your current TFS install.
  3. Install TFS and all the same bits you have on your production system.
  4. Backup the VM.
  5. Now test the DS plan on the VM using the move instructions from MSDN (above).
  6. If you update your production server then remember to update and test the DS system again.  In fact, test the DS system regularly - once a year or more often.

In summary I found the upgrade a very pleasant experience, aided greatly by the detailed and copious documentation from the tireless TFS team at Microsoft and the large volume of community blogs and forums.

Saturday, July 05, 2008 7:57:12 PM (New Zealand Standard Time, UTC+12:00)  #    Comments [0]   General | Team System  | 
Copyright © 2010 Peter G Jones. All rights reserved.
DasBlog 'Portal' theme by Johnny Hughes.
Pick a theme: