Wednesday, November 16, 2011

My First WP7 App

I've been working on my first Windows Phone 7 App, finally. A few weeks ago I sat down and wrote a whitepaper on what this App would be. Then when I finally had and made some time I began desiging and coding it.

I've had a number of years in .NET WinForms development and more recently some Silverlight experience. My XAML isn't expert-level yet but I'm very comfortable with C# and .NET. This has been a great learning experience so far and its fun to take a simple idea and then begin to actually make it a real application. A lot goes into making an application and once you begin and things start rolling you get more and more new ideas on what to add and what to improve and refactor.

So what does this thing do? It helps me with calculating exposure times and selecting the right filters when I'm out taking landscape photos. It's a nice little companion App that aides my aging brain so I don't have to figure out EV stops in my head or have to carry around charts or lookup tables.

Tools Menu
The various tools in the App are accessed from the first page of the application. Right now, the list of tools includes:

  • exposure
  • ND filter
  • dynamic range
  • big stopper

I would use the exposure tool when in a low-light situation, like when taking photographs before sunrise or after sunset. When my camera is in Aperture-Priority mode, the automatic metering of the camera will only go as far as taking a 30 second exposure. If the scene is still too dark for 30 seconds, you can use a nifty trick in your camera by bumping up the ISO value until the camera hopefully meters properly. The range I have for ISO is only from ISO 200 to ISO 6400. I don't count the LO and HI ISO values in my D700. This is only a range of 5 stops so it won't always work in all situations but sometimes it may help. The trick is to see if by adding up to 5 more stops of sensitivity, you will finally have metered a correct exposure for your scene. Then you simply reset your ISO value and then compensate your exposure time with how many stops you needed to add when bumping up the ISO value. Easy, right?

I'll use the ND filter tool when I want to figure out which ND filter to use to get a specific exposure time. For example, say I'm photographing a waterfall, it's mid-day and bright, but I want the water to be silky smooth and have a target exposure time of about 2.5 seconds. I simply put in my current exposure time then my target exposure time and the App tells me which ND filter to use.

ND Filter Tool
For the dynamic range tool, I'll use this when I want to know the difference between say the sky and the foreground. This helps me figure out what ND graduated filter to possibly use. If the difference between the sky and the foreground is only a couple of stops, then I may not use a ND grad. However, if there was something like 5 or more stops of difference, then I'd definitely use a ND grad and this tool will help me decide which one by telling me the actually difference in stops between the two exposures for the sky and the foreground.

Last is the big stopper tool. We have a Lee Big Stopper filter in our bags and sometimes it comes out. The trouble with this filter is that its about a 10-stop or ND3.0 filter and calculating the proper exposure time to use with this filter requires either a chart or some mathematical gymnastics in your head. Enter the big stopper tool in my App. Just put in your current exposure and the tool tells you what the proper exposure time will be when you add the Lee Big Stopper.

I plan on wrapping up this first go around of functionality, taking care of the Windows Phone Mango certification requirements, and then submitting this to the Windows Phone Marketplace. Next I have some plans for more useful tools in the App. I'll have to get through the first hurdle first before I add any new features though.

Writing WP7 apps is made easy because of the great tools available from Microsoft. Its also a lot of fun with the usual challenges with development. I love this little platform and phone and I'm excited about working more with it!


No comments:

Post a Comment