But it works on my PC!

The random thoughts of Richard Fennell on technology and software development

For those hard to mock moments - Microsoft Fakes or Typemock Isolator?

About a year ago I wrote a post ‘Now that VS11 has a fake library do I still need Typemock Isolator to fake out SharePoint?’. Well this discussion becomes relevant for more people as with Visual Studio 2012.2 (currently available as a CTP) the Microsoft Fakes move from the Ultimate SKU to the Premium SKU.

From my experience the Ultimate SKU is not present on too many developer’s PCs. It is most commonly found on the PCs of the team leads, software architects or test developers (managing coded UI/load testing etc. efforts). If a team was historically going to use Microsoft Fakes then they had to buy more Ultimate SKUs; as what is the point of a unit test using a mocking framework that only part of the team can run?

The Premium SKU of Visual Studio is far more common, I would go as far as to say it is the corporate standard for development. Now as this SKU contains Test Manager (since 2012 RTM) it covers most jobs most developers do. Ultimate is just needed for the specialists in the team. Adding fakes to the Premium SKU really makes sense if Microsoft want to drive adoption.

So now the question of whether to use Microsoft Fakes or Typemock Isolator (or Telerik JustMock a product I have to admit I have not used in anger) is rebalanced as there is a fair chance a development team may all be licensed for Microsoft Fakes as they have the premium SKU. The question becomes is the cost of Isolator justified by the features it offers over and above Microsoft Fakes?

This is not an uncommon form of question for any third party add-in to Visual Studio. Visual Studio offers refactoring, but I think few would argue that Resharper or RefactorPro! don’t offer more features that justify their cost.

For me the big advantage of Typemock is ease of use and consistent syntax across all usage patterns. This could be just due to familiarity, but the fact I don’t need to manually generate the fake assembly is a bonus. Also that Isolator’s fluent API is basically the same as Moq and FakeItEasy so causes less friction when coming to advanced mocking from these tools. A team can use the free basic version of Typemock Isolator until they need the advanced features when they need to license it.

Fakes is a different way of working to most other frameworks, working at a different level inside Visual Studio. A disadvantage of this is that it does not lend itself well to refactoring, you are probably going to have to regenerate the fake assemblies after any refactor, which can be slow. Also this makes refactoring a bit more risky, as you also have to touch unit tests, a manual operation.

I think at this time for me Isolator still offers advanced features and easy of use advantages that justifies the license cost. However, as with all tools this is an ever changing field, I expect to see new features and changes for all the players in the fakes market as they all aim to better address the problems cause by the poorly architecture of applications/frameworks such as SharePoint and of course our own poorly designed legacy code.

New book from Gojko Adzic ‘Impact Mapping’

A common problem with getting software developed is the needing to get everyone aiming for the same goal. This too often gets lost in the development process; the real goal of the business is not communicated to the development team.  It maybe that the goal professed by the business is not the one they even really want, but their current viewpoint obscures the true goal.

In this new book from Gojko Adzic provides a excellent introduction to Impact Mapping as a tool to help address this problem. It describes using workshops and simple graphical tools as a way to tackle this problem of keeping an eye on the true goal. These are tools to use well before starting down the user story/ALM path to make sure the goal of your project is sound, known and measurable.

This is a refreshingly thin books that should be easily accessible to anyone involved in software projects irrespective of their technical skill level or team role. Well worth a look by everyone

Black Marble at the 2012 Abbey Dash

Another good turn out this year for the Age UK Abbey Dash 10K in Leeds. Over 9000 runners this year, certainly seemed much busier than previous years.

image

 

Again Black Marble had staff members running. As with last year we did a wisdom of crowds based handicap race for the impressive Black Marble trophy (we all estimate each others expected times, the winner is who beats mean estimate the most). This year there was a tie to the second between Jon and Becky, who are as we speak negotiating over trophy sharing for the next year.

image

Congratulations to all who took part, I am sure plenty of good causes benefited from the efforts of everyone who ran

Reinstalling again…

Just completing the second reinstall of Windows 8 on my Lenovo W520 in 10 days due to my new SSD failing and needing to be replaced.

To try to ease the process I though I would try putting on the miscellaneous tools I use such as 7Zip, Filezilla etc. using Chocolatey. I have to say first impressions are good, one command and the product is on, the files pulled from the appropriate site.

Obviously there is the issue that packages are may not be kept up to date, unlike Nuget (which is at Chocolatey’s core) the packages are not stored on the Chocolatey site. I noticed the SysInternal package is a bit behind, but I could always submit the updated package myself couldn’t I.

Emboldened by my success with simple utilities I tried Eclipse and Java, they worked fine.

The biggest gain was git, posh git and git-tf. Usually there is a degree of file/path editing here, but with chocolatey just a single command for each.

