DEV Community

lumos94
lumos94

Posted on

.Net wannabe

Hello,

So I decided I want to pursue a career as a .net developer since I was doing C# at uni and I really enjoyed it.

But the thing is that I am a bit lost.

I do not know where to start and what to search for. I signed up on skillshare but I don't think that the tutorials there will be very much helpful.

So, what do you suggest to do?

For the past two year I was mainly involved with php, css, html, vuej, js and jQuery.

Alt Text

Top comments (7)

Collapse
 
negue profile image
negue

Reading your previous involvement in server/website languages, you could start with ASP.Net WebAPI

For a php-replacement you could start with ASP.Net MVC (if your server should also return dynamic server side rendered html)

What is also nice you could try to recreate your apps / algorithms you learned with any of your current ones in C# (ASPNet or simple console applications), that way you'll probably learn and harden those skills.

At some point you'll be able to pick up a new language with ease since most of it has the same-ish syntax (and you don't have to relearn logic-stuff again )

Collapse
 
lumos94 profile image
lumos94

Thank you for your reply.

Do you have any links to tutorials or names that you think it would be helpful?

Collapse
 
negue profile image
negue

I wouldn't go for tutorials, I'd rather suggest to pick a topic / app idea you want to build (if you don't have one - how about building a snake game ? :) )

Once you have your idea, you pick a ui target html/server => ASPNet, Windows Apps => WPF / UWP, a game? Unity / Godot

But here is the most important part, and I'm not kidding, "You just need to learn how to use { insert any search engine here} ". This is probably the best way to get into any language or your project.

You search for "how to create a GUI in XY", found it, took the examples -> it works (hopefully :D, if not search for the exceptions).

Next: how to saving data -> same process. While beginning, those examples are enough to get the first achievements.

Then there will be probably some running slow -> again same process.

What I'm trying to say / write: Now days you don't have to learn years ahead a language in-order to begin your journey, everything is available online.

Jump in, try something, fail, learn, repeat.

Collapse
 
dansilcox profile image
Dan Silcox

I've recently switched from being primarily a PHP dev to a C# .NET dev and loving it so far! I was fortunate enough to be in a company that did both and was able to cross-train me largely by throwing me in at the deep end, with support from more experienced .NET devs.

What really helped me was, as others have said, comparing like-for-like concepts between an existing PHP app and an existing .NET one of the same time (e.g. a Slim 3 or Zend Expressive REST API vs a .NET Core WebApi). There are plenty of examples online if you can find them. From a more "rudimentary" point of view, i.e. learning about language concepts, key libraries like Entity Framework, Linq, etc, Pluralsight has some great stuff.

The most important thing is to try not to stress yourself out with it - enjoy the journey of learning it! If you get stuck, take a step back, go and get a cup of coffee, take a walk and when you come back you might find the answer jumps right out at you! If not, the Microsoft docs are pretty good and googling error messages will be your friend :D

All the best :)

Collapse
 
lumos94 profile image
lumos94

to be honest I was thinking of learning laravel and java along with vuejs but at the moment I got a bit confused on what will be the right thing for me :P

Collapse
 
dansilcox profile image
Dan Silcox

There’s time :) don’t feel you have to rush to learn it all at once. Keep inquisitive and keep learning but don’t put too much pressure on yourself to be an expert at everything at once :) once you have a good understanding of one language / framework there is quite a lot that transfers to others, though always new parts to learn!

Collapse
 
integerman profile image
Matt Eland

I guess it's a matter of specifics. What do you want to do with .NET?

I'd recommend jumping in on a project where you're doing back-end development as it minimizes the quantity of UI-specific logic and rules you have to learn at the same time (which can be significant both with ASP .NET and with XAML-based apps).

You could try a console app or an API project like negue suggested.

The biggest things that will help you learn .NET are learning the syntax of writing classes and methods, followed by learning the basics of collections, generics, and LINQ. You'll likely need to add databases to the mix as well, but these things should give you a firm foundation.