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



String.Interpolation – C# 6

One of the new, and probably very unused capabilities of C# 6, is String Interpolation. Ok, that’s not really a new concept. We’ve seen it with String.Format() and the ideologically wrong String.Concat() methods.

Hell, we’ve probably all (at some point in our lives) done [string + ” ” + string] and made it work. Of course, not going into why that’s completely wrong, lets assume we’ve been using the String.Format() method most..

 internal static string ReturnValue(TestObject x, TestObject y)
    var orgExpression = String.Format("{0} in the year {1}", x.Name, y.Year);
    return orgExpression;

Of course, a very simplistic design – but it shows the string interpolation (e.g. loosely translated [the method of which one point of data is created out of multiple points of data]).

With C# 6 we’re seeing something a bit niftier (and dare say I…neater?)

 internal static string NewMethod(TestObject x, TestObject y)
     var newExpression = $"{x.Name} in the year {y.Year}";
     return newExpression;

The biggest hassle with String.Format(); well aside from the fact that it’s somewhat error prone if you started to get a bit complex; you see, the order of the parameters are extremely important. Getting too smart here could get you into some serious trouble.

Plus, the new way of doing this is a lot more readable (read: maintainable)..

As in the “old” days with String.Format() we can still use format expressions.

internal static string NewMethod2(TestObject x, TestObject y)
   var newExpression = $"{x.Name} in the year {y.Year:D4}";
   return newExpression;

We can even use conditional expressions if we need to.

internal static string NewMethod3(TestObject x, TestObject y)
   var newExpression = $"{x.Name} in the year {(y.Year < 1 ? "AD 0" : "AD 2015")}";
   return newExpression;

I for one am very happy with the development of C# these days.

Have fun, stay safe and keep coding.




IFA 2015 in Berlin – Santa needs TOIL

Yeah – Santa seriously needs some TOIL this X-Mas

Most know (by now you should anyways) that I’m a geek and all excited about new gadgets – CES and IFA are two of my most favourite shows. Gadgets everywhere.

This year’s IFA has just kicked off this week in Berlin and to say that there’s a few toys that’s caught my attention, is probably an understatement. Since they threw about 80 new devices out there, it’d be too much for me to cover (some also isn’t that important to me) – but the ones i’m the most excited about is here..

Moto 360 2nd Gen (link)

..yes..i know, it’s a ‘droid watch – but damn, it’s one fine looking specimen. I’m (secretly) a watch whore..s’cuse me..enthusiast, and the wearable market is flooding with smart watches (and no, i do not count the iWatch as being smart), but they tend to look like “packaging” rather than something you want to wear.

lenovo-launch-moto-360-bigok – some of the 2nd gen designs are a little bit “blingy” for my taste, but the matte black steel link is just awesome.

some key points on the 2nd gen:

  • There’s now a men’s and women’s collection (yes, ladies, you can play with the cool guys too)
  • There’s an inbuilt fitness tracker (can see some awesome applications coming for that, g’bye Fitbit)
  • Thinner bezel than 1st Gen 360

Oh, and lets not forget it looks a hell of a lot better than both Galaxy Wear and the Apple iWatch.

This one is on the top of my list of toys for the next year.

IdeaCentre Y700/900 (link)

With the Y700/900 Lenovo steps right into the high-end gaming market and mentioned during the reveal was tool-free install, from end-to-end, 32Gb ram and Dual-GPU, not to forget Skylake CPU.

lenovo-launch-ideacentre-y700-bigI actually didn’t think Lenovo would make this move to be honest – yes, we’ve heard them ask for “What do you want in a gaming rig?” on more than one occasion, but the gaming industry is a numbers game. Bang-for-buck is the mainstay for gamers these days. The true enthusiast will of course shell out their second kidney for the coolest tricked out rig on the market, but they’re not the mainstream users that most manufacturers target from the bat. No, that was what we saw with the entry level Y50/70 gaming laptops. They’re right in the sweet spot on price and capability.


Yes, they looked good and the addition of the 4K screen was something totally unexpected, but it was a numbers game predominantly – again, bang-for-buck.

