Xamarin App Startup Speed Comparison on Android

Device: Google Pixel XL Using Release configuration with Shared Mono Runtime disabled with Shared Library instead of PCL.

Estimated seconds to launch the app three times and land on the first screen after the splash screen.

The last number shows the storage size of the app after being installed.

Xamarin Native

.93 seconds.89 seconds.95 seconds8.36 MB
Xamarin.Forms without XAML

1.72 seconds1.69 seconds1.65 seconds22.84 MB
Xamarin.Forms with XAML

1.92 seconds1.92 seconds1.96 seconds22.84 MB

Xamarin Forms vs React Native

Xamarin FormsSlower app development reload time having to stop debugger, recompile and start again. (Estimated 10 seconds on Google Pixel.)Font icon integration is possibleUI elements are rendered with the look and feel of the target platformStrongly typed by design using C#F12 code navigation throughout C# source codeWeb Service calls using C# through multiple waysJSON to C# object conversion using or other optionsStep-through debugging built into the IDEAble to specify package name up frontThere is one recommended and seamless way of doing hierarchical navigationVisual Studio for Mac Preview doesn't have the option to create a new XAML Forms file yet on an existing project. Use Xamarin for Mac instead for now.Facebook and Slack channels available. React NativeFaster app development reload time using Hot Reload and Live Reload. (Estimated 2 seconds on Google Pixel when using Hot Reload.)Navigation integration is complicated and spread thin across multiple ideasFont icon…

Flag Capture Extreme Now Available for iPhone

I am happy to announce that Flag Capture Extreme is now available for iPhone devices. The iOS version was previously only available for iPad.
Gather together with your friends and family to play capture the flag on your iPad! Capture the opponents flag, break through brick walls, shove other rolling balls around, hide behind your opponent's controller, do whatever it takes, just don't get caught before you get back to your own flag.
The game can be played by 2 or 4 players. The first team to reach 5 points wins the round!
Download Flag Capture Extreme for free today!

Introducing IWASNUTS: It's a Web App Starter for Node Using TypeScript and Sass

I want to introduce you to my new open-source project called IWASNUTS: It's a Web App Starter for Node Using TypeScript and Sass

This project is meant for for getting developers off the ground quickly with basic boilerplate code. Currently it is tailored toward a VSCode environment. It is a work in progress, but so far I have TypeScript and Sass compilation using Gulp tasks, along with Express, Express-Session, BodyParser, and EJS templating. I will be adding a login mechanism and a forgot password email function -- hopefully soon.

I want to keep it to the basics, so I probably won't be adding sample database connectivity since there are too many different options.

As always, I'm open to feedback -- especially if I can make something more efficient or if I have done something the wrong way.

If you like where the project is headed, please star it on GitHub. Enjoy!

Comparison of Mobile App Frameworks

I put together this spreadsheet to compare some of the more popular mobile app frameworks.

Converted from PHP to NodeJS with EJS Templates

Today I finished converting from using PHP over to NodeJS with EJS templates. The transition went smoother and faster than I had anticipated. Thanks goes out to the helpful developers on the NodeJS Facebook group for pointing me in the right direction, and to Chris Sevelleja for his blog post on how to use EJS with Node.

Solved: Ionic ENOENT Invalid device state error when using sudo on Mac

I was trying to launch a sample app on the newly released Ionic 2 Release Canditate. When I ran the command sudo ionic run ios --emulator, I encountered an error similar to this one which I shorted for display here:
An error was encountered processing the command (, code=163): Invalid device state
Error: ENOENT: no such file or directory, stat '/Users/.../Library/Logs/CoreSimulator/.../system.log' After searching the internet for solutions, I was able to overcome the error by taking the following steps:

Install the latest update to Xcode.Run xcode-select --install to make sure that Xcode command line tools is installed (as recommended by Mike Hartington on the Ionic Github page.)Run sudo chown -R username /Users/username to update my permissions which makes it so that I don't have to run sudo when running ionic commands (as recommended by Zac Vineyard on his blog.)Run ionic run ios --emulator (this time without using sudo). Thank you for…