Microsoft’s Jon Galloway talks about the .NET Foundation and about .NET Core. As always with him, an amazing conversation.
C#8 De Principiante a Experto Parte 1

C# 8 From Novice To Expert Part 2: Intermediate & Advanced

I look forward to your feedback. Please, tell a friend!
Only $39.99 with this coupon: DISCOUNTCSHARP. Expires 11/15/2019
Xamarin.Forms – UI Testing & Customer Engagement

Microsoft’s Sweeky Satpathy. Sweeky is a Senior Software Engineer in MOBCat the Customer Engagement Team, which is part of DevDiv product engineering team responsible for all of Microsoft’s developer focused products and services and represents the voice of the developer to the rest of Microsoft. She works closely with the Xamarin team.
- Project Zimmer Code
- Twitch Stream
- MobCAT GitHub samples
- Xamarin + Azure Spatial Anchors
- Xamarin.UITest + Page Object Pattern Blog
Advanced Xamarin.Forms Part 1 – The API
In this series, we will explore a number of topics on Advanced Xamarin.Forms that have arisen in our work for clients, or at my job as Principal Mobile Developer for IFS Core.
Before we can start, however, we need to build an API that we can program against. Ideally, this API will support all CRUD operations and will reside on Azure.
Continue readingYet Another Podcast: Xamarin.Forms Tools
Microsoft’s Maddy Leger. Program manager for all things Xamarin.Forms Tools, talks about Hot ReLoading and much more

Show links:
- The hot reload private preview sign up page
- Xamarin dev summit recap blog
- Hot reload announcement blog
Display A Dialog From The ViewModel
In a previous blog post I discussed the problem of being in your ViewModel yet having to display a dialog to the user. You can’t interact with the page from the ViewModel, but you don’t want the logic of your program in the code-behind.
In that previous article, I demonstrated solving that problem using an event. In this blog post, Rodrigo Juarez and I will demonstrate three alternatives:
- Using the Messaging System
- Using Events (though here we’ll show a somewhat different approach)
- Using dependency/service injection
There are significant problems with the first two; the most important of which is that they are difficult or impossible to write unit tests for. The third approach, however, is clean, efficient and very testable using a Mock service.
Continue readingCodeMash Xamarin.Forms Workshop
The code for the 1/2 day workshop at CodeMash is available here. Thanks.
Happy Holidays to C Programmers
Not sure where I got this, but still like it:
/*
* find the important things in Life, the Universe, and Everything
*/
typedef short some; /* some things are short */
typedef some very; /* some things are very short */
#define A /* The first letter of the English Alphabet */
#define LINE 2 /* 2 points define a line */
#define TRUTH BEAUTY /* truth is beauty */
#define BEAUTY 10 /* and beauty is a 10 */
#define bad char /* burnt on both sides */
#define old char /* the great Chicago Fire */
#define get strlen /* during your life, try to get some sterling */
#define youmake float /* you make it, I'll drink it */
#define yourgoals in terms you can understand
/*
#include "yourdreams" /* for the future */
/* everyone needs goals */
short term;
double yourpleasure();
double yourfun;
long Term, play(), agame;
/* everyone needs diversions */
old *joke = "Why did the chicken cross the road?\n\tTo get to the other side!\n\t\tWocka Wocka Wocka!\n";
tell(joke)
bad *joke; /* wait- you haven't heard it yet! */
{
short laugh; /* please */
laugh = get(joke);
write(1, joke, laugh); /* write it down- don't say it */
}
/* most folks like music */
long play(record)
long record;
{
very pleasant = TRUTH; /* if you like music */
while (record == pleasant)
play(record--);
return( pleasant ); /* music soothes the savage */
}
double yourpleasure(one, way) /* this is necessary if */
some one; /* is watching ,or if you have a */
long way; /* to go */
{
/* this can change one while maintaining one's identity */
one = one * one;
return( one ); /* after all, it should have at least doubled */
}
hold(temper) /* good advice */
A short temper; /* is a dangerous thing */
{
A long time; /* is what you need */
very calm; /* is how you should be */
calm = temper, temper;
while (calm--)
wait(&time);
return(calm); /* if possible */
}
/* now, on to the main thing */
main(thing, mustbe) /* to balance work, play, and goals */
some thing, mustbe; /* important, or we wouldn't be here */
{
long time(); /* know C */
very bored; /* the result of too few goals */
short hours; /* make */
long yourwork; /* which makes for */
short tempers; /* which can be improved by */
long laughing;
/* first, set priorities */
yourwork = 0;
yourfun = 1.0e+38;
if (yourpleasure( mustbe, yourwork ))
yourfun = yourwork;
else
yourfun = play( agame );
bored = yourfun - yourwork; /* nothing to do? */
/* reach out and touch someone! */
switch ( bored ) { /* connects all of this together */
default:
hours = hold(LINE); /* no way to avoid it, take a */
break;
}
/* take a music break */
while ( thing-- ) { /* you make my heart sing */
youmake everything;
very groovy;
}
/* focus on what is important to you */
while ( yourfun < 0 ) {
yourpleasure( mustbe, agame);
yourfun = play( agame );
}
tell(joke);
exit( laughing );
}
Xamarin.Forms Fundamentals: MVVM
In my previous
Yuck.
Today we’ll look at a better way of doing that. But hold on to your hat, and fasten your seat belt, because we’re going to dive into the deep end.
Continue readingXamarin Fundamentals
In my previous (and first) posting on Learning Xamarin, I demonstrated how to create a pretty cool program out of the box. Let’s back up now, and start with a blank app, and see what we can build from there.
Create a new project as described in the previous posting, but this time choose a Blank application.
Continue reading






































