Wednesday, 26 October 2011

Daily Review #15: Windows Phone, Nokia World... and Business Ethics

The Daily Review - 26th October 2011
Photo © Bidouze StĂ©phane |

Revisiting Windows Phone

If you're wondering where I've been for the last week or so, I've had my head buried in Windows Phone.

I know, I know... I've often said I regard the whole Windows Phone thing as a huge failure, that Windows Phone is something that nobody apart from a few Microsoft Silverlight shills and MVPs with vested interests care about. The product is a classic example of 'Microsoft silo' development and tactical thinking: Over promise, Under deliver, and Deliver late.

The classic Microsoft approach meant we got a 'strategic' product launch that mainly consisted of blind panic and under-achievement, without even the basics of common sense, planning or even a basic consistent marketing vision statement ('Its a product specifically for the consumer market.... (beat)... but it's for business too') being put in place.

But when there are bills to be paid and, as one recruitment agency recently put it to me, "You're a Silverlight developer - and that market completely died four weeks ago. There's nothing out there!" what's a guy to do?! Windows Phone uses Silverlight.... kinda, and maybe there's Phone work available out there that's real as opposed to 'partner' work for Microsoft marketing?!

Windows Phone developers are, as one agent told me back in May, "rarer than rocking horse shit" and were able to command a ridiculously high daily rate IF THEY COULD SHOW THEY HAD PROVEN EXPERIENCE.

Five months on, and that agent's story has changed. "There's no interest at all at the moment. All the mobile work is ios and Android. The market for Windows Phone developers seems to have gone the same way as that for Silverlight: There is zero interest. Na-da. The market's dead!"

So why would I be considering moving from one dead end (Silverlight) to another (Windows Phone), and looking at putting yet more hours of my own unpaid time training up on Microsoft short-term fixes like Windows Phone 7 (we all know that a rewrite based on Windows RT is coming, right?!)? Well, like I said, bills need to be paid, Windows 8 and real Metro apps are more than a year away, and with a general absence of Windows Phone developers, Silverlight developers are apparently the next best thing if you are a company that's decided for some reason that they need to do Windows Phone development.

The contract I was asked to tender for was for a fleet delivery management company, and despite my concerns over the Windows Phone aspect, it had a few obvious advantages (although primarily one of being able to pay the bills!)

It offered the advantage of being able to work largely from home (a must, given that the client was in the middle of nowhere with an expensive taxi ride from the nearest station on top of long and expensive rail and tube journeys, and great for my new 'go to the gym and get more exercise' regimen!) It also offered the opportunity to work with shiny new stuff like DevExpress controls (I am so tired of trying to defend Telerik controls when other developers and the business get upset about how buggy and awful they are because the client just assumed they were the only choice).

The contract work also included development of a new desktop WinForms application in .NET 4 using LINQ, SQL Server 2008 and a simple ORM AutoMapper that I haven't worked with before too.

I saw this as essentially a chance to build up 'non-silverlight' expertise on a project that was going to be real, rather than some silly short-term vanity project for a company with more money than sense who were using Silverlight inappropriately for what the real business requirements were (which, sadly, has been the case for most of my Silverlight contract work). How could I resist?

Some alarm bells did go off at the start of the interview process to win the business though. The worst part of any contract negotation, and the common gripe of most self-employed developers, is having to deal with recruitment agencies to find the work. These agencies act as the interface between client and supplier but seem to do nothing but get in the way of a business they don't understand, whilst commanding a big fat percentage of earnings for the duration of the contract for having done little other than get in the way. In this instance, I hate that former clients get hassled for references before even the passing on of a CV to a potential client will take place, and I normally refuse to allow this, but in the current economic climate beggars can't be choosers.

This contacting of referees is not a good or even professional approach, and it risks the goodwill of people who get no direct benefit from being hassled. If it happens more than once, as it will do if agencies all insist they have to do it before even submitting a CV, they will typically turn around and refuse to help in future, but what can you do?! In this instance I agreed to bend my own rules, referees were contacted, and I was then awarded an interview with the agency itself before the CV could be submitted to the client.

This time around, the first interview in the contract negotiation process consisted of me travelling across London 'suited and booted' to brief an enthusiastic young recruitment agency consultant from another office than was actually dealing with the contract on what was new in Windows 8, but heh, at least I got a day out, right?! And, to be honest, I'm always impressed when an agency actually takes the time to meet a supplier and interview them before passing on their details to an end-client, even if it represents additional time and cost on my part.

When I got to interview with the client themselves they were friendly and enthusiastic. The sort of people I could easily work with and enjoy working with. They were going Windows Phone because... well they wanted to work with WCF Services because the existing code that the phone would be talking to used it, and so Windows Phone seemed like the sensible option. In trying to find out a little about the existing application (still about to go live after a year's work by contractors rewriting a very old application fraught with issues - no agile, frequent iteration, releases here!) the statement that interface-based development had been a mistake and a late change to use base classes instead, seemingly because of some problems with AutoMapper, set off the first alarm bell. Another was the otherwise knowledgeable technical lead's complete belief in domain driven development but confession that he'd never heard of the CQRS pattern.

The final little alarm bell was the fact that the company had won, and was now servicing, a major contract with a big household name recovery service which had been won based on the fact they already had a traffic management system in place. This was the same traffic management system that I was going to need to write from scratch as quickly as possible because the household name now wanted to see it. I found this a little worrying in the 'business ethics' department. But it does seem that's the way most businesses operate these days . Presumably I should have gone to the interview bragging of non-existent Windows Phone contracts and experience I'd got to ensure I got the business that was being offered!

So I've been buried in two big fat Windows Phone books (good stuff from Charles Petzold and Adam Nathan) as well as some excellent Windows Phone courses by Pluralsight (I can't recommend subscribing to their online training highly enough - it's a steal at the asking price). I've also been rushing to put together in my own time, and at my own cost, a crude prototype of the delivery system the company needed 'yesterday'. Hence no 'Daily Report' updates over the last week (I HAVE been collecting and reviewing Windows 8 -oriented links, so there will be a 'catch-up' daily report later in the week)

Last Friday morning I was sent the draft contract to start paid work on Monday, and I spent most of the day faffing around with all the usual requested paperwork, insurance, company formation documents, VAT registration etc before getting a call at 4.30pm on Friday requesting that the referees who'd been contacted by the agent now call the client directly to recommend me again, and that I prepare an urgent email explaining why my company really was the company to do the job.

It turns out that the agency hadn't had exclusive supply, as they'd been lead to believe, and that on Friday morning, after asking for the paperwork to be raised for my Monday start, the client had interviewed another supplier and now couldn't make up their mind who to go with.

I could write pages and pages on the 'business ethics' of the approach taken, and would defend the agency involved were it not for the fact that after making me jump through hoops on Friday afternoon and evening, there has been a deafening silence since. (Update: late Wednesday after getting hold of the agency rep who'd promised to call on Monday they're apparently not getting their calls returned by the end client so have nothing new to report).

Trying to find a Microsoft exit strategy whilst still paying the bills

Anyway, I digress with this talk of business ethics and agency handling. The point I wanted to make in this post is that I've had to revisit Windows Phone, and it's not been a bad time to do it with the release of Mango just a week or two ago (aka Windows 7.5, or if you're a developer using Visual Studio: Windows Phone Tools 7.1 - yup, Microsoft really can't organise a piss-up in a version naming brewery can they?!)

Windows 8 and the whole Metro look and feel comes from Windows Phone so it's been interesting to 'catch up' after initial interest in the marketing that kicked off early last year, but quickly evaporated once the reality of what Microsoft were doing set in around June last year.

Last night I attended the first Windows Phone User Group meeting I've attended since their inaugral meeting over a year ago. That meeting, co-incidentally, was what made me go out and upgrade my Apple iPhone 3 to an iPhone 4 the very next morning rather than wait for Windows Phone as it was hosted by Microsoft marketeers twisting the big vision of 'It's a consumer device' with additions like '... but it's for business too' and telling us all how open the new Microsoft was, whilst also telling us we couldn't tweet or blog about such bland 'secrets' as how long they were hoping to make the turnaround time in the App store, or what the demo phone (already posted all over the internet by Microsoft employees in the States) looked like!

As an interesting aside, I tweeted about the Microsoft 'secrecy' nonsense (I say 'nonsense' because I believe it's a deliberate marketing trick Microsoft use to make 'partners' feel 'special' - and it's really, really lame!) with a 'rolls eyes' comment. Remember that this was a so-called 'independent user group' inaugral meeting for which nobody had signed any non-disclosure statements. As a result of my sarcastic tweets about how 'open' the 'new Microsoft' were proving themselves to be, the UK's phone evangelist tweeted me next day, saying it sounded like we needed to talk and he'd be in London the next week: Could we meet? I said sure, but since I was about to launch a new video podcast, could we make the meet an interview on camera about Windows Phone? I think you can guess what the response was (answer: deafening silence and no meeting!)

One of the other things that had really put me off the Windows Phone at that initial user group meet were the user demo's of apps for the app store which Microsoft said would certainly get approved. Of the five applications demo'ed by their developers one (from a Microsoft partner) was very slick and professional, the others were like bad hobbyist apps from the late 70's - complete with a microcomputer-like user interface. What happened to the 'superior UX' that was the whole raison d'ĂȘtre of the new phone?

A large part of the problem of course was the lack of the crucial pivot and pan controls at the time (which eventually showed up long after the original Visual Studio Tools add-in for phone development, not very long before product launch). But the confirmation that simple Microsoft greed meant that these apps would get approved for the App Store just to be able to boast as large a number as possible of apps, regardless of quality or cost or consistency showed that the whole Windows Phone 'consistent UX' vision was now completely lost. The enthusiasm I had for the new OS at those first demo's in February/March last year (at last! something that isn't an Apple iPhone rip-off!) completely evaporated in minutes.

No vision, no consistent marketing message, no free phones for developers to work with (even for those of us who coughed up 3 grand to get to MIX on the promise of one) - Microsoft were taking the piss, and when you've been as burnt as I have by all the drag and drop marketing lies over the years, experience indicated it was most definitely time to walk away. I think Ballmer's own admission 18 months on that the phone sales have been much lower than expected, together with the low profits developers who rushed to get apps into the App Store have made because of its pitifully low take-up, shows who in the user group room that night was right, and who was wrong!

Last night's more informal meeting in the basement of a pub was far more encouraging, even though the main presenter was the same Microsoft evangelist who spoke at the inaugral meeting, and one got the impression that there really are still just less than a handful of people doing anything real with the phone with the evangelist on first name terms with all of them. It does look like Mango has provided the basics for what should have been there from day one, and the two apps demonstrated looked far more like real apps than the nonsense I'd been shown a year before. There was even talk of having some basic phones available for developers who wanted to develop for the phone but didn't have the cash to pay for a real device. It seems that after the huge failure of the phone over the last 18 months (despite all those shills and MVPs over-promoting it for all they're worth, together with some pretty good reviews from the genuinely independent media who really don't have any particular axe to grind) Microsoft appears to have at least lost the arrogance it displayed at that inaugral user group meeting with all its insistence about what could or couldn't be tweeted or blogged, and that can only be a good thing.

But the main message I took away from the meeting and my own research of available hardware the day before, was that Windows Phone hardware is still some way away from being ready for prime time so far as the general public are concerned (Nokia's phones announced today at Nokia World are claiming to change that - which I'll comment on in a moment) and I find it astonishing that only one piece of hardware available in the UK (the brick-like HTC Titan) actually has the gyroscope that was being much touted for future app usage at last night's meeting - a fact that is consistently avoided in any of the hardware marketing, spec sheets or Windows Phone product reviews I've seen.

More interestingly, in three separate conversations with different self-employed developers I heard the same story - of developers struggling to 'find a strategy as quickly as possible for exiting Microsoft development whilst still paying the bills with contract work that requires proven experience with a technology'. It seems I'm not alone in my position and long-term view of where Microsoft are headed!

This morning, with the keynote launch of the two-day Nokia World here in London, we got news of the two new Nokia Windows phones, already widely leaked last week. The shills would have us believe that these will (just like Mango was supposed to!) turn everything around for Windows Phone.

In all honesty, I don't know if the two new phones will help, although certainly the Nokia support after Dell and the Three network jumped ship, will help raise the profile. Certainly the top-of-the-range model, The Lumia 800 is the first Windows smartphone that even attempts to compete with the likes of Apple and Android hardware. And the marketing from Nokia has been superb - the sort of marketing that Microsoft should have had in place over a year ago. It's impressive that most of the main online stores and carriers, as well as Nokia themselves, have marketing material up and are taking pre-orders for the phone (due 16th November) within hours of the official announcement.

But will the Nokia name be enough? I actually like the phone O.S. - especially now that it's Silverlight 4 in its Mango form, rather than the hacked version of Silverlight 3 with some bits taken out, some bits from Silverlight 4 hacked in, and some new bits just for phone added in too, that it was in its original incarnation. But the hardware needs to be sexy if the O.S. is to have wide take-up, and while the new Lumia 800 certainly looks sexy (it should - it's a complete steal of the Apple iPod Nano!) it is fundamentally flawed in two ways: it has no front-facing camera (forget the poor quality typically associated with second camera's on a phone - yoof don't care about picture quality - they just want to take pictures of themselves and their mates for Facebook and be able to pre-viz and frame them correctly) and it has a pitiful 16GB memory (more like 12GB when you subtract what's used by the O.S.) with no expansion facilities at all. 12GB in a world where people want to carry around their music and video collections is woefully inadequate!

And none of the Nokia phones will be available in the States until some time next year (Europe effectively becomes a trial market for the real one in case the phones stiff!)

So, overall even after Nokia's big announcements Windows Phone remains a bit of a "Meh!" from me. Will I waste any more time on this 'stopgap to Windows RT' version of the phone O.S. as a result of what Nokia revealed today? Sadly not. And that's the big missed opportunity in my view.

And, yet again, it's an example of 'too little too late' with Microsoft running out of time with generation -1 products while their competition are already preparing generation+1 products.

Friday, 14 October 2011

Daily Review #14: XAML, HTML and MVP Hypocrisy

The Daily Review - 12th October 2011
Photo © Jason Schulz |

XAML, HTML and MVP Hypocrisy

First off, welcome back and apologies for being 'off air' on the blog for so long. Life gets complicated sometimes and a lot has happened since the last 'Daily Report'.

Technology -wise perhaps most notable while I've been away has been the release of the iPhone 4s, the deaths of Steve Jobs (Apple founder and figurehead) and Dennis Ritchie (co-creator of UNIX and C) - and of course the usual 'echo chamber' Shill reaction to all of this.

'Shill' does seem a rather harsh phrase to throw around, and I've had some MVPs get very upset with me about my liberal use of the word. Not all MVPs are unpaid Microsoft shills of course, but as time goes on it's becoming more and more evident to me that the vast majority are - whether they're prepared to admit it or not.

The last seven days have really brought home to me that if anything I've been too diplomatic in not pointing out that most MVPs are just unpaid (well actually an MVP award and its perks isn't exactly unpaid when you look at it) shills is an accurate one. Nowhere has this been more evident than in the endless tweets around the Apple iPhone 4s vs the Windows Phone 7 Mango release, and, far more alarmingly, the whole debate over whether one should focus on HTML or XAML when writing Metro Style apps for the new Windows 8 operating system.

