Open Live Writer

Monday, 21 December 2015

I’ve been a fan of using Microsoft’s Windows Live Writer to compose blog posts for quite a few years now, so when it stopped working earlier this year due to Google changing the authentication requirements for Blogger, I was a bit disappointed. The good news was that Microsoft contacted Google and (for once) they extended Live Writer a lifeline to allow it to continue to use the old API until alternate arrangements could be made.

All was good just over a week ago, when a) Microsoft released an open source version of Live Writer – named Open Live Writer, and b) Google finally did switch off the old authentication API. Unfortunately the first new release of Open Live Writer didn’t have a working implementation of Google’s new authentication API, so there was a few days of inconvenience whilst that was finished off. Version 0.5.1.2 came out last Friday and I’m pleased to find that it does work again with Blogger!

The source code is on Github at https://github.com/OpenLiveWriter/OpenLiveWriter, and there’s already an active community contributing bug reports and pull requests.

It’s great to see such a useful application given a new lease on life (or should that be ‘new lease on live’ Smile )

Windows 10 Mobile on Lumia 920

Wednesday, 9 December 2015

(I wrote this post on 10th December, but was waiting for Open Live Writer to support Blogger)

So this happened.. Last week I reset my phone so that Narelle could use it for a day (hers had broken the previous day). Once I replaced hers and got my handset back, I reset it again and started re-installing all my apps. Windows Phone may not be the most popular phones around, but one of the nice things about them is that they do automatic backups, and by default save all your contacts to the cloud, so there isn’t much you can accidentally lose.

So after reinstalling everything I thought “hmm.. Maybe I should try out the Windows 10 update”. I’d resisted this urge previously as I’d read lots of reports of how unstable it was, but now the new 950/950XL handsets are out which come with Windows 10, and there’s just been an additional update since then too. Worst case I can use the support tool to reset my phone back to Windows Phone 8.1 again.

Phone Update screen installing Windows Phone 10Phone Update screen, install 10.0.10586.29

The install took a little while (maybe an hour?).

I did notice the battery seemed to run down a bit on the first day – admittedly that day included the update which would have used a bit of juice.

Windows Phone 10, Battery Status showing 23% left

The trouble is it’s hard to know if that is just Windows 10, or my handset – I’ve seen it occasionally do similar things with 8.1.

Windows 10 Mobile looks quite nice. The upgrade kept my icons on the start screen, though the layout needed tweaking as the size of the icons seemed to have changed slightly.

Windows Phone 10 Start Screen

Some of the apps are updated (eg. News, Mail, Calendar). Actually I think I prefer the 8.1 News app, but the new one is ok. I have two mail accounts on my phone, and they ended up being combined. Not sure if there’s a way to un-combine them.

Some pluses – they finally have an Australian keyboard option (Aussie! Aussie! Aussie! Oi! Oi! Oi!). The browser is also the latest Edge version.

Some minuses – possibly due to my older handset – I find the response time for various things quite slow. Even just turning the phone on and unlocking has a noticeable delay. The opposite is true of scrolling. It seems a bit too sensitive, and I often end up scrolling way further than I intended.

I’m going to stick with it for a little while and see how I go. If the battery does prove to be a problem then reverting back to 8.1 might be the best option.

Getting CA2213 warnings after installing Visual Studio 2015 Update 1

Tuesday, 1 December 2015

I installed Update 1 for Visual Studio 2015 this morning and then upon reopening an existing solution I noticed some new warnings/errors listed in the Error List panel:

Visual Studio Error List window showing CA2213 warning

The problem was that warning didn’t appear before the update, and inspecting the code revealed that in fact that class did implement IDisposable and did dispose the field in question. What’s going on here – surely this isn’t a bug in Update 1?

That was my original thought, but then I remembered that this project references the Microsoft.CodeAnalysis.FxCopAnalyzers Code Analyzer NuGet package. I wonder if that package needs an update?

Let’s fire up the NuGet Package Manager and make use of the new ‘Updates’ tab to find out..

NuGet Package Manager, showing 4 packages with updates

Yes, there are! A quick check of the Select all packages checkbox and click on the Update button, and tada – no more warnings Smile

Batch converting .wav to .mp3

Friday, 27 November 2015

The band I play in (Sevenfold) uses Dropbox to share recordings and song words between band members. We ended up maxing out Dropbox’s free level, so I needed to consolidate some of the files. I found a bunch of .wav files that would save a bit of space if they were converted down to .mp3.

Step 1. Install ffmpeg

FFmpeg is a cross-platform tool for manipulating MPEG audio and video files. I’d previously installed it as part of supporting MP3 with Audacity by installing FFmpeg v2.2.2. If you don’t use Audacity then you could probably install the latest version instead.

Step 2. Use PowerShell

PowerShell is a nice choice to enumerate through the .wav files. It also lets me reset the file LastWriteTime (Modified) so the new files look similar to the old ones.


$files = Get-ChildItem *.wav
foreach ($f in $files) {     
& "C:\Program Files (x86)\FFmpeg for Audacity\ffmpeg.exe" -i $f.FullName -id3v2_version 3 -write_id3v1 1 C:\Users\David\Music\Sevenfold\$($f.BaseName).mp3 -y    
$destFile = Get-Item C:\Users\David\Music\Sevenfold\$($f.BaseName).mp3    
$destFile.LastWriteTimeUtc = $f.LastWriteTimeUtc }

Jon Hall has some good info about transferring the metadata as part of the conversion process (and making the metadata compatible with Windows file properties).

Connect(); // 2015 Summary

Thursday, 19 November 2015

Microsoft have just held their second Connect(); virtual event with quite a few product announcements. If you didn’t get up in the middle of the night to watch it live, you can see all the videos from the event on Channel 9. Here’s my personal highlights:

Visual Studio Code open sourced and extensible

VS Code has now reached ‘beta’, which includes support for extensions. VS Code is now being developed in a public repo on GitHub.

ASP.NET 5 RC1

The rewrite of ASP.NET build to run on .NET Core is getting closer to final release. Some nice new tooling additions (Bower support), and early support for “.NET Platform Standard” as a way of indicating binary compatibility between packages.

Entity Framework 7 RC1

The rewrite of Entity Framework that runs on .NET Core (as well as full .NET Framework etc). Consider using it only if you don’t need features that it doesn’t have (kind of obvious advice really!)

Glimpse v2 Beta1

The re-architected version of the ASP.NET diagnostics dashboard that (for the moment) runs only on ASP.NET 5. If you’re (like most people) still using earlier versions of ASP.NET then stick with Glimpse v1 for now.

Visual Studio Dev Essentials

A one-stop shop to get free access to training, tooling and access to services.

Visual Studio 2015 Update 1

Due out on November 30th (so no link yet)

Windows Server 2016

Pretty sure this wasn’t a Connect() announcement but is just as interesting. Windows Server 2016 Technical Preview 4 is now available, which includes support for Hyper-V Containers (a more isolated container technology than the lighter-weight Windows Server Containers that were introduced in preview 3).