Tuesday, 22 October 2013

Windows 8.1 on the Surface Pro

In June I blogged about my nightmare experience buying the Microsoft Surface Pro and summarised with 'Buyer Beware!' and a strong recommendation that potential purchasers avoid this item. Since then we've had the Surface Pro 2 announced and I don't know whether to laugh or cry at all the hypocrites who raved at how wonderful the Surface Pro was, now telling us just a few months after it launched how much better the Surface Pro 2 and its new keyboard cover (no refunds on the old one, sorry!) is!

The Surface Pro has largely been a useless paperweight since I bought it. Way too heavy with too little battery life for a tablet. Way too under-powered for a laptop.

But I thought I'd give it another go, now that Windows 8.1 has been released. This, by the way, is the release that had so much quality control applied to it that the version for the Surface RT had to be pulled within hours of release because if totally trashed the Surface RT. You really couldn't make this stuff up! So, anyway, I downloaded and ran the upgrade and the Surface Pro did some reboots and then told me...

Couldn't update to Windows 8.1 0xC1900101 0x30018

Updating Microsoft software on Microsoft hardware I should have known!

I'm not even surprised any more. Apple announce their new iPad today and I'm afraid after all the pain they've caused me and so many friends and family it's hard to see how aside from some niche enterprise scenarios there's anything to stop them a decade from now having gone the same way as Kodak. Time to start learning node.js I guess!

Thursday, 19 September 2013

Windows 8: The Official Magazine R.I.P.

The postman delivered two separate items this morning: a magazine and a letter.

The magazine was issue 13 of Windows 8: The Official Magazine. It included the following flyer, as it does with every issue:

Subscribe for years to come!

'Subscribe for years to come' they exhort. Chance would be a fine thing, because the separately delivered letter contained the news that the magazine has been cancelled. No explanation at all given other than it has been a 'tough decision'. Yeah, right!

But here's the funny bit. They are transferring all remaining subscriptions to a new magazine. Can you guess what that might be? What might be most appropriate for the purchaser of a new PC with the Windows 8 operating system installed?

Can We Suggest Windows 7 Help and Advice!

Yup. You read that right! Windows 7: Help and Advice magazine!

Classy, official Microsoft magazine. Classy! So presumably since this issue coincides with the release of the free Windows 8.1 upgrade the 'official' advice is to hold off that and instead go and install Windows 7?

Actually that's probably pretty good advice, as it turns out.

Oh yeah, and about that Windows 8.1 Upgrade

The good news is that after a huge backlash from developers who pay through the nose for their MSDN subscriptions and early access to Microsoft operating systems and software, only to be told they'd have to wait the same as the general public to get any sniff of the new operating system their applications are supposed to run on, Microsoft decided to let them have access to the RTM (Release-to-Manufacturing) version of Windows 8.1, before its release through retail outlets next month, after all.

