Latest / DevQuestions with Tim Corey / 073 Should a C# Web Developer know Angular/React/Vue?
Transcript
- 0:00SPEAKER_00: Welcome to the Dev Questions Podcast with Tim Corey.
- 0:03SPEAKER_00: Join us each episode as we tackle the questions you are asking about a career in software development, understanding the industry, and new technology.
- 0:12SPEAKER_00: If you're just starting out or you want to grow stronger as a developer, this is the place to get your questions answered.
- 0:19SPEAKER_00: Now, here's your host, expert developer and online educator, Tim Corey.
- 0:25SPEAKER_01: Should a C sharp web developer know Angular or React or View?
- 0:29SPEAKER_01: This is a question I was asked recently by Steven, and I thought it'd be a great one to dive into is there's a lot of confusion around when do you learn these JavaScript frameworks as a C sharp developer?
- 0:42SPEAKER_01: So my first answer here is no, not at first.
- 0:46SPEAKER_01: You shouldn't learn these yet.
- 0:49SPEAKER_01: Because there's an order to doing this.
- 0:51SPEAKER_01: And the reason is the reason why I say that is because that the problem is that people think that a basic knowledge is worth something.
- 1:00SPEAKER_01: And it's really not.
- 1:02SPEAKER_01: Having seen a framework isn't enough.
- 1:05SPEAKER_01: Having seen C sharp isn't enough.
- 1:07SPEAKER_01: Having built a small hello world isn't enough.
- 1:11SPEAKER_01: You really can't even say that you're a C sharp developer if you haven't gone some into some depth into it, at least not for a business perspective.
- 1:20SPEAKER_01: Yes, you have written C sharp when you've done a hello world, but that's not going to help you in business.
- 1:26SPEAKER_01: So there is an order here.
- 1:28SPEAKER_01: So let's talk about what the order should be if you want to know C sharp, or you maybe you do know C sharp some, and you want to know when do I learn these web frameworks.
- 1:41SPEAKER_01: So the first step is to learn C sharp.
- 1:44SPEAKER_01: And when I say that, I don't mean learn a web framework in C sharp.
- 1:49SPEAKER_01: I mean learn C sharp the language.
- 1:52SPEAKER_01: People often get confused with the user interface of C sharp and C sharp itself.
- 1:58SPEAKER_01: There's a difference.
- 1:59SPEAKER_01: You want to learn the actual code.
- 2:02SPEAKER_01: Because when you learn C sharp code, that's when you really can go to any user interface and use that code.
- 2:09SPEAKER_01: So start with starting console applications, just writing C sharp code.
- 2:15SPEAKER_01: Learn C sharp code well.
- 2:17SPEAKER_01: Learn object-oriented programming, learn about interfaces and inheritance and all the rest of that good stuff that goes on in there, and then learn data access and the different user interfaces and and so on.
- 2:31SPEAKER_01: But really learn C sharp well.
- 2:34SPEAKER_01: And I don't just mean at a high level, I mean write applications in it.
- 2:40SPEAKER_01: Build actual things with it.
- 2:42SPEAKER_01: Don't just go through a few tutorials and say, okay, got it.
- 2:46SPEAKER_01: Now I'm gonna move on.
- 2:47SPEAKER_01: Because otherwise, you just have that top-level knowledge, that high-level knowledge that really doesn't help you when it comes to doing the job.
- 2:55SPEAKER_01: You need to be able to build something in C sharp that is of consequence before you can say, okay, now I can move on.
- 3:04SPEAKER_01: Once you're there, then move on to learning HTML and CSS.
- 3:10SPEAKER_01: Learn those two really well.
- 3:13SPEAKER_01: And again, no, it's not just saying, okay, I know a div tag, I know what an H1 is, therefore I'm good on HTML.
- 3:20SPEAKER_01: Nope, I want you to go deeper than that.
- 3:22SPEAKER_01: Learn about how layouts work, how the structure of HTML should be set up.
- 3:28SPEAKER_01: Learn about the new tags and the reason for the new tags.
- 3:31SPEAKER_01: Learn about how to build an actual website and then do that.
- 3:36SPEAKER_01: Actually build a website, actually use some more advanced CSS topics like um grids and flex and and all those other things that are newer, that you really need to understand how they work in order to build a really performant functioning website that looks good.
- 3:58SPEAKER_01: Okay, so learn HTML and CSS next.
- 4:01SPEAKER_01: After that, learn vanilla JavaScript.
- 4:04SPEAKER_01: Now you may not be familiar with the term vanilla in vanilla JavaScript, but basically what it means is learn JavaScript without the frameworks.
- 4:12SPEAKER_01: Not jQuery, not Angular, not React, not Vue, not some other library.
- 4:18SPEAKER_01: Learn just JavaScript itself.
- 4:20SPEAKER_01: Again, this is like learning C sharp before you learn the project types for the web.
- 4:26SPEAKER_01: Because by learning just JavaScript itself, you will have the skills necessary to move into Angular, React, or View, and even move between them because you understand JavaScript itself.
- 4:40SPEAKER_01: So learn JavaScript well again and build something real with it.
- 4:45SPEAKER_01: At that point, as a C sharp developer, move back and spend more time with ASPNet Core.
- 4:52SPEAKER_01: Okay, all five project types.
- 4:54SPEAKER_01: And yes, there are five.
- 4:56SPEAKER_01: There's API, MVC, Razor Pages, Blazor Server, and Blazor WebAssembly.
- 5:02SPEAKER_01: Use all five because as a C sharp developer, the only thing you have to really do is know the quirks about the actual UI you're working with.
- 5:12SPEAKER_01: And since all five project types use the same underlying core, there's a very few differences between them when it comes to your structure.
- 5:23SPEAKER_01: The rest is just you learning how the differences apply in your application.
- 5:28SPEAKER_01: So it's it's really not that hard to go from one to the other.
- 5:32SPEAKER_01: So learn them well and again build something with them, master them.
- 5:38SPEAKER_01: After you've done all of that, and you may be thinking, man, that's a lot of time and a lot of effort.
- 5:43SPEAKER_01: It absolutely is.
- 5:45SPEAKER_01: That's that's part of the learning process is putting in the time.
- 5:49SPEAKER_01: People want to shortcut this, but it's kind of like shortcutting weight loss or uh gaining muscle.
- 5:56SPEAKER_01: It's not something you can really do.
- 5:57SPEAKER_01: There's not a quick fix here.
- 5:59SPEAKER_01: And just saying, oh, well, I'll do it in a quick way, you're not gonna do it that way.
- 6:04SPEAKER_01: It's not gonna be actually helpful to your career to bounce around.
- 6:08SPEAKER_01: So, yes, dive into these, build real things with them before you move on.
- 6:14SPEAKER_01: Otherwise, you just won't have a skills necessary to do the actual job.
- 6:19SPEAKER_01: And at that point, after you've mastered all of these things, then I would consider, I don't say you have to, I would consider if adding Angular, React, or View, one of those, will improve your well-roundedness as a web developer.
- 6:38SPEAKER_01: You don't have to, but it might improve your odds of getting a job, it might improve what you can bring to your job.
- 6:46SPEAKER_01: So think about that.
- 6:48SPEAKER_01: Now, I said one of the three because again, trying to learn all three at a very high level means you don't really know any of them.
- 6:56SPEAKER_01: Now, having a good foundation in JavaScript and understanding how object-oriented programming works with C sharp, that's gonna bring a lot of skills to the table when it comes to all three of these.
- 7:08SPEAKER_01: So there will be some things where you're going, okay, that makes sense, and I can understand even at a high level, I can understand the structure of this and could probably do it.
- 7:17SPEAKER_01: But you still want to get in, practice, and build something of consequence.
- 7:24SPEAKER_01: So which of the three should you start with when you're at that point?
- 7:29SPEAKER_01: Well, view is probably the easiest.
- 7:31SPEAKER_01: View is beginner-friendly, especially again, if you know JavaScript, it's pretty beginner-friendly.
- 7:40SPEAKER_01: But if you're saying, well, yeah, I don't really care about beginner-friendly, I want the the best one.
- 7:46SPEAKER_01: Well, there isn't a best one.
- 7:48SPEAKER_01: It's up to you to figure out which one either works best for your scenario if you're gonna be building something yourself, or you need to look at the market and say, which one is most common where I am?
- 8:00SPEAKER_01: Now, that doesn't mean you have to choose the most common one, because there's probably any jobs in all three of them.
- 8:07SPEAKER_01: So you don't have to have a thousand jobs, you need one job.
- 8:12SPEAKER_01: So saying, well, this is the most common one doesn't mean you have to choose that one.
- 8:17SPEAKER_01: But choose the one that's gonna give you the best success in your career, with your project, or however you're gonna use it.
- 8:25SPEAKER_01: If you have a choice, pick the one you like the best.
- 8:29SPEAKER_01: Pick the one that you think works best with your style and in development, and pick the one that's gonna supplement your work already in progress the best.
- 8:39SPEAKER_01: All right.
- 8:40SPEAKER_01: So that's my advice for if you should learn Angular React or View as a C sharp web developer.
- 8:48SPEAKER_01: There's an order to learning this stuff.
- 8:50SPEAKER_01: It's not just, hey, jump in, because otherwise what happens is it becomes just this shiny object syndrome where you're you're looking, oh, that's a shiny object.
- 8:59SPEAKER_01: Go do that for a little bit, and you're basically wasting your time.
- 9:02SPEAKER_01: Don't waste your time.
- 9:04SPEAKER_01: Learn in order.
- 9:05SPEAKER_01: Learn C sharp, the language first, learn HTML and CSS next, then vanilla JavaScript, then go back to the ASPNet core web project types, all five of them.
- 9:18SPEAKER_01: Make sure you master all of them, and then consider which of the three JavaScript frameworks to move into next.
- 9:26SPEAKER_01: And yes, you can add two or three frameworks.
- 9:28SPEAKER_01: Just note the more frameworks you add to your toolbox, the more diluted they'll become, the learning you'll become.
- 9:36SPEAKER_01: Because you'll start to forget how to do the nuances of each and start to blend together, and it makes it harder for you to get a job in some ways because you'll have experience that's all over the place and not really um deep in any one area.
- 9:51SPEAKER_01: It's better to go deep in one area than it is to go shallow in five areas.
- 9:56SPEAKER_01: So think that through before you just jump into the next shiny object you see.
- 10:02SPEAKER_01: All right, thanks for listening to this week's episode of DevQuestion.
- 10:05SPEAKER_01: If you have a question about being a developer, definitely check out the previous episodes of this podcast.
- 10:12SPEAKER_01: It's both on YouTube as a video podcast as well as on your favorite podcast player.
- 10:19SPEAKER_01: Thanks for listening, and as always, I am Tim Corey.
- 10:22SPEAKER_00: Thank you for joining us for this episode of Dev Questions.
- 10:25SPEAKER_00: Tim is committed to making it easier for you to become a developer.
- 10:29SPEAKER_00: If you would like to help make more content like this possible, please like, subscribe, rate, and share dev questions.
- 10:36SPEAKER_00: You can also send your questions to questions at imtimcorey.com.
- 10:41SPEAKER_00: Until next time, remember, you are too smart and your time too valuable to waste it making all the mistakes Tim did.
- 10:48SPEAKER_00: When you're ready to learn to think and code like a professional developer, head over to imtimcorey.com and enroll in the course.