Showing posts with label notebarn. Show all posts
Showing posts with label notebarn. Show all posts

Saturday, April 25, 2009

Notebarn Update

Notebarn, my Windows Mobile / Exchange sync notes app, definitely looks like an archaeological relic these days. Dating from early ‘07, before the iPhone era, and being a simple text utility, it is almost comic how it doesn’t resemble modern mobile apps.

That said, I still use it, and it turns out a lot of other people have been using it too. So when a user helped me reproduce a tricky timing bug that could cause data loss under certain circumstances on app initialization, I hopped back into the old (and quite small) codebase to fix it.

There is a little more info on the notebarn project page. Or if you just want to install the app you can install it over-the-air from here. If you already have the app it will automatically install in-place over your existing version. And since the “notes” are actually stored in an Outlook/Exchange Task, the install won’t affect existing data.

A word about backups: notebarn doesn’t have its own data backup mechanism. There are two main approaches to backing up and recovering data if you should lose it for any reason (e.g. problem with notebarn, problem with ActiveSync, accidentally deleting a note you needed, etc.)

One is to lean on whatever backup solution protects all of your Outlook/Exchange data, since notebarn data is really Outlook data. If you can go back to a backup snapshot of this data, even temporarily, you can simply grab the notes data from there. If that’s not practical, you can either manually or via a script back up the “My Notes” item from Outlook tasks, into another place in Outlook, the filesystem, etc.

Thursday, July 26, 2007

Microsoft to Turn Your Windows Mobile 6 Phone into a Sideshow Device

Gadgets on the desktop are a little gimmicky ... But gadgets on ... gadgets are a lot cooler.

I love Windows Sideshow, the technology that gives lets you browse and control your media right on your remote or digital picture frame, or read your email on a watch or a digital fridge magnet -- even (especially!) when the "media" or "mail" apps are really running on your PC and your PC is powered down!

But I don't run Vista on my laptop (a post for another time). And anyway, I don't have any Sideshow compatible devices.

I find myself simulating Sideshow though, with my Windows smartphone: typically email pops up on the phone (via DirectPush) before it gets to my desktop. So I monitor my email on my phone, even when I'm at my desk. It's great to have that extra screen on the phone, so I don't need to bring up Outlook when I'm coding. Same thing with calendar items, contacts, and my notebarn list o' lists. The phone is always more "up-to-date" than desktop Outlook.

Admittedly, though, this isn't the full Sideshow experience.

So I was psyched to come across this thread where Microsoft contributor Dan Polivy writes

"Windows SideShow support is not built in to Windows Mobile 6, but we will be
releasing an application which will enable your WM6 device to work as a
Windows SideShow-enabled device. It's a software-only addition, assuming
your device already has a Bluetooth radio in it. Stay tuned for more
information; our current release target is the 3Q of this year."

This move is a brilliant way to tap into a ready-made pool of millions of powerful devices and enthusiastic users.

Sideshow is only supported on Vista, not XP ... but if I can get Vista in VMWare to see my Bluetooth radio, I might be cooking with gas...

Friday, June 08, 2007

Notebarn: Launching URLs and International Phone Numbers (Includes Crash Couse in Numeric Regular Expressions)

A lot of visitors to this blog and the Notebarn project page (where you can download the app) are from outside North America, and all of those folks got a raw deal from my last update.

I added the ability to dial numbers from a note, but the phone number recognition was based on a hard-coded pattern that looks like a North American phone number (basically, 10 digits with some optional delimiters).

So I've got an update that moves the phone number recognition out to a configuration file, where you can put in a localized phone number pattern.

I also found it really frustrating to put a URL in a note and then have to key it in later to browse. So this update recognizes URLs in notes and lets you launch them just like dialing a phone number from a note.

URLs / web browsing works straight out of the box. For localized phone numbers there's, um, a small catch.

The Catch

I did not set up a list of international phone number patterns. So, in this release, if you're outside North America, you'll need to add your own phone number pattern to the config file. Here's how it works:

  1. Install the new Notebarn with the latest OTA installer. The install will place a config file called notebarn.config.txt in the Program Files/Notebarn directory on your device, right alongside the executable.
  2. If you have a regular text editor on your device you can edit the file in place and skip to step 3. Otherwise, use ActiveSync to grab the file, pull it over to your PC, and edit it there (with an editor like Notepad). When you're done you can push it back to the device with the changes.
  3. In the config file you will see two lines like this:

    #Add a RegEx for your localized phone number format here:

    PHONE=\d{3}\D{0,2}\d{3}\D?\d{4}\D

The beast on the right is called a regular expression, and your .net-enabled Smartphone has a great engine for processing them. Microsoft has docs on the format. But you don't need to read all that. The cheatsheet for phone number patterns works like this: \d means a digit. \d{3} means exactly 3 digits in a row. \D means a non-digit. Specifying non-digits is how you look for delimiters used between groups of numbers, like a period, space, dash, parens, etc. And \D{0,2} means anywhere from 0 to 2 non-digits in a row. The \D? is shorthand for \D{0,1}, or "zero or one non-digit."

So all together, the North American pattern above means 3 digits (the "area code") followed by 0, 1, or 2 non digits (think of 415-555-1212 or (415) 555-1212), then 3 digits, optionally a nondigit, 4 more digits, and a non-digit to mark the end. How does the phone dial if we've recognized an extra non-digit at the end? Well, the phone app in Windows Mobile is smart enough to drop the non-digit parts of the phone number when it dials.

If you put together an expression for your locale (or borrow one from another program), feel free to email me or post it in the comments. In the next release I'll include all of them in the config file to make it easier to set up.