# Friday, November 02, 2007

I've been having a quick look at Google's Open Social... They really need to get better documentation so I'm not exactly sure about the fine detail. There are a few bits on developing widgets but nothing at all on hosting them which is a big chunk to be missing in my opinion. Maybe they are holding off publishing to stop a proliferation of social sites popping up and competing with their "launch partners"?

Some other random thoughts:

  • You need to implement your widgets as Google gadgets
  • All the samples are based on Orkut so it's not clear if a Google account is required - if it is then that's bad
  • There doesn't seem to be any sort of download available, probably as the JavaScript is hosted by the Google gadget system

They have been quite clever calling it "Open" Social instead of "Google" Social but it still sounds like a lock-in to the Google gadget system.

The API is really about building widgets to host in existing social web sites - in all not that exciting. What I would prefer to see is a system that allows me to access my social data from anywhere in applications I write - e.g. my blog, Outlook and my phone...

[Edit: having read around a little, Dare Obasanjo says much the same thing but slightly more coherently.]

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Friday, November 02, 2007 5:27:27 PM (GMT Standard Time, UTC+00:00)  #    Comments [0] Trackback
# Monday, October 08, 2007

Claire and I are just back from a week in the Red Sea scuba diving. We had a fantastic time diving wrecks such as the Thistlegorm and the multitude of reefs around Sharm el-Sheikh. We even had a close encounter with a school of hammerhead sharks. I completed my PADI Advanced Diver qualification.

The full set of photos are on Flickr as usual but I also managed to take a little underwater footage below. Not the most exciting piece of video ever but it's a start.



Video: Red Sea Scuba

[Edit: Google Reader won't allow soapbox embeds so I've added a link to the video.]

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Monday, October 08, 2007 4:53:22 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Thursday, August 02, 2007

I have 6 invites to Pownce too. If you want one then leave your e-mail attached to a comment and I'll forward one on.

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Thursday, August 02, 2007 9:21:54 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Wednesday, August 01, 2007

TechReady 5 It's been a few weeks since my last post and I've been busy with customers and Outlook add-ins. Last week, however, I was at Microsoft's internal conference. It's like a TechEd proving ground where presenters get to try out their talks on an internal audience. There is some amazing stuff coming down the line in Windows Server, Visual Studio and SQL Server. I'm really pleased about the data warehousing enhancements across the SQL Server product line.

Way back in 2004 I went to TechEd and blogged a series of articles about new features that would arrive in SQL Server 2005. I plan to do a similar series for SQL Server 2008 but since a lot of stuff we saw last week is still internal I'll only blog about bits in publicly released CTP's.

duck Finally, the Popfly mashup site is now allowing invitations so the first five people to leave a comment telling me what you plan to do with your mashup gets an invite. You need to leave me your e-mail address as well.

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Wednesday, August 01, 2007 1:33:24 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Wednesday, July 18, 2007

I’ve recently done some research into .NET WinForms testing on behalf of a customer and there are several different levels which we can attack this. Each is of different complexity and cost.

Simulate Mouse Clicks and Keyboard Presses

This method has been around since Windows 3.1 days and involves heavy use of SendKeys and SendMessage to manipulate Window message queue to send mouse and keyboard events directly. An old but pretty good sample is at http://msdn.microsoft.com/msdnmag/issues/02/03/Bugslayer/.

Drive Forms Controls Directly

The next simplest method is to get hold of Windows forms controls directly so you can call methods and set properties using code. This method usually involves running the target forms within your own process. The following two MSDN magazine articles describe the steps:

The second one looks at how to cancel message boxes etc by sending messages directly to the window. Both articles describe the method but they are not very user friendly and you will have to write a fair amount of code. Fortunately there is a library available that hooks into the NUnit testing framework at http://nunitforms.sourceforge.net/. Still lots of code but you get to write higher level stuff such as:

ButtonTester button = new ButtonTester("nameOfSomeButton");
button.Click();
Assert.Equals(“Clicked!”,  button.Text);

The only problem I can see with this is maybe development has stopped as the last full release was in November 2004 with a few alphas up until May 2006. Still you can grab the source and start hacking away if there are any problems.

Using Active Accessibility 2.0