When Silverlight MVPs tweet endlessly about XAML in the new Metro world being a 'first class citizen' and 'the one true way', whilst simulatenously starting to blog for the first time about JavaScript, or tweet about new courses and books they're writing on this HTML5 feature, or that HTML5 feature, it's very hard not to add the word 'hypocrite' to the term 'shill'.

It's proven that there is a distinct lack of any sort of real independence from those keen to curry favour with Microsoft and either (a) get their MVP status renewed, or (b) keep their careers through working for companies whose ONLY source of income seems to be writing demo applications for Microsoft (no names, but it's glaringly obvious who these companies are!)

The reason I beat on about shills so much ("We shill overcome" t-shirts coming soon?) is that this whole ridiculous, brown-nosing, "got to stay 'in' with Microsoft, whatever happens" so-called 'community' culture is a large part of the reason Microsoft are in the sorry shape they are in now. You really don't want to surround yourself with nothing but 'yes' men if you're in trouble and want to find out whether what you're doing is anywhere near approaching what the market wants and needs or not!

And, sadly, there's a complete lack of any kind of 'real world' common sense in all the re-blogged and re-tweeted marketing rhetoric.

Too harsh? Let me pose a few questions you might want to ask these shills who, when you complain, won't fail to point out how they work so tirelessly on your behalf, in their own time (Hmmmm), for 'nothing' (double hmmmm - have you seen the perks you get as an MVP, or as a company doing demo apps for Microsoft?) whilst maintaining their integrity ;-))

