Just how difficult can Microsoft make the giving away of a freebie?

Prior to the start of ReMix this year, Microsoft made a big thing of how attendees would get a year’s Microsoft Expression Professional Subscription free (normal price £670). So just how difficult do you think Microsoft can make giving away that freebie? This difficult:

  • Just before the event, they announce that we won’t actually get anything at the event, instead we’ll have to fill out a form and it’ll be posted to us.
  • Day 1 of the event and I ask about the form. “That’ll be available tomorrow sir”. Lucky I’m attending both days then…
  • Day 2 of the event: AM. On arrival, I’m presented with a flimsy piece of paper that I have to fill out with my details. I head upstairs, grab a coffee, find a seat and fill out the form. I then head back down to hand it in. “Oh no sir; the forms cannot be handed in until this afternoon”.
  • Day 2 of the event PM. Head back down after lunch and hand in my now somewhat scrumpled form. How long will it take to send the subscription through? “Up to 28 days sir”. Well clearly Microsoft are just covering themselves. A data entry clerk will be able to process the forms in a few days and I should have the software within a week…
  • One week later: nothing.
  • Two weeks later: nothing.
  • One month later: Wednesday : I get an email with instructions on how to access my subscription online. So I guess I don’t get any DVDs then. I dutifully visit the website, enter the details and get told the details are invalid. I try a few more times. Still invalid.
  • I wait until after lunch, and it still doesn’t work. So I track down a customer help number, phone up and explain the problem. The polite lady on the other end – Annette Schulz – taps away on her system, sounds a little puzzled, but assures me it ought to be sorted that afternoon and that she’ll email me when it is.
  • The next day I hear nothing.
  • Friday: I receive an email from Annette apologising as apparently my subscription hasn’t been put on the system still and so it won’t be fixed until the next week.
  • Monday: nothing. I take a look on the ReMix “back network”. Other folk have complained that their subscriptions haven’t arrived yet or that they too have experienced the same glitch as me. So a week of our year’s subscription has expired and we haven’t been able to use it yet. Perhaps tomorrow…

The classic phrase “cannot organise a piss up in a brewery” comes to mind here. Given the millions of licences and subscriptions Microsoft process, just how difficult can this be? Those Adobe Flash and Flex tools sure do look tempting at this point!

UPDATE: Well it took a further week, but Microsoft did finally manage to fix my subscription (along with those  of many others that attended ReMix, who also had the same problem). Of course that wasn’t the end of the saga. The download links on the Expression site do not work with Firefox. They also do not work with IE tab on Firefox. They also do not work with IE, until you have installed a download application. Oh dear. Oh well, I guess that if one is to mess something up, one might as well make a thorough job of it…

Release version of Silverlight 2 is due tomorrow

According to a Microsoft press statement, Silverlight 2 is due for release on Tuesday 14th (ie tomorrow). This coincidently is the same day that Apple are due to announce a couple of cosmetic changes to the Apple laptop range, which will have the fanboys wetting themselves with excitement as usual, whilst the rest of the world wonders what the excuse for no Apple Netbook will be this time.

There won’t be any excuses of course as Jobs is rapidly turning Apple into the Microsoft of a decade ago, where the fans lap up any old overpriced and outdated crap thrown to them and the rest of the world despairs over the lack of basic functionality – such as interoperability with non-Apple products – and the right to release software without having to ask permission of one’s overlords. By contrast, Silverlight shows just how far Microsoft has come since those dark days of a decade ago. Silverlight is not just Cross-platform with cross-browser support, Microsoft are working to provide an Eclipse plugin for Silverlight development and the control set (components in Adobe Flash speak) will be released as source code under the Microsoft Public License.

No doubt Jobs announcing that the MacBooks are to get SATA drives to hysterical whoops from the brainwashed will grab the headlines tomorrow, but the rapid march of Silverlight will be tomorrow’s real technology story.

Flex 4, Gumbonents and Thermo make for an awesome package

At Flash on the Beach 08 today (day 1), there was a session entitled ‘A Preview of Flex 4 and “Thermo”‘ by Mark Anders. After the disappointment over the total lack of any real early previews or “sneak peeks” at ReMix, this session really blew me away over what Adobe were planning with Flex 4, and – far more importantly – what they were prepared to reveal so early on.