This API has been around for a few years and is a standard way of controlling all Windows controls. The trouble is though that it’s a COM API and somewhat complex to master. I’ve seen anecdotes on the Internet talking about the test code being more complex than the application code when using this. For completeness the API is documented at http://msdn2.microsoft.com/en-us/library/ms697707.aspx though the following section has a more modern way of doing this. A walkthrough is available showing how to make a .NET application accessible at http://msdn2.microsoft.com/en-us/library/cb35a5fw(vs.80).aspx.

Using UI Automation

UI Automation is the successor to Active Accessibility and, unlike Active Accessibility, was specifically designed with automation in mind. It’s described in more detail at http://msdn2.microsoft.com/en-us/library/aa348551.aspx with a complete walkthrough and sample code at http://msdn.microsoft.com/msdnmag/issues/07/03/Bugslayer/default.aspx. One thing to note though – the UI Automation bits are only available on computers with .NET 3.0 installed – i.e. Vista, Windows XP and Windows Server 2003.

There is also a very useful library available to help with the code at http://www.codeplex.com/uapp.

Third Party Tools

This wouldn’t be complete without a nod to some of the commercial offerings out there. I haven’t used any since Rational Test many years ago which was next to useless but I hear reasonably good things about Mercury QuickTest Professional though I have no idea how much it costs. There is even a virtual lab available on Automating Testing of Windows Forms Application with TestComplete and Visual Studio 2005 Team System.

Conclusions

To summarize, I would recommend trying NUnitForms and UI Automation to see how you get on with both of them and making a choice between the two. QuickTest Professional will probably be too costly and the other two technologies are a lot of work and too old to consider for all your testing – they may have tactical uses though.

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Wednesday, July 18, 2007 7:52:52 AM (GMT Daylight Time, UTC+01:00)  #    Comments [1] Trackback
# Sunday, July 08, 2007
Monowall
Monowall, uploaded to Flickr by James Snape.

Canon 400D, Canon 24-105 f/4L IS lens - 1/60 second, f/4, ISO 100

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Sunday, July 08, 2007 3:27:19 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Saturday, July 07, 2007
Blue Crossing
Blue Crossing, uploaded to Flickr by James Snape.

Canon 400D, Canon 24-105 f/4L IS lens - 1/10 second, f/11, ISO 100

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Saturday, July 07, 2007 3:24:06 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Friday, July 06, 2007
Red Limit
Red Limit, uploaded to Flickr by James Snape.

Canon 400D, Canon 24-105 f/4L IS lens - 1/30 second, f/4, ISO 100

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Friday, July 06, 2007 3:20:52 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Thursday, July 05, 2007
Red Collection
Red Collection, uploaded to Flickr by James Snape.

Canon 400D, Canon 24-105 f/4L IS lens - 1/60 second, f/4, ISO 100

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Thursday, July 05, 2007 3:17:00 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Wednesday, July 04, 2007
Tony Blair takes residence in Connaught Square
Tony Blair takes residence in Connaught Square, uploaded to Flickr by James Snape.

This is the moment that Tony Blair moved into Connaught Square at the weekend during our engagement party. Unfortunately I didn't have a paparazzi style long lens on the camera so couldn't get a really tight shot.

Canon 400D, Canon 24-105 f/4L IS lens - 1/250 second, f/4, ISO 400

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Wednesday, July 04, 2007 1:22:08 PM (GMT Daylight Time, UTC+01:00)  #    Comments [1] Trackback
# Wednesday, June 27, 2007

As everyone knows Tony Blair resigned as Prime Minister and member of parliament today.

He'll be moving into his new house soon and turned up to the residents garden party. My sister lives in the same square and the Daily Mail managed catch her in the background when snapping pictures of him.

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Wednesday, June 27, 2007 10:53:13 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback
# Tuesday, June 19, 2007

The results of the previous three tests are interesting. In both IE7 and Firefox all three render correctly (although the PRE tag in the first one causes the text to spill into the right hand bar). When viewing the RSS feed it becomes a whole new story:

  • IE7 doesn't honor PRE tags, single spaces or stylesheets
  • Firefox doesn't honor PRE tags, single spaces or stylesheets as well but at least it cuts out the embedded stylesheet in the last post
  • Google Reader also doesn't honor PRE tags, single spaces or stylesheets and to cap it all anything in a PRE tag just renders to the end of line and stops so it makes things impossible to read

I wonder, is there a standard that feed readers need to adhere to? What is the best way of embedding syntax colored code in blog posts?

This posting is provided "AS IS" with no warranties, and confers no rights.
posted on Tuesday, June 19, 2007 5:14:50 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] Trackback