Windows Phone 10 update, stuck with error 0x8024201f; easy fix

I’ve always been happy to give cutting edge apps, operating systems and gadgets a go and when Windows Insider opened up for Windows Phone 10 preview I definitely had to sneak on board and get my trusted Nokia Lumia 930 (a gift from a very dear friend, Jin) upgraded.

To be honest, the experience hasn’t been altogether a happy one. That being said, the actual risk is minimal, but frustrating nevertheless. Especially with apps failing (apps i was using frequently, such as Outlook or my Calendar) in steady streams.

Over the past 5 months I’ve done more than 15 hard resets of my phone – purely because it became too unstable or vital apps (such as the Phone app, durr) became unresponsive. Granted, it’s an easy process to reset, but time consuming.

It came to a head in the past 3 days – 11 hard resets and a couple of updates keeps failing. Especially 10514 and 10536. Kept getting a message “an update was not installed” or somesuch, with the phone then proceeded shortly after with another update download. This went on and on and on, not only making the phone unusable for me but also very hot to touch.

Finally deciding that this was going to stop I figured a downgrade and another upgrade would see the WP10 updates install properly.

So here’s the fix if you’re actually stuck with not being able to upgrade..

  1. Download the Windows Phone Recovery Tool 2.1.2 from here: http://go.microsoft.com/fwlink/?LinkID=525569 onto your PC/Laptop
  2. Install the app and connect your phone to your PC/Laptop
  3. Once connected up, click on the “Install Software” icon (this can take a while so be patient)
  4. Go through the full install and setup your phone again. This will bring it back to WP8.1.
  5. Go to the Store and install the Windows Insider app
  6. Once installed, open the app and sign up for the “Fast” track (only Apple fanbois should go with the slow route)
  7. Once done, restart the phone
  8. Go to Settings -> Phone Update and download the update. Once it’s downloaded it’ll tell you to install and restart. Do so. Voila, I skipped what i believe is the troublesome update 10514 straight to 10536.

(I didn’t have any issues with the phone not being recognised, but have heard some have that issue. Do a Hard Reset if that’s the case first before going through with this process)

This brought me straight to the 10536 update and it’s working a treat again. Apps are stable and I’ve gotten new versions of many of the apps I always used (Outlook, Calendar, Phone, Messaging etc).

There you go, stay happy and keep coding..

wp_ss_20150919_0002

 

Stick to your guns – why lifecycle management is important in the enterprise

The concept of Application Lifecycle Management is not a new invention that just popped out last year and hit us in our backsides. It’s a very wide topic with a lot of categories, which includes categories such as:

  • Project Management
  • Change Management
  • Release Management
  • Design, Modelling and Issue Management

Yes, that’s right guys and girls (honestly!!) – Project Management is indeed part of the Application Lifecycle (for real this time!!).

This is spread over an even larger list of methodologies and tools, some fluid/agile and some integrated…

We often hear that IT projects are more likely to run over budget, be delivered late and in a state of looking like a bug-ridden open source project…. statistically that’s quite often the case – so why do we bother when we’re doomed for failure? Well, because when things are done right, it just works.

One of the biggest mistakes I frequently notice on IT projects is the failure to understand that it’s not just the development and project management team which has to adhere to a process. (Yes, i know, those that pay the bills just want things done now…you arguing?…s’ok, there’s the door). IT projects are like a house of cards, the more you add and the more complex the “build” becomes, the more careful you have to be – so that means following that process even if it means you have to get approval before proceeding.

I was once assigned to a project to resolve a few bugs here and there. Nothing major, this was final stage of the project, just a few helpful hours when the cycles where free. The first issue I was assigned wasn’t that complex, but getting to grips with the code base and project layout did take a bit of time. It wasn’t really documented and there was nobody around to give a hand. Anyways, after about 1 1/2 of trying to reproduce the alledged bug, I finally gave up and tracked down the BA who’d lodged the bug to start with. For the first 30secs the BA had to get their head around which particular bug I was referring to – all understandable, the project had run for years.

Then it dawned on the BA which issue i was referring to…the message was…

