What I do
My biggest mobile project is Sierra Trading Post’s iOS retail app, built using C# in Xamarin.iOS. Both the iOS app and Sierra’s Android app, built using Xamarin.Android, operate using the Sierra Trading Post API that I created using ASP.NET MVC (prior to ASP.NET Web API). I am currently managing development efforts on these projects and any future ones that are born in Sierra Trading Posts Emerging Markets Team (EMT).
I’ve been known to write sillier code in my free time, though. For example, Smudges is a silly game (now available on Android) I originally created to occupy my then-2-year-old child. I’ve written a bit about it on this blog, if you want to learn more about Smudges or learn more about some of the code that went into making Smudges.
TownRaiser This was my first true foray into video game development (Sorry, Smudges. Victor Chelaru, who created the FlatRedBall game dev engine/tools, asked if I wanted to do a one-month game project. At the end, we had TownRaiser, an town-building RTS-style game. I went from no game dev experience to building unit AI and animations at an incredible pace.
rss-to-jsonp A silly proxy for requesting an RSS feed and returning JSON assembled from that feed, originally started as a tool needed for Kickstarterterest. Final product goes out to AppHarbor at
MonoForAndroidFlashlight A simple flashlight app that I put together in Mono for Android to use on my Galaxy Nexus.
StackGeography started as a proof-of-concept mapping demo and evolved hastily into a StackApps app. This mapping site polls for recent Stack Exchange site questions (StackOverflow, SuperUser, etc.) and maps the user locations to map from the Google Maps API. It is definitely a work-in-progress. Feel free to follow along with the development at its GitHub repository.
Kickstarterterest A proof-of-concept presentation of Kickstarter projects (via their RSS feed) in a masonry-style view (as made famous by Pinterest). Final product goes out to AppHarbor at http://kickstarterterest.apphb.com/.
Open source contributions
I have been trying to contribute to open source projects that make my life easier lately. It has been some great learning experiences. Check out my post on working with different coding styles in Visual Studio for a glimpse into how to work with code written by other teams.
You can check out most of my open source work on GitHub (patridge), but here are some fun ones.
- Cake (C# Make) – GetSubDirectories alias – Allows getting a list of directories at any given DirectoryPath.
- Cake (C# Make) – XmlPeek aliases – Allows reading XML values in your build scripts.
- FAKE (F# Make) – Update to XamarinHelper.iOSArchive to accept an explicit solution path.
- Xamarin.iOS BTProgressHUD – Allow HUD to be constrained to a single tab (or any parent, I suppose).
- monotouch-bindings – Fixed a Google Analytics datatype mismatch that resulted in an integer overflow, and some seriously ugly data on the reporting side.
- ASP.NET MVC AttributeRouting – config option to append trailing slash to outbound generated URLs.
- MVC Route/URL Generation Unit Tester – switched to exception-based route testing for useful error messages.
- NuGet Docs update – updated docs to reflect confusing change in recent release.
- Json.NET Docs update (Copied into commit by JNK) – updated docs to reflect new DateTime format and how to override it to revert to the old default.
- jquery-html5-placeholder-shim – while researching a placeholder shim, fixed a reserved word usage that blew up in Closure Compiler. Ended up using jquery-placeholder, though, in production until jQuery started doing this automatically.