For gaming i’m usually by far a desktop and console type of guy; have owned both dedicated gaming laptops before and the experience (especially with the Dell XPS 1710) left me with a bad, bad, bad taste in my mouth. The Alienware later owned took the edge of the bitter experience – but, that was also some seriously expensive kit. Would take something seriously impressive to make me fork that kind of dough out for a gaming laptop again.

Lenovo doesn’t sit still of course – the Y700/900 shows that and I for one can’t wait to see what the guts will look like when more is revealed.

That leads me to the next toy..

IdeaPad Y700 (link)

As just implied, the gaming laptops are mostly a gimmick for me – ok, owning one of the Y-series laptops would be awesome but not for the mobility aspects of it. They come with some serious guts that I can appreciate and I don’t currently have a desktop.

It’s coming in 4 flavours (awesome, awesome’er, awesome’er’er and awesome’est):lenovo-laptop-ideapad-y700-touch-back-1

  • 14″ entry level, yet still with AMD R9 discrete graphics
  • 15.6″ with Intel RealSense
  • 15.6″ with Touch screen, and
  • 17″ (which is rumoured to come with the Skylake chip – unconfirmed at this stage)

Lastly, one device that I think is epic.

Yoga Tab 3 Pro 10 (link)

I owned (guess you can say “we” own it now) a Yoga Tab 10 HD (the little cousin to this one), which is a 10″ Android tablet. Still, I’m not a fan of Android, but this little device is here to stay. It’s probably one of the devices that gets the most usage around the house and that’s because of the awesome battery life this tablet has – 18hrs.

So, the YT3P10 is the same as the Yoga Tab 2 Pro and maintains the nice build quality – and of course it has a projector in-built. Yeah, the Yoga Tab 2 Pro also had a projector in-built, but rumour has it that this one is even better (projects a 70″ display onto any wall).

Here’s the total list of devices that got revealed..

Lenovo IFA 2015 Products Showcase (external)

Technical debt – when the bank really can’t help you out

Not long ago I had a brief 2hr session with a client who were looking at implementing a collaboration platform (read: SharePoint) to support their massively growing business. The discussion as usual went around platform/product capabilities and as usual the topic slowly venture into requirements and different scenarios that the client wanted the system comply.

Due to the growth of the business, all internal systems had soon been left behind and simply couldn’t cope with the expansions – this is often the case for companies that doesn’t factor IT into their business model. Luckily for the client, most of the OOTB capabilities of the product supported directly what they needed, but a few didn’t. These were for the client seemingly extremely important and a custom solution would most likely be needed.

If you’ve ever spent any time in a meeting with a sales representative, you’ll know that the general consensus is to sell – yeah, go figure. But as a consultant there’s always areas that you really need to be careful of entering into – and this is where you need to have an open and honest discussion about the impact a system can have to a business.

Picking a solution (No, you are not given a choice)

Naturally most companies employ consultants because they know that it’s not their core business. So looking at the reasons to adopting a system (any system), from the business perspective, there’s:

  1. The need to increase productivity, or
    • The need to decrease deficiencies in current system
    • The need to cut cost of productivity
  2. The need to introduce controlled/improved processes
  3. The need to expand, or match a shifting market, or finally
  4. The need improve on system quality

It’s a very broad non-specific and/or descriptive list but covers the various models used by management consultants (including PI-MDD, which from a consulting perspective is my personal favourite – that quite often goes against the grain, especially since I’m predominantly a SharePoint consultant). I’m not going to into the how and why of modelling these things, because I don’t have any formal “Consulting” education (can you even get that?) – but i digress – the needs and context needs to be detailed, which is where many smaller corporations don’t see any value – “We know our business and don’t want to pay YOU to tell us about it” – so they find a budget, which rarely actually has any foundation in either context or need, but a “This is our budget, get it done” perspective. The next step is then to either find a solution provider or a product.

The model here is pretty cost higher than budget.

Double-click, Next, Next, Next, Finish

Once a solution provider has presented a “choice” which matches the “budget”, the time comes to integrate the solution. A short stint from an onsite specialist and you’re up and running. Some time allocated to “Power training” and the business now has a Best In Breed solution. Exit stage left.