Did you hear any of these folk, who have been continually hyping up Windows Phone 7 as if people actually cared or had bought it, tweet or blog the link to Steve Ballmer admitting sales were significantly lower than expected?

In their 'independent' Windows Phone 7 tweets and news did you hear any of them mention the story that Dell, whose Windows Phone 7 series phone they were so keenly over-hyping a year ago, has decided to drop Windows Phone 7?

Did any one of them carry the story that 2 weeks ago the Three network in the UK accidentally tweeted that they were no longer going to offer Windows Phone 7 handsets?

Did you hear anything other than how lame, useless and disappointing the 'competing' (erm. It's only competition when you actually have some market share, Windows Phone 7 fans!) Apple iPhone 4s is?

By the way, that's the Apple iPhone 4s which has the largest pre-orders in phone history - yes, a lot bigger even than the iPhone 4!

iPhone 4s sold more in 24 hours than Windows Phone 7 in a year

The responses to the launch of the iPhone 4s, just like those when the iPhone and iPad were first released, are as depressingly predictable as they are laughable, and nobody seems to be learning from the lessons of the past and pushing for change or any kind of reality check at Microsoft or within its shill 'partnerships'. This 'circle jerk' (I'm too annoyed to use the politer term 'echo chamber') mentality really needs to stop before the last shill standing who's actually got a real job realises he's sat in a circle of one!

And then these people get upset when I point out EXACTLY what they are - shills for Microsoft. How is it possible to call them anything else, given their biased, one-sided reporting that endlessly promotes just one company and its products, or those that feed off it, and constantly denigrates alternative, superior offerings?

There are MVP exceptions to my generalisation of course, but I'm struggling to count them on more than the fingers of one... erm finger (Hello anyway, Jeremy. And thanks for pointing out some of the independent posts and tweets instead of burying your head in the sand, pretending it's not there as pretty much all of your fellow MVPs do).

But, what really annoys is not the lack of vision outside a very narrow Microsoft Marketing one - after all we all need to make a buck and need gainful employment - but the total hypocrisy that is often so clearly evident when these people try to defend what they're doing to make their Microsoft bucks.

The constant referral to anybody who dares point out Apple makes stuff that's pretty good and very popular as 'Apple fanboi's, from a group constantly touting the 'success' of a phone (Windows Phone 7) nobody in the real world has bought or cares about is bad enough.

But then there's the whole HTML vs XAML 'Silverlight isn't dead' nonsense they've been pushing for a year now, and still keep pushing, with anyone who dares to point out any kind of reality instantly dismissed as 'negative' or 'bitter' or 'a hater' or 'a trouble-maker' or any other kind of insult they see fit. By comparison the term 'shill' seems positively polite!

To believe these folk, Silverlight isn't dead because the future is XAML, a true first-class citizen in the world of Windows 8. So 'first class' in fact that nearly all the downloadable samples are in HTML/JavaScript, and there isn't even a version of Blend available that will cope with XAML in the Developer Preview, just HTML but oh, there I go being all "negative" again and pointing out facts instead of recycled Microsoft marketing guff.

And not one of these 'community leaders' seems to be saying a word about Microsoft's refusal to say anything concrete about what happens after Silverlight 5 or WPF 4.5 etc, despite Microsoft having promised us for the last six months they would make a definitive statement at Build (the reality is, of course, that we all know there won't be a Silverlight 6 or WPF 5, but none of these shills have got the balls to actually say that, for fear of the media running with it and Microsoft getting the bad rap it deserves).

