Problem-solving is the act of defining a problem, determining the cause of the problem, determining what features a proposed solution should have, identifying, prioritizing and selecting alternatives for a solution, and implementing a solution.
We all employ similar processes (whether we do it implicitly, or explicitly) in our everyday life; from choosing what to eat at a new restaurant, choosing our next cell phone, or more complex and specialized scenarios like how to fix a performance issue in a mobile app we are developing.
The following framework, provides an easy to follow, step-by-step approach to problem-solving, with 6 discrete steps.
This is the most critical step in the process. The quality of the solution is going to be directly proportional to the quality of the problem statement. …
As you may know by now, Xamarin-related challenges are very popular in 2019; so why not have yet another one.
This challenge would focus on proven best practices in all aspects of creating mobile apps (DevOps, project Structure, cross-cutting concerns, data, API, Testing, App Signing, etc).
If you are already familiar with prior challenges — like the Xamarin UI July challenge from Steven Thewissen, or the Xamarin Month, from Luis Matos- You would know that the challenge is in the style of an advent calendar, where an article about a particular topic is posted every day, by one of the amazing contributors. In this instance though, the article will be included in the Challenge repo as a Pull Request, and if also desired a brief blog post about the topic on the contributor’s own blog. …
Now more than ever, businesses need to be nimble and continue to ship features at the speed of light™. This is even more true in the very competitive world of mobile apps.
Long gone are the days where we could wait several months to release a new version of our app.
These days, customers expect from your mobile app the same nimbleness as their Facebook app, Banking app or Dating app. And if you are not willing to do it, the competition will.
As you might know (hopefully thru the pain of others), it is very risky to roll out a faulty feature, as, in the world of the App Store, a new release could take between 1 and 2 days to be approved, and this could make your customer’s confidence in your product be lost forever. …
Last week, I got to co-deliver an interesting talk (with Sara Morsi as co-speaker) at the NYC Mobile .NET Developers User Group. We curated a selection of topics, from our recent experience at Microsoft Build, this past May 7–9, in Seattle, WA.
Some of the topics at Build we found most relevant for Xamarin Developers include:
1. Hyper-V Android Emulator Support
2. Visual Studio Tools for Xamarin
3. Platform Improvements
4. Xamarin Forms 3.0
5. Fluent Design for UWP
6. Visual Studio Live Share
… and much more …
If you have been working in a software team using any type of git workflow, I bet you are familiar with the concept of Pull Requests. This article does not intent to school you on the mechanics of creating it, but rather on the art of what constitutes a Pull Request that brings smiles to reviewers and collaborators alike.
Here is your opportunity to let the reviewer know what your Pull Request (PR) is all about. Do go beyond just including the issue number; try to reflect the main point of the pull request. …
So from time to time, one would get some cryptic messages when trying to run an app on a physical device. They seem daunting at the beginning, but do not dispair; help is on the way!
I recently tried deploying a Xamarin.Android app to my side device, and to my surprise, got this error.
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets: Error: Tool exited with code: 10.
Output: Error: Can’t read [/Library/Frameworks/Xamarin.Android.framework/Versions/7.2.0–7/lib/xbuild-frameworks/MonoAndroid/v7.1/mono.android.jar]
(Can’t process class [android/app/ActivityTracker.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7)))
So, now what?
- Let’s start where we developers should always start: Google!
From the horse’s mouth:
If you are trying to use ProGuard against Android 7.0 or later, you must download a newer version of ProGuard because the Android SDK does not ship a new version that is compatible with JDK 1.8. …
It was just a few hours ago that Xamarin released Xamarin 3. With this announcement they have yet again revolutionized the way we write cross-platform mobile applications. The announcement first highlights the Designer for iOS, which is awesome, but I want to take a step forward, and instead talk about what I think Xamarin.Forms will do for your future mobile development efforts.
For the last few months my company worked and developed an internal MVVM framework that provides services such as Navigation, Bindings, Loosely-coupled messaging, mobile optimized Dependency Injection, List Controls for effortless displaying data, etc. to be used in our projects because we believe these are things that real apps need, and what was available at the time did not fit our style of MVVM development, so we rolled our own. …