Monday, 4 June 2012

Good Stuff #2: Pluralsight Training

Pluralsight screen offering screenshot

A Phone Call From A Friend

In September last year - around the time I launched this blog with a series of posts around the Windows 8 announcements at the Microsoft Build conference - a programming community friend who had worked with me on some presentations to the Silverlight UK User Group and who runs his own training business got in touch with me.

He'd been so impressed with the 'presentation' style and content of the Daily Report material I was producing around Windows 8 he contacted me with a suggestion that maybe we could work together to launch a new subscription-based online training venture oriented around Microsoft technologies.

His on-site business was struggling, and it was clear to him, as it had always been to me, that online training was the future. On the surface it seemed like a timely offer - I was looking for work after a disasterous experience in Switzerland, emigrating for a job that was supposed to last for 2 years but crashed and burned after just 3 months.

I think he was quite surprised when I laughed and said we didn't have a hope of succeeding, and I wasn't interested!

The bulk of my 'negative' arguments against doing something was that there was no way we could possibly hope to compete with a company already excelling in that area. A company that already had a huge back catalogue of excellent courses. A company that was already in partnership with Microsoft and heavily involved with the Microsoft community. A company that had access to people at the highest level to such an extent that excellent new online training courses were being added on an almost weekly basis.

That company was, of course Plurasight, and in the 9 months since we had that conversation they've just got better and better!

How could a couple of guys, already working full time as freelancers in order to pay the bills and put food on the table, possibly hope to compete?

Some Lessons Learnt From A Job as a Full Time Instructor

A few years ago I'd set up a new company, RIA View Mirror (I thought it was a clever name for a company focussed on online training of the 'I show you, now you do it' variety, but admittedly it works better when spoken!) specifically to do what the friend who called me last year was suggesting. It didn't take me long to realise what an impossible task I'd set myself.

I de-registered the company last year!

In a former life (as a mainframe systems programmer, specialising in the IBM CICS TP monitoring system), I'd spent two years working as a full-time instructor for Amdahl's Education Services, having transitioned within the company from a role as a Marketing Systems Engineer (MSE). What I'd liked about my job as an MSE was the technical work and presentation/mentoring work, often to new, extremely sceptical, potential customers. What I hadn't liked about the job, which was essentially to be a 'techie' who supported a mainframe salesman, was I had a couple of large customers where the job mostly seemed to involve schmoozing in the pub listening to managers who seemed oblivious (contemptuous even) of the strengths of the developers and engineers they had working for them. I've never suffered fools gladly, and there seemed to be quite a few fools who'd elevated to the position of 'key purchase decision maker'. Unfortunately I've never been very good at pretending to be best buddies with people I don't have much respect for.

Moving to Education for two years seemed like a good move - embracing the strengths of the MSE role I'd mostly enjoyed, whilst removing the parts of the job I hadn't enjoyed. Win-win!

In those two years as a full-time instructor I mainly taught courses written by other people. These courses were typically delivered just a few days before I had to deliver them because they were purchased from the American parent company, who in turn had commissioned an external third party to write them. We only got the material when we knew we had enough people booked to justify going ahead, and decisions on this always ran very close to the wire.

Delivery of these courses mostly relied on my ability to improvise and fill out what was often weak, dull 'read the slide out loud' material where the length of the course in days was based on the assumption that they were being delivered at an American location near Disney World that could get away with late starts and very early finishes and a lot more coffee breaks than we Brits are used to. When I questioned the amount of material vs the length of the course with an American colleague teaching the same material he explained that the material was thin because course attendees weren't the ones paying for the courses (their bosses were) and in the States the philosophy was much more one of 'give the employee a course as a reward for good work because we can't commit to a salary increase', rather than a requirement for new training per se. Most attendees, my American colleague assured me, just want a good time away from the office, which is easy when DisneyWorld and sunny weather is on your doorstep, but not so easy when you're stuck out at Heathrow with typical British rainy weather and the expectations are rather different!

I survived two years of delivering those courses, partly by telling lots of anecdotes based around more than 10 years of 'real world' experience in a system that hadn't changed much over the years, but mostly by smiling a lot and basically doing a theatrical 'smoke and mirrors' stand-up act that diverted attention from the poor course content and instead screamed 'Like me! Like me!' at the captive audience.
It was an approach that seemed to work. The ratings were invariably excellent, even when I myself knew that the course I'd delivered was sub-par, bordering on poor. In fact my biggest problem was persuading my boss to let me rewrite any of the courses since the student critique marks were skewing much higher than other curriculum delivered by my colleagues.

My worst week as an instructor came when I had to deliver a 'new' 5-day course to a group of people that had already had exactly the same course a few weeks earlier - the course writer had just seen fit to give the exact same material two different titles (one titled 'for programmers' the other titled 'design') and not seen fit to explain this until the material arrived a couple of days before I was due to deliver it! I guess it says something for my ability to 'rewrite on the fly' that the attendee critiques for the second 'repeat' version of the course actually came in slightly higher than the first time (and had already been excellent) but it was definitely the longest week of my life!

