Office Lens is amazing, if you’re not using it, you probably should

I have been using Office Lens for a while now. Every time I have a use for it I am blown away at how good it is. This tool works well in real life and not just the demo scenarios shown on product pages.

Office Lens trims, enhances and makes pictures of whiteboards and docs readable, and saves them to OneNote. You can use Office Lens to convert images to PDF, Word and PowerPoint files too.   Office Lens is like having a scanner in your pocket. Like magic, it will digitalize notes on whiteboards or blackboards. Always find important documents or business cards. Sketch your ideas and snap a picture for later. Don’t lose receipts or stray sticky notes again!  You can convert your pictures to PDF files with selectable text, in addition to Word and PowerPoint files, and save them to OneDrive.

I was at a training day on the weekend. Here is the shot I got with the Lumia 930:

Office Lens_20150509_151432

Here is the slide captured by Office Lens:

Office Lens_20150509_151432_processed

Here is one of my boys’ drawings never to be lost:

Office Lens_20150314_124344

Office Lens_20150314_124344_processed

You can include up to 10 photo’s within the one document. I use it for receipts, business cards, kids drawings, white board sketches and notes, handouts from school. It is then uploaded to OneNote (now completely free), which is what I use for all and any note taking. As a hoarder by nature, having a digitalization path so quickly to get rid of the clutter is fantastic.

Get it from the Windows Phone Store for Windows Phone, iTunes for iOS or sign up for the Preview for Android.

Windows Phone 8.1 Device Migration (Backup & Restore)

Wow. I am very impressed with the work Microsoft has done in this regard. If my phone goes through the wash, or in my case, through the air propelled by an excited child, all I lose is the phone, i.e. a few hundred bucks. All I need to do is get a new phone, plug in my credentials (a few times for some apps) and everything is back as it was. And I mean everything:

  • Current installed apps all automatically installed
  • Start screen fully restored
  • Settings galore, even custom ringtones that I’m not even using but had added at some time are available
  • Bluetooth pairings, WiFi networks
  • Text messages
  • Connected accounts, i.e. Facebook, LinkedIn, Twitter
  • Built-in Podcast subscriptions and which episodes were marked played
  • NextGen reader settings and feed data was all correct

Did I say everything? There were 2 things I noticed missing:

  • Nokia Mix Radio mixes. This isn’t strictly WP fault, but since it is first party I expect better.
  • Cortana Reminders. It is in Beta so I can excuse it for now. But I hope this is resolved and syncs with desktop in Windows 10 Cortana.

One weird bit of behavior I had was the Phone Name. It was coming up on as below:


What’s that? That’s my new Nokia Lumia 930 named Nokia Lumia 820. As was my previous now broken Lumia 820. To correct this name took a little searching. Plug your phone into a PC and rename it in file explorer like you would a USB Key.

This is the same sync behavior we see in Windows 8.1 between PCs. It will be interesting to see how this integrates with Windows 10 to make it all feel like multiple portals into my one cloud account. Make sure that you have backup enabled, otherwise you’ll have to do it all manually when changing phones.

Active Noise Cancelling Headphone–Sound off

Recently I was fortunate enough to receive, courtesy of DVLUP,  a pair of Nokia BH-940 Purity Pro Wireless Stereo Headset By Monster active noise cancelling headphones. Phew, that is Microsoft inspired naming. The thing is, I was blessed to receive a pair of Bose Quite Comfort 15 Limited Edition active noise cancelling headphones in a draw at a conference a couple of years ago. So I have hundreds of dollars worth of headphones I haven’t paid for. If you know me you’ll know I’m quite a scrooge and splurging on headphones this expensive I would never have done for myself. However, when the Bose failed I was very tempted to replace them. Fortunately their warranty and service was outstanding and in about 4 weeks, they had shipped me a new pair, albeit, not the limited edition. Paying for headphones like this when you use them all day everyday is worth it.

Nokia BH-940 Purity Pro Wireless Stereo Headset By MonsterSo now I have these two great headphones and I am seeing which I like best. I have always wanted to the Bose to be wireless. I catch the train, which tests the noise cancelling, but the cable management is tiresome. The Purity Pro is Bluetooth with NFC pairing. Sweet. The Purity Pro also has a microphone for calls, rechargeable battery for active noise cancelling, controls for music, calls and volume and amazingly pairs to two Bluetooth devices. For me, my phone and laptop on the train. Awesome. I love all those things about these headphones and it has been a massive step up from the Bose. When I open them up they turn on, and when I close them they turn off. It talks to me to tell me they are connected. If leave them open and not on my head, they turn off noise cancelling to save power. If the battery does run flat I can plug them in and still use them without noise cancelling. There has been times with the Bose that I have taken them off and forgot to turn them off. Do this overnight and bets are you have a flat battery and they are completely useless until you find a new battery.

