What is a Business Logic Layer Anyway?


Most developers are familiar with the concept of N-Tier Architecture. It is a software pattern that separates components of an application into separate logical layers to establish code boundaries, promote flexibility, and allow reuse. Most commonly this is accomplished using 3 layers:

Continue reading

Hands-On: Building iOS and Android Apps with C#

Hands On with Xamarin

Last night I attended a great .NET Mobile Developer meet up at Microsoft’s NYC offices entitled “Hands-On: Building iOS and Android Apps with C#“. It was hosted by Greg Shackles, author of “Mobile Development using C#“. Greg also presented at Xamarin’s Evolve conference in Austin, TX this past April. At this meetup he conducted a hands-on demo on how to build a simple iOS and Android app using Xamarin Studio and C#.

Continue reading

How to Rock Windows Azure Mobile Services

Azure User Group

Last night I attended a meetup at Microsoft‘s NYC headquarters entitled “How to Rock Windows Azure Mobile Services.” The presenter was Jim Priestley, a Technical Solution Specialist at Microsoft. Windows Azure is Microsoft’s cloud platform that competes with Amazon Web Services and other similar offerings. At the time it was launched in 2011 Azure was unique because it was the first to offer a “platform as a service” (PAAS) model, which allowed developers to deploy and manage their applications without having to configure individual virtual machines. Since then Amazon and others have responded with similar offerings.

Continue reading

Brella: A Free iPhone Weather App for Commuters


Download on the App Store

Today I released Brella, my new free iPhone weather app for commuters! In the App Store now. This app checks NOAA data for rain probability in two locations: where you live and where you work. If the chance of rain exceeds your threshold for the hours that you are out of the house, it tells you to grab your umbrella.

Continue reading

Using XPath to Query XML Containing Namespace Prefixes in .NET

Yesterday I was working on a small .NET console app for the IIN Video Department to convert Adobe XMP files with closed captioning data into Subrip SRT files for processing by encoding.com. The XMP file is in XML format and contains the timestamp, duration, and speaker of each word in a video transcript. My program needed to parse this data and combine the words into 2 lines of text that will be rendered per screen via closed captioning. The start time of each screen of text would be equal to the start time of the first word, and the end time would be equal to the end time of the last word. Each line would only be able to contain a fixed number of characters to avoid line wrapping in the video. Also, every time a new speaker starts talking, a new line would be created, and prefixed with the speaker’s name and a colon “<Speaker>:” A fun little project which I’ll post on Github when it’s done. However, I did come across the following resource which is useful when using XPath to query an XML document that uses namespace prefixes. Namespace prefixes are shortcuts used to qualify element and attribute names in an XML file, usually to avoid element name conflicts. To work with them in .NET you need to use System.Xml.XmlNamespaceManager. Here’s a Microsoft support article that show’s how it’s done: http://support.microsoft.com/kb/318545