I did eventually get permission to write a new, rather basic, 2-day introduction course replacement from scratch. I had a week to do it, but in reality took 2 weeks of crazy long days and weekends to write it to the quality I thought was required. The course was different from others in our curriculum in that in the days of overhead projectors it used full-colour acetate 'foils' (Who remembers Corel Draw in the days when the software alone justified the purchase of a CD-ROM drive?!) that mainly consisted of diagrams and pictures, instead of never-ending streams of black and white words on an acetate, and it comprised an additional course manual: an instructor's manual that gave details of those 'ad hoc' white board anecdote 'real world' scenarios I would typically deliver to pad out the old course material. This way the students got some quality reference material in the form of a student manual, while we held back some good stuff and had enough added value to encourage their colleagues to actually pay out to attend the course rather than just photocopy the student manual previous attendees might have received.

The initial feedback on the course from other instructors around the world was phenomenal. They loved the new material and I received nothing but praise for the 'dramatic improvement in quality' over the previous version of the course that had been written by an outside party.

I couldn't wait to personally deliver the course and see the course ratings go through the roof!

When I did deliver the course, the student feedback was very good - but actually turned out to be slightly lower than the previous, poor version of the course had been!

It taught me a valuable lesson about training: quality of the actual material delivered and the course content is actually not what's important. What's more important is that people feel they had a good time and enjoyed themselves.

When delivering the first version of the course, I was on an adrenaline-fuelled mission to hide the 'smoke and mirrors' of the poor course material. When delivering the much improved version of the course I thought the material would carry itself and its brilliance would be automatically recognised. I was probably more relaxed and less frenetic as a result. The improvement in quality was recognised by my peers - but not by the students themselves.

These days I rarely pay for onsite training. Invariably when I do I find it extremely poor value for money, presumably because instructors face the same issues I did when I was an instructor: poor material delivered just days before it has to be delivered, insufficient time to prepare, with an audience who for the most part have no idea how much money this training is costing their employer and a 'rating' process that has to be completed long before they can possibly know if what they were taught was correct or not. And, to be quite frank, the vast majority of instructors I've seen don't have the experience to 'fill out' the material with real world experience and 'off the cuff' examples the way I was able to when teaching was my full-time job and I had 10 years of experience to back it up.

Why Online Training Is Even More Difficult

Online training is a very different proposition from onsite training. The material can be viewed and reviewed multiple times in great detail.

If I thought it was tough writing a two day course to be delivered in person to a room full of 20 people, it's a whole different ball game writing material that can be scrutinised multiple times by thousands, if not tens of thousands, of people.

Writing good online material is a time-consuming, and prohibitively expensive proposition unless you can cash in on the whole 'Me! Me! Me!' 'rock star' culture where good people will produce good material for free (or as near to free as makes no difference) just for the recognition it gets them. I don't have the contacts, or willpower, to try that 'cash in' approach, even assuming it can be made to work.

Which is why I laughed at the idea my friend had that we could simply produce a mass of courses that people would pay good money for, when we had a competitor who already had many courses, that were, from what I'd seen, top notch. The only way I could see us being able to compete was perhaps on quality of the presentation collateral itself. I felt this could be improved in two areas: the slides themselves: where most Pluralsight training courses comprise slides of the tedious Powerpoint 'read the bullet-point out aloud' format that seem to dominate the whole of the Microsoft ecosphere; and by providing a transcript of the video material because nobody has time to go and revisit a 40 hour video course a few months later when they're trying to remember what they thought they'd learnt.

On balance, with such slim potential advantages, I told my friend that there was no way we could compete with Pluralsight.

Why We Couldn't Have Competed with Pluralsight