One reason why I’ve been keeping an eye on Silverlight is Expression Studio and XAML. Microsoft have a set of designer tools that create design elements that can then be used directly within Visual Studio. Adobe have nothing like this, which is why Silverlight has been so interesting, and why I saw it having a reasonable chance of ultimately beating Flash. Why do I say Adobe has nothing like this? Adobe has an amazing range of design tools, but there is a complete disconnect between them and Flex. Flash Pro works with incomprehensible – to this developer at least – time lines and binary .fla files, which mean nothing in a Flex environment. Photoshop etc can be used to draw pretty pictures, which developers then have to re-engineer into Flex solutions etc. Flex 4 is set to completely change all of that.

It all starts with MXML, specifically a subset of it called FXG. Adobe have expanded MXML to include graphic primitives, animations etc, ie all the designer stuff that Flash Pro had, but that Flex lacked. Next, Adobe plan to provide support for FXG inside their various design tools. This means a designer can draw a pretty picture in Photoshop for example, and then export it as “code” that Flex can used directly.

Not content with FXG, Adobe have gone further with Flex 4 (or Gumbo as it is code named). Gumbo contains a bunch of components built on FXG, with the unofficial, but wondrous, name of gumbonents. These gumbonents can be skinned to the same n’th degree that Silverlight components can, and so Microsoft lose one of their precious few competitive edges.

Finally, just in case you thought that Adobe were happy to match the Silverlight/ Expression features, there is more. A brand new tool, codenamed “Thermo” ups the anti on Microsoft. This tool enables the designer/ developer to import say a Photoshop layered image, then to pick parts of the image and turn them into Flex components. In other words, it allows a team to work in a far more natural way, whereby the skin comes first, and the component – or “gumbonent” as hopefully they will become widely known – is created from the skin, rather than vice versa as is normally the case at the moment.

All in all, the session was amazing. To say I’m now excited by Flex 4 is probably the understatement of the year.

“HSL/ HSV: Blowing the lid on a designer secret” slides and notes

At the end of my five minute talk at ReMix 08, I said that I’d put the contents of my talk on my blog. It’s taken me a few days longer to get around to it than I’d planned, but here they are. As I’m a great believer in as few words on a slide as possible, I’ve added notes to each slide to explain them.

Front screen slide. There aren't really any words to go with this.
Introducing myself slide.
Introducing myself slide.

The introducing myself slide was simply some words to fill the screen whilst I explained where I was coming from with regard to talking about colour. Despite having worked in a range of software disciplines, from real time and embedded to parser creation to web development, there is an underlying theme to my career: GUI development. During that time, I’ve found RGB to be a complete pain in the proverbial, thus the reason for being keen on HSL.

Why RGB is Rubbish
Why RGB is Rubbish

If I’m going to say that RGB is rubbish and that HSL is wonderful, I have to justify these statements. Therefore we start with an example of me wanting to create a nice palette of colours for a website. The first real slide of the presentation started with the middle blue rectangle with RGB values of 79, 129, 189 respectively, which is my base colour. By successively adding 10% to each of the red, green and blue values, I can create the lighter blue rectangles. By successively subtracting 10% from each of the red, green and blue values, I can create the darker blue rectangles. That is the easy part.

