Learning VB.Net in 2018
For those who know me personally you might be aware that I’m learning VB.Net for use at my day job. Up until a month ago, I was using my C# skills to create applications and API’s for my employer. However, this caused a problem and management told me I had to learn VB.Net ASAP. To be honest I had no problem with this because, I could probably find some good online resources that could teach me the language rather quickly, since I already knew the .Net Framework. However, things went down hill really fast. Most if not all the resources for learning VB.Net are either very out dated or very poor. With not having any luck, I decided to find a Microsoft Virtual Academy course on VB. However all the offerings Microsoft had were considered retired, and recommended that I learn C# instead or try this VB for Absolute Beginners course.
That course didn’t satisfy me. I didn’t need to learn how to use Visual Studio or how to use certain data structures. I knew all that from C#. Since VB and C# use the same .Net Framework and CLR. I can easily move my existing coding skills to the older language. I eventually found this course on Udemy. I took the course shortly before Christmas and found it to be very helpful. But still didn’t have the content I was looking for but, it seemed to teach what I wanted to know. Soon I began to practice my VB skills. I made a handful of small apps but nothing major. After feeling pretty good about myself, I decided to try some common CRUD actions using Entity Framework (EF), a popular ORM for .Net, and one of my favorite tools. I ran into the same issue with the initial VB learning. All example code was in C# not VB. I eventually figured it out but getting EF to work in VB is not straight forward and its very ugly with the syntax. For those that are curious here is a sample incase your wondering how it looks:
Comparing it to the C# syntax its very messy and verbose. In addition if your using Pogo classes in a MVC project You need to import them one at at time instead of importing the models namespace. Even though I’m sill learning VB its very clear that it is a afterthought at Microsoft and all development efforts are still focused on C#, as it should be. However, if your just starting out do not learn VB. You are more likely to see a C based language like C# rather than a language based on BASIC. Its only a matter of time before VB is retired. Please feel free to comment or reach out to me on Twitter with your thoughts.