To find out more why not listen to Herding Code podcast on the subject

Nice introduction to the new features of VS2012

If you are looking for a nice introduction to the new features of Visual Studio 2012, I can heartily recommend Richard Banks 'Visual Studio 2012 Cookbook'.

This book covers a wide range of subjects including the IDE, .NET 4.5 features, Windows 8 development, Web development, C++, debugging, async and TFS 2012. This is all done in a easy to read format that will get you going with the key concepts, providing sample and links to further reading. A great starting off point.

There is stuff in the book for people new to any of the subjects as well as nuggets for the more expererienced users. I particularly like the sections on what is not in 2012 but was in previous versions, and what to do about it. This type of information too oftan left out of new product books.

So a book that is well worth a look, and has it has been published by Packt there are no shortage of formats to choose from.

Weekend trip to see family – 1 OS upgrade, 1 network printer installed and 3 machines de-virused

I have been away over the weekend seeing family, and as anyone who is in IT (or is a medical doctor I suspect) would expect I had the standard experience – everyone wanted me to show me something they were worried about that turned to be virus related. This trip I did one operating system upgrade, one network printer installation and de-virused three PCs. So nothing out of ordinary.

The one thing I would mention was how useful I found the contents of Mark Russinovich’s TechEd Session ‘Malware Hunting with the Sysinterals Tools’. This saved me the complete machine rebuild I had feared for one PC which had got infected with a bit of poor quality ransomware  that turns out to only be a splash screen that I could easily spot with Autoruns from the Sysinternals Suite. The video is well worth a watch for all of us in the family IT support game.

At last my Nokia Lumia 800 gets its firmware upgrade to allow tethering

At last my Nokia Lumia 800 gets its firmware upgrade to allow tethering. The 8773 update seems to be made up of three updates, two operating system ones (which I managed to force down in the usual way), but this Nokia firmware one has taken weeks to get to me, forcing did not help. I had to wait.

I don’t think I am alone in not being too impressed with the update process. The throttling/delaying update process is probably Ok for the man in the street, who just wants a working phone, but there should be an easier way to get updates if you want/need them ASAP for development purposes or are trying to run consistent versions for all phones in an organisation.

Skydrive pushes me over my broadband usage

I got back from a trip away to find an unexpected bill for broadband  through the letterbox. I have paid about the same each quarter for broadband for a good while now, I don’t see much variation as I rarely use my home phone, then again who does?

This bill was nearly double, why?

I think it was mostly due to setting up Skydrive to mirror my family photos and video as a backup, though this can’t explain it all, but then again my son as found Roblox. In each month I went over my usage it was costing me £5 a 5Gb block. It adds up fast.

On calling BT I found I could upgrade my package to a larger allowance and it worked out less than £1 more. The most irritating thing was they had been emailing me about my usage on my BT provided email address, an address I have never used.

So the top tip is make sure your usage notifications go to an address you actually get .

Thoughts on my Channel9 post

After hearing my TEE video on Channel9 mentioned on Radio TFS I thought I should watch it through, I had only found time to do a quick look previously. This is all part of my on-going self review process, a form of self torture.

It seems the issues I mentioned last time are still there, I still have too many err’s. The thing that stood out the most was I looked like a very shifty newsreader. My movement behind the table and losing eye contact with the camera were too noticeable to me.

This said I am happy with how it came out. It was great working with a professional crew and you can see how good they can make the video look with good lights, camera and  editing.

On the whole I am very happy with it, just need to ‘love the camera’ bit more.

Thoughts on the new Skydrive

I have swapped to the new version of Microsoft Skydrive, replacing my old Mesh setup. It is a nice slick experience, allowing easy viewing of files on Skydrive from Windows and WP7. However, I do have couple of issues

  1. I used Mesh to sync photos from my Window 7 Media Center up to cloud storage as a backup, don’t want to loose all the family photos due to a disk failure. This was simple with Mesh, just set up a sync. This is not so easy with the new Skydrive, which appears only as a folder in your user area. The only solution I can spot is to copy my photos into this folder e.g. xcopy d:\photos c:\users\richard\skydrive\photos. Once the copy is done this will be synced up to the cloud. With mesh if I added a file to my PC it sync’d without me doing anything, now I need to remember the xcopy (or whatever sync copy tool I am using), or have the copy being run on a regular basis via a timer.
  2. Letting Skydrive start automatically on a laptop Windows PC is dangerous. I was on site today using my Mifi and in about 10 minutes used a whole days credit. So I would recommend changing your tool tray setting to make sure you can see the Skydrive icon all the time, so you have a chance see when it is syncing and can stop it when on a connection that cost you money.

image

So any comments, or better ways to do the sync?