Keen to see if the much-touted 'improvements' have actually rescued Windows 8, I tried installing Windows 8.1 on top of the Dell pre-installed Windows 8 Pro softwre on my Dell XPS One (I'm not stupid enough to run Windows 8 on my main workhorse PC - continual switching between two completely different operating systems every time you want to start a new program is a real productivity killer).

The only options the upgrade offered were to retain my data (and lose all my installed applications) or lose everything including my data!

An option to 'keep my applications' isn't offered, although I discovered such an option should be available. A quick question on StackOverflow bore little immediate fruit except a 'downgrade' in my reputation points from some malicious, anonymous little Microsoft shill. My bad for having the temerity to ask how Microsoft could be so stupid as to offer an upgrade that didn't let me keep my applications.

Eventually, thanks to Twitter, I spotted a suggestion that implied Microsoft can't cope with taking an 'en' (English) installation and installing an upgrade that says it's an 'en-gb' (English-British) upgrade.

I think journalist Jon Honeyball, who was suffering the exact same problem on the exact same hardware, summed it up best when he said that something as simple as a language pack being so tightly bound to an operating system install was 'hackery of the worst kind'.

Yup. Hackery of the worst kind. Or, to put it another way, Microsoft business as usual. God help Joe Public trying to upgrade his Windows 8 system when this upgrade hits the shelves next month!

That decision to switch Windows 8 Official Magazine subscribers to Windows 7: Help and Advice suddenly looks like a very canny move!

Tuesday, 17 September 2013

'Positive' Discrimination at Angular 2014 Conference Is Just Plain Wrong!

Discrimination graphic

Some Thoughts About Conferences in General

Until 2009 I used to attend a Microsoft conference every year.

The cost of attendance wasn't cheap but, at least in the early days, I found them particularly useful when I was feeling a bit jaded. These events presented an opportunity to learn, network, and generally re-invigorate your enthusiasm for an industry where the daily realities of the job and the poor work/life balance can prove stressful and de-moralising.

Our industry has a high 'burn out' rate, and conference attendance can be an excellent way to try and combat that.

In many ways the proliferation of 'free' user groups, especially for those of us living and working in the London area, made many of these advantages somewhat redundant. With so much user group choice (in the days before the reliance on Microsoft funding suddenly dried up so that many user groups simply vanished overnight) I realised that the last few conferences I'd attended had been a disappointment, and very poor value-for-money.

Of course if you're a permanent employee whose company are happy to pay for the cost of admission and give you the time off work to attend, any 'cost' arguments don't apply. But if you're a self-employed contractor who has to not only pay around £3000 to attend a conference that may only last a couple of days, but also take the hit of a week's lost earnings (once you've factored in additional time to cope with jet lag), the cost of attending a conference can be almost impossible to justify.

As a result, particularly after the huge disappointment of the last two Microsoft conferences I attended (where much was promised, but little actually delivered), I've made it a matter of policy to stay away from conferences. Talking to other contractor friends who've attended recent Microsoft conferences like Build or TechEd it doesn't seem like I've missed out on anything at all.

In fact the introduction of video streaming or downloads over the last few years means that 'virtual attendance' often provides a better experience than 'in person' attendance anyway: No extensive travel time or over-priced business hotels; If you hit a poor training 'session' you can just hit the 'stop' button and quickly dive into another one, rather than walking half a mile to find you're too late to be let in to a possible alternative; Wi-fi 'just works' at home unlike most conference venues and hotels; And, thanks to social networks and Twitter, you have the advantage of being able to see what other attendees are saying about a session before commiting to it. Even announcements from these big conferences typically appear on the internet hours before the 'on the ground' attendees have woken up for breakfast!

The Angular Conference 2014

But the announcement of the first annual Angular conference, to take place in Salt Lake City in January next year, was too much to resist. I love using Angular, and can't wait to find out what others are doing with it, and to learn tips and tricks from the experts, as well as the opportunity to network with others who've been working with the technology on a day-to-day basis.

After booking the hotel and flights ahead of time, I thankfully managed to get a ticket in the mad rush that took place yesterday evening UK time and lead to 200 'early bird' tickets selling out in less than 2 minutes.

The fast 'sold out' time is a testament to the interest in Angular. For a new, untested conference, held away from the usual big US cities I think that's unprecedented, and shows the enthusiasm and traction AngularJS has attracted from the developer community: traction that's been won in an incredibly short period of time.

So I'm excited to be attending, and it will be good to catch up with some former Silverlight developers who also managed to get tickets and who, like me, have undertaken quite dramatic career change choices by fleeing the sinking Microsoft ship and looking instead at more open source alternatives like Angular, at least on the front-end.

However, I am extremely disappointed to see that after the initial 'early bird' tickets sold out so fast, a decision to give special priority to 'girls' was announced.

'Positive' Discrimination is Still Discrimination!

An update email from the conference organisers yesterday said that more tickets would be made available on a 'first come, first served' basis next Monday at 7pm UK time.

That's the good news.

But the email also said that 'girls' would be able to effectively 'jump the queue' for tickets by applying through a specially set-up email address rather than just waiting for the next batch to be released and competing with everyone else to grab one.

Positive Discrimination email

I think this is just plain wrong, and manifestly unfair. A quick informal survey amongst friends on Facebook both inside and outside the industry showed 100% agreement with my viewpoint. One has to question why the hell this 'preferential treatment' decision on ticket sales has been taken.

For me, it boils down to this one single question: "Are girls less able to go online and order tickets the same way everyone else has to?"

If so, I've missed something.

And if you're going to give special concessions to one group of people, why stop at 'girls'? (Does anybody else think that term for women is at best patronising, and at worst insulting?) Let's have 'positive discrimination' for any and every 'minority' group: bloggers, gays, students, people of colour, people paying a lot more to attend because of the distances they have to travel, people whose middle name is embarrasing... Where do you stop?

'Positive discrimination' is, however you word it or try and justify it, DISCRIMINATION. And discrimination is just plain wrong. The fact that the Angular Conference organisers have not chosen to explain the reasoning behind their peculiar decision, beyond saying they 'want to include more girls' for me sets a worrying tone for the conference. I thought this was to be a developer's conference not a dating one!

Sunday, 7 July 2013

AngularJS Video Transcripts

Earlier this year I started working with a team of .NET developers writing a Single Page Application using a whole bunch of JavaScript libraries and frameworks. Transitioning from the world of .NET, Silverlight and CSLA to the new 'wild west' of JavaScript, whilst trying to remain productive and deliver working functionality has been a huge challenge.

I made an early decision to use Pluralsight training as the basis for getting everybody up to speed as quickly as possible.

John Papa's Single Page Architecture in-depth and fast-paced courses on Pluralsight were a huge jump-start, but even with a concentrated six to seven hours running time proved so intense that developers who'd 'completed' (ie viewed) the courses three times in total were still struggling to remember crucial guidlines and coding methods, and when they really needed to re-reference it struggled to find where in the video a specific, quickly talked through code sample had been.

I ended up spending far too many weekends transcribing the video contents of key chapters from different Pluralsight courses into readable PDFs to try and get our team up-to-speed a lot quicker. Since Pluralsight is a paid-for subscription service, unfortunately this material can only be used by my fellow team members who all have paid up Pluralsight subscriptions.

However, there's a host of similar video training material (mostly user group talks) that's available for free. Our biggest learning curve (which is ongoing) was around the awesome AngularJS framework. After flirting with Durandal and Knockout to get up and running with our SPA application, we switched to Angular (with Breeze) as the main framework on which to base our Single Page Application. Its ability to dispense with many individual libraries, dramatically reduce the size of our code base, strong community support with increasing momentum, and its sheer elegance were factors in deciding to use Angular.

Thanks to the generosity of the original video speakers, I've been able to make publicly available these "Angular PDF transcripts" for those who, like me, find re-watching video a poor way of revisiting excellent reference material.

I should stress that my recommendation would be that you watch the videos (links in the individual PDFs) first, and simply use these PDF downloads as backup - a quicker way to revisit the video contents when you want to, and get to the relevant material. (Video 'jump to' timings are shown directly underneath each slide in the PDFs if you really want to go back and view the original video material on a given topic).

The transcripts I've received permission to make available are as follows:

My thanks to Misko Hevery, Matias Niemela and John Lantz (on behalf of Ward Bell) for giving permission for these transcripts to be made publicly available. The material available here is the results of their hard work and not mine, and they own the intellectual copyright. I hope you find them useful.

Thursday, 13 June 2013

Microsoft Store - Buyer Beware!

This blog post was updated on 23rd June 2013. Please see the end of the article for the update with the eventual resolution by Microsoft

I honestly didn't think Microsoft's handling of the UK launch of the Surface Pro could have got any worse. I should have known better of course!

The Surface Pro is essentially an over-priced, albeit niche product with terrible battery life and poor weight and handling characteristics that FINALLY officially launched in the UK on 23rd May 2013 - several months after its much hyped debut in the USA, and almost a year after it had been first announced and demonstrated as Microsoft's answer to the all-domineering iPad tablet.

On 23rd May, the morning of release, the Microsoft UK Store officially launched the Surface Pro in the UK and took pre-orders. I placed an order online.

My bad!

This blog post documents how at EVERY SINGLE customer 'touch point' Microsoft have demonstrated staggering incompetence.

1. Microsoft Store Web Site - Frequently Broken

I've lost count of the number of times I visit the Microsoft Store, fill out a ton of details, click to purchase something and encounter the screen shown below which then sits there for hours. You eventually give up and try and process an order again, re-entering every detail of your order, only to get the same screen over and over again for hours at a time until somebody somewhere wakes up to the problem and fixes the web site. How do these people stay in business?

Microsoft Store - they're always processing your request with broken images and it takes forever

2. Microsoft Store - Order Status? 'Processing' aka 'Completely Unknown'

I was one of the first people to order a Surface Pro for work. I ordered on the morning of Thursday, 23rd May - the supposed day of launch. My order showed as 'processing'. It stayed at 'processing' for a week. I phoned the Microsoft Store to ask when it was likely to be despatched. They said they had no idea and couldn't give me ANY kind of date as 'demand was higher than expected', which is odd since all the media reports are full of stories of poor sales of the product.

I cancelled the order by talking to real people in a real call centre.

Twice!

It still showed as 'processing' three weeks later!

3. Customer Priority Ordering - What Priority?

A week after the Surface Pro launched I had no delivery date or even suggestion of when my order might be despatched. And yet a friend (Hello Brian!) who ordered THE DAY AFTER ME received his 128GB Surface Pro the following Wednesday.

In other words, it doesn't matter when you place your order there is no priority, rhyme or reason around the delivery system. No 'common sense' approach that says 'first come, first served'. It's a complete lottery.

4. We can't supply the product but we've started and charged for your extended warranty...

I ordered the extended warranty for the Surface Pro because everything I've read about this device says it runs hot and will be a pig to get repaired because the design is so bad parts are impossible for Microsoft engineers to get at. If you purchase the Surface Pro from the Microsoft Store you can buy an extended warranty for £65. Not cheap - especially when the only other place offering to sell the product (John Lewis) bundles it in free. I ordered it. I was charged for it immediately. The Microsoft Store rep I spoke to actually admitted that the extended warranty had started and been charged for EVEN THOUGH THEY HAD NO IDEA WHEN THEY COULD SUPPLY THE PRODUCT THE WARRANTY WAS TO COVER!

5. We cancelled your order.... but we haven't

Fortunately there is one alternative source for the Microsoft Surface Pro if you really need one (ie you work at a Microsoft 'shop' that has mandated their use because of the device's inherent security benefits over the iPad): John Lewis. Friendly staff, and a two year warranty for free instead of £65, and they had stock a week after launch. I cancelled my order by phoning the Microsoft Store, sitting in a 'hold' queue and speaking to a real person who was friendly and helpful. My order was cancelled I was told. My credit card would not be charged. Phew!

Next day however, the store is still showing my order as 'processing'. Whatever happens I don't want to be charged twice or have a second item shipped. So before heading out to John Lewis I phone the Microsoft Store again. Hold queue again, but eventually I get to speak to another friendly, helpful lady. She tells me that the Microsoft Store 'back office' systems are slow to update. Uho! How slow? She can't say, but tells me I am not to worry because she will ESCALATE my cancellation to make sure my credit card is not charged. Blimey! What would have happened if I hadn't called and just assumed the cancellation had happened as I'd been told the previous day? I think we all know the answer to that! She can't tell me when the store status will change from 'processing' to 'cancelled' but she gives me a long cancellation reference number and apologises for the fact the Microsoft Store web site has no concept of what an order status really is.

I go to John Lewis and purchase my Surface Pro

6. Two weeks after we cancelled your order we took your money

Two weeks after I've confirmed my order as cancelled by speaking to a real human being and getting a cancellation reference, I get an automated email telling me that my items couldn't be cancelled and have been sent and charged for!

I also get another email telling me not to worry because I can refuse to accept the goods (me: "but the courier will just leave them with a neighbour - how will that help when I'm not at home?") or I have 30 days to return them at my own cost... to Holland! Then 2 weeks after that I might get my money back. But probably not the interest charges that will have been applied because I don't have the money to pay the charges because I already spent them at John Lewis.

UPDATE: A couple of hours after posting this blog entry (and nearly 24 hours after receiving the original return instructions) I received emails telling me I could print off pre-paid labels for UPS to return the cancelled goods, relieving me of the cost of shipping everything back. It seems odd that this should happen (a) so long after the original 'How to return the items' email (b) two hours after I'd been lucky enough to be at home when UPS attempted delivery of the items and therefore able to refuse to take them, making the labels completely redundant. A knee-jerk reaction to this blog post maybe? Hard to tell!

In summary, "our back end systems take more than two weeks to process an 'escalated' cancellation and as a result you will have to pay significant costs to cover our negligence and incompetence". Thanks Microsoft. You really are truly unbelievable!

6. Customer Service - just follow this link

Each email from the Microsoft store has a 'Customer Service' hyperlink. It takes you to a completely grey empty page:

Microsoft Store Customer Support Page - yup, they've got nothing!

I wish I could say I was surprised. This is Microsoft. I'm NOT surprised. It's just business as usual. I know what you're thinking "Heh, give them a break. It's not like they write software for a living or anything". Oh wait!....

7. We'll say we shipped one thing, but offer to reimburse you for another (cheaper) thing!

The email detailing what has been sent two weeks after cancellation correctly identifies my order as being for a 128GB Surface Pro. The email I have to use to return the unwanted goods to Holland, and on which presumably refund costs will be based, says what is being returned is a 64GB Surface Pro. How on earth can this happen? Is the Microsoft 'Back office' system that generates these things a monkey with a pencil? It sure looks that way.

8. Customer Service - I can't give you a name or address to complain to

One thing the online web site DOES have is interactive chat which appears to be designed to help them sell you stuff. Desperate to avoid high phone charges sitting on hold and unanswered emails I tried to use it to find someone I could complain to. Nope. They can't give me the name of a manager or an address to write a letter of complaint to. They can email me 'in 10 minutes' and I can reply to that email address with my complaint but that's all. What's the point of emailing the minion I've already chatted to about the complaint? Completely pointless!

I've been round this 'send us your complaint' loop before. Some years ago I purchased an expensive online introductory training course for WPF that was truly terrible. I tweeted about it, warning potential purchasers to avoid at all costs. Three Microsoft employees contacted me asking for details on what was wrong so that they could rectify things. I spent significant time putting together a detailed report documenting everything that was wrong with the course. I was thanked for my comments and told someone would get back to me. 3 months later nothing had happened. I asked why. Nobody could say, other than to say the report had been forwarded to somebody in the States, and a shrug-of-the-shoulders suggestion that the course had probably been put together by 'a partner' who hadn't bothered to read, let alone respond to, the detailed report I'd sent. This is of course the classic Microsoft reaction to terrible customer service like this: sympathise, say 'I'm sorry I'll look into that' ... and then do absolutely nothing!

Microsoft truly is in danger of becoming the 'Kodak of the 2010's. It seems to be rotten to the core: full of smiley snake-oil covered young 'passionate' sales and marketing people with Teflon shoulders who will smile and say "How can I help?" before emptying your wallet with promises of what's to come or what's 'strategically important' (ie about to be killed off) before they quickly move on to something else or if they have any sort of self-respect somewhere else (seems to be mostly Telerik if they're a software engineer!) when you start asking "Wait a minute. What happened here? I think I just got shafted.... again!".

If you're considering purchasing ANYTHING from Microsoft or the Microsoft Store, I suggest you bear all the above headline points in mind. Every single Microsoft rep I've spoken to when I've had a problem has said they're 'sorry'. Every single one has, when pushed, privately admitted they can't actually do anything because ... well find your excuse: it's this partner or that partner, or somebody in Redmond that's the cause of the problem. Nobody takes account. Nobody takes responsibility. Nobody addresses the problems. And in the meantime you've lost a whole ton of money and time for no good reason.

Like the title of this blog post says: Buyer beware!

Update 23rd June 2013

Journalist Tim Anderson linked to this blog post in an article he wrote Microsoft and Mediocrity in Programming which seemed to stir Microsoft into action.

Last Wednesday I received a call from a Microsoft employee in Toronto (!) apologising for my experience and giving me contact details as he tried to get to the bottom of the situation. Refunds for accessory items were made in the middle of last week and although I haven't officially been notified yet, it appears my credit card was credited with the main cost of the Surface Pro itself yesterday, 22nd June - the day after my credit card statement which means I'll get stung for the charge but have a credit on my account for future purchases (sigh!) Microsoft also, by way of apology, refunded the cost of the 'Limited edition' Wedge Mouse for Surface which I separately had ordered and kept - which is generous given it retailed for £69.99 (For other Pro owners I should point out this is identical to the 'non-limited, non-Surface' edition Wedge Mouse that retails for about £40 on Amazon, except for the fact it has black ends instead of silver ends - just in case you were wondering, like me, what the heck the difference in this 'Surface limited edition' accessory was!).

Given my experience, albeit with a happy ending eventually, would I use Microsoft Store again? Not if I have ANY choice in the matter. See the 'Comments' section below for others who have struggled to get refunds or cancellations out of Microsoft for orders placed through their store!

Unfortunately if you want Surface Pro accessories you have little to no choice. John Lewis, the only other reliable supplier I've been able to find, don't stock most of the accessories (yet?)

Having had the Surface Pro for two weeks now I regret my rather imulsive purchase - it's a shame I don't follow my own advice as the signs were all there BEFORE I bought the Pro!

I can see this is a niche product for niche users, but the poor battery life and overall clumsy form factor and weight when added to the "Windows 8 and touch on hi-res screens just doesn't work" problems mean it will be of little interest to most. The 'hack' of including a stylus pen that occupies the same slot as the power lead (doh!) is an interesting attempt to solve part of the problem, but it's a hack, and not a very good one! Add in the exhorbitant costs: of the unit, the £110 keyboard, the £70 mouse, the £65 spare power supply etc and the appalling battery life and it's hard to justify buying the Surface Pro when you can get so much more for a lot less money in an ultraportable Windows 8 PC.

No doubt next week at Build we'll get the same shills who were over-promoting this Frankenstein's monster hardware last year doing the same for its "improved", smaller 'Surface Mini' (really?!!) version that many have predicted will be announced. Take all the hype with a pinch of salt until you can actually try units that are available to buy in the UK (a year from now if the usual pattern is followed)!