Collateral issues aside (which they've since improved - eg they now provide transcripts for many of their courses), there was no way a new startup without significant venture capital funding could possibly compete with a company that had such high quality offerings, and at such a ridiculously low price, and with such high visibility in the world of Microsoft community through their partnership deals and user group sponsorships. It would be like Microsoft and Windows 8 trying to play catch up with Apple and the iPad. Much too little, much too late.

When I first looked at Pluralsight training a few years ago, I recall that the premium membership that included downloadable exercise code cost between 2000 and 3000 UKP a year, and the company had a much smaller range of courses than they have today. We could maybe have competed with them back then.

Why Pluralsight is a bargain

But today, could we compete with them? No way! Here's why:

  • They have a plethora of 'rock star' instructors, seemingly recruited through their innate ability (unlike Microsoft with their MVP program) to weed out the poseurs from those who really know their stuff and how to teach it.
  • They produce new courses on a seemingly endless basis (weekly!)
  • Their customer support is superlative, and it's not the 'lip service' that you get from other organisations (After I tweeted about a bad experience with Microsoft online training for WPF a couple of years ago I was mobbed by Microsoft employees wanting to help. Impressive, you might think. So I spent a weekend putting together a detailed critique of why the material was so bad and not 'fit for purpose'. Six months later I still hadn't had any feedback, and when I pointed out that 'support' appeard to be just 'lip service' was told 'The course was done by an outside partner - they haven't responded' which says all you need to know about what Microsoft understand about customer service vs what Pluralsight understand by it. Needless to say when I had some problems with iPad offline downloading of some courses, the Pluralsight approach was VERY different from Microsoft's and they dealt with the problem quickly and efficiently. They made me feel that I wasn't 'whinging' but had genuinely helped them and were thankful for raising the issue).
  • They offer their entire online training catalogue at a price point that means it's a complete steal. About 300 UKP a year for far more training than you could possibly hope to consume. It's a bargain, trust me on this!
  • Their material is individually optimised for all the different bits of hardware that are out there. PC, you'd expect, but you want to run offline with an iPad or iPhone or an Android device? They can deal with that too.
The price vs value of what's offered is so ridiculous that if I were in the recruitment business I would seriously question hiring a freelance contractor who was too mean to pay for a year's subscription.
Yes, the company's offering is that good, and the only real problem with Pluralsight is that there just aren't enough hours in the day to consume everything they make available to their subscribers.

OK, so is there any alternative to Pluralsight?

If you're interested in Microsoft technlogy-focussed training, I'd say if there is I haven't found it. Pluralsight is a company that doesn't sit on its laurels and say 'We're the best'. Its seemingly one that continually asks itself 'How can we improve this?' and then actions the answers it receives. Whenever I've contacted support I've always had a timely response, usually followed by a fix that shows my issue has been taken seriously and dealt with as a matter of urgency. That's impressive!

In some areas, notably the more 'open source' areas around basic HTML, CSS and jQuery, there are some better online courses out there (I'll be covering a company specialising in the Adobe space in next blog post later this week). I recently took advantage of the Code School 'free weekend' where it was clear their material was far less dry and more involving, including interactive testing at the end of each course module to make sure you'd fully absorbed the material presented. But the number of courses offered is infinitely smaller for a fee that is essentially the same, and the focus is a LOT narrower than that of Pluralsight.

Some Specific Course Recommendations

I should probably wrap up this 'way too long' post with some specific courses that for me have been highlights of the whole Pluralsight curriculum.

When learning LINQ I must have purchased every available book on the subject. I found almost all of them dry and uninvolving, clearly written by people who weren't natural teachers. To be brutally honest I didn't really 'get' LINQ (I'm old with a failing memory, sue me!) Pluralsight's course on the same subject from Scott Allen was like a breath of fresh air compared to these books. So many light bulbs lit up I became a strong advocate overnight. I can't recommend his course highly enough. I was so impressed with it I wasted weekends transcribing it so I had a handy reference guide I could use - it was that good!

Pluralsight screen offering screenshot

More recently I've completed Billy Hollis' 'User Experience' course and Shawn Wildermuth's 'LESS and SASS for CSS' courses. Both are solid courses, aimed squarely at the Microsoft developer, which are fun, involving and for me also included several 'lightbulb' moments. They more than warrant the time spent on taking them and the cost of a Pluralsight subscription.
Yesterday I started on Scott Allen's 'Mobile jQuery' course, and the introduction alone did more to enthuse me than any number of books and long, dull blog posts on the same subject. It's another course written by someone with a deep undersanding of the technology, who knows how to condense and compress it into the essentials for developers who are time-pressed and struggling to stay up-to-date.

Bottom line: If you're a professional developer working in the Microsoft ecosystem, you really owe it to yourself to take out a Pluralsight subscription. There really is no excuse for not doing so!

Sunday, 1 April 2012

Good Stuff #1: TemplateMonster

Template Monster blog screenshot

A few years ago when I was first starting out with Microsoft's Silverlight technology, good examples (other than tedious 'hello world' drag and drop demo-like nonsense which was at a very superficial level) was very hard to find.

Silverlight, to me, was about two things: "writing .NET code that could run in the browser" but, perhaps more importantly, about "adding 'the sexy' to user interfaces".

The problem was that it was very hard to find well documented 'sexy' examples where full source code was available.

In my search for good quality design-oriented examples I discovered the wonderful TemplateMonster.com who, even as recently as last week, were continuing to produce interesting Silverlight designs for typical industry marketing web sites.

If you're a developer who doesn't 'get' design (but knows he needs it to 'sell' his product) TemplateMonster.com is a GREAT resource. And no, I don't just mean for 'dead man walking' Silverlight.

It's also a brilliant resource for learning the latest HTML5, JavaScript and jQuery tips and tricks. It appears to offer a 'best practice' set of framework code that designers who've worked with this stuff day-in, day-out have put together - at least if the few samples I've purchased are typical.

In theory, the site is there to provide templates or starter packs for web sites for different industry market sectors: "templates" that for the most part are intended to be used 'as is' or can be customised for an additional fee. But for developers they're a great way of finding great animation effects and cool new user experience designs. Designs that are clearly documented and include all source code, even down to the original layered Photoshop files for all icons and photos used. For the asking price of around 60 USD they're a steal - as a starter for your own web sites, or as a training vehicle for the newer web technologies!

If Silverlight is a 'dead man walking' you may wonder why I'm enthusing about TemplateMonster templates now. The thing is TemplateMonster.com don't just do Silverlight. They do HTML5 and what they call 'animated JavaScript' sites (as well as Facebook, Wordpress, Drupal, Flash and a whole host of templates for other stuff too).

They provide beautiful creations that are there for you to use as a starting point to learn the new technologies like HTML5 and CSS3 and responsive designs, for a very acceptable price.

The pricing model can appear a little strange for newcomers. You basically pay around USD60 for the source code for a given template that you purchase under a 'non exclusive' deal. This 'non exclusive' deal means others can purchase the same template at the same price. Or you can pay a lot more (typically around USD3000 - USD4000) to say 'I want this to be my new industry sector website. Don't sell it to anyone else.'

Just one warning if you decide to purchase. The company has recently taken to automatically adding the 'customise with my logo' option at around USD50 when you decide to purchase a template so don't get caught out like I did and end up paying double what you need to. Make sure you untick that option before purchase if you know how to edit HTML (and if you don't I'm not sure why you're reading this blog post!) otherwise you're going to end up paying double the price you thought you were going to pay.

As a learning resource for some of the coolest effects, animations and designs around I think the USD60 asking price for each template is a good deal, with most incorporating cool but subtle animation and sound effects for things like menu navigation, page transitions and other animated tricks.

If you sign up for the daily newsletter you get a daily email with the latest additions (typically there are 12 to 15 new templates a day!) and an extra 5% discount for that day's deals on top.

More importantly you get sent links to interesting blog post articles geared towards web designers that don't get posted elsewhere. For example this recent blog post on 'Painless techniques to implement CSS3 Latest Tricks' is a 'Must Read', comprising 30 of the best tutorials on sensational CSS3 effects that I've seen.

Customer support is excellent and if, like me, you're somewhat artistically challenged, a TemplateMonster template can make a great starting point for a sexy 'fast and fluid' new web site that makes it look like you have great design skills on top of your development skills too. Use new images and text in the existing source code and add new pages to the basic hierarchy you've given and people will never know your site was sourced from one of these templates. I strongly recommend checking the company out.

And yes, the new Fast and Fluid company web site which at the moment is an embarrassingly poor placeholder web site, is going to be replaced very soon - based on a sexy 'fast and fluid' design from the folks at TemplateMonster.com. I'll post the details here when it's launched after I've integrated it into ASP.NET MVC 4.

Template Monster blog screenshot

Apology: I've only just discovered there were a bunch of replies (five) to my 'Reboot!' blog post from last week. Replies here are moderated to avoid spam (NOT to censure!) so apologies to those who took the time and trouble to make a comment that it's taken me so long to publish your comment. I'm trying to sort out why the auto-comment emails are not getting through. Thanks for your patience.

Microsoft Windows 8 TechDay

Walking home from Microsoft's Windows 8 TechDays event, held in London last Friday, in the glorious sunshine (I left an hour before the end) I was thinking about how I could best blog about it without going into my 'default position' of posting yet another rant which attempted to explain the importance of learning the very basics around good presentation.

You'd think by now that Microsoft staff would not need a grandmother to tell them how to suck eggs. After all, it's not like Microsoft's own Scott Hanselman hasn't tweeted several times over the weekend about the availability of his own excellent The Art of Speaking video course that is available, and was made availble free over the weekend through a 'free pass' offer from training company TekPub.

A developer launch event like this ('the biggest changes since we introduced Windows') is about the importance of invigorating your audience. It's about doing the basic prep work and understanding and knowing the slide deck you're about to present. It's about enthusing your audience to do the work needed to get ready for launch. It's about NOT boring everyone to death by just reading each slide or web site SDK sample out aloud.

Sadly, this event was not about any of these things, and was, as a result, a big fail on Microsoft's part.

I wish I could say I was surprised. But I've been to enough of these things now to know better. I really shouldn't have wasted the day in attending.

On the walk home I had decided it was probably best to just ignore the event and do my 'Sunday morning blog post' as the first in a kickoff to a quick series of short, sharp blog posts about stuff that I really CAN get excited about (that will appear later today :-)). The usual post-Microsoft event 'Brutal but honest' moans get rather monotonous for readers (especially Microsoft employees) and this writer after a while. And, after all, if Microsoft were going to change they'd have done so long before now. It's not like I haven't been carping on about the same basic 'easy to fix' things for months, years, even decades now!

But then I saw Microsoft re-tweet a tweet from one attendee (one out of over a hundred) saying this was the 'best Microsoft event' he'd been to.

To say I was staggered is an understatement. It was, of course, like red rag to a bull. So please accept my apologies if you're one of those readers waiting for a world of 'non-Microsoft' positivity blog posts from me: You'll have to wait just a few more hours yet.

Presumably the attendee who thought this was the 'best' presentation event had only been to one other Microsoft event (one that was even worse than this)? Either that or he is in a job he hates so much that any day out of the office that he still gets paid for is a good thing and he wanted his bosses to see his tweet so he could get another day out the next time another similar event rolls along? But to see Microsoft staff re-tweeting it as if it were fact and this had been a great event... I thought 'How can people delude themselves so much? Or is it perhaps that I am the one deluding myself at thinking how boring, dull, completely ineffectual and extremely amateur this event was?' A quick conversation with the Development Director at my current main client and a couple of other developers indicated, (phew!) that it was not me who was the one being self-delusional.

Yes, I know it really is time for me to move on and blog about stuff that fills me with enthusiasm rather than the endless 'Meh!' that is Microsoft Mediocrity in all its many shapes and forms. Mediocrity that these days it seems to me is there in every nook, cranny and fibre of the company's being. But, sorry folks, I'm afraid that 'best Microsoft presentation' tweet presented as if it were fact to the outside world means I couldn't resist one last quick post to 'correct' false impressions being given to those that weren't actually at the event.

You can blame this entire blog post on that one ridiculous re-tweet!

By the way, as an aside on the subject of Microsoft = Mediocrity, they say a picture speaks a thousand words so here's a picture of an otherwise impressive big video display promoting Windows Phone that was in the foyer area where all the event attendees congregated for coffee.

Microsoft counterfeit software problem on their big exhibition stand
(What the picture doesn't show is the 'Windows has not been activated' warning also appearing at the bottom of the massive display)

OK. So your job is to launch Windows 8 to the developer community and get them excited. I've worked in marketing for a computer company before. Windows 8 is not a hard sell if you concentrate on the positive, and ignore all the negative (mainly Metro vs Desktop schizophrenia and lack of quality control) We all know presenting to developers as an audience can be tough, but for the love of God at least make SOME effort when you've asked over a hundred people to take a day off work to learn about the 'biggest changes since we launched Windows'.

Putting your best, most respected, 'rock star' speaker on at the beginning (instead of the end so people can leave on a high note) and then just giving him the very basic overview stuff to cover is a nonsense. Use him for what he's best at - the detailed stuff that developers are interested in and need to be told about. Get him to cover the difficult stuff in the way audiences are used to, with clarity, comprehension and understanding. Don't waste him on the stuff an intern with a day's experience could do.

To follow that with a developer who has been given a set of designer-oriented slides intended for a different audience and which he seemingly hasn't had time to look at beforehand, and have him simply try and read the very few words on them out aloud as he progresses, because he doesn't really 'get' this funny UX stuff so can't speak passionately about it is just insulting your audience and wasting their time.

To follow that with a 'proper' developer presentation that started off so well but clearly had to be delivered when only the first third had been written added insult to injury, especially when the speaker suddenly realised he didn't have a clue what slides were coming next and had to start complaining he'd missed lunch as if that somehow explained the total confusion and endless audience yawns that inevitably resulted after what had been a good start. If I give a presentation to six people I make sure I know my slide deck and I rehearse. To not do so with an audience of over a hundred at what should be a major launch event is beyond being amateur - it's insulting!

But next up was the real clincher - the one that made me so angry (actually I'm at a point now where I just laughed, this sort of thing is so commonplace with Microsoft stuff) I left at the next break, an hour before the end of the event. The audience got an example that actually made me silently go "Yes! I was SO right to get out of this client-side crap from Microsoft and look elsewhere to a world of far less pain. A world where I can take some pride in what I do and not have to continually face end-client incredulity'....

The presenter complained that a new Windows 8 input textbox control (used on the Windows 8 SDK demo site, which was being used for demonstration purposes) kept moving the cursor away from where he was actually typing. There was no visual indication of where the text he was trying to input would appear. The mouse was consistently several characters away from where he was typing. He was trying to correct a typo and it was like trying to play a complicated maze game whilst drunk.

The presenter explained that he found this 'mouse isn't where I'm typing' behaviour 'annoying'! To which the ONLY intelligent response can be 'YOU find it annoying, and yet you expect your developer audience of millions to take this s***, use it in real world apps and have happy customers at the end?!?! WTF is in that Kool-Aid you're drinking?'. FFS. This is TOTALLY unacceptable. Just fix the f***ing thing already! How hard can it be? IT'S A SIMPLE TEXTBOX CONTROL!'.

I swear to God you couldn't make this stuff up! I kept pinching myself, expecting to wake up and find it all a bizarre, horrible dream. But no. No tweets about how nasty the control is and it MUST be fixed before release. No comment at all on how broken it is. Instead I see Microsoft re-tweeting a message from one attendee saying it was the best Microsoft event he'd attended.

Forgive my language - but this is un-f***ing-believable.

Look, I know it's nice to get a cool t-shirt for free. And the 'brown bag' lunch provided (also free) was nice too. And there were some nice attendee raffle prizes. But you (or, more likely, your boss) just lost a day's pay on this lazy, medicocre nonsense. What value did you really get out of it? Events like this should not be about the 'free stuff' - that's just the trimmings. From Microsoft's point of view the event should have been about invigorating their existing and potential new customers. It should certainly not have been about having so many of them complaining about how 'boring' the event was or leaving early, as so many seemed to be doing at the time when I left (early).

In fairness, I'm not sure what the Microsoft UK problem is - whether it's people who've been too long in the same job getting lazy, or just people stretched too thin because they're having too much to do without proper support or resources. It may be a problem where their feedback about quality (that shockingly bad textbox example) is ignored because of the American 'not invented here' syndrome. But I am pretty sure it will be the last Microsoft event I attend. Life's too short to put up with such mediocre s*** that would be so easy to fix, but which Microsoft over and over and over again have so frequently proved they're incapable of fixing. That 'best Microsoft presentation' tweet nonsense suggests that not only are the UK arm of the company incapable of fixing the problem, their way of dealing with it is just to deny it exists. Which is really, really sad and depressing.

(Good Stuff #1 will be posted later today to counteract all the negativity that Microsoft just seem to generate these days).

Saturday, 24 March 2012

Reboot (but first some parting shots ;-))

Reboot!, 24th March 2012

It's four months since my last post. Yikes!

My last post was (again!) another rant around the directions and poor decision-making Microsoft were demonstrating with the killing off of Silverlight. A killing which Microsoft and their army of MVP (or MVP-wannabe) shill supporters were still publicly denying. I would add at this stage that I've worked exclusively with Microsoft technologies for over 16 years, so my rants are not those of a confused newbie.

However, whilst taking continual flack for pointing out that 'Silverlight is dead' I was actually still drinking the Microsoft Kool-Aid. The Microsoft shills I've upset over the last couple of years may scoff at the idea of this, but I think the name of my 'reboot' company makes it clear I was still addicted. 'Fast and Fluid' was the winner of the 'keyword bingo' phrase most used at the Microsoft 'Build' Conference keynote which launched Windows 8. My subsequent launch of 'The Daily Report' highlighting and promoting the best new articles around the early preview release of Metro and Windows 8 show that like a drug addict looking for his next fix I was still hooked on the marketing drugs I was being given, even whilst publicly criticising them. My bad!

Once an addict, always an addict I guess, and Microsoft and their 'community' of 'rock star' supporters sure make it hard to break the addiction, or even stop for a minute to think and realise that 'actually, the Emporer's got no clothes', even when all the evidence around you is screaming 'He's completely naked'.

Simple maths showed the time and effort needed to research 'The Daily Report' was simply not worthwhile given the number of daily hits. Higher profile bloggers would Direct Message me congratulating me on the blog which was flattering, but never publicly doing the same or even revealing its existence (Jeremy Likness is probably the sole exception that proves the rule). Even with my thick skin I realised that my involvement in the whole 'Silverlight is dead and they're not telling you the truth' controversy meant I was suddenly the 'fart in the space suit' of Microsoft community - apparently a 'loose cannon' that couldn't be relied on to carry the 'correct' message.

So this blog quietly went dark while I concentrated on finding work that paid good money and resulted in less controversy and lower blood pressure instead!

Thankfully I found a new client that involved working with an interesting, worthwhile and 'real' project written in Silverlight after two years of tedious, vanity 'proof of concept' Silverlight applications for different organisations that should never have been written in Silverlight in the first place: projects that highlighted out-of-control IT departments squandering business money to play with shiny new toys instead of delivering what the business wanted and needed and was paying for. Projects that did nothing to make me feel good about the work I was doing. Things seemed to be back on track at last, but given the short-term nature of the work (the client quickly realised that they would be better off using a platform that had more 'reach' than Silverlight had) I quietly started re-evaluating my 16 years working exclusively with Microsoft tech. The problem is that although it's a great technology Silverlight is terrible at 'reach' even if it did start off life with promises that it would be "WPF/EVERYWHERE".

The WPF "Everywhere" marketing bullshit, at a time when one person was trying to make initial guesses at what it might be, is indicative of the problem I have with Microsoft. A problem that might politely be described as being somewhat flexible with regards to defining what the word 'truth' actually means. There have been countless other examples of this problem over the years, although I am continually surprised at how quickly people forget. Am I really the only living person who remembers all those Visual Interdev/Visual Studio keynote launches where Scott Guthrie or some other poor fool would get up and announce 'We have JavaScript debugging working in our new release' to great rounds of applause... only to have to announce the exact same thing the next release round... and again the release after it. Or the 'We've fixed the XAML designer in Visual Studio so it actually works' as a more modern variant of the pattern. The most obvious example of the problem of course is that decades old chestnut 'We now have proper W3C standard support in our browser' (check the HTML5 feature compatibility charts, people - it's not rocket science to see which browser is the WORST, even in its '12 months before public release shiny new tech preview' version!) These are just simple examples of the sort of 'truth' Microsoft is happy to put out in the lead up to product launches. Claims that unfortunately in today's world of social networking get amplified as fact a million times over in the circle-jerk that is sold as 'Microsoft community'. It's not like the lessons and evidence aren't there for anyone to find and reveal! But we live in a lazy 'follow the sheep and don't question anything' world, and it's easy to get hooked on the Microsoft Kool-Aid marketing drugs when the message is so loudly and often repeated on blogs and Twitter that it seems like the whole world is speaking with one true voice. Everyone's saying it, so it must be the truth, right?!

Three years ago I sparked outrage in a pub conversation following a user group meeting when I said that the phrase 'user group' was now a meaningless term that described a strategic alliance between Microsoft and a partner company, usually one wanting special favours and thinking it would get them by taking on the burden of organising a promotional group, pre-announcing its formation, rather than genuine users getting together to try and improve products, raise awareness and feedback common sense. I was told I was being 'paranoid' and 'hysterical' in suggesting that such user groups were not as altruistic as they should be. The disappearance of so many Microsoft-oriented London user groups over the last 18 months simply because Microsoft cut off its funding shows that my 'hysterical' warnings that these were not real, sustainable user groups or genuine communities but instead a strategic controlling of 'community' by Microsoft prove my point I think!

But people forget the history lessons, and Microsoft seem happy for them to do so. It enables them to keep repeating the mistakes of the past, which until now they have been able to get away with because their monopoly position and the abundant supply of gullible new recruits ready to fall for it hook, line and sinker has enabled them to do so. The trouble is that in the era of the iPhone and the tablet (aka the iPad) those gullible new recruits are not growing at the same rate they used to. Microsoft fell behind quite some time ago, and each new decision they make seems to put them further and further behind in the desperate rush to play 'catch up' with a competitor who seems to outpace them at every turn.

One high profile blogger pointed out at the end of last year that I seemed 'bitter' where Microsoft and the way it had 'shat on' its Silverlight developers were concerned (sorry for the language, but there really is no other way to describe what they did, using lies and obfuscation every step of the way: from pretending Chief Technical Architect and Silverlight champion Ray Ozzie had simply moved division when they knew he'd left, to suggesting Bob Muglia had spoken out of turn when he told a journalist about the Silverlight 'change of emphasis', to promising to reveal what the future of Silverlight was at Build (and then refusing to do so). The blogger had a point - but in my defence, it's hard not to be bitter when you've spent so much unpaid time and effort based on Microsoft lies about their 'strategic' direction, only to continually have them refuse to come clean about their real intent long after it's been publicly exposed. How many useless, broken, rushed-to-market, world-of-pain 'shiny new toy' technologies do you have to endure, repeating this endless unpaid learning curve cycle, before you realise you're being screwed and working untold hours for free just to help Microsoft sell stuff that's just not fit for purpose?! In my case, with 16 years of Microsoft experience behind me, far too many. And I've really got nobody to blame but myself for believing shills and self-aggrandising charlatans calling themselves 'community leaders' instead of trusting to gut instinct based on experience and the available facts. In one sense I suppose I should be grateful for the 'Silverlight is not dead' bullshit and the mess that is Windows 8 that helped me realise the depth of my self-delusion, or I might still be stuck in the same exasperating version of 'Microsoft Groundhog Day' that signifies burn-out and continual disappointment as the reality vs hype gulf of unbelievably mediocre products gets continually re-exposed.

Another high profile MVP said on a couple of occasions last year that he didn't understand why I didn't just abandon Microsoft as I clearly hated them so much. Apparently at the age of 54 switching a 16 year career of experience in Microsoft-centric enterprise development and finding gainful employment elsewhere should be as simple as writing on my CV 'I've got no real world experience in xxxx, but I've been playing with it in my spare time and want to switch away from Microsoft so please pay me enough to pay all my bills'. Yeah, right! I mean I know Microsoft MVPs have ther own reality distortion fields, but come on! It's my own fault of course - if only I was prepared to compromise and sell my soul to earn my 30 pieces of silver living as a Microsoft 'partner' working on showcase 'demo' nonsense for new shiny toys every few months, instead of trying to earn a living doing real work in the real world for real clients paying considerable sums of money, life would obviously be so much easier!

All the 'hater' and 'whiner' name-calling I've received for pointing out quite obvious lies ('Silverlight is not dead', 'We've been working on Windows 8 and Metro for three years', 'Silverlight is installed on 60% of all internet-connected devices', 'Windows Phone 7 is selling well', 'Windows 8 is awesome') would be mildly amusing if the shills doing the name-calling weren't being so utterly hypocritical. How many of those Silverlight MVPs so strongly insisting 'Silverlight is not dead' 6 months ago have done anything other than write fresh blog posts, training and conference talks on Silverlight's main 'rival' HTML5 technologies? I can count those still blogging on Silverlight, the sole subject for their output for the previous two years before the 'Silverlight is dead' furour went public, on the finger of one.... finger (Thanks for keeping the faith Jeremy!) But heh, Silverlight's not dead. No, honestly. Come back. It's not dead. Really! Trust me on this (whispers: can I have my MVP renewal and any other goodies you've got now, Microsoft?)

An apology of some sort from those 'community leaders' who've so wilfully denied the facts and led 'community' down a blind alley of wasted expense and pain should surely be in order? But no, they keep schtum, hoping that nobody will notice that the 'haters' and 'whiners' insisting Silverlight was being killed off were right all along. After all, people remember who were the 'whiners' and 'haters' more than they remember what it was they were hating or whining about, or who subsequently was proved to be right or wrong! And there's plenty more pieces of silver to be made by travelling along with the Microsoft marketing gravy train - at least until it runs totally dry. Walk this way folks, we've got Windows 8 and Metro to be promoted and there's lots of new gravy to go round!

Let me be quite clear on this: Windows 8 is an immature world of pain. More importantly, it's a schizophrenic mess of an operating system that makes Vista look like a shining beacon of light and end users will hate it as they get endlessly thrown around from 'Metro' mode to 'desktop' mode and back again. It's a Frankenstein's monster of an operating system. The rush to cannibalise iOS and compete with the iPad whilst still carrying Windows users forwards has over-ridden common sense, so more fool you if you're wasting hours and hours of unpaid time helping Microsoft sell their 'new' rushed-to-market and incomplete Windows 8 and underlying Windows RT API as if it were in any way ready for prime time. Good luck with all those missing APIs and the 'everything's asynchronous' world that means everything you wrote and which is 'easily converted' (if you've got hours, days, weeks of free time to spare) works completely differently from the way it used to work. This mug's played this game one time too often, and the toys may be pretty in the same way a turd with varnish on looks shiny, and the marketing drug may be addictive, but deep-down we all know how this mess will end up. Expect Windows 9 to be 'rushed' out in 18 months to 2 years time to magically 'fix the problems' and prove 'totally awesome' and a 'Google/Apple/Adobe -beater'. It's all so tedious and predictable, based on past performance!

Next week I'm going to a Microsoft TechDays event promoting Windows 8! You're probably thinking "WTF? After all you've just written?" Unfortunately, the reality of day-to-day business means the bills get paid by pretending that sometimes shit is not TOO far away from gold (heck, they're the same sort of colour, kinda!), or at the very least be up-to-speed on what the marketing messages being dished out are. But the reality is that three years too late I'm trying to jump onto other gravy trains - trains where there's real demand and attempts at achieving real quality especially in the user experience department, and real conviction instead of endless, mindless shill fabrication and twisting of facts. Hopefully they're not gravy trains that require endless unpaid hours trying to get just the most basic stuff doing what it's supposed to do. Fingers crossed, and maybe I'm deluding myself, but the initial signs are good!

So this blog is being rebooted as of today, and it's going to see a change of direction. I'm NOT going to be blogging about Windows 8 because, quite frankly, none of my clients seem to care about it and none of them appear to believe the hype that Microsoft are putting out. While shills keep talking about Enterprise 'still being on XP' and 'always slow to adapt new technologies', my Enterprise clients have been working with iPads and iPhones and rushing into new technology at a far quicker pace than used to be the case four or five years ago. They see no future in a weaker, copycat 'jam tomorrow' product over better products that have been in the marketplace for a few years, especially one that's so obviously been rushed to market as a too-late knee-jerk reaction to a competitor's success.

I AM going to be blogging about learning new technologies. My early tentative steps with HTML5, CSS3, jQuery and JavaScript technologies have been a real eye-opener (they've moved on - a LOT since I last worked with them) and got me excited about programming again, in a way I haven't been for years. Finally!

My first experiments with Objective C and iOS programming have got me even more excited. Talking to other developers who've made the switch from .NET to iOS all I hear is 'I wish I'd done this earlier.' Admittedly it's early days, and it's like going back to school again. But I feel more positive about my career and the industry I work in than I have since I left the mainframe environment 20 years ago (where the word 'legacy' was used to refer to technologies that were DECADES old, not WEEKS old as tends to be the case with anything Microsoft). If you're still not convinced, ask yourself this question: what other company could pat itself on the back and brag over and over again about the death of one of its own products, the way Microsoft has with Internet Explorer 6?!

I'll be using this blog to document my steps and learning experience as I branch out. I can't promise it will be in-depth or deeply technical at this early stage. But I can promise that it will be honest and independent, to the point of being positively brutal if it needs to be. When was the last time you could say that about ANYTHING written by a Microsoft MVP blogger? Enough said!

So. In summary (finally!) welcome to the reboot! It's time to put all the negativity around Microsoft behind me and move on to fresh pastures. For those who started following this blog because of an interest in Windows 8 and Metro: I hope you stick along with me for the ride. There's a world of exciting opportunities out there, and they don't all involve having to park your brain at the door and simply swallow whatever marketing crap you're being given by Microsoft and its shills! I hope you'll stick around.

Reboot!, 24th March 2012

Wednesday, 26 October 2011

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

The Daily Review - 26th October 2011
Photo © Bidouze Stéphane | Dreamstime.com

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!
:-P.

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 | Dreamstime.com

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.