At this stage there’s already conflicting ties between the Need and Context. Initially there’s a drop in productivity because most users are having to learn on the job, perhaps mistakes even occur? orders are lost, tasks are left incomplete – and this is were human ingenuity kicks in and the proactive folks simply circumvent the system till such a time as the system can be “fixed”.

What occurs in this instance is a dramatic drop in ROI – the system is not doing what it’s meant to do and staff are either slipping back and using what they previously used or are making up new processes in order to meet their KPIs or deadlines. After all, business must go on and the outcome is “the system doesn’t work”.

Utopia doesn’t exist

Most platforms seems to have a lifecycle that spans over 5 to 7 years before being replaced/upgrade.image

In the period between introduction and end of life – the utopian fantasy with software is that there’s no cost involved with it. Once it’s bought and installed, everything takes care of itself.

Ok, realistically most have an idea that software does need to grow, so storage, backups and servers are all part of the “natural” life of having a software platform.

The decisions to adapt a platform is far more intricate than that. oh, vendors will sell “support and maintenance agreements” to you at a % price. For that you’ll upgrades/updates, patches and an offshored support email that you can use to contact them if you do need some assistance.

But mostly the vendor relies on partners and/or solution providers to take care of that for them.

It’s here that technical debt comes into play and it’s where vendors or solution providers doesn’t want to go. Yes, I’ve just sold you on the idea that you should by my services or product, at a concise price, why can’t I declare all the costs to you right now?

There’s a natural increase in cost associate with a software platform – it comes in the form of both financial and resource efforts and it could increase the investment figures by up to 20% per annum, of the initial purchase cost, very easily.

Technical debt can be calculated – but it’s very complex so I tend to use an analogy to explain that adopting a platform is much like having kids – there’s an initial phase of excitement, followed by a sense of dread because the project is taking a long time and concluded with the reality that it’s a never ending cost that didn’t just stop when the kids left home.

When decisions matter

It’s always hard to sell a software platform/solution based on a high upfront cost, hence why most don’t do it, whilst there’s a seemingly ignorant belief in the fact that off the shelf packaged software doesn’t carry the debt as well.

Most have heard that a bespoke solution is too risky – hiring some developers to slap a system together and then call it a solution is risky, especially when approached like that.

Can you quantify the exact cost for any system? for most, no – there simply isn’t that much tangible proof to state what that figure is. Like with anything else, there’s a risk involved with the business having to change too frequent, which leads to either an out dated solution or a high cost in retrofitting it to meet the new needs.

Yes of course there’s a banging good approach that’ll be offered when this happens – lets go agile!!! For seemingly unknown reason, companies has now decided that agile is risk free. But it still doesn’t eliminate the technical debt that’s accruing – of course not, since the changes to the system is going to cost money and effort.

In conclusion

The only decision that really matter is an informed decision. Go into the adoption process with both eyes open and on the prize. Be aware of all facets of solution adoption and be realistic. The fact is, if your budget cannot sustain the system it needs in order for the business to prosper, then your business model is wrong.

LIDNUG & Scott Guthrie – 15th Q&A on the 9th of January



LIDNUG presents Scott Guthrie’s 15th Open Q&A and the first event of 2013.


Scott has been coming back to LIDNUGs members each quarter for the past couple of years and it’s been one of the best sessions to get answers directly from The Gu himself.


In this session Scott answers questions on technical solutions, advices on implementations and draws comparisons between methodologies – all in the span of 90 minutes where his sole focus is to answer whatever question that comes in from the attendees.


My name is Scott Guthrie, and I am a Corporate Vice President in the Microsoft Server and Tools Business. I run a development team that works on the following products/technologies:scott-guthrie

  • Windows Azure
  • Entity Framework
  • WCF
  • WF
  • IIS
  • Service Bus
  • Cache
  • BizTalk
  • Visual Studio Tools for Web
  • Web Services and Workflow

Register and attend this event for a chance to win 1 of 2 Telerik Ultimate .Net Collections.

Click here to register



