Follow me on Twitter at
FYI, I'm blogging most of my stuff over at More Wally now.
You might want to add my rss feed to your reader at:
Wallace B. McClure

Wallace B. McClure

All About Wally McClure - The musings of Wallym on Web, HTML5, Mobile, Xamarin.iOS, Xamarin.Android, and Windows Azure.


Visual Studio Magazine Column Personal Blog


Book Authors




Georgia Tech Bloggers



Build a Cross-Platform, Mobile Golf App Using C# and Xamarin - MSDN Magazine Article

One of the fun things about the return of golf season is participating in tournaments that feature events such as a longest drive contest. In these, a person’s first shot off a designated hole is measured against others in the tournament. The longest drive during the day is declared the winner. However, these contests typically don’t have centralized scoring. If you’re in the first group, you don’t know until after the event is over where your shots stand in relation to everyone else’s. Why not use a mobile phone to record the starting point and ending point of drives and store the information in a cloud-hosted database?

The options for building such an app are many, which can be confusing. In this article, I’ll walk through how I built such an app using the back-end options in Windows Azure and how I handled various issues. I’ll show the code for writing an app for Windows Phone as well as iOS using Xamarin.

Several features were required. The app needed to run across mobile devices and multiple device OSes. It had to be a native app that looked just like all of the others on a device. The back-end server had to be always available, with minimal hassle to the developer (me). The cloud services had to provide as much help as possible in the area of cross-platform development. The back-end database needed to provide some amount of geolocation functionality.



Many thanks to Brian Prince, Kevin Darty, Tara Walker, Craig Dunn, and a host of others for reviewing the article

PS. You don't have to go to Build to get this Cross Platform Awesomeness


CodeCast Episode #2 - Talkin' 'bout Xamarin
I was honored to have been on CodeCast Episode #2.  While there, I talked about my past, how I got into programming, and the decision tree that led me to use Xamarin's technologies.  After those discussions, I did a demo on oAuth authentication to Twitter via Xamarin.Auth and Xamarin.iOS (iPhone) and then showed the code for doing the exact same thing in Xamarin.Android (Android).  Hopefully, this is helpful to you as you look at, discussion, try, and do whatever on Xamarin's technologies.
Article - How to Advance Your Software Development Career: Sharpen Your "Soft" Business Skills

Original Url:

Many developers get into technology careers because they like to write code. However, as you progress in your career, you'll probably find that at some point, you "hit the wall" and have reached the highest position you can solely as a coder. To advance in your career, you must expand your expertise to include more than just straight technology know-how and experience. You must understand the nature of business so that you can take actions in your career that directly profit the business and profit you as well.
Article - Xamarin How-To: Controls for Navigating Between Screens in iOS
Article Url:

Developers like to create simple examples. Typically, these examples are a screen of data and controls that users can work with. But rarely are real-world applications a single screen of data. iOS provides developers with several standard mechanisms to allow users to navigate between multiple screens of data. This article will examine two controls that developers can use to provide easy navigation for users: the UINavigationController and the UITabBarController.

I hope that you enjoy the article. Thank you for your time and consideration.
Training on Xamarin.iOS with iOS 7: Introduction and Features

I have a new training class out on using Xamarin.iOS with iOS 7 (iPhone and iPad).  This training class will introduce you to iOS 7.  Personally, my favorite features are iBeacons.  I hope that you all the new iOS 7 features as much as I do.


Course Description: In this course we will look at a number of new features for iOS 7. These include the visual transition between views and a number of other new features. We’ll look at iBeacons and more options for background processes. iBeacons have the power to improve location management services by giving really fine control over location and the information at that location. The Background processing feature has been designed for the mobile environment and takes into account power management issues.



Introduction to iOS 7
Device Support
UI - User Features
UI Redesign
Text Kit
64 Bit Support
Sprite Kit
Game Controller Framework
Game Center Improvements
Inter-App Audio
Safari Services
Media Accessibility Framework
JavaScript Core Framework
iOS7 User Interface

