Its Surface shipping day!

The big day has come. The Microsoft surface is now available but will the preorders arrive today as promised. Who knows. MicrosoftStore on twitter are confident that all will be well, but with so many people not having received shipping details and orders still showing as processing it really will be pot luck. Perhaps we are hard done to here in the UK - we don't even have a Microsoft store. If only Microsoft used a decent online store and was honest with information about orders!!

Microsoft Windows RT Surface delayed shipping?

In the wee hours of this morning I learnt that many shipments of the Microsoft RT Surface have been delayed – now it seems that the bulk of devices will not turn up until around the 2nd of November.

And it doesn’t seem like this has been limited to a specific geography – with people from America and Canada reporting the same notifications. Oddly, it seems to bring it all in line with the Australia shipping details.

Even more oddly, the Microsoft Store (awful design by the way) still indicates that shipping is 1 to 2 weeks – one week puts it on the 26th (launch day), and two puts it on the 2nd November. I wander which is right.

UPDATE: A further update from Microsoft Store indicates that the November 2nd updated date was sent out in error. Its not clear if this is just in error to UK purchases, or if it was the same mistake across the board ...

Getting Windows Mobile 7 Development going on Windows 8

After switching to Windows 8, I have had the fun of reinstalling all my apps. The first annoyance was discovering that the 7.1 (and 7.1.1) versions of the Windows Phone SDK does not work with Visual Studio 2012 (damn), so back to install VS 2008 aswell.

But I then hit another problem – the SDK kept failing to install. A google around lead me to this post. Downloading the app, leads you to another 30 odd Mb of downloads. Fun.

However, installing this update and then running a repair on the Windows Phone SDK 7.1 did eventually get it to install.

Then you need to install the 7.1.1 update, and you should be away.

Don’t forget to ensure you apply the VS 2008 SP 1…

N.B: If, like me, you need to do all this on more than one PC, you might find the download in the middle annoying. Once you have downloaded it, you can grab the files from (on Windows 8 anyway, adapt for your platform): c:\Users\<username>\AppData\Local\Microsoft\GFWLive\Downloads.

Using the Raspberry Pi as a log forwarder

Following on from my previous post on the Pi, I thought I’d quickly document the process to use it as a log forwarder (well, a syslog forwarder).

The Rasbian distribution already comes with rsyslogd installed, so we only need to make a few tweaks to the /etc/rsyslog.conf file.

First was to uncomment the lines at the start of the file to enable remote reception of events:

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

Then to add some additional global configuration to enable the caching (in memory, and only resorting to disk when absolutely necessary) of messages:

$ActionQueueType LinkedList   # use asynchronous processing
$ActionQueueFileName srvrfwd  # set file name, also enables disk mode
$ActionResumeRetryCount -1    # infinite retries on insert failure
$ActionQueueSaveOnShutdown on # save in-memory data if rsyslog shuts down

Then to add a rule to forward the entries I’m interested in (IP’s are not real):

if $fromhost-ip == '' then @
& ~
#End forwarding

And that's it. One syslog forwarder. Next I’ll probably post about the app I’ve written to receive, index and allow easy access to the syslog data Smile

The whole reason I did this was to capture data from my router, and move it to a database on my desktop – when it’s on. I don’t want to leave my desktop on all the time, as that’s a massive waste of electricity, and the Pi solves it with a neat and tidy, low power solution.

We have Pi!

My Raspberry Pi turned up today!


First task for this little thing is to work as a buffering syslog server (using rsyslogd if you are interested).

Azure-Billed for Virtual Machine VHD Storage in same domain?

