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

https://www.udemy.com/course/c-sharp-8-from-novice-to-expert-part-2/?referralCode=809A63CDCB8F76856AEA

I look forward to your feedback. Please, tell a friend!

Only $39.99 with this coupon: DISCOUNTCSHARP. Expires 11/15/2019

Posted in C#, C# 8 | Tagged , , | Comments Off on C# 8 From Novice To Expert Part 2: Intermediate & Advanced

C# 8 From Novice to Expert – Part 1 Released to Udemy

Part 1 assumes no prior programming experience.

Click here

Posted in Essentials | Tagged , , , , | Comments Off on C# 8 From Novice to Expert – Part 1 Released to Udemy

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.

Posted in Essentials, Xamarin | Tagged , | Comments Off on Xamarin.Forms – UI Testing & Customer Engagement

Advanced Xamarin.Forms Part 1 – The API

Spanish Version

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 reading
Posted in API, Xamarin | Tagged , | Comments Off on Advanced Xamarin.Forms Part 1 – The API

Yet Another Podcast: Xamarin.Forms Tools

Microsoft’s Maddy Leger. Program manager for all things Xamarin.Forms Tools, talks about Hot ReLoading and much more

Maddy Leger

Show links:

Posted in Essentials | Tagged | Comments Off on Yet Another Podcast: Xamarin.Forms Tools

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 reading
Posted in Essentials, Xamarin | Tagged , , | Comments Off on Display A Dialog From The ViewModel

CodeMash Xamarin.Forms Workshop

The code for the 1/2 day workshop at CodeMash is available here.  Thanks.

Posted in Essentials | Comments Off on CodeMash Xamarin.Forms Workshop

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 );
}

Posted in Essentials | Comments Off on Happy Holidays to C Programmers

Xamarin.Forms Fundamentals: MVVM

In my previous post we started with a blank Xamarin.Forms app and added manual data-binding.   That is, when a button was pressed, we assigned the value in an entry control to the text property of a label. 

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 reading
Posted in Essentials | Comments Off on Xamarin.Forms Fundamentals: MVVM

Xamarin 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
Posted in Essentials | Comments Off on Xamarin Fundamentals

I’m Back! With Xamarin.Forms Programming

It has been a few months since I’ve posted, and I hope you missed me as much as I missed you.  To re-launch this blog, I’ve decided to provide a series on Xamarin.Forms programming.  

If you prefer to learn by watching a video, check out this video course.

If you are new to Xamarin.Forms (and I’m assuming you are) then there is a lot to learn, but none of it is very difficult… ok some of it is, but not until you’re into very advanced topics.   The one thing you do need to know is C#. You don’t have to be an expert, but you do have to be comfortable with the language.

Continue reading
Posted in Essentials, MVVM, Programming, Xamarin, XAML | Comments Off on I’m Back! With Xamarin.Forms Programming

TypeScript for C# Programmers – Slide deck

Here is a link to the slide deck for my presentation at NYC Code Camp.

Thanks!

Posted in Essentials | Comments Off on TypeScript for C# Programmers – Slide deck