Bose QuietComfort 15 Acoustic Noise Cancelling HeadphonesIt would seem for all of the above that the Purity Pro is much better than the Bose. However, the Quite Comfort, are worlds apart more comfortable. I can wear them all day, truly without knowing it. The cups fit fully over my ears and do not touch them. They create a good seal which makes the active noise cancelling very good. Much better than the Purity Pro. Although the Purity Pro is also over-ear, maybe I have big ears, because they are pushed by the edges and inner of the cups. My ears get a bit sore after a few hours. It would probably be fine if I didn’t know it could be way better. They come with iPhone compatible hands free microphone and controls on the wire. I’m one of the few with a Windows Phone though, so it didn’t work. I even got an inline convertor plug that didn’t work either. If the Bose had even just wireless, without all the controls like the Purity Pro, I think that would be enough to not give the Purity Pro a look in. At the Bose store they said most their customers use them for plane travel so wires are fine. Whether that is true or not, I don’t know, but I still don’t like wires.

Either way both these headphones are awesome and I would, and do, recommend both to anybody. Just pick which set of features is more important to you.

Adding Microsoft PubCenter Ads with AdDuplex fall-back on Windows Phone 8

DVLUP has a challenge Shamelessly promote your apps with AdDuplex. AdDuplex doesn’t earn you any income so why would you want to give ads to your users without any benefit to yourself? AdDuplex answers this succinctly “According to reports the average fill rate in mobile ad networks could be as low as 10%. AdDuplex helps you utilize 100% of your ad space, so even when you are not making money from the other ad network you get free promotion for your app.”

It is encouraged to use an ad network with fallback to AdDuplex and It only takes 5 minutes to add to your app.

  1. Add references to Microsoft Advertising and AdDuplex
    a. Install Microsoft Advertising SDK, if not already, and add reference
    Reference to Microsoft Advertising SDK
    b. Install AdDuplex via NuGet Package. Enter into the Package Manager Console:
    Install-Package AdDuplexWP8
  2. Add references to the namespace in your Xaml page you want to display the ads

  3. Add controls so that the AdDuplex banner is under the Microsoft Advertising banner.  
    <adduplex:AdControl x:Name="adDuplexAd" AppId="12345" VerticalAlignment="Bottom" />
    <ad:AdControl Name="photoFoodDiaryAdControlRecordPage" Width="480" Height="80" VerticalAlignment="Bottom"
            IsAutoRefreshEnabled="True" IsAutoCollapseEnabled="True" 
            ApplicationId="test_client" AdUnitId="Image480_80" />

    AdDuplex requires that the complete banner is not hidden. With this setup, if the Microsoft Advertising banner fails to get an ad the IsAutoCollapseEnable will set Visibility Collapsed showing the AdDuplex banner.

  4. Generate Ad ids

    a. In WP Dev Center publish or update. Add in-app advertising and Generate ad unit ID. 
    Add in-app advertising

    b. Sign up to Ad Duplex if you haven’t and add a new App.

    AdDuplex New app

  5. Add the required capabilities to your WMAppManifest.xml

  6. Since the ad network doesn’t always return an ad, to test your ads check for any errors occuring, and set the ApplicationId and AdUnitId to the test values from here. Simple add a break point in the method and inspect e.Error.Message if the break point is hit.

    private void AdControlRecordPage_ErrorOccurred(object sender, Microsoft.Advertising.AdErrorEventArgs e)


Now you should see the Microsoft test ad. Remember to switch you ApplicationId and AdUnitId back to what you got from the Dev Center and you are done.

Microsoft Test Ad

Technorati Tags:

Adding Localization to a Windows Phone app

