I’ve been a software engineer for almost 2 decades now, and I love it. I spent much of that time teaching others how to program, and it amazes me how much I love watching others get as excited about creating software as I am.
One thing that really motivates me is when I see my kids get excited about programming. There are so many good resources out there for kids to learn programming these days, but at the same time, I think that there are many things that can be done to improve the quality of the resources that are available. I’ve personally been involved in designing and writing software as well as designing and teaching software courses. So anyone who knows me, realizes that I have plenty of opinions (I guess we all do).
But recently, it seems like there is a constant nag for me to take the topics that I know and love (which seems to grow daily) and to create my own training materials. I’ve been slowly gathering recording equipment that I need to make this happen for several years, and I think that the time has come for me to start putting it all together (in my spare time – whatever that means).
One of the hardest parts of this process is trying to decide what topic(s) I want to start with and then grow from there. So I thought that I would begin by listing the topics that come to mind and ask for your opinions.
I am planning on using this blog and my YouTube channel to add relevant content, but in order to really provide a great learning experience I will need a good platform that allows me to structure the content the way I want. I’ll use http://www.udemy.com to structure and deliver my courses.
Here is a list of topics for which I am considering writing content – let me know if any of these topics interest you, that will help me decide where to begin. This is a pretty long list and the topics are not listed in any specific order – so here goes.
- Introduction to Programming
- Choosing your first programming language
- Programming with C#
- Programming with Java
- Programming with PhP
- SQL Programming
- Object Oriented Design Principles
- UML for the Agile Developer
- Advanced .NET Framework Programming with C#
- ASP.NET MVC with .NET Core
- Developing Cross Platform Sites with .NET Core
- Developing SQL Server on Linux
- Relational Database Design and Development
- Data Warehouse Design
- SQL Server Analysis Services with Multidimensional Modeling (SSAS – MDX)
- SQL Server Analysis Services with Tabular Modeling (SSAS)
- SQL Server Integration Services (SSIS)
- SQL Server Reporting Services (SSRS)
- Test Driven Development
- AngularJS 1.x
- HTML5 and CSS3
- MongoDB design and programming
- Mobile Application Development
- Xamarin Studio (developing Android and iOS with C#)
- Programming with Swift (iOS)
- Complete Web Developer Bootcamp for C# (Angular2, TypeScript, CSS, ASP.NET MVC and SQL Server)
- Complete Web Developer Bootcamp for the open stack (Angular2, TypeScript, CSS, Node.js and MongDB)
- SQL Server Database Administration
- SharePoint Administration
- SharePoint for Site Owners
- SharePoint for Project Managers
- Developing SharePoint Workflows
- Windows Communication Foundation
- Developing Microsoft Workflow Foundation
- WPF Application Development
- Windows Forms Development
- Developing Windows Store Apps