Archives for September2011

Simple async file access using Windows 8, part 2

In the previous article I presented a helper library for reading and writing to the file system using the new Windows Runtime asynchronous file APIs.

One downside of the code I presented is that the actual reading and writing was still happening on the main UI thread. While this may not be a problem in a simple application, it is undesirable for complex documents.

The challenge is that we still need to be on the UI thread when we collect the data we want to save, but the writing itself could be on a background thread.

In this article I will cover a way to extend the API I presented previously, to allowing reading and writing via a background thread.

Read More

Simple async file access using Windows 8

This article refers to pre-release software. Some or all of what is presented could change between now and release.

This week at the Build Windows conference, Microsoft announced Windows 8 and introduced the new Windows Runtime APIs for the developers.

As a C# developer, one of the defining features of the Runtime is that a lot of the .NET Framework is “gone”, or moved to new namespaces. Nowhere is this more true than in System.IO, which is now fairly barren. The reason is that most of the file I/O APIs in the Windows Runtime are designed to be asynchronous, and as these new APIs are in the Runtime, they’ve moved into the Windows.* namespace.

As it turns out, reading and writing files using the new asynchronous APIs is a little convoluted. OK, its a lot convoluted, but I’ve put together some code that should simplify it for you, while also taking you through the steps involved.

Read More

My Daily submitted to the App Store

I have just submitted a new app to the App Store called My Daily.

The purpose of the My Daily is to simplify entry into the Calendar for situations where you are given a daily schedule of back-to-back tasks.

My Daily main screen

The app allows you to set a daily start time. When you add an event, you pick the name from a list of names you define. Each name can be associated with a color swatch, allowing you to classify similar names with the same color.

Your first event will start at the daily start time, and subsequent events will start right after the previous event. Now you can add an event to your calendar by simply picking a name and clicking Save!

My Daily edit screen

The neat thing is: if you delete an event, change its duration, or re-order the event, the start/end times are automatically updated. And the whole time, all of your changes are being synced into your iPhone’s Calendar, so you get all the same automatic alerts you expect.

And because My Daily syncs to your iPhone’s Calendar, each event can also have a reminder alert a few minutes before it is due to start. Reminders are also picked with a single click (no more navigating between screens).

* Update – My Daily is now live in the App Store.