My Favorite Mac Utilities

I have experimented with a number of different utilities.  I’m going to list some of them hMacBookProere, and then invite you to please add your preferred utilities that I haven’t tried yet, and why you like them.

The following are not in any particular order

My favorite go-to browser is Chrome, though I do keep a number of others around for testing Web applications

Speaking of Google, I love Google Photos.  Its ability to search without tagging is amazing.

Continue reading

Posted in Essentials | 2 Comments

Yet Another Podcast #162 What’s New in C# 7 with Mads Torgersen

Mads Torgersen is a Program Manager at Microsoft, responsible for the evolution of C#. Exported_ - 1

Posted in Essentials | Tagged | Leave a comment

Xamarin Utility in 5 Minutes with Plugins

[This article was restored]

I needed a quick and dirty program to create quick notes and mail them to myself.  You can see how this would be useful;  a way to jot down notes while away from the computer, with some high likelihood that I’ll see and remember the note when I get back.

I created a Xamarin.Forms application, and dropped an editor onto the page.  Here’s the complete XAML page:


I implemented the event handler in code behind (this project was too small for MVVM),

  voidHandle_Completed(objectsender, System.EventArgse)
   string message;

The magic here is accomplished by the Messaging plugin, which will let you make a phone call, send an SMS message or, in this case, send an email.  I could use some of the advanced features, like adding an attachment, but don’t need to.  I just want to send my text.  The three parameters are:

  • Recipient email address
  • Subject line
  • Body of message

 Pierce Boggan wrote up how to use the plugin in an excellent Xamarin blog article.

Hey! Presto! instant app.  But, the simulator can’t send email, so if you want to try it out, you need to do so on a device, which means you need to provision your phone.  Don’t panic, step by step directions are provided here.

Complete development time: 4 minutes.


But as I say, it is quick and dirty.  If I want to put it in the store, I still have some work to do.  First, I really don’t want all your notes, so I need an easy setup so that you can enter your own email address.  Second, it is ugly. Third, I need images, lots of images for the app store.  If you want to take that on, let me know and we can share the glory (and who knows, maybe advertising revenue).
Posted in Xamarin | Leave a comment

Yet Another Podcast #161 – David Britch

David Britch is a Developer/Writer at Xamarin, and has previously spent many years working on projects for different groups at Microsoft.

David has authored and contributed to a range of recent software development publications including books, guidance documentation, reference implementations, whitepapers, videos, HOLs, and ILT courses.

Blog –



Posted in Essentials, Xamarin | Tagged | Leave a comment

Tech Bash 2016

Save $50 with code LIBERTY


Posted in Testing, Xamarin | Leave a comment

Yet Another Podcast #160 – Mobile Technology Overview – Sam Basu

Sam Basu is a technologist, author, speaker, Microsoft MVP, gadget-lover and Developer Advocate for Progress. With a long developer background, he now spends much of his time advocating modern web/mobile/cloud development platforms on Microsoft/Telerik stacks. His spare times call for travel, fast cars, cricket and culinary adventures with the family. You can find him on the internet as @samidip.

Square HeadshotNativeScript –
Kendo UI –
Telerik UI for Xamarin –
Telerik Platform –

Screen Shot 2016-08-12 at 1.36.38 PM





Posted in Angular 2, ASP.NET Core, Mobile, Xamarin | Tagged | Leave a comment

My Web Journey

In a recent post, I launched what will be a series on web development.  What better way to get this started than to review how we got here?  And to do that, indulge me, I will tell you (briefly) my own story with the web.

At Demo ’94 I had the opportunity to see the new ‘program’ MosaicaExported_ - 1 (1).  I had been working with the Internet for a good while, but this blew me out of my seat.  Here was a graphic rich environment with hyperlinks, that they were giving away for free.  Wow.
I had been working on a commercial effort named Interchange that did all this and a lot more, but it wasn’t free and it wasn’t open standards.  Needless to say, we were dead in the water (see the first chapter of my book Beginning Object Oriented Design and Devlopment (1998)).

From 1998 to 2000 I programmed the web in HTML and C++.  In 2000 I discovered C# and never looked back.  Two years later Active Server Pages came along, and once again, changed everything.  That was the real beginning of my professional web programming.

In 2007 I went to Microsoft to work on the XAML and C# framework:  Silverlight, and stayed until it was officially pronounced dead in 2012.  I then turned to XAML programming and evangelism until 2014 when  I started work with Xamarin (also a XAML & C# development framework; this time for mobile apps).

