The blogs of Black Marble staff

Upgrade of our Blog server to Community Server 2007

As any of you who are regular readers of BM-Bloggers may have noticed, our blog server structure had become a little confused over the years. We started BM-Bloggers as a single blog hosted using .Text, we then moved it to a multi blog server hosted on Community Server 2.0, then started adding other blogs and mirrors as the volume of posts from our development team grew. This ended up finally being hosted on CS2.1.

We have today upgraded our blog server from CS2.1 to CS2007 and taken the chance to restructure it slightly, making far better use of the aggregation features of CS.

This may mean that some of you will need to change RSS feeds URLs, but we hope we have minimized the number of people this effects. So the revised links are:

A list of all the blogs we host (the CS2007 home page) -
The aggregate of all the post made by Black Marble staff in any blog we host (equiv. to the old BM Bloggers mirror) -
This aggregate can also be accessed by our original blog link -
There is also an RSS feed for BM-Bloggers aggregate -

I hope you all continue to find our blog postings interesting and useful, and we look forward to reading any comments.


Web site development: University of Bradford Part 1

One of the last projects I was involved in before I left the University of Bradford to join Black Marble was a new design for the external web site of the institution. I'd pretty much finished the construction of the page layouts and styles before I left, but it's only now that the site is about to go live. I've threatened a few people with a series of posts on how the site is constructed and although I'm not there any more it seems topical.

In this post I'll give some background, describe the project and run through why things were done in a certain way. Over the next few posts I'll cover the construction in more detail - what styling problems I hit and how they were fixed, and how the site tries to make use of things like microformats and opensearch.

A Brand Refresh; A whole new look

The University of Bradford old website

The University's external web site hasn't really changed much in years. Having said that, in spite of not necessarily being the snappiest dresser on the block, it was always extremely easy to find what you were after. Back in early 2006 the marketing department were engaged in a 'brand refresh' which to you and me means fiddling with the logo and corporate colours. Also to be included in the spruce-up was the web site.

The University of Bradford WebsiteFor those of you who don't know, my role at the University expanded to take in the web when one of my colleagues, who ran the web servers, left the organisation. I've always been passionate about web development (and I use that term advisedly) and I spent a fair amount of my time trying to expand the level of knowledge and appreciation of web standards, issues and technology throughout the university. It was because of this that I was asked if I could assist with the development of the new web site.

University internal page new designThe design for the site was done by the same agency responsible for the brand refresh. It is extremely striking, and still in keeping with trying to make the site as navigable as possible. A meeting was had with the designer, the University's Web Officer, the Head of Marketing and myself. In that meeting we agreed that the University would build the site itself from the designs created by the agency. This would allow us to make sure that we met our legal obligations in terms of Accessibility, and also ensure that the was knowledge and understanding within the organisation of how the site was built.

A series of laudable aims

It was agreed that the site should meet a series of requirements from a technical perspective:

  • It should be a fully fluid design - not a thin sliver down the middle of your monitor but able to flow and take up as much space as allowed.
  • It should work in all modern browsers, including mobile browsers such as Opera, and text-only browsers such as Lynx.
  • It should be as accessible as possible, using accepted best-practice for ensuring users of assistive technologies would be able to get the most out of the site.
  • It should attempt to include new technologies such as OpenSearch and Microformats if and where appropriate.

Assigning roles

There were a number of areas that required work to make the new web site a reality. It was agreed that I would build the external homepage and a template for the content pages. I would not deal with site structure or content- those would be managed by the Web Officer and the marketing team.

Starting Out

I started out with a series of visual comps given to me in PDF format. I began with the homepage and started to work out how to tackle taking the design and building the underlying HTML structure.

I'm a bit of a luddite at heart, so I printed all the comps out at A3, got some large sheets of tracing paper and traced my initial wireframe, labelling the parts as I went.

Once I'd got a basic structure I then made some scribbled notes about how certain elements should function - using remote rollovers, for example.

After that, I pulled the comps up in my bitmap editor (Corel PhotoPaint, if you care) and took some dimensions to inform the initial styling, and lifted the colour values from the design element to feed into the stylesheets.

