But it works on my PC!

The random thoughts of Richard Fennell on technology and software development

IDD Building a breakfast comment to a become process – now there is a leap

Gil at Typemock has been posting about some ideas we discussed over breakfast at the Typemock Partner conference a while ago, I have been a bit slow at commenting, so I though I better add to the conversation. Though Typemock is an excellent mocking framework, for me basic mocking is not its biggest win. All the ‘classic auto mocking’ of interfaces to speed TDD style working is great, but I can do that with any of the .NET mocking frameworks. All they do is mean I don’t have to write my own test stubs and mocks, so saving me time, which is good but not the keep win I was looking for.

For me there is another way to save much more time and that is to reduce my ‘build, deploy, use’ cycle. In the land of SharePoint this is a significant time saving, or at least has been for us. It has meant that I can replace the build, create WSP, deploy WSP, let SharePoint/IIS restart and then view a web part, with a build and view in ASP.NET page that uses Typemock to fake out all to SharePoint calls. This is what Gil has termed Isolation Driven Development (IDD) Now isn’t a three letter _DD name going a bit far, I am even not sure there enough in it for me to write a book!

That said this is a solid technique which can be applied to any complex environment where developers or testers need a means to mock out significant, costly, or just slow components to ease there daily work process, often enabling some manual testing process, thus making them more productive. If you read the TPS books it mentions a lot how workers should optimise their work space to reduce wasted time the spend moving between machines or roles, this is just such a move.

So if you want to use the technique for Sharepoint have a look at my post, I hope it will save you time whether on SP2007 or 2010, or maybe apply same technique to other technologies.

Post NDC2010 thoughts – a great event

What a great event the Norwegian Developers conference is. It is a nice size so there is a good selection of tracks, but no so big you feel lost, also the speakers and attendees were all mixing freely which I think always makes for a good atmosphere. This was all enhanced by the excellent organisation of the event, what can I say the wifi worked faultlessly, the food was good and the overflow screens (so from one place you could view the video and audio of any current sessions) was a brilliant idea, so much I know some people took to using this in preference to going to the actual session. You can see the overflow screens at the top of the photo below.


On the subject of food it was good to have a breakfast, a ‘lunch bite’ and then another small meal around 4pm just when you are flagging. It was noticeable that the sponsors on the expo had basically got rid of all the swag and replaced it with a selection of snacks and coffee machines. For me far more acceptable to get a nice ice cream or a hot dog rather than yet another USB pen drive or fluffy toy with a corporate logo on it. I even enjoyed the band at the ‘legendary NDC party’, the organisers seemed to get all points right.

Also what was nice was that this was not a single vendor conference e.g. a TechEd or PDC. Now these can (but not always) be great for new product knowledge, but they can constrain the subject matter. At NDC there has been a good wide range of subjects with a particular strong Agile process and Ruby tracks. I for one would want to go to conferences to be exposed to things I have not used before, both technologies and concepts. This I feel you can for better at a conference with a wider scope of subject matter than a vendor conference. Now the danger is that the range becomes too wide and dilutes the content, but at NDC again I think they got it about right

Remember all the sessions at NDC were videoed in HD, and they are being rapidly being uploaded to http://streaming.ndc2010.no/tcs/, so if you are interested in seeing my or any other sessions from this ‘amazing line-up!’ take a look.


I hope any sessions I submit for NDC2011 in May next year get accepted, I would love to go back.

When roving what I hate most about windows mobile 6 is not knowing what connection it will try to use.

When travelling aboard what I hate most about Windows Mobile 6 is that I have no idea if the phone is going to trying to use a local WiFi or 3G. Mobile Outlook seems the worst culprit, it loves 3G over everything else!.

On mobile 6.5 there are just too many places where you might need set which data connection to use. This means, for fear if a nightmare phone bill, I tend not use us my phone for data. And just just don’t realise how much you use it at home until you are away.

I hope the connection management is more straightforward on version 7

Thoughts on the BCS EGM

I got the paperwork for the British Computer Society EGM this week. This EGA raises some interesting issues, the best overview of the issue I have found seems to be on the Computer Weekly site.