"It's still supported." "It will be around for years" (so's ASP without .NET in some shops. Your point is?). "No need to panic". Blah! Blah Please renew my MVP award Blah!

"XAML is the same as Silverlight" is the nonsense the shills are currently peddling, taken in by a ludicrous con trick at the Build keynote where a silly Silverlight 2 tutorial app was magically converted in a few minutes.

Tried porting your Enterprise app yet? Have you discovered that the MEF stuff you need isn't there (you were using modules? oops - that doesn't fit the app store model), nor are behaviours, nor is whole bunch of other stuff because it won't fit with the 30% money-making app store? Heck even simple basic controls have been renamed so that you're going to have to go through your code changing element names and attributes left, right and centre, with no condition 'if' statement logic available to maintain a single XAML code base and.... Well I won't bore you with all the details. After all, it's easy to port. It must be because Carl Franklin on yet another 'partner' spin-off echo chamber show says so (there's gold in them thar special relationships and sponsorships).

Last night I attended an excellent user group talk on the new stuff in Windows 8. But when it takes a first class (and he really was first class) developer and presenter 10 minutes just to show all the XAML changes needed to take a simple 'About' page in Silverlight (that should never have been written in Silverlight in the first place - it would have taken 10 minutes to write it in HTML and have it running on all available devices), and port it to Windows RT you know that the 'it's simple to port' message is marketing lies and has no relevance to porting REAL apps in the REAL world.

And marketing MVP shills telling you it's simple are lying to you, but then they're not the ones going to have to pay the cost of all this completely needless re-work.

The reality is this 'It's all just XAML' is marketing bullshit, just as it was marketing bullshit when Microsoft pretended that VB.NET was 'the same' as VB6. Does NOBODY remember the lessons (and pain) of the past?

The number of 'flavours' (I'm being polite in calling them 'flavours') of XAML are now six - that's more than the number of browser versions I typically have to worry about when writing HTML5 code, which everybody knows is a nightmare of incompatible bits and pieces not supported by different browsers. But at least with HTML5 I have a great set of libraries like Modernizr.js that sort out most of the problems for me! I'm certainly not having to maintain multiple copies of HTML, the way I have to with XAML, if I want to support any more than one of these 'flavours'.

If I'm an XBox 'Silverlight' developer (Did you see all the excited 'Silverlight is coming to XBox - told you it wasn't dead' tweets - laughable!) I have to deal with a hacked version of Silverlight 3, some bits from Silverlight 4, some bits from Windows Phone and some bits that are new, complete with a hacked version of Blend that apparently gets released and patched every few weeks. And 'you can't get help from your usual Silverlight contacts because this stuff is supposed to be still secret'. Weren't we talking Silverlight FIVE this time last year, but a hacked version of Silverlight 3 is still in 'secret' mode?! But, heh, it's all XAML, right, what's the problem?

The fact that XAML isn't one thing, but six different things right now is a fact that has seemed to escape those eagerly retweeting the exciting XBox has Silverlight. news! "Yay! Proof that Silverlight is alive. It's NOT dead. Pah to those nay-sayers who said it was dead. It just got a shiny new platform!" (one that, for the record, was over-promoted and first promised two years ago, as I recall from a Scott Guthrie London .NET User Group talk given in July 2009 - I've still got the video if you want to go look see!)

Just to be quite clear here: there is NO 'one' XAML. There are now six different, variant flavours. That's more flavours than HTML which the shills keep telling us is way too fragmented to be considered by 'professional developers'. You have to laugh at the utter hypocrisy of it all.

Except, as you've probably guessed, I don't feel like laughing.

It's just adding insult to injury when these same shills let slip in the odd tweet here and there that despite the fact that XAML and C# are the future, and nobody in their right mind would touch Javascript and HTML5, that they're blogging about Javascript, or writing new courses on HTML5 features, or writing new chapters for upcoming books about canvas or video or whatever in HTML5. The hypocrisy in doing this while claiming they're totally committed to XAML and C# really is unbelievable.

I chose the picture at the top of today's daily report quite deliberately. Some may think it somewhat fudges the case in favour of HTML4 and HTML5, but in reality HTML5 is just HTML4 with a bunch of extra stuff added on top so if anything I'm exaggerating the HTML mismatch. This XAML mess is all a result of the Microsoft approach to marketing, which is all about 'putting out fires' TACTICAL nonsense instead of any proper STRATEGY or VISION.

Where is there any sign of leadership? Of real commitment to something? Of vision? Did Microsoft learn NOTHING from the security fiasco, the Vista fiasco ('Clarity' my arse!), the Entity Framework v1 fiasco, the Silverlight fiasco... because yes, despite what the shills keep saying, by any reasonable yardstick Silverlight has proven to be a TOTAL fiasco. Those who didn't waste any time on it (the vast majority of .NET developers) are rightly laughing from the sidelines going 'You muppet, why did you think Microsoft would ever stick to their commitments on that and waste time learning it?' Mea culpa. I took Ray Ozzie's "strategic UI" at face value, forgetting that whenever Microsoft say strategic they ALWAYS mean 'short term tactical'.

And I say Silverlight is a fiasco because I know - I've had multi-million pound clients seriously pissed off at the way Microsoft have handled Silverlight and all its associated 'bits and pieces that don't really gel' technologies, and they're RIGHT to be pissed off - it's cost them a bloody fortune! Just because a few companies who earn all their money through writing Silverlight demoware apps for Microsoft at nice fat juicy fees keep telling you Silverlight has a long future ahead of it and isn't dead does NOT make it fact!

Saying 'Windows 8 XAML is the same as Silverlight' is as ridiculous as saying 'Apps are just code''. It may be true in a very general way, but the customer paying for this stuff and then wondering why it is he can't just take a cheap specialist in xxx technology and have him immediately produce the app he needs in yyy technology isn't going to see it as 'the same' at all.

I even saw a tweet today from a Microsoft employee suggesting that developers who didn't expect such ridiculous constraints and limitations in a software product as Silverlight developers have struggled with over the last few years (constraints and limitations that exist solely because Microsoft didn't do their job properly) then they probably shouldn't be working in the industry. The arrogance in that statement is unbelievable. I mean, really, you couldn't make this stuff up! And they call themselves 'professional'. Now that's REAL irony!