Where can I contact the organizer with any questions?
Use the following link and send us a question

Is there sufficient parking available at the venue?
Yes, parking is available at this Virtual Online Event. Just make sure you park the car in your drive-way, have a cup of coffee and log in.

Who can I blame if I can’t access the session?
Just blame Brian (it’s easier that way) =>

Will attending this event help my career prospects?
Of course, you will be able to bring a treasure trove of knowledge with you to your next job interview.


LIDNUG and Wintellect Presents – .NET Performance Tuning with John Robbins

LIDNUG & Wintellect Presents – .NET Performance Tuning with John Robbins    John Robbins

One of our most highly anticipated events and presenters is coming up in just a few days (11th of October, 2012) – namely the return of John Robbins. Last time we caught up with John we had a full house, and with currently 700+ registered to attend it’s bound to be a blast.

.NET is an amazing environment. It runs on everything from a small phone in your hand, to the latest touch tablet, to your company’s server, to a cloud environment handling tens of thousands of transactions per second. But with that flexibility comes problems. When your applications performance slows down the issues go from “working OK” to “we are going to get fired any minute” literally overnight. You’ve got a performance problem with your .NET code so what the heck do you do?   In this session John Robbins will talk about the wonderful tools you have to find and fix those performance issues once and for all. There’s a lot of deep thinking over performance that most developers haven’t done because they don’t need to do it every day. Fortunately, John’s done that thinking for you so join him for this session and learn to tackle .NET performance problems. No matter if your performance problem is algorithmic or memory-based you’ll see how to deal with those issues once and for all.

Register to attend the webinar and you’ll be entered to win a Wintellect virtual training course (a $499 value). The winner will be announced during the webinar. You must be present to win.

The LIDNUG and Wintellect series of events are sponsored by Syncfusion.

For more details and to register, click here:

note: for those on the southern hemisphere please be aware that this event is held in the EDT timezone.

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 and 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:


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

Visual Studio 11 [Beta] – first impressions…

There’s been much hype…yes, much hype about the next install of Visual Studio. Every man and his dog has been complaining about the colours but from the development IDE that’s probably not the most important aspect. I’d would much rather see a 64-bit version available, but that’s another story altogether.

First off, install experience…

The download was 1.7Gb for the Ultimate edition and took me about 30-35mins on my home ADSL2+ (via Bigpond) so that alone was a huge improvement over last time we saw a release of Visual Studio. Back then, the download took me more than 24hrs (probably due to the lack of bandwidth MSFT had available).

The install was extremely easy – yes, this is a beta and things may change – however since I downloaded the Ultimate edition it should pretty much have everything enabled…

download .iso and right-click (Windows 8 Consumer Preview FINALLY has a native ISO mount capability) ->> mount.

Or you could alternatively use the ribbon above after you’ve clicked on the .iso file.

Then it’s just a matter of starting the installer..


It becomes pretty obvious that there’s a new design in town – gone is the sluggish and drab looking “Windows Classic” look that all previous installers have had. That the colours just so happens to be my favourite colours does help too 🙂 And it fits my desktop background and desktop theme perfectly too 🙂


One of the things that I like is attention to detail – the little “pellet animation” that I’ve personally come to associate with the Metro design (it’s obvious all over Windows Phone 7 and Windows 8) is a nice touch in the installer. That aside, the installation went smoothly and without a hitch (hang on, this is a beta release..why didn’t I have to try to install at least twice and add some obscure KB/Patch?? that’s not right!).

Just another quick detail – I love the finishing touch of the name that the final process has -> “ultimate_finalizer”…anyways, as can be seen below here, it was a success (if there was any doubt that is).