So has supporters of the EGM motion argument, led by former BCS trustee Len Keighley, any merit? Yes, it does. Enough to vote out the current BCS management and trustees? Well I am not so sure.

I was a student member of the BCS in the late 80s, when I was working for a small PC and LAN dealership. It was not good experience, I left the BCS with a feeling they did not care for anything bar old mainframe style IT and had no interest in anything newer than the late 70’s.

I rejoined the BCS in the late 90s when I formed Black Marble. This was initially purely as a means to gain my CEng to help in getting more work. I was able to do this due to the number of years experience I had by then. However, I still had to provide references, a very detailed CV and attend a rather daunting panel interview.

At this time also started to attend my local branch, West Yorkshire, and I am happy to say that I found it a far more relevant and friendly organisation. I remember attending a local meeting soon after David Clarke became the BCS CEO, he was touring the branches to introduce himself, and being impressed by his forward looking views and plans for the society, which he seems to acted upon.

So has it all gone too far?

Well I am not too impressed by the CITP qualification, it strikes me as far to easy to get. I thought my CEng application process was fairly light compare the process required for friends who gained CEng via the IEE or who work in other chartered engineering professions such as structural or mechanical engineering.

We all know that qualification can become devalued, there has been no end of these in the realm of IT vendor qualifications such MCP, CNE etc. The vendors regularly force re-qualification (and often with serious re-banding to a new qualification) with greatly increased difficulty; a tactic that cannot be used for ‘pass once hold for life’ qualifications such as a CEng. For CITP I think it arrived devalued. At this time I see little for no respect for the CITP inside the industry or recognition in the world beyond. It certainly does not rank even vaguely equivalent to a ‘real’ CEng. It look like a tool, as said by the EGM supports, to drive membership alone.

Also I am not a fan of the BCS flagship product SFIAPlus, this for me became a huge barrier to completing my CPD record. I used to find it funny the CPD process for the BCS was fill out a Word document online, print out out and post it in. I welcomed the move to the online SFIA model, until I had to use it. It seems again designed for the large company 70s BCS core membership, a nightmare of complexity. It has reached the point I cannot be bothered to complete it, it would take far too much of my valuable time. So it must be said that as I don’t complete it now, there is a chance it has changed (maybe even improved) since I last tried it.

All this said I think the BCS is far more relevant now than it was 10 years ago, though I don’t whole heartedly welcome the move to offering business services, I can see the reason behind it. However I think the changes are still far from moving the BCS into the same space as other professional societies such as the Royal societies and BMA, which must be the long term goal.

So how will I vote at the EGM, like many I am still undecided. As I said the ideas behind the EGM have merit, but an EGM seems a poor way to address the questions, but maybe this is the only way to do it if the current management is a closed as Len Keighley makes out.

Great book on Kanban

I won’t bother to repeat what Gojko has said on David J, Anderson’s book on Kanban, other than to say I agree wholeheartedly.