If you really pin these 'shills' down with facts and reality, as I've tried to, you invariably get the 'Developers need to learn more new stuff. They're not good developers if they don't keep learning' speech, along with an explanation of how all these differences and change 'are good'.

Silverlight had threads. Shame Microsoft abandoned their Cross-Platform solution

See what they did, there? They're not the problem. YOU are. Well sorry to butt in here but you're completely wrong: NEEDLESS CHANGE IS NOT GOOD. Microsoft's continual re-invention of a wheel that doesn't need reinventing is not good. And the only reason this 'change' is happening is because there's no strategy, no consistency, no damned clarity of vision to what was forced on the market in the first place. That change benefits nobody, least of all the poor sods paying for all this over-engineered, poorly performing shit, other than those shills who find they have new stuff to peddle that they can get money from Microsoft for. And to trot out a hackneyed 'Change is good. Embrace it' excuse for such a lame lack of foresight, strategy or even the most basic planning, is just insulting.

Anybody who does REAL work, as opposed to riding on the Microsoft partner 'shiny and new' partner promotion gravy train, knows that working in this industry is already a time-pressed 10-14 hour day just coping with the existing crap, let alone the new stuff Microsoft shove out seemingly every couple of weeks.

But don't take my word for it. Talk to the people who deal with real developers day-in, day-out - people like Microsoft's developer evangelists. They work for Microsoft, they won't be biased (snort!) and they'll tell you the ONE CONSISTENT MESSAGE they keep getting from developers is that Microsoft are pushing out much too new stuff much too frequently, and nobody can keep up.

Well guess what guys? The shills say you need to keep learning even more if you want to be able to call yourself a 'professional' developer.

What a crock! The word 'professional' has been hijacked by a bunch of poor marketeers to justify their own weaknesses and hide their own hypocrisy.

It makes the story of the Emperor's new clothes look positively idealistic, and THAT my friends is why I will continue to call such charlatans 'shills'.

Stand and do nothing or jump on the HTML5 bandwagon

Today's "News" Links