Once I had my trusty paper notes to work from, I started to tackle the creation of the site. I code by hand - I hate GUI editors - so I did most of the work in HTML-Kit from I now tend to use Expression Web, although I dip into Dreamweaver occasionally and I suspect that I will use Visual Studio 208 more as the projects I work on at Black Marble tend to involve ASP.Net coders as well.

In my next post I'll run through how the homepage was built and what hurdles the web browsers threw into my path along the way!

Can't debug into a MOSS Webpart

I am doing some work at present where I need to debug into webparts hosted in a MOSS 2007 server. Never an easy set of debugging to get right.

To try to ease the process I wrote a WinForm test application that just calls the webpart method with test parameters so I don't have to go through all the pages I normally would to get to the feature I need, or manually have to attach the debugger to the Sharepoint web process every time.

I added this WinForm project to the same solution as my Sharepoint webpart, this should have allowed me to debug into the webpart project when the appropriate call was made from the WinForm, but it did not work.

Turned out the problem was the Network Service account did not have rights to the C:\Windows\temp and C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files directories. Once write access was granted the IDE was able to create the temporary classes to allow debugging.

SQLBits Community Conference

The proposed session list for SQLBits (to be held on the 6th Oct at Microsoft TVP) has been published. If you don't know, SQLBits is a free community conference in the style of DDD, but on just SQL related topics.

Just like DDD all the speakers are volunteers and the attendees get to vote on the sessions they would like to see.

So if you have any interested in SQL, or as Anders Hejlsberg said at a LINQ session I saw 'if you are a developer who uses data', why not register and vote for what you would like to see.

ps. My session is the last one on the list when I looked - not that that is a hint or anything over your voting intentions

EGG's Training Program for Cyber Criminals

This morning as I was finishing breakfast with the children, I received a call which was an automated call from EGG ( a UK credit card provider ) stating that there had been unusual activity on my credit card. This in itself is not unsurprising as I have just come back from South Korea (see past posts) , the deeply deeply worrying part was the automated call then demanded Security information from me. Some of you may know that I regularly speak on Software and Application Security and more so on How easily people can be manipulated into handing over Secure information and how this can be mitigated. In my opinion the single biggest problem in opening people up to manipulation is large organizations showing users poor security.

So what have Egg done that in my opinion is so wrong, Simply they are suggesting that if you receive an unannounced call you should hand over security details to the unknown party , this is great for Cyber Criminals who are looking for a population who are used to at the drop of an automated phone call hand over security information , but not for the general public who need greater security training . The security transaction should be at the very least two way ( they supply information to you ), but better still they should follow the best example I have experienced which was Royal Bank of Scotland (RBS) who when they called suggested that I call the number on the back of my Credit Card and asked to speak to their group. The RBS scenario works so well as I have to authenticate against a source I trust ( the card and number ) and RBS gets to speak to me, a win for everybody.