I too have been looking for a good introduction book on Kanban as applied to software development (so Kanban as opposed to kanban, not the capital K). This is exactly what with book does. OK I know that this information is out there on the web (http://www.limitedwipsociety.org/); but there times, especially for introducing potentially non technical people to development methodologies, where you want to point people at an easily accessible introduction they can dip into. This is that book, have a look it is worth it

More on my Vodafone 403 errors – an explanation at least

The next chapter of the ongoing saga. I had the 403 errors again today when using my phone as a modem to test out firewall. As I was in the office I had time to call Vodafone support. As expect I had to speak to a succession of people:

  • Person 1 – call centre advisor, passed me straight onto ‘support’
  • Person 2 – support advisor but seem lost when I spoke about web protocols, I think it was more ‘making a phone ring’ support
  • Person 3 – 2nd line support, success, as soon as I explained my problem they said ‘yes that happens’.

The problem is down, as I had suspected, to congestion in their WAN network (not the 3G network, though the density of cells is a factor). When you try to use HTTP Vodafone route a request to their authentication server to see if your account is allow to connect to the site. By default they block a list of adult/premium web sites (this is service you have switched on or off with your account). The problem is at busy times this validation service is overloaded and so their systems get no response as to whether the site is allowed, so assume the site you asked for is restricted and gives the 403 error. Once this happens you seem to have to make new 3G data connection (reset the phone, move cell or let the connection time out) to get it to try again.

I have now had the restricted service removed from my account, we will see if this help. I fear it will not as any connection still has to ask the authentication server if the site is restricted even if my account is set to restrict no sites.

So it seems that volume of smartphones is really hurting Vodafone's internal network. They seem to have the 3G/Edge capacity, shame they have not got enough server wan/capacity to back it up yet.

What I don’t understand is why this has taken me so long to get a sensible answer. Can’t they publish a statement on this problem on their support forums or web site?

Looking for a good overview of Visual Studio 2010 and ALM?

Visual Studio 2010 provides many new features to aid Application Lifecycle Management. Learning its capabilities can be a bit daunting, especially if you are new to Team Foundation Server.

So enter the new book ‘Professional Application Lifecycle Management with Visual Studio 2010: with Team Foundation Server 2010’ by Mickey Gousset, Brian Keller, Ajoy Krishnamoorthy and Martin Woodward. This provides a great overview of all the the key features of Visual Studio and TFS 2010, presented with a view as to how TFS gives an end to end delivery of an ALM process.

Don’t go expecting this book will tell you everything about TFS, even at 600 pages it cannot be that detailed, it is a huge product, you think SharePoint is big, well it is just a subset of TFS! To address this potential problem the book contains many links of to relevant sources both on MSDN and blogs to fill in the extra detail you are bound to need concerning TFS and general development processes. Think of it as a “get you started” book, or a “what’s new in this release”, not a day to day administrators guide.

My one complaint, and it is very minor, is that it does read a bit like a collection articles as opposed to a single book. However, given it has four authors and the scope of the subject it covers this is forgivable.

So if you are are considering TFS 2010, whether as a developer, a sys-admin or manager this book will give you a good introduction into that you can achieve in your ALM process. Well worth a read.



Stupid support suggestions from Vodafone about 403 server proxy errors

A while ago I blogged about the problems I was having with 403 error when trying to use my HTC phone as a 3G modem or using Opera or IE on the phone itself. When I initially complained Vodafone refunded my data fee for the month and said engineers were onto this known intermittent issue. No grief, Ok I did not want to see 403 errors but I was happy with the customer service, fast and no quibble.

But the 403 errors have not gone way, in fact I am seeing them more often and not just when in the square mile in London. When I complained again I got a different level of service, I got the ‘it is your handset’ response. This was even though I had clearly said FTP and HTTPS (to an Exchange server) were fine it was only HTTP again via the phones two browsers and from a PC using the phone as a 3G modem i.e. traffic that they proxy.

They outdid themselves today with this suggestion

1. Switch off your phone
2. Remove battery and SIM
3. Clean it with clean cotton cloth
4. Insert battery and SIM after 15 to 20 minutes

How this is meant to help a server side error how? 

Post AIC 2010 Thoughts

I was at the AIC 2010 conference yesterday, which I enjoyed more than last year. The most interesting session was Ivar Jacobson. He discussed how immature our industry is, with its disjoint between software engineers and academic computer scientists. Something I have commented on before when discussing if our industry should be licensed.

He discussed how we need to build our industry upon commonly agreed kernel of simple best practice activities, not upon some currently fashionable process whether it be Waterfall, CMMI, Agile, Lean etc. We must identify what are the best practices from all process (and all processes have something to offer) and teach them to students at University as this kernel of activities, as well as teaching how to compose them into more complex practices and hence whole development processes. Thus providing new entries to our industry with the base of reusable techniques that the can use for their whole career, irrespective of fashion. The key idea being that any current process model can be build by composing these kernel of basic activity.

So if this sounds interesting, and it does to me, have a look at www.semat.org. The signatories aim to have results within the year, if they achieve this aims this could well be the first step to making Software Engineering on a par with other chartered engineering disciplines such as Structural or Mechanical Engineering, with there is a long term set of industry accepted best practices that people can be judged against.