Once the choice of default development environment (choose C# Development Environment of course) the first thing that does indeed strike you is the UI. At first the difference was a bit distracting – probably because I wanted to soak in everything at once. I am a geek after all. But then familiarity settled in again. Much of what i’m used to seeing was there (for new features of VS11 I suggest you read through this MSDN article)

The look and feel is much less distracting than what it used to be. I’m not an UI expert but the look really does ring a bell with me very pleasantly. Content is master. A smooth grey theme is seen across the whole GUI, with very few distractions such as bright colours, taking focus away from what should be on every developers mind – productivity.

As you can see, the grey tones and the blue highlights are very soft. The contrast between sections, colours and context is really effective (again, does it follow a tried and tested/bested design paradigm? do I care? no). I spend a huge amount of time in front of a monitor each day, and I really hate having something stress my eyes and put a strain on my concentration.

Last night I spent a good 3 hours writing some code and getting used to Visual Studio 11. And even though this was in my preferred environment (eg. at home, comfortably in my own office) I didn’t come away with any kinks and I just about as productive as normal.

Enough of the colours (or lack thereof) though..

I noticed that there’s quite a few extensions shipped OOTB with this beta – they may not be shipped when it goes into production, but in all honesty I don’t see why the teams should bother removing any of them.

  • ASP.Net MVC 3 template packages
  • ASP.Net MVC 4 template packages
  • ASP.Net Web Pages 2 template packages
  • ASP.Net Web Pages template packages
  • ASP.Net WebForms template packages
  • Concurrency Visualizer
  • IntelliTrace
  • Nuget Packet Manager
  • PreEmptive Analytics Aggregator Visualizer
  • Visual Studio PerfWatson
  • VsGraphicsDebuggerPkg
  • Web Tooling Extensions

I’m particularly pleased to see Nuget Packet Manager be shipped OOTB.

Secondly – another aspect that I’ve never really understood not being included straight away – Team Foundation Server support is now also OOTB. Looks like it’ll be there from the get go as well. And it works just fine with TFS 2010.

Tried to connect to LIDNUG’s instance on and it worked a treat. One other thing, which I admittedly haven’t paid attention to in VS2010, was this little tid bit.

Yeps, in the lower right corner of the “Start Page” there’s an option set available. the one which surprised me was “Close page after project load” which is checked by default. No need to clutter your project screens with the start page. Excellent.

One of the applications that I’ve been using quite frequently of late is Visual Studio LightSwitch. Which also seems to be tagged into the Ultimate version of Visual Studio 11.

Now getting started in Visual Studio has frequently been a chore – especially the “New Project” dialogue, so I was keen to see how fast it loaded. And it was lightning fast to be honest. Half expected it to take yonks to load, but nopes, came up straight away.

Anyways, it’s time to crunch some code – will blog another one once I’ve played around with it some more. All in all, a definite improvement.



Next up, scalability from thousands to millions at LIDNUG

Just a quick heads up to all of you that the next event at LIDNUG is happening on the 31st of January (10AM PT).

This time around it’s presented by no other than Omar Al Zabir and he’s going to take us through how he sorted out scaling a web site from thousands of hits to millions of hits.

Learn how I have scaled an ASP.NET AJAX Web 2.0 startup and an high volume enterprise webapp to millions of users. You will learn some advance tips like optimizing cookies, fine tuning membership stored procedures, implementing CDN, distributing content for faster parallel load, tuning pipeline for maximum performance out of commodity hardware.

 About the Presenter:

Omar is the Chief Architect of Software-As-A-Service (SaaS) Platform in BT, living in London, UK. As the name suggests, I get to do the cool stuffs at BT.

He was born in Dhaka, Bangladesh. Did his B.Sc. in Computer Science. When he was 9, Omar won the Best Competitor Award in the first Nationwide Computer Programming Contest. Media made his life complicated for a year. Omar’s first startup, when he was 15, was quite successful, where he built 4 multimedia titles and sold in a CD. There was a fun app for pre-school kids to learn alphabets, rhymes, puzzles; one app for teenagers to learn Chemistry with animations, 3D illustrations and a sci-fi style user interface and one app for learning Astronomy with hundreds of videos and clips from Nasa, and one for Tourism in Bangladesh with interactive maps, nearly 400 popular attractions’ photo and description. Omar had built an HTML rendering engine that could render styled text, inline image and video, using Visual Basic 5. If you know VB 5, you would recognize that as a noble-prize candidate effort.

Omar has been awarded the Microsoft Most Valuable Professional award 6 times in a row.


Click here to register for this event