Now all of this IMHO is bad enough but I have gone on record with EGG several times about this and I have been assured :) that this is being dealt with. But today to add insult to injury , instead of handing over my details blind to an automated system, Linda called them back ( I had the pleasure of helping dress the children at the time ) and after several minutes of watching Linda struggle with the automated voice recognition the children were in fits of hysterics , eventually someone came on the line and asked to speak to me and I was told in no uncertain terms that Linda calling Egg was in direct breach of Eggs security protocols ( I think they must have been watching a bit too much 24 ) and that I did not understand how important security was in preventing Credit Card fraud. At these moments there are too many levels of sarcasm ready to pounce, I decided that no more could be done to help and I just closed the account ( I suspect that the fraud prevention group don't get that very often ).

It must be said that in general this is not just Egg it occurs with many of the Service companies and Banks and that Egg Fraud have detected times when you would expect to see fraud, but this is just not enough. Banks and Service companies should have procedures that protect customers not just themselves.

if this all wasn't so depressing it would be funny.

On a lighter note , for those of you who are interested in the implications of real security for IT managers and Developers , I am pleased to announce that I will be doing another tour with Ed Gibson ( Microsoft's Chief Security Advisor for the UK ) in the Autumn, details will be coming soon. Have no Fear that this story will be top of the list to tell.


Technorati tags: , ,

Should you go to Korea , Should you do the Imagine Cup

The empathic answer to both of these is YES. Several people have commented that after reading my blog they felt that I did not have a great time in Korea with the Imagine Cup, nothing could be further from the truth. It was great , weird but great, I think any down fall in enjoyment ( and there wasn't much ) was entirely down to lack of preparation on my part and so I have included some thoughts on both the Imagine Cup and visiting Korea.


Advice on the Imagine Cup for Mentors

Prepare that the students will do the unexpected <sigh>, I spent a week with over enthusiastic , hyper students who were just happy to be in Korea and wanted to explore. The best description I can give of my week with the students is that it was like herding cats in the dark.

I think that the mentors need to plan early with the students on the visit and not leave it to the last minute as well as a clearly defined set of roles as to , who does what.

Engage with your Microsoft ADE , I was fortunate that the UK had a great ADE who was more understanding than he should have been ;)

The one regret I think I have is that we did not organize to do more as a team when we were out, we did go for meals and we did do the organized trips but I think we should have done more.

As for the competition , read the Judging criteria carefully as they Judges are straight and fair, they will stick to the criteria like glue.

Advice on the Imagine Cup for Students

The main thing to do is enjoy yourselves, you need to do all your prep before hand but prepare to have fun , the event will be like nothing else you have experienced ( unless you did a previous imagine cup ).

I think a clear definition between the students , the Mentor and Microsoft as to who is doing what is needed as soon as the team is set to go to the finals and writing it down will help students remember.

Advice on visiting South Korea

Prepare , Prepare , Prepare. Normally when I am visiting a country for the first time I carefully learn enough of both the language ( enough to get around ) and culture before I go.

For reasons of not getting around to it I did not manage any preparation , Jim and Matt learnt a few words on the plane , but for all practical purposes we were ignorant westerners and for that I still feel quite ashamed.

I think the bit I found most shocking in Korea is that I felt functionally illiterate and I did not like the experience. Spend a bit of time learning some written language will not help much but should help you feel better about yourself.

Tip: take a MP3 recorder and get the concierge at the hotel to record "Please take me to <hotel name> <hotel address>" , as an alternative you can use a piece of paper , but with the paper method it took us several tries with Taxi drivers and to get us home which was a bit worrying.

Top Tip:Visit the Imperial palaces , they are stunning as is Seoul itself , put aside at least 1/2 a day.

Food was the biggest issue for most of the people, I think trying the local food is important again reading a guide book first should sort out any issues.


Installing VS2008Beta2 from an ISO

I tried to install Visual Studio Beta 2 from an ISO today using the Virtual CD Rom tool. This mounted the ISO fine as drive Z: but when I ran the setup.exe I got an error that it could not load the SITSetup.dll, even though this was in the ISO.

I copied the contents of the ISO to my physical disk and reran the setup and all was OK, so the tip is mounted ISO don't always work as you expect.

Cannot create a new project in TFS - reporting services problem

I tried to create a new TFS team project today and got an error that the TFS server could not access the SQL Reporting Services server. I then checked I could access http://myserver/reports and this also failed. On looking in the event log I saw a number of EventID 107 'cannot connect to the report server database'

Now I was unsure what could have caused this, it was working last time I created a project! So check the update log on the server and found the only patches that had been applied since I last created a project, and that seemed plausible, were Visual Studio 2005 SP1 (which I thought was already on, but maybe it was just VS TFS SP1) and SQL 2005 SP2.

I google'd for the eventID 107 and found a Technet note that said to check the SQL Reporting Services Configuration Manager. I did this and found on the database setup section that it wanted to upgrade the structure and rebuild the rights to my ReportsServer DB from version C.0.8.40 to C.0.8.54, once this was done all was OK again.

On read around a bit more it does seem to be an SQL SP2 issue, good old automated updates....

Imagine Cup Days 4 and 5

Day 4 was well like a normal day , sleep (some) , food (mostly edible) . we saw some great presentations and had a normal day with out the need to work.

Day 5 started early 8.00 and the Seedlings did 3 hours on the stand as did all of the other competitors, doing the rounds when there is no competition was great as everybody was relaxed and happy.

Andy Sithers was Extra Super Exited to be with us

korea6 004

a lot of people came around including some journalists from China ( Beijing Evening News and DigiTimes )

korea6 009

I had an amble around and I was struck by the work done by the Austrian Team who have produced a rather good white boarding solution, it looks amazing.

korea6 011

I think the chaps name was Michael Hurnaus in the picture , either way check out the work at Intoi

Then we joined the world party (the results) and a lot of people dressed up in their national costume and I singularly failed to get any pictures despite some serious effort , the most notable were the Japanese contingent who all seemed to be in costume and looked fine for it and one of the Austrian girls who also won the design contest. For everybody in costume , every shot I tried to take someone stepped in the way or in one case the Lift did not have enough room to take the shot. I congratulate all of the people who tried to make the party more enjoyable.

the lads and Nick Randolph

korea6 005

A Picture with a South African Journalist and one of the Irish Team, I could not seem to get the Red Light out of the picture.

korea6 024

and Andy having a chat with Joe Wilson over something important I expect

korea6 019

over what though I could not imagine , I guess that is the 500,000 Won question.

all thought evening event was good they couldn't grasp why the hot Dogs weren't being eaten

korea6 023

who can tell ;)

it is now 1.00am , we are out of the door at 6.00am



Korea (Imagine Cup) Days 3 - 78

Today was a very bizarre experience. we set off at 8.00am (midnight UK time) in a thunderous downpour to see the sights.

After several uncomfortable days in transit in the bus , we were issues a pastel colored umbrellas and fans! The first visit was to the national museum , much time was taken by the organizers to organizes themselves, reorganizes themselves , double check their organization skills and think about synergies the plan over future events, while we waited on the bus.

When we did get to the museum the most interesting part was the brolly wrapper, as you enter the museum you must insert the brolly into the machine and a plastic bag is placed over the brolly ( picture from later on due to hysterical laughter at the first event )

KoreaPt5 047

there were some nice pieces but in the 30 mins we had , it was frankly a total waste of time.

I did get a couple of small pressies for children ;)