That issue was fixed 1-2 days before it was assigned to you…

Ok,  naturally I wasn’t entirely impressed, so I chased down the PM that’d assigned the issue to me and got the usual blabber about “being newly assigned onto the project” and “we’re all in this together, please stop strangling me…garggle..ugghh..gasp”.

So the incident at least had a release for my homicidal side..

Why did the Project Manager assign the issue to me in the first place? Well, he’d been running around, trying to get resources stitched together to complete the project and get it out of his hair. Yes, he was a newly assigned PM and the developers on board were largely juniors. Obviously a failure to communicate on one level or another….or….something a bit more sinister?

The steps pretty much showed a full breakdown of the lifecycle.

Test conducted -> Issue Found -> Issue Raised -> Issue Triaged -> Issue Fixed….

And then that’s where things really broke down. No detail was found in TFS that the issue had been fixed. It was still assigned to the PM. Still in active status.

Obviously the PM was never informed that the issue had been fixed..who’s to blame for that? The developer? the tester? the PM?

It’s a very basic example of what can go wrong when the process isn’t followed by everybody involved. That includes developers, testers, project managers, stakeholders etc.

Considering how simple this was, the cost was huge and the ROI so small as to be negligent. Look at that from a project perspective, a drop in the ocean, however if that happened often enough the project would fail (unless we had some seriously generous clients and budgets).

Look at this from an enterprise perspective where cost of delays, additional licensing and hardware, consulting resources et al, then it’s obvious that the lifecycle is paramount. Had a process been in place above (well it was, but it obviously wasn’t followed) the waste of time (and additional cost to the project) could have been avoided.

Shortly after that incident I received an email, asking me to make a small change (just a date calculation, v.simple and quick fix) to another feature. I naturally understood that the work item had been assigned to me so I could see all the details of the change (and ensure nothing had been missed in the email), but alas, it hadn’t. Due to timezone differences I needed to wait for the PM to get back on board for the day, to ensure that the details I’d been given in the email was all encompassing. The work item change had been raised as an issue to be resolved – and lo and behold – it also hadn’t been assigned to me. Great, now due to check-in policies in TFS, I wouldn’t be able to check in before the change to go to the test team. Again, and added piece of delay that ends up costing money in the long run. Of course, I could go and make the change to the code base, wait for the issue to be assigned to me, check in and then move on. But, here’s another idea.

How about I DON’T do the work before the “paperwork” is all sorted?

Yes, I waited patiently for the PM to respond to my email – “S’cuse me, sir..please assign issue xx to me and verify all details…kthxbai” – and then I proceeded.

Did it take a bit of extra time to get this done? Of course it did, but what could the consequences have been had I not gone down that path? Again, wasted time and even possibly impacting code and changing features which wasn’t meant to be changed. Again, more wasted money/time/resources.

This is just a small example of why being very careful to follow a set lifecycle is paramount to IT projects – in the whole scheme of things, this wasn’t something major really – however, the project had already rolled way over budget and deadline, why continue to waste resources when a simple process could have prevented it all.

A choice – classroom vs. virtual technical training

Over the last couple of weeks i’ve been working on a business case for our centre to adopt a virtual technical subscription as opposed to our classical choice of “classroom” technical training.

It seems more and more clear that the ROI of classroom training is of an exceedingly low value if you look at it strategically.

What i’ve deducted so far is:

  • Classroom training provides a “feel-good” positive feedback from staff attending it. They know it’s costly and feel more valued by the company.
  • Classroom training provides a hands-on experience in many cases
  • Classroom training does not provide a large variety of topics (usually one topic per training session/week at a high cost)
  • Classroom training does not provide an on-demand availability as schedules are set by training providers
  • Classroom training does not provide a high knowledge retention rate

These were some of the main points that’s making the grounds for my business case.