Must read! Evolving the Start Menu (Steven Sinofsky, Microsoft)
There's been much criticism of the Windows 8 start page and start menu in the Developer Preview, much of it unwarranted in my view. In this blog post Microsoft explain their decision making process and give clues as to what they're going to change before the public release.
Must read! Reflecting On Your Comments on the Start Screen (Steven Sinofsky, Microsoft)
A follow-up piece and companion post to the one above about the Start Menu, reacting to comments made on the original post, and sharing new information about future plans.
Must read! Reducing Runtime Memory in Windows 8 (Steven Sinofsky, Microsoft)
Crucial information on reducing runtime memory and improving battery life so that a WinPad slate can compete with competitor offerings in this space.
Good read! MVVM Light Toolkit for Windows 8 Preview Available (Laurent Bugnion, Galasoft)
Arguably the most popular MVVM helper kit, MVVM Light, has been ported to Windows RT in an early preview format. Me, I've recently become a Caliburn Micro convert, so I have no idea how solid or usable this preview is.
Good read! Microsoft Prepared for Windows 8 Beta with Developer Preview Install Fair (Tom Warren, WinRumors)
If you jumped on the shill gravy train quickly enough, you may have been invited to a special Microsoft-run Developer Preview Install Fair last weekend. Oddly, my invite seemed to get lost in the post ;-) Blogosphere has been surprisingly quiet since the fair took place, so I'm guessing it was a bunch of 'non disclosure' stuff that was revealed.
Good read! Steve Ballmer Awarded 2% Pay Increase by Microsoft Board (Tom Warren, WinRumors)
Buried in the small print of Microsoft's annual proxy statement was the news that Steve Ballmer recently got a pay rise. Must be for all the wonderful work he's been doing on mobile and tablets over the last 2 years (snort!)
Good read! Visual Studio 11 Developer Preview (Lisa Feigenbaum, Microsoft)
Microsoft are soliciting early feedback on the Visual Studio 11 Developer Preview so they can improve things before final release. Take the survey to make sure your feedback gets heard.
Good read! Microsoft launch 'Your Browser Matters' Marketing Site (Microsoft)
With Metro Style look and feel this site purports to be about getting users to upgrade their browser to a newer version for better security. It seems mostly to be about spreading FUD on other vendor browsers. Internet Explorer 9 gets a 4 out of 4 security rating where Google Chrome gets 2.5 out of 4 and Firefox gets just 2 out of 4. There's a surprise! <sarcasm>
Good read! The BBC Does a U-Turn on HTML5 (Dharmesh Mistry)
The BBC have changed their policy on HTML5, after dismissing it as a 'ship that was sailing off-course' and are writing an HTML5 version of iPlayer, according to this report.

Today's "Opinion" Links

Good read! Enterprises Not Fully Embracing HTML5 Yet (Erica Ogg, GigaOM)
Quotes from some Enterprise folk about why they're treading cautiously with betting on HTML5.
Good read! Windows 8 Server Marks Shift to GUI-less Future (Jeff Martin, InfoQ)
Or 'Windows catches up with UNIX' as one rather biased pundit put it.
Good read! Still on Windows XP? Don't Wait Until Windows 8 To Upgrade (Jon Brodkin, Ars Technica)
Gartner are warning customers they need to move from Windows XP to Windows 7 today rather than wait for Windows 8.
Good read! 15 Cool Things Windows 8 Does that Windows 7 Doesn't (Mike Williams, Tech Radar)
Good high-level overview of some new features that make Windows 8 a joy to use.
Good read! Adobe Gets Serious about Mobile, Cloud and HTML5 (Colleen Taylor, GigaOM)
Good overview of the announcements made at the recent Adobe MAX Conference. It's HTML5 all the way apparently (some cool CSS3 recommendations that should have Silverlight developers scared, too)
Good read! Windows 8 Daily (.NET Doug)
One of those 'newspaper' compilations of stories from the web dedicated exclusively to Windows 8. Of course you don't get my incisive editorial comment and story ratings, but heh, this guy doesn't keep skipping days because he's found more fun things to do ;-)
Good read! Microsoft Windows 8 Testers Clamor for More Interface Customization (and may get some) (Mary Jo Foley, Ziff-Davies)
An analysis of the 200+ comments made on Steve Sinofsky's blog post about the Windows Start feature.
Good read! Windows 8 Supports Zero Power Optical Disk Drives (Martin Brickman, gHacks)
There's a registry key setting to disable this feature if it's giving you grief.
Good read! If You Want a Microsoft WinPad This Is What you Get (Until Next Year) (Mary Jo Foley, Ziff-Davies)
Good overview, but why would anybody want to pay way over the odds for something with less than 3 hours battery life? Meh!
Good read! Metro Colour Designs (Scott Barnes, Riagenic)
Scott Barnes isn't a fan of Metro's primary colours, and shares some sensible thoughts on palette colour design when writing new Metro apps.
Good read! Windows 8 Metro Apps in JavaScript (Ward Bell, DevForce)
Ward's been writing his first Metro apps in Javascript rather than his beloved Silverlight XAML. He's sticking with XAML... for now!
Meh! Windows 8 Will Be Free (I think) (XamlGeek)
Hmmm the (I think) wasn't there in the link-bait tweets that promoted this blog post. Nothing to see here. Move along. Ding! Ding!
Meh! IPads less Desired than Windows Tablets says study (Rue Liu, SlashGear)
Total spam-bait. It turns out that what the study actually says is that users would like Windows on their ipad (well, duh!) which is NOT the same as saying a Windows tablet that's way more expensive and has crappy battery life is what people want in preference to an iPad!

Today's "Technical" Links