UIKit Framework
UIKit Framework (cont'd)
Xcode Features
Existing Controls
iOS7 Design Surface
View Controller

View Controller Transitions
During the Transition
UIView Animation Enhancements
Spring Animations
Keyframe Animations
UIKit Dynamics
Primitive Behaviors
Sequence for Adding
Sequence for Adding (code)

Dynamic Type
Text Kit
Text Kit Architecture
Text Storage & Attributes
Background Download

iOS Background Tasks
Backgrounding Session in iOS7

I hope that you enjoy the training. Thank you for your time and consideration.
Training on Xamarin Visual Studio 2013 Plugin, .NET 4.5 async/await Support, HttpClient, and other New Features

I have a new training class out on Xamarin.  This session will cover the new features that Xamarin has provided in their mid-2013 update.  These new features include support for iOS 7 (iPhone and iPad), but don't require iOS7.  I hope you enjoy this class.  My favorite features here are the Visual Studio 2013 support for iOS, which I use every day, the .NET 4.5 async/await support, and the HttpClient.


Course Description: With the new features from Xamarin, .NET developers have many things that they can work with. Xamarin has provided support for Visual Studio developers to write iPhone and iPad applications. Support for the asynchronous APIs in .NET 4.5, the .NET 4.5 HTTP client, improved gestures for an improved API to work with and other features as well.
Xamarin .Net 4.5 Features
Recent Xamarin Updates
iOS Specific Enhancements
Tools updates
Async Support
Why Async?
How to be Async?
async/await to the Rescue
Exception Handling
Good Candidates

HTTP Client
HTTP Verbs
GET Operation
Other Http Verbs

Xamarin Async Extensions
iOS async/await extensions
F# Support

Xamarin OS Visual Studio
Visual Studio Features for iOS
Host Settings
Xamarin.iOS Build Server
Visual Studio Toolbar
Additional Toolbar Options
Output Windows
Project Properties
New iOS Project
File -> New
User Interface
Screen Rotation

Improvements and Gestures
Recent Xamarin Improvements
Gesture Recognizers
Previous Setup
Multiple Gestures

iOS Notifications
Local Notifications
How To?
Push Notifications
Demo: Local Notifications

Xamarin Razor
Razor Integration
Demo: Xamarin App
Demo: Razor Integration

Xamarin Other
Audio Support
Updated Garbage Collector
Strong Type Constructors
Screen Capture
CFNetwork HTTPClient

I hope that you enjoy the training. Thank you for your time and consideration.
Marketing for Software Developers

Here is an article that I wrote for Dev Pro Connections regarding marketing for software developers:

We technologists are always looking for a better way to do things. We love the "best" solution. Technologists also tend to be skeptical of marketing pitches, which are geared more toward attracting customers rather than promoting a solution solely on its technical quality. In general, we technologists are wary of marketing. But in the real world, to get customers to notice your service, you need to offer more than the best solution. You also need the right marketing approach to promote your expertise.
Posted: Jan 23 2014, 07:33 PM by Wallym | with no comments
Filed under:
The Business of Software Development


Welcome to Dev Pro's article series about the business of software development and technology! The topic of this series, business development for software developers, covers some different ground than most of the other articles available at Dev Pro. Too many developers think in terms of bits, CPU cycles, and reads/writes to a disk drive. Rarely do developers and technologists think in terms of how an application feature impacts a company's bottom line, the importance of time to market, why marketing is important, the ramifications of contracts, and many other items. This series will help in explaining the importance of these elements of business development.

Posted: Jan 09 2014, 09:54 AM by Wallym | with no comments
Filed under:
You MUST be Cross Platform
Visual Studio Magazine just posted on their site that Android will ship in One Billion devices in 2014The article is based on the following report from Gartner.  The key takeaway is that we no longer live in a "Windows World."  There are devices of all type that users are using.  As a result, developers must be knowledgeable on these devices and be able to develop for these platforms.  I would suggest subscribing to our VSM monthly column on "Cross Platform C#."  Not only does Android have a large, ok huge, set of numbers, but iOS has a large number of units shipped.  At the same time, one can not forget Windows.  What about the Web?  How can you support all of these platforms?  Tune into our Cross Platform column and you will see.
Unit Shipments

PS.  I have a cross platform article coming up in Visual Studio Magazine that is really big.  I think you will like it.

PSS. Many thanks to Kurt Mackle for inspiring me on the graphic.
Mobile Web HTML5 Training with jQuery Mobile - January 28, 2014


Mobile development is a hot item. Customers are buying iPhones, iPads, Android devices, and many other mobile computing devices at an ever increasing record pace. Devices based on iOS and Android are nearly 80 percent of the marketplace. RIM continues to be dominant in the business area across the world. Nokia's growth with Windows Phone will grow on a worldwide basis.

At the same time, clearly web development is a tremendous driver of applications, both on the public Internet and on private networks. How can developers target these various mobile platforms with web technologies? Developers can write web applications that take advantage of each mobile platform, but that is a lot of work.

Into this space, the jQuery Mobile framework was developed. This eLearning series will provide an overview of mobile web development with jQuery Mobile, a detailed look at what the jQuery Mobile framework provides for us, how we can customize jQuery Mobile, and how we can use jQuery Mobile inside of ASP.NET. 

Session 1: Mobile Web Development - 11am ET

Are you wondering what web developers can do in the mobile world? This session will focus on:

  • What web developers need to know about the idiosyncrasies of mobile development
  • Tools to use for mobile development
    • ASP.NET development options: Webforms v MVC v Web Pages
    • Web browsers
  • Javascript language features useful for mobile web development
  • Integrating with the phone
  • Meta tags to improve the user experience

Session 2: jQuery Mobile - 1pm ET

You are probably aware of the jQuery javascript library. This seminar will introduce jQuery Mobile, a library that will make the development of web applications for mobile devices easy. We’ll look at the basics of jQuery Mobile, including

  • Page Setup
  • Toolbars
  • Navigation
  • Integrating basic controls with jQuery Mobile
    • Buttons
    • List Components
    • Form/UI Components
  • Basic options for jQuery Mobile
  • AJAX operations with the ListView 

Session 3: jQuery Mobile Advanced with ASP.NET - 3pm ET

jQuery Mobile allows developers to create an application with a mobile-specific user interface. There are many options to optimize and change the default behavior of jQuery Mobile, as well as how ASP.NET developers can easily integrate with jQuery Mobile. This session will look at:

  • Creating a Template for ASP.NET developers
  • Creating a custom theme
  • Build one ASP.NET Page with jQM Themes to target multiple devices
  • Offline operation and the application manifest
  • Plug-ins and optimizations for tablets
  • jQM Events
Posted: Jan 06 2014, 09:15 AM by Wallym | with 1 comment(s)
Filed under:
More Posts Next page »