When turning that around and looking at a virtual technical subscription (such as PluralSight.com and Innerworkings.com) there’s subtle areas of difference.

  • Virtual training doesn’t necessarily provide as “feel-good” positive feedback from staff utilising it. The individual value associated with it is generally less than Classroom training. This is a percieved monetary value.
  • Virtual training provides a hands-on experience in many cases if you mix your technical subscription offerings
  • Virtual training provides an on-demand availability service. It’s there when and wherever you need it
  • Virtual training provides a large variety of topics and can be both specific or general in depth
  • Virtual training provides a high knowledge retention rate as you would consume content which is needed here and now

From the generalisation (which i’ve had to make) it’s clear that both cost and knowledge is of high importance, leaving only a business decision on 1 or 2 points to be made.

I was able to run several trials with different staff over a short period of time and deducted that on average 6hrs was spent weekly (some lower and some much higher) when the on-demand content was available. The most important feedback I got was that there was a sense of “i can train when and where i feel like it” and “i can re-visit content i’m not sure about anytime”. These two points were of immense value to me as they clearly indicated that the benefits of classroom training was slowly being devalued.

The next phase for me is now to look at delivery, control and management/availability of sources and then work out a cost vs. cost for each offering.

It’s interesting for me personally to see how diverse many of these virtual training subscriptions are in topics and gives me some more positives to work with.

Supercomputing – What would you do with the worlds most powerful computer?

Fujitsu Limited created the worlds most powerful computer – It reached a staggering 10.51 petaflops (that’s 10 quadrillion calculations per second btw) using 705,024 SPARC64 processing cores. That’s 4 times faster than the second most powerful supercomputer in existence today. Since i started working with computers (and watching SciFi movies) the processing power has increased dramatically and we now have mobile devices with more processing grunt available than what most servers held back then.

Needless to say, some of the biggest discoveries today in science has happened purely because of the processing capability available. So, consider this, what would you do with the most powerful computer in the world? Cure cancer, locate the “god-particle”, map the universe?

It’s staggering to think of this accomplishment, let alone if you put it into perspective and compare it to what we, even today, expect from computers.

More info: http://www.fujitsu.com/au/solutions/supercomputing/

httpv://www.youtube.com/watch?v=fT9zI-t6z2Q

Fujitsu HPC LinkedIn group
Fujitsu Facebook page
@FujitsuHPC
Fujitsu Google+ page
Fujitsu HPC YouTube

ReSharper 6.0 Beta 3 is out

One of my favorite Visual Studio extensions is the ReSharper productivity tool.

It’s still one of the best out there and there’s a ton of developers already using ReSharper to stay productive. This extension is pretty much a Must-Have in any developer’s toolbox.

Some of the enhancements in 6.0 Beta 3 over Beta 2 are:

  • Less memory consumption
  • No more never-ending process of scanning source files on solution load
  • Improved performance

If you’re a keen JetBrains fan, then you must get your hands on this latest beta release!

http://www.jetbrains.com/resharper/whatsnew/?dotnetblog

As usual, if you’re having any problems with the beta you can easily submit a bug report to JetBrains.

Visual Studio Extensions I like

There’s a ton of phenomenal extentions available for Visual Studio 2010 these days and you can almost drown in the variety of them that’s available.

But, there’s a few that’s a top “must have” for me right now.

Here’s a list of the ones that i use on a day to day basis:

I’m also playing with a few beta releases at the moment:

I’ll be writing some blogs in the upcoming weeks about my experiences with Armadillo – so stay tuned! Btw, Armadillo is a Bug Prevention extention from TypeMock, and it’s as i noted, currently in beta and free to try out



Working with LINQ? then why the hell aren’t you using LINQPad?

In all honesty, LINQ is a brilliant addition to the .Net framework – and it’s a breeze to work with…well..sometimes.

it’s those times you think “Man, it would be really nice if we had a great tool to help me out here”…

LINQPad - the LINQ tool for the SMART developerEnter Stage Left – LINQPad – i cannot praise this application enough and i’m sure many of my friends are tired of hearing me throw a “you should see what i did in LINQPad today” over a beer (ok, i’m admittedly a geek…).

You may also think that you only use LINQ a little bit…well that’s because you’re not using LINQPad folks!

The author of LINQPad is Joe Albahari, C# MVP Extraordinaire!