Watch It! Hands-on Intro To Blend for HTML Video Plus Code (Lori, BlendInsider)
The video is just the Build talk, but this blog post tells you where to get the source code so you can follow along.
Download It! Colorful Expression Add-in for Blend (Codeplex)
Colorful Expression is an add-in for Expression Blend and Expression Design that brings you the Adobe Kuler community directly into your toolbox. Nice!
Download It! Colorful Expression Add-in for Blend (Codeplex)
Colorful Expression is an add-in for Expression Blend and Expression Design that brings you the Adobe Kuler community directly into your toolbox. Nice!
Good Read! Blend 4 Does Not Start after Installing the .NET Framework 4.5 Developer Preview (Richard Griffiths, XAML Ninja)
Richard has some fixes to get around this issue.
Good Read! Async Performance: Understanging the costs of async and await (Stephen Toub, MSDN Magazine)
Stephen explains some possible pitfalls you should avoid when using the new C# 5 await and async commands.
Good Read! Learning Windows 8 Development with Quickstarts and How To's (Microsoft)
If you're suffering information overload, this blog post has some good pointers as to the best place to start with regard to getting started with Windows 8 App development.
Good Read! Windows 8 Metro Declarations: Protocol (Andrej Tozon)
Andrej continues his examination of the commands available in the new Metro app application manifest.
Good Read! Windows 8 Metro Declarations: File Type Associations (Andrej Tozon)
More from Andrej on the new Metro app application manifest, this time covering file type associations.
Good Read! Windows RT Storage Overview (Lunar Frog Software)
All about the Windows.Storage namespace.
Good Read! My First Metro App (Wynapse)
David (I think it's David - no information on the blog that I could find) has been writing his first Metro application and shares his code and thoughts.
Good Read! Metro Apps Wiki (Carl Franklin, Plop Productions)
The DotNetRocks founder kicks off a Metro Apps wiki. It was a bit sparse when I checked, but there's some info on porting Silverlight apps to WinRT on there that many will find useful.
Good Read! Improving Developer Productivity with Visual Studio 11 Developer Preview (Steven Clark, Microsoft Visual Studio Team)
Nice overview of some of the new productivity features you may not have noticed in the preview version of Visual Studio 2012.
Good Read! Visual Studio 11 Developer Preview: Search Everywhere (Radhika Tadinada, Microsoft Visual Studio Team)
More tips and tricks for improving productivity using Visual Studio 2011, this time focussed on new Search functionality.
Good Read! How Windows 8 Memory Management Modifications Make for a Better User Experience (Peter Bright, Ars Technica)
Nice gentle overview of the Windows 8 Memory Management implementation.
Good Read! Adding an Application Bar to your XAML Metro Applications (Michael Crump, Telerik)
Nice straightforward tutorial on how to add a Windows Phone 7-like App bar to your Metro Apps.
Meh! Install Windows 8 Metro UI on Apple's iPad (Tammay P, Windows Club)
Or not. More spam-bait. It's about remoting in from your iPad and not about installing at all.

Tuesday, 11 October 2011


The Daily Review - 11th October 2011
Photo © Jovani Carlo Gorospe |


.. for the deafening silence over the last week or so. I did post a quick tweet on Twitter about the unplanned absence but forgot to warn people here on the blog itself.

It was time to take a break after an intense few months in Zurich and then the Build Conference and follow-on. But the break to sort out 'real stuff' lasted longer than I originally intended (Blimey! I'm starting to get a life ;-)).

There will be a 'catch up' post on the important links from the last week ((with "XAML, HTML and MVP Hypocrisy" editorial :-O)) early tomorrow and then probably a catch-up post again at the weekend before the usual Daily Report format resumes.

Thanks for visiting!

Monday, 3 October 2011

Daily Review #13: Someone on the internet is wrong...

The Daily Review - 3rd October 2011
Photo © Shawn Hempel |

And the biggest story of the weekend is ....

A bunch of Microsoft MVPs got renewed.

Of course, when I say 'biggest' story of the weekend I'm basing this on the percentage of congratulatory posts dominating my Twitter stream. In the year since I left Twitter because of the echo chamber 'noise' vs signal it seems nothing much has changed :-(

Anyway, moving swiftly on...

HTML5 is HTML4 with extra stuff

Someone on the internet is wrong....

Late on Friday a very ignorant post about Silverlight and Silverlight developers appeared on Google+, seemingly in response to Jeremy Likness' post Top 10 over-engineering mistakes in Silverlight.

The post was from Kevin Darty who apparently works for a Department of Defence contractor (shouldn't they be a bit more informed?!) and displayed unbelievable naivety, bordering on downright malicious untruths, about the technology and developers who've been using it.

Unfortunately, it displays all the sorts of ignorance that is all too common in this 'get the traffic up, whatever you have to do' journalistic world we live in.

Here are some of the more annoying statements he makes in his post:

Silverlight is on the scene and all the .NET Developers jumped on it like it was some amazingly new technology.... something revolutionary

Hardly "all"!

Talk to any recruitment agency and you'll soon discover that heck, HARDLY ANY .NET developers jumped on Silverlight for ANY REASON AT ALL.

Just because a small, but influential, vocal group of MVPs keep 'talking up' Silverlight doesn't make this statement about all .NET developers knowing it fact. Kevin, do the research. Ask recruitment agencies what percentage of .NET developers have Silverlight skills. You will find it's nothing like 'most', not even close to 'half', and far less than you've implied in your ridiculous post.

Last year I worked on a 3 month prototype for a large application intended for roll-out in 2013 to retail showrooms across the land. The prototype was a success on all the goals that had been set for it, but the decision was still taken to abandon Silverlight and go 'traditional ASP.NET/HTML/Javascript etc'. Admittedly, there were several reasons for this (mostly around perceived risk because of Microsoft's contradictory and confusing statements about whether it really was their 'strategic UI' or not - how prescient was that?!), but key amongst them was the lack of Silverlight developers in the .NET marketplace. As the hiring manager put it to me in my last week "'It took us 3 months to find you, Ian, and if this went ahead we'd need 8 of you. What chance do we have?"

Now Silverlight Developers are a dime a dozen

I'm going to quote that hiring manager again: "Quite aside from the fact that if we do find a Silverlight developer [because there are so few around] he's invariably more expensive than his ASP.NET, HTML, CSS, JavaScript counterpart!'. But, heh! Kevin says they're 'a dime a dozen'.

The situation hasn't changed in the last year. If anything it's got worse. There just aren't the developers out there. It's become a self-perpetuating tragedy that the lack of developers causes a reduction in the number of Silverlight projects undertaken, leading to a reduction in available contracts, leading to even less .NET developers wanting to waste time on Silverlight when there are far too many demands on their time already.

But heh, Kevin, let's not let any facts get in the way of a good article on engineering mistakes!

For Silverlight developers their scope goes no further than Internet Explorer

Dang! I must have imagined the support and testing I had to do in Google and Firefox, and Safari on a Mac. How stupid am I?!

Even if you took Darty's ridiculous 'intranet' accusation at face value his 'standard set of tools' that he berates Silverlight developers for not using (apparently they're trying to put a square peg into a round hole) work differently from one version of IE to the next, requiring multiple hacks and fixes that waste developer time and have real negative cost to the project. But again, why let facts get in the way of a good argument?

Microsoft has been telling Silverlight Developers for the last 2 years that they should focus on HTML5

Utter rot!

One year ago when I first started talking about how Microsoft were abandoning Silverlight and appeared to be pushing HTML5 (ONE year ago, not TWO Mr Darty), two weeks before the infamous Scott Barnes tweet that started the whole initial "Silverlight is dead!" shitstorm, I was laughed off the planet as being "malicious" or "too negative" or just plain "dumb for thinking Microsoft would even consider that"". Even as recently as a year ago Microsoft were NOT telling anybody about HTML5 (that happened first with the unveiling of the first platform preview of Internet Explorer 10, and then got real emphasis just a few months ago when they gave first previews of Windows 8). I only sensed HTML5 was the new favoured child because of a chance encounter with someone from inside MSFT who talked about how "internally, everybody seems to be reading HTML5 books and the Silverlight team have been loaned out to Phone or PRISM". If Mr Darty thinks Microsoft has been telling Silverlight developers for the last two years that they should focus on HTML5, he should provide just ONE link proving his ridiculous claim.

The disappointing thing is that even today Microsoft won't give advice one way or the other, consistently saying 'It's your choice', while senior staff make jokes about the 'promises' of JavaScript vs the guarantees of C# and XAML.

What's really sad about Mr Darty's piece is all he can apparently do is equate Silverlight with some sort of web page ad Flash clone - something for showing a bit of video or advertising on a web page. In my experience, that is NOT what Silverlight is being used for predominantly today, nor has that been the case since Silverlight 2 launched. The point that Silverlight gives .NET developers a way to write .NET code that will run inside the browser seems to have escaped Mr Darty. He's probably been far too busy hacking stuff together in HTML, JavaScript and CSS to have the time to do even the most basic research!

Alas, I think this pitiful attempt at explaining the history of Silverlight is just one of many incompetent analyses we're likely to see in the month's ahead, as the realisation of what Metro and Windows 8 really means hits the mainstream and gives the JavaScript kiddies and Microsoft bashers a chance to say 'Told you so'! :-(

24 hours with WinRT, Javascript and HTML is like car sickness

Today's "News" Links

Good read! Bloomberg: IBM Tops Microsoft for first time since 1996 (Sarah Frier and Dina Bass, Bloomberg)
Microsoft loses second place after Apple to IBM.
Good read! Expression Design (September Preview) has been released by Microsoft (Microsoft)
More software preview versions from the Expression team, but where's a version of Blend 5 for XAML?!?!.
Good read! ORM Profiler 1.0 Has Been Released (Frans Bouma)
The folks behind LLBLGen Pro release an ORM profiler that works with all the big ORM players. Very reasonable pricing for the initial offering too!
Good read! Microsoft Security Tools Nuking Google Chrome Browser (Ryan Narraine, Ziff-Davies)
So this is what Microsoft meant by 'no chrome' on Windows 7! Nasty!
Good read! Windows 8/IE9 has 20% of worldwide market, more in USA. Ie6 Drops to About 9% worldwide. (Netmarketshare)
Latest browser stats with story indicating that Ie9 and Windows 8 story are helping stop the decline of IE browser market share.

Today's "Opinion" Links

Must read! 11 Hard Truths about HTML5 (Peter Wayner, MacWorld)
The HTML5 boat has already sailed, but Peter rightly points out there can be nothing but choppy waters ahead.
Must read! What's wrong with Microsoft (Joe Stagner, Mozilla)
Former Microsoft employee Joe Stagner explains what's wrong with the company, whilst insisting he's not sharing any 'inside' information. Hard to disagree with anything stated here.
Good read! Windows 8 Anti-Virus Has a Long Way To Go (Chester Wisniewski, Sophos)
Well they would say that, wouldn't they?! Nevertheless highlights some serious shortcomings.
Good read! Windows 8 Security: Stronger but Gentler (Robert Lemos, InfoWorld)
Good news all round, by all accounts.
OK read! Windows 8 Animations Library Creates Better User Experiences (John Papa, Visual Studio magazine)
Quick overview of what's in the Windows 8 Animations Library.
OK read! Redmond on Reading: Digital Book Design Ideas from Windows 8 (Peter Myers, My Kind of Book)
If you haven't got time to watch the video of the Build '8 Traits of Metro' talk, or read our transcript, this blog article gives a nice condensed summary of the main ports as they apply to digital books.
Oh dear read! Over-Engineering and Picking the Right Rule for the Job (Kevin Darty, Google+)
Don't you love it when 'experts' give opinion on technologies they haven't done even the most basic research about? Me neither. See today's editorial.

Today's "Technical" Links

Good Read! Microsoft Windows Simulator Touch Emulation (Mynor Ivan Muralles, Visual Studio Team)
More on the recently released Simulator Preview for Visual Studio 11, this time it's all about touch emulation.
Good Read! Metro Controls - The JumpViewer Control (Richard Griffiths, XAML Ninja)
Nice walk-through of the JumpViewer control in the Metro controls for Windows 8.
Good Read! Windows 8 Metro Style Application Manifest (Andrej Tozon)
Walk-through of the Visual Studio GUI for the application manifest.
Good Read! SpinPaint for Windows 8 (Charles Petzold)
Cool stuff with Metro and porting the SpinPaint application.
Good Read! Windows 8 Migration Tips and Tricks (Brendan Forster)
Good technical post on the problems Brendan had porting an app to Windows 8 Metro.
Meh Read! Windows 8 Weather App Tidbits (meraTechPort)
Not so much tidbits as an explanation of what you see when you run the app!

Today's "HTML5" Links

Good Read! Ten Online Tools to Simplify HTML5 Coding (Jean-Baptise Jung, Cats Who Code Doctor)
Thar be gold in this here blog article.
Good Read! 38 Websites Coded in HTML5 for your Inspiration (Wabbaly)
Silverlight developers, be afraid! Be very afraid!

Today's "Fun" Links

Good Read! The Talking Mug (Christmas Present for annoying co-workers) (Presents For Men)
Hot sunny day and already the stores are full of Christmas gifts. Presents for Men have some fun stuff. As well as this talking mug they do talking loo-roll holders too. Very reasonable prices.