If you have any Windows Phone 7 apps from the original templates, unlike the Windows Phone 8 app templates they did not come with localization setup already. So lazy me just wrote the strings inline. Fortunately adding localization after updating to Windows Phone 8 is easy.

  1. Add a Resources folder
  2. Add new Resources resx to the folder named AppResources.resx
  3. Ensure Custom Tool is set to PublicResXFileCodeGenerator
    AppResources.resx Properties
  4. Add a new class named LocalizedStrings to the root of your project
    using YourAppNamespace.Resources;
    namespace YourAppNamespace
        /// <summary>
        /// Provides access to string resources.
        /// </summary>
        public class LocalizedStrings
            private static AppResources _localizedResources = new AppResources();
            public AppResources LocalizedResources { get { return _localizedResources; } }
  5. Add an Application.Resource of your LocalizedStrings class to your App.xaml

            <local:LocalizedStrings xmlns:local="clr-namespace:YourAppNamespace" x:Key="LocalizedStrings"/>
  6. Add strings in AppResources.resx

    AppResources.resx Content

  7. Use localized strings anywhere in your Xaml

    CompanyName="{Binding Path=LocalizedResources.CompanyName, Source={StaticResource LocalizedStrings}}"
  8. To Add other languages and for more details follow How to build a localized app for Windows Phone

Windows Phone Apps Download Count Challenge

As I mentioned previously, Dave Glover had another competition running for the most download app, with 30 Nokia Lumia 800’s to give away. I submitted Memory Classic which had at the time, 2,023 downloads, and is currently at 2,500.

Memory Classic

The classic game of Memory Match with a standard set of playing cards. This game comes complete with 3 difficulty levels with up to 21 pairs to match. Game high scores and statistics are recorded to ensure you always have a goal to beat.

Easy 4 5
Normal 5 6
Hard 6 7

Memory Classic - Easy Memory Classic - Start Screen Memory Classic - High Scores

This time I was successful and Dave sent me a beautiful, Nokia Lumia 800. Thanks Dave!

Nokia Lumia 800

Technorati Tags: ,

Publish Apps and Get a Nokia Lumia

I had been wanting to create Windows Phone apps for about 6 months now but had been continuing to put it off. When Dave Glover announced the challenge, it was the kick I needed. Publish 3 or 4 apps and receive a Nokia Lumia 710 or 800. Working almost every night, from early January, this is what I achieved:

Memory Speed

This is NOT a standard game of Memory. Once a pair is matched, it will flip back over if you do not find all the others quick enough. This game comes complete with 3 difficulty levels with up to 21 pairs to match. You must match all pairs within the Matched Pair Timeout. If a matched pair flips back over you can simply match it again, and it will be another matched pair timeout interval for that pair. If you are not quick enough, you’ll end up spending all your time rematching pairs you have already found. Game high scores and statistics are recorded to ensure you always have a goal to beat.

1 of 5 2 of 5 3 of 5

Maths Defender

There are incoming bombs falling towards the city. The only way to stop them destroying the buildings is to denote them with the code. The code is the answer to a maths equation. This game comes complete with individual operator (+, -, x, ÷) or all options, adjustable number range from 0 to 100 and 3 speed settings to challenge everyone

1 of 6 2 of 6 5 of 6

Count With Me

Keep the little ones entertained while they learn to count. Tap each object to highlight the numbers as you count. Select the right number and they objects will fly off as the count goes up. It features many different objects from robots to trees to cars and bright varying backgrounds.

1 of 6 2 of 6 6 of 6

Color Bubble

Help the kids learn their colors by popping bubbles. The player is given a colored instruction of which color bubble to pop. The bubbles then bounce around while they try and pop only the specified color. If they hit the wrong color it just bounces the bubble around more.

1 of 5 2 of 5  3 of 5

I wanted applications that would engage the brain in some way. I’ve never been interested in writing games and never done it before, but taking the approach for educational games that will be also entertaining for my three boys (3, 2 and 1/2) became very fun. I would draw the concept on the white board and then my eldest boy would watch as the development progressed and the game came to life. And he really enjoyed them.

Having developed back in 2004 for the Pocket PC I wanted to see how far the development tools had come. I thought they were really good back then and what I have found is that the experience is even more seamless. Considering I have now published 4 apps on the store without ever running them on a physical device should give a good testament to the development environment. Not to mention 4 games in a few hours a night over 2 months, never having done games development before. A far cry from my first horrible experience in 2008 in the Android Development environment. However, I assume it has progressed and would now love to port these apps over to it now.

Unfortunately, my last app was published on the 04/03/2012, two thirds through the competition and by half way through the limit of 50 entries had already been received. So I missed out on a phone. A big thank you to Dave Glover for organizing the challenge and really engaging the Australia development community. So much so that he currently has another competition running for the most download app. Unfortunately, I’m fresh out of ideas, especially ones that would appeal to the masses of Windows Phone users. Although, I still do need a Windows Phone to be able to have my boys play them whenever we are out, and they need to be distracted.