I’ve raised this issue with Microsoft Support, but feel that I need to document it just in case other people are seeing the same thing (and don’t realise that they don't have to pay!).

For the past few months I’ve been experimenting with the Azure Virtual Machine trial – and dutifully setup Locally Redundant (non-geographically dispersed storage) for the VHD’s – and created the Virtual Machines in the same region (North Europe). And all was well.

Until last week.

Since then I have been billed for the bandwidth between the VM and the VHD storage – something which, as they are in the same region, that should not be occurring.

I’m still waiting on Azure Support to resolve the problem (and refund the charges that I’m still accruing – because they tell me they can’t suspend them – sounds fishy to me), but the most amusing / annoying thing was that the support agent concerned couldn't identify that they were both in the same region. Funny, when I login to the portal it seems easy enough.


Google Nexus 7 - User Agent

I spent ages trying to find the user agent string for a Google Nexus 7 yesterday – unsuccessfully.

So I borrowed one and captured it.

Just in case anyone needs it, the Jelly Bean update user agent string for a Nexus 7 is:

Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19

Azure Websites, with MySQL - Free?

One of the first things that caught my eye when the Websites feature of Microsoft Azure was announced was “oh, you can use that for a small personal website, or two”. And so you can – after all, it supports PHP and MySQL.

Couple of minor issues though – the first being, management of the MySQL database is a bit of a pain, as there is no management tooling. However, that said, you can use the excellent MySQL Workbench from MySQL themselves – if it will stop crashing all the time.

Once you get past that bit, and actually throw something up there, you find more niggles.

After a bit of digging, you will hit some limitations of the “free” MySQL offering:

  • Up to 20MB Database
  • Maximum of 4 connections
  • Single database

Anything above these limits you have to pay – although the Microsoft Azure Websites portal pages really do not make this clear. Details are here if you are interested.

The size and database limits I can understand. The connection count is pitifully low, and for most projects makes it impossible to actually leverage anything on this.

I think what bugs me the most is that Microsoft have elected to use a third party for this feature, but don’t detail anything (apart from a small “you accept ClearDB’s terms” note on the create page and anything up from the freebie package isn’t handled “within” the Azure portal.

Maybe things will improve before it leaves preview … maybe not. I’ll stick to a more traditional MySQL install for now I think.

When is a cloud not a cloud?

There are so many different vendors out there now pushing cloud platforms, but what exactly are they offering? And when is a cloud, not a cloud?

Most of them are, in fact, nothing more than slightly enhanced virtual servers, offering no more reliability that if you had such a package (or, in some cases, less as they overload the hosts).

What should a cloud platform offer?

Increased reliability, for one – it should really be a VPS with added mobility so that should a host fail, it migrates and comes back online (seamlessly, with no administrative intervention) with only a minor blip.

Rapid scaling – if you need to increase memory, or disk space this should all be possible with minimal hassle, no server moves and again, with nothing more than a slight hiccup.

Good management – rather critical for any work loads in the cloud. At a minimum you need to know the CPU / Memory demand, network traffic etc. The provider should, in all cases, strictly monitor the overhead on the hosts, and migrate VM’s off (transparently!) to other nodes when things get tight – every platform supports this from Xen, to Hyper-V to VMWare, so they have no excuse.

Why is it then that so many companies are offering their VPS packages as “cloud” packages? They really are just latching onto the buzz words and hoping people don’t notice. It’s about time that companies stopped trying to offer sub-standard offerings, and actually invested in providing a robust platform.

Lets take a look at one platform that I am actually using myself – UK2.

I have a number of instances on this “cloud” VPS platform. But I have to say, it’s far from cloudy.

The machines run pretty much like you would expect from any “normal” VPS platform – and when issues occur with the hosts, they are hard shutdown and migrated with little warning from their support staff, and they regularly get issues where the hosts max out on memory consumption causing there to be a risk your VPS will suddenly disappear. (And when it happens, you have to bug support relentlessly to get it moved to another host – nothing happens automatically).

That, and their control panel seriously sucks. MASSIVELY sucks. Most of it doesn’t even work reliably, with their console taking a nap almost all the time. Perfect for when things are not going your way. The only reliable way I have found to use their control panel is using Chrome, with both 32-bit and 64-bit JVM installs. And even then its a bit touch and go.

So is this a cloud platform? In my opinion, no.

Come on Microsoft, get synchronised Virtual Roles sorted so I can move over …