In 2015 I went back to being independent* and have been dividing my time between Xamarin and web programming since.  I created a number of web-oriented courses for Pluralsight such as Programming JavaScript from Scratch, Programming HTML From Scratch, CSS3 From Scratch and One ASP.Net From Scratch.  I also wrote a couple Pluralsight courses on creating Web Applications from start to finish, such as Building Web Apps and Services with EF and Web API and a few others.

I learned Angular JS through the efforts of my good friends Ward Bell and John Papa among other patient experts, and presented on Testing Angular JS at Angle BrackAngular2ets.  But then I closed my eyes and when I opened them a moment later, everything had changed.

ASP.NET 4 was now ASP.NET Core, and AngularJS was now Angular 2.  And these were not incremental changes; they were fairly revolutionary.  So I’m swimming as fast as I can to catch up.

Fortunately, the top level of ASP.NET Core is an easy transition from ASP.NET 4, and Angular 2 is not only better than Angular JS, it is easier to learn because it makes more sense.

This year I’m presenting again at Angle Brackets / Dev Intersections**, which is a kick, and in Moscow I’ll be presenting on Angular 2 (!)

That’s my story, what’s yours?  Please use the comments to tell me about your own history with the web.  By creating a common starting ground, we can move forward more quickly.



* My friend Andy Knight once said “Going independent is trading the illusion of security for the illusion of independence.”

** For $50 off, use the discount word LIBERTY

Posted in Angular 2, ASP.NET, ASP.NET Core, Web | 1 Comment

Back to the Web – but where to start?

In my previous post I described my desire to revive my web programming skills and tune up to the latest frameworks.  The question is: which frameworks, and in

Illustration depicting signs with a confusion concept.what order?

This is a question that I struggled over for quite a while; checking in with friends with expertise in various aspects of web programming.

I’ve concluded a few things so far:

  • You can’t learn everything at once
  • You don’t need to learn everything at once
  • It is important to leverage what you already know

Continue reading

Posted in Essentials | Leave a comment

Join my journey back to the web

For 20 years, I’ve been doing web programming of one sort or another.  I worked through web forms and MVC and SPAs and so forth.  Then, about three years ago, I started to focus on Xamarin, and only keep an occasional eye on the web.  dontpanic

Well, it’s time to brush off those skills and guess what?  Everything has changed.  The new version of ASP.NET is so different, they didn’t give it the next number, they changed its name to ASP.NET Core!  And Angular has given way to Angular 2.  And on and on.

So… over the next couple months I’ll be bringing myself back up to full speed and I thought it would be fun to bring you with me, blogging about the things I find on the way.

Continue reading

Posted in Angular 2, ASP.NET Core, Web | 2 Comments

Yet Another Podcast #159 – Shawn Wildermuth

Shawn Wildermuth is a world-renowned speaker, and a world-class Pluralsight author.
shawn-head-2016-square-800He has been tinkering with computers and software since he got a Vic-20 back in the early ‘80s. As a Microsoft MVP since 2002, he’s also involved with Microsoft as an ASP.NET Insider and ClientDev Insider. You may have taken one of his more than twenty courses on Pluralsight including his latest: “Building a Web App with ASP.NET Core, MVC, EF and Angular”.

Shawn has authored eight books and innumerable articles on software development. You can also see him at one of the local and international conferences he’s spoken at including TechEd, Oredev, SDC, NDC, VSLive, DevIntersection, MIX, Devteach, DevConnections and Dev Reach. He is one of the Wilder Minds. You can reach him at his blog at

His Hello World tour has crossed the country and the world in service to his Hello World podcast.

Shawn has been a Microsoft MVP for 14 years, and a friend for two decades.  He is the very definition of a gentleman and a scholar.



Posted in Essentials | Tagged | 1 Comment

$50 Discount at TechBash

I’ll be speaking at TechBash in September. Use this code: LIBERTY, (all caps) for a $50 discount.



Posted in Essentials | Leave a comment

$50 Discount on DevIntersections / Angle Brackets

I’ll be speaking at DevIntersections/ AngleBrackets in October. Use this code: LIBERTY, (all caps) for a $50 discount.







Posted in Angular, Angular 2, Essentials, TDD, TypeScript | Leave a comment