blog posts matching: clear

Splash screens in Maui

Monday, September 19, 2022

Dotnet Maui offers a great new way to handle splash screens!


Automate Maui build number when building and deploying

Tuesday, September 13, 2022

When building and publishing your Maui app you need to specify your version numbers. Here is how to keep them updated automatically every build.


Xamarin Podcast

Friday, April 23, 2021

I was on the Xamarin Podcast!


I updated a Xamarin Forms project to Maui

Tuesday, March 16, 2021

The very early Maui samples are out. I wanted to see if I could create a Xamarin Forms project and then update it to Maui. Here is how it went and what I learned.


Custom Sharpnado Tabs

Thursday, March 11, 2021

Sharpnado Tabs are a very popular nuget package for Xamarin. I recently needed to create custom tabs and think the documentation is a bit off.


WebRTC on iOS

Tuesday, January 5, 2021

One of the major parts of the app I work on is live video conferencing. We do this using WebRTC, which works great. EXCEPT: when one party is using Chrome on iOS. Here is why.


You should disable usesCleartextTraffic in Xamarin Android

Saturday, January 2, 2021

After a security review I learned an easy tip. By default, Android allows HTTP traffic on older versions of Android! It’s super simple to disable, and you definitely should.


Android Emulator screenshot with device frame

Thursday, November 12, 2020

I often have to take app screenshots and then send them to the documentation team or a sales rep. However, they need to look nice as if they’re in a device not just a raw PNG. I’ve tried using a few different mockup sites but every time I find one I liked it ends up shutting down.

Here is how to do it yourself super easy!


XFHelpers Plugin for Xamarin (iOS, Android)

Friday, November 29, 2019

I’ve released another Xamarin NuGet package. This one provides a collection of tools that I use in every Xamarin project that I create - a base view, base viewmodel, along with some converters, and tools.


Code from GGMUG AWS Lambda talk

Thursday, January 10, 2019

If you were at the GGMUG meetup last night here is the code for the functions I created when I covered the serverless API example.


Playing around with Arduino and Rasberry Pi

Wednesday, August 8, 2018

Two fun little projects I did recently. The first, I made a LCD screen showing stats from my fish tank using an Arduino and an AWS Lambda function. The second, my SNES broke so I replaced the internals with a Rasberry Pi.


Go To Settings Plugin for Xamarin (iOS, Android)

Tuesday, June 27, 2017

I’ve released a Xamarin plugin on Nuget that provides a way to take users to the settings page for your application for iOS and Android. This can be useful if users have declined permissions and now need to go to the settings page to manually enable these permissions.


Xamarin Remote Notifications

Sunday, June 19, 2016

If you’re following the Azure Notifications Hub documentation you’ve probably used this for your iOS notification message:


Xamarin vs Phone Gap at Xamarin University

Monday, March 21, 2016

Xamarin invited Magenic’s mobile lead, Kevin Ford, to be a guest speaker at Magenic University to present the Xamarin vs Phone Gap White Paper that Kevin Ford, Ken Ross, and I created. Watch a recording of it on YouTube below.


What Actually Happens When You Request An Expedited Review From Apple?

Wednesday, March 16, 2016

I have a client with a Xamarin Forms app that streams live video for sporting events that they host throughout the year. Recently they sent me an email apologizing but saying they forgot to update a sponsor’s logo for an upcoming event. The event was 2 days away, could we get the app updated and in the stores?

I told them the truth. Most likely, no, but we can try. Here is the timeline of how we made it happen.


Troubleshooting AVPlayer With Xamarin On iOS

Friday, November 20, 2015

When you’re using AVPlayer with Xamarin one of the difficulties can be troubleshooting. There’s an easy way to get error notification from AVPlayer that isn’t mentioned in the Xamarin documentation.

You probably already have something similiar to this line:


Xamarin vs Phone Gap

Wednesday, November 18, 2015

Kevin Ford, Ken Ross, and I built an application twice (source code available at once in Xamarin and once in PhoneGap. The white paper discusses the pros and cons of each platform as well as the performance metrics we saw from each when hitting the same Azure back end.

The white paper is available here:


Hybrid App Development Using Visual Studio 2013 - Workshop at Microsoft Alpharetta

Friday, February 20, 2015

On Monday, February 23rd, Abbey Gwayambadde will be leading a session on Cordova development inside Visual Studio 2013. Sign up here:

The following Monday, March 2nd, I’ll be leading a workshop for anyone who’d like to try out Cordova development:

Microsoft Alpharetta Office 1125 Sanctuary Pkwy, Suite 300 Alpharetta, GA

Monday, March 2nd, 2015 at 7pm

Come on out and I’ll help you get your Cordova app up and running!


Microsoft Multi-Device Hybrid Apps

Thursday, September 11, 2014

I gave a talk at GGMUG tonight on creating Android and iOS applications using the Microsoft Visual Studio Multi-Device Hybrid Apps framework.

Here is the source code for the application we made during the talk:

And here is the Power Point deck:

Thanks to everyone that came out!


Check For SQL Authentication Type Before Adding Users

Monday, February 10, 2014

While setting up a new team member to run a WPF app locally we ran into an error. It look about 30 minutes to realize our setup SQL script was creating a user in SQL server, but mixed mode authentication was not turned on.

To prevent having to relearn this problem again in the future we’ve added this code to our SQL script, right before the CREATE LOGIN command.


Manually Rolling Back A WPF ClickOnce Application

Friday, February 7, 2014

If you need to revert to a previous ClickOnce version you are expected to redeploy that older version.

Recently I was in a situation where this wouldn’t work as there were checked in code changes that the environment was not ready for. Now I could have reverted to the previous version in TFS and then redeployed that. But luckily I found an easier way.


WCF Error: Could Not Register URL

Saturday, February 19, 2011

When hosting WCF services from Visual Studio you may, as I recently did, come across this error:

HTTP could not register URL http://localhost:12345/Service1.svc Your process does not have access rights to this namespace (see for details.

Josephus' Circle

Wednesday, July 29, 2009

Here is my solution to the latest code contest from The Daily WTF Programming Praxis: Josephus’ Circle.

What I like about this solution is that it represents in code, how the problem is actually carried out in real life. The soldiers are counted off one by one.


Performance Penalty Of Recursive Calls

Monday, July 27, 2009

This recent post on The DailyWTF has brought in many comments with people providing code samples in many different languages. The post, Programming Praxis: Russian Peasant Multiplication, offers a simple coding challenge.

The challenge screams for recursion and many of the answers in the comments went this route. Of course, when we talk recursion we always have to qualify it as saying there is a performance penalty for using recursion.

Using this Russian Multiplication challenge as an example, I’ve done some testing to see how much the penalty is.


Resume Tip From Joel Spolsky

Saturday, January 3, 2009

I’ve reviewed hundreds of resumes over the last few months and I’ve got to agree with Joel Spolsky’s latest resume tip:


Use VB's Powerful Format Function Through ASP

Wednesday, May 16, 2001

This article originally appeared on at

When creating ASP pages you can choose to use a number of scripting languages, such as VBScript, JScript, PerlScript, and even Python. While this may seem all fine and good, realize that VBScript, the most popular server-side scripting languages, is a watered-down version of VisualBasic. Think of VBScript as VB-Lite - certain things are missing.