The first four colours on the right hand side are an attempt to create the compliment colour by juggling the 79, 129 and 189 values around. The final colour of 189, 189, 79 sort of looks like it might work as it is yellow (which my “schoolboy art” memories tell me is the compliment of blue. The colours aren’t very nice though.

The bottom rectangle on the right hand side is the true compliment. I know this as I used HSL to obtain the compliment, rather than RGB.

Use HSL instead: a description of HSL
Use HSL instead: a description of HSL

HSL is an alternative way of representing the RGB colour model. It has three components as the “Use HSL instead” slide explains. Hue is the colour: red, yellow, blue, violet etc and can be viewed as the colours arranged on a colour wheel. The saturation is the amount of colour, ie 0 saturation is grey and 100% saturation is a pure colour. Finally lightness (also referred to as luminance) is how light the colour is, ie 0 lightness is black, 100% lightness is white and in between comes all the shades of grey and colour associated with the chosen hue.

HSL in action (Paint SHop Pro color chooser)
HSL in action (Paint SHop Pro color chooser)

It is difficult to visualise HSL just with words, so the next slide shows a typical HSL colour picker. It is the Paint Shop Pro one. Concentrating the the left hand side, the top half of the colour chooser has a colour wheel as previously discussed. This is the hue. The inside that, there is a rectangle that has 0 – 100% saturation going from left to right. The same rectangle has 0 – 100% lightness going from top to bottom.

With such a colour chooser, the trick of obtaining a compliment colour becomes trivial. If you look closely, you should be able to see a grey circle over the blue part of the left colour wheel. On the right hand side, the grey circle has moved 180 degrees, ie it is on the compliment hue. As the saturation and lightness have remained the same, I have my compliment colour.

This ability to obtain new colours that work well together by changing just one of the three H, S and L values is the key to HSL. For example, to recreate the range of light and dark blues from the previous slide, I need only add or subtract 10% from the lightness value, leaving hue and saturation alone.

yaflaColour - nice online HSL tool
yaflaColor - nice online HSL tool

The Paint SHop Pro colour chooser is all very nice, but very limited when it comes to creating colour palettes. Expensive designer tools like PhotoShop have good palette creation facilities, but it isn’t necessary to spend large amounts of money on such a tool. There is a great – free – online tool called yafla that makes creating colour palettes a breeze.

It is difficult to see the details on the slide, but across the top are the hue, saturation and lightness values. They are actually HSV values, which is subtlety different to HSL, but there was insufficient time to explain the difference during the presentation – see the last slide for more. Below that in the middle is a range of n-degree compliment colours (eg the true compliment is a 180-degree compliment, other colours such as 90-degree and 270-degree compliments then go well with the base colour). On the left and right hand sides, there is a lightness scale and saturation scale respectively. Finally along the bottom is a set of handy eye droppers. Dragging these to one of the colours on the page adds that colour to the palette box above it.

It is of course far better to use the tool than read my description of it, so I’ve supplied a link after the last slide.

Conclusion
Conclusion

In conclusion, it is worth reiterating  a basic software design principle: it is not necessary, and is often highly undesirable to have the functionality that is exposed to the user mirror the underlying implementation. RGB is a case in point here. There are very good reasons why computers work with RGB. There is no good reason why developers should work with RGB though. Work with HSL, then convert back to RGB when a computer needs to get involved, eg when creating a CSS file.

Final slide
Final slide

The final slide offered some links. Obviously I linked to here. I also provided a short url link to YaflaColor.

Lastly I provided a link to a useful article on wikipedia that explains HSL – and its cousin HSV – very well in my view. The difference between HSL and HSV is subtle and probably won’t effect you, but the article explains the differenc in case you want to know.

And that wraps up the presentation.

ReMix day 2

The second day of ReMix was a bit of a let down all round for me. I didn’t win the Ready Steady Talk event (not that I’d taken part to win, but it was a disappointment non the less) and the day’s talk agenda was poor. To cap it all off, the “sneak peeks” was totally devoid of any interesting previews of upcoming Microsoft technologies. The “sneak peeks” event was actually so bad, I left halfway through and went home. What possessed Microsoft to think I’d be interested in more tired old news about Silverlight, along with such things as an advert for an Xbox karaoke game, is beyond me.

The 20/20 talks were fun (these were a series of pecha kucha talks by some of the “community folk” and the conference presenters. This was the highlight of the day though. The low point was “Design with Microsoft Expression” by Arturo Toledo. As we all got a license for Expression Studio, I figured it would be sensible go along and watch a talk on how to use the tools. Arturo used some truly awful piece of software in place of slides, whereby the whole presentation was on a single “sheet” and he zoomed in and out and panned around  the thing in a way that left me feeling near sea sick. On top of that, he showed us how to draw a mouse icon with fancy shading and how add a spaceship sprite to a game. Not exactly useful when 4/5ths of the room were developers. In fact I learned more about Expression Blend from Scott Guthrie’s Silverlight presentations.

The Ready Steady Talk event was terrifying and great fun at the same time. I’ve previously only presented talks to small groups of up to 20 work colleagues, so to go from that to talking to a hall full of hundreds of people (many of whom paid no attention as they were trying to eat their lunch) was an amazing experience. I’ve definitely got the presenter bug and – having had positive feedback from Simon Harriyott – I may even do a talk at a Brighton Geek Dinner in the  future. Doing the talks also helped me with a problem I’d had at last year’s Mix:UK: it got me talking to people. The free Moo Cards provided a great way to swap details and I came away with around a dozen new contacts. Bizarrely, one of them was Andrew Shorten, an Adobe evangalist, whom I recognised due to him presenting the keynote at the London “AIR Tour” event.

I really enjoyed Mix:UK last year. I was far less impressed with ReMix. This isn’t a criticism of the event organisers though, as the venue was better and things were very well organised. My criticism is with the content. There was very little new information and it’s technical level was very basic. Last year, I knew little about a number of the technologies Microsoft presented and so I learned a lot. This year, many of the topics were the same, and almost all that was new since then had been covered by other Microsoft presentations. It’s a good event, but having been twice, I feel it’s an event that is only worth visiting once. I do not see myself returning to the Mix next year therefore.

ReMix 2008 Day 1

Last year, at Mix UK, the keynote was a truly dull affair, focusing on telling us about things that had been public knowledge for weeks, if not months. Scott Guthery’s part of this year’s keynote was unfortunately more of the same. It was all about .NET related technologies that were released weeks ago, with some vague “coming soon”, “next few weeks” etc comments regarding the release of Silverlight 2. Interestingly though, Scott did later on in the day imply – and its completely my fault if this is wrong – that a release candidate is due out this month, with the release to follow in October.

Bill Buxton’s half of the Key Note was a real breath of fresh air. Whilst I’m not completely convinced by the case he put forward, he came across as a man who was passionate about things because they were great, not because they were the latest Microsoft thing. When the head of R&D at Microsoft tells you that he loves the iPod, Google and the Wii, you really do need to sit up and listen. He basically argued that to survive, companies these days need to heavily invest in design and that they need to design for the experience, not just design the product.

With my sceptic’s hat on, I have to say that Bill’s speech did at times sound a bit like design is this year’s innovation. In recent years, companies have jumped on the innovation bandwagon, creating Innovation Manager posts, claiming they are innovative companies etc. This year, it seems that suddenly we all now need directors of design/ chief design officers.

With my sceptic’s hat removed, I have to confess that I bought a copy of Bill’s book, Sketching User Experiences, and fully plan to shove it under the noses of Enigma’s management when I’ve read it.

UPDATE: it turns out that even with my sceptics hat on, my views on Bill were good compared with others. Take a read of this very well written counterpoint to my take on the keynote. Thanks to Jon Paul Davies for linking to this article and so drawing my attention to his piece.

Of today’s sessions, the one that really stood out was on Virtual Earth. As the latest version has been delayed, those of us that attended the session had to sign a non-disclosure agreement regarding what we were shown. I obviously can’t say what was in it therefore, but I will say that the release – when it comes – contains some really nice new features.

One “what a small world” occurence for me today was discovering that a good friend and close neighbour, Matt Tompsett, was working at ReMix doing the radio trunking (which basically means he programmed up some weird looking hardware that controls fancy multi-channel walk talkies). Also, I need to give a shout out to Adeniyi Ibironke. He occasionally reads my blog and sought me out to introduce himself. Whilst many of the folk that read this blog and current and former colleagues, there are a few strangers that read it too. It was therefore really great to meet one of those strangers in “real life” therefore.

The highlight of the day for me though was definitely the Ready Steady Talk event. I as expecting to talk to a fe dozen people in a small room. Instead I as on stage in the main hall at lunchtime, with hundreds of people around, doing my five minute talk. I messed up bits of it, but did well enough to get through to the final tomorrow.

A new take on word art: Wordle

I am an irregular listener to the Java Posse podcast. One of the things they have on the show is the “Java App of the Week”. The current show featured Wordle. The idea is that it reads an RSS feed and then generates a word cloud based on the words used in that feed. You can then play around with font, colour and text orientation, before saving it to the Wordle gallery. Here is what I created from the davidarno.org RSS feed:

Fun, if somewhat pointless 🙂

Is Microsoft to blame; or is the Flash community looking for a scapegoat?

An article today in Flash Magazine has got my somewhat annoyed. Apparently there is a gaping security hole in all but the latest version of Flash Player and MSN Norway has served up a flash-based advert that exploits this security hole. The article seems to imply that – because the flaw was revealed two months ago – web sites that serve flash adverts should be legally required to vet them for this flaw. Because Microsoft in Norway appear not to have done this, then Flash Magazine takes them to task.

Hang on a minute though. Since when has relying on customers of your product to check for exploits been an acceptable solution to preventing exploits of security holes? What ever happened to the idea of fixing the flaw? The flaw is fixed in the latest version of Flash Player 9, but how many people have this?  It’s not something I’d given any thought to before, but presumably Adobe have no way of pushing out patches to Flash Player when such flaws occur and so are reduced to the feeble “alternative” of expecting users of the product to simply be vigilant instead.

I don’t care if I’m the only flex developer in the world to use the flashblock plugin on FireFox. This handy plugin blocks flash content by default, requiring the user to explicitly give permission for it to be downloaded and run. If Adobe really do have such weak solutions to security flaws, then quite frankly I think everyone bloody daft if they don’t have flash blocker installed, whether they are a flash/ flex develpoper or not!

What question would you ask Scott Guthrie and Travis Leithead

At Remix UK this year, we will see the return of the Speaker Panel, which was one of my favourite events from last year. And even better, this year, the “veteran” Scott Guthrie will be joined by a Program Manager on the IE team, Travis Leithead.

Last year I got the opportunity to ask Scott whether Microsoft had any plans to revive JScript.NET, or to implement a .NET version of ActionScript to enable the easy porting of Flash to Silverlight. The answer was sadly disappointing: he hoped the community would develop an ActionScript compiler for .NET. That disappointment aside, it was great fun to ask the question, so I plan on trying to ask another this year.

Two questions immediately spring to mind, and I’m unsure which one to ask:

  1. Given the recent announcement that JavaScript 4 will likely never see the light of day, has JavaScript finally outlived its usefulness as the ubiquitous browser language? Is it now time to retire JavaScript, or at least to open up the DOM to multiple languages? The .NET runtime code can be created from C#, Visual Basic, Ruby, J# etc, yet all compile to the same byte code ready to run on the CLR. Likewise these days JRuby, Java etc can all be compiled to the same byte code ready to run on the JVM. Are there any plans to create a JVM or CLR type environment for a future version of IE? Or are we stuck with the inadequacies of JavaScript for years to come?
  2. Last year Scott described Linux as the “arch friend” of Microsoft. Whilst IE 8 has embraced HTML 4 standards, there seems little noise from Microsoft regarding future technologies such as HTML 5. Mozilla seem to be growing ever more impatient with this, even resorting to developing a plugin for IE to enable it to support the HTML 5 canvas element, as Microsoft seem reluctant to do so themselves. Does the IE team have plans to become more future-orientated and to see Mozilla as an arch friend too; or is it likely to remain an arch enemy?

If you have any thoughts on which one I should pick, please do let me know via a comment. Also I’ve added these two questions to the Remix UK backnetwork. If you are going to Remix, don’t forget you can sign up to the backnetwork too and add your questions to the list. One or more of them might get read out at the session after all.

How to remove Windows (Desktop) Search … revisited

In October last year, I posted an article on how to remove Windows Desktop Search from an XP machine after it had been unhelpfully installed as a mandatory upgrade. The world has moved on since then and version 3 of Windows Desktop Search has been replaced by version 4, which is now called Windows Search. This means the name of the uninstall folder has changed and the information in that post is becoming ever more out of date. As it still accounts for 80% of the traffic to my site, I figured it was time for an update.

If you have version 3 of Windows Desktop Search and want to remove it, please refer to the old post. If you have version 4, read on. If you are unsure which one you have, press the windows key and F together to start up the application and look at the image that appears toward the top right of the window. If it says “Windows Desktop Search”, then you have version 3. If it says “Windows Search”, then you have version 4.

Windows Desktop Search (version 3)
Windows Desktop Search (version 3)
Windows Search (version 4)
Windows Search (version 4)

To remove Windows Search version 4 from XP, try the following steps:

  1. Start by running up Add & Remove Programs from the control panel and look for Windows Desktop Search in the list. Unlike with version 3, Windows Search v4 should be there.
  2. If not, open a cmd window (click on Start, then “Run..” and type cmd in the Run dialogue that then appears). Then copy and paste the following line into the cmd window:
  3. If that also fails and you get a “The system cannot find the path specified.” error, then I have zipped up a copy that you can download from here. To work out where to extract it to, type:

    into your cmd window and note the location it points to (it is likely to be C:\Windows, but may not be if you upgraded to XP for Windows 2000 for example). Open the zip file, and extract the $NtUninstallKB940157$ to this location. Now repeat step 2.

Update: Thanks to “Derek” for pointing out to me that I’d missed the “bleedin’ obvious”, ie that v4 can be removed via “Add Remove Programs”. I’ve added this as step 1 as a consequence. Steps 2 and 3 are likely redundant, but I’ve left them in for completeness.