The Plan: Online LearningI'm a huge fan of online learning. Among my favorites are Lynda.com, The Teaching Company, Pluralsight, Udemy and Code Academy. To learn .NET, I have turned to Udemy.
Udemy has piles of tutorials for ASP.NET. It is often hard to tell the good from the bad, and the recent from the dated. The ratings and number of students are a good place to start. I'll list a few of my favorites so far below.
I decided to pick up a range of courses that cover C# basics, .NET 4.5 (4.5.1, 4.5.2, 4.6 and Core), courses featuring Visual Studio 2017 back to 2013. Prospective employers won't always be on the bleeding edge, so it is good to have exposure to environments that were new 3-5 years ago as they will be common today.
A few weeks ago, I worked my way through an excellent course by Tom O., Beginner's Guide to OOP With C# and Visual Studio 2017. This was a phenomenal place to start. I am familiar with design patterns and other object oriented programming concepts, but only through the limited window of ColdFusion scripting. Tom walks you through polymorphism, inheritance, properties, interfaces, and abstract classes with fun examples. What I liked most was that he leaves gaps for us to fill on our own. In one lesson, he creates an archer object with a count of arrows property and a method to shoot them. Call the shoot method enough times and the arrow count will go negative. This bugged me, so I figured out how to stop it from happening. The example code is littered with little annoyances like this that will drive born-to-code developers nuts - in a good way! The best teachers give students the tools to solve problems and demonstrate without over-explaining.
The Complete ASP.NET MVC 5 Course, by Mosh Hamedani. Mosh has some of the most used, highest rated courses on Udemy. From the introductory material that I've seen, he is pleasant and easy to understand. In the coming weeks, I will be posting riffs on (i.e. my own modifications of) the examples he gives in his lessons on GitHub. (I will be setting this up tomorrow.)
Many years ago, I started working on a .NET project using the then "brand new" MVC 5. In this blog, I even kept track of the MVC 5 books that were coming out (and shamed the upcoming publications whose release dates slipped over and over again LOL!) I'm very excited to finally come back around to this topic.