then back to the bus for more sitting and on to a set of palaces, Now these were worth a visit , my poor photography skills do them no justice whatsoever.

KoreaPt5 021

KoreaPt5 031

KoreaPt5 034

KoreaPt5 038

Wow , this was worth having the rest of the day for , but then sadly onto food , more time on the bus  ( 4 hours so far in the day , of which over 2 in the bus ) and then to the 1988 Olympic stadium (basketball) for lunch.

I think the polite term for the directions of the onsite managers was bossy and a classic line of " I have told you several times what to do and you are ignoring me" , signaled real trouble. A set of people sat around a large (2-3m wide) wok and stirred hopefully our food for a very long time.

the guys from channel 10 were trying to help by cheering people up but to no avail.

here is the result of the food ( not channel 10's efforts )

KoreaPt5 058

I am afraid I cannot even face being polite about this, it was vile , cold rice , something in something else and stuff in goo , Jim took the brave approach of putting so much chili sauce on he could not feel his mouth ( the lady organizer than announced that this was not acceptable and we should enjoy the food instead). so having being shouted at and missed dinner we progressed on to a boat cruise up the Han which was actually quite pleasant, during which the last parts of the escape plan were ironed out

KoreaPt5 074

as the busses moved of we readied ourselves and when the moment arrived we ran for it into the city and hoped for the best, after a while we found a shop that would sell us edible food

KoreaPt5 076

strolling down the street with a can of Welches Grape Soda ( we can't get it in the UK :( ) and Mat with a bag of dorrito's we decided to hit the technical markets and after getting lost in a rather dodgy area of town avoiding the catch nets of the organizers we got onto the subway.

NOTE :- when I think of a subway, I think of London, Barcelona or LA , Seoul has a whole new set of ideas on the subject. Most of the stops we entered were bigger than Kings Cross RAIL station !

KoreaPt5 080

KoreaPt5 087

The local travelers of Seoul were SO kind to a bumbling set of idiots with no language skills or sense of direction, I am truly humbled. At every turn someone was trying to help us, they have been so kind.

Tech Center Seoul Style

KoreaPt5 093

KoreaPt5 094

we then took Taxis to an Italian restaurant and ate food , real food , this is the first time I have felt close to full in 5 days.

I cannot reveal the help we had on the inside of the event to boost us out, but my deepest thanks go out to the UK and US Academic teams , thanks guys for a great day ( in the end )

Update we got back at 11.00pm Local time

It has been a long few months today and I hope to sleep well into tomorrow.