How Do I Choose the Right Web Framework?

  Рет қаралды 14,402

IAmTimCorey

IAmTimCorey

Жыл бұрын

How do I choose the right web framework for my project? Do I use ASP.NET Core? Do I use Angular? React? Vue? What criteria should I use when deciding what is right for my project? These are the questions we will answer in today's episode of Dev Questions.
Website: www.iamtimcorey.com/
Ask Your Question: suggestions.iamtimcorey.com/
Sign Up to Get More Great Developer Content in Your Inbox: signup.iamtimcorey.com/

Пікірлер: 55
@crustydev5561
@crustydev5561 Жыл бұрын
Dev Question videos are the main reason I watch this channel and I must say I appreciate your nuanced answer. It's not easy to "cover your bases" in such a short period
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I am glad they are so helpful.
@jediTempleGuard
@jediTempleGuard Жыл бұрын
Perfect timing :) Exactly what i was looking for. Thank you.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@kj2w
@kj2w Жыл бұрын
I've seen 2 scenarios with Frameworks: 'New person gets hired to team to write code. Front end framework is different than previous job's framework, so they embark on a quest to change the current app's framework to the framework from their previous job'. When asked 'What problem is currently there in current framework that new framework would fix?' the answer is almost always 'Everything'. Its usually a junior to newer mid-level dev problem. 'Long tenured senior dev or architect at company makes every new project a different framework cause, at that time, its the new 'hotness'. This is called RDD (Resume Driven Development). Ends up that they sell the idea to upper management, write what is essentially a 'hello world' app, then hands it off to the team while they go create a brand new app with a brand new framework. These people always seem to have been promoted cause they are no longer competitive in the market place and stay at a company for years.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I would hope you would have seen a framework used well as well (third category).
@kj2w
@kj2w Жыл бұрын
@@IAmTimCorey yeah, you'd think when asked 'Why did the company at the time chose Framework X?' would be met with a thoughtful and insightful answer. Nope, I've found its either 'The original dev new X really well so he went with that' or 'the project requirements had framework X specifically listed, so that's what this project is using'.
@UmanPC
@UmanPC Жыл бұрын
Definitely LIKE. Great video. Tnx Tim.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@viophile
@viophile Жыл бұрын
I have found it quite difficult to take into use .Net 6 based site in a Cpanel LAMP-server, maybe you could make a video on that subject.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@Nerin18
@Nerin18 Жыл бұрын
Is there an easy way of maintaining the firewall exceptions for Azure SQL DB? I got around the problem using proxy. Now I need a site alias and port 1433 to works. I know the list of servers that are used in my DB location but the maintenance can be a problem for my clients.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
The purpose of the firewall is to protect your database. The easier you make it to bypass the firewall, the smaller the protection it offers your site. Is the list of servers that uses your database changing that often? That seems like a problem to look into.
@faisalalhoqani6151
@faisalalhoqani6151 Жыл бұрын
Great video, dear Tim keep it up
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thank you!
@KILLBASE
@KILLBASE Жыл бұрын
It would be handy if there were time title parts on the video (don’t know how they are called exactly, but it shows a title for each section of the video on the play bar). I myself choose new frameworks that i don’t have any experience with for fun projects, and frameworks i like and know about for potentially serious proof of concept projects :D
@themixedfitness2233
@themixedfitness2233 Жыл бұрын
Timestamps
@FAHADBINYOUSUF
@FAHADBINYOUSUF Жыл бұрын
How Do I select correct design pattern for development before starting? for example: for which type of project should we select factory pattern, Singleton and other... your help will be appreciated Thanks
@rafachmiel4939
@rafachmiel4939 Жыл бұрын
What... do u know what design patterns are in first place?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
We don't start with "these are the design patterns that are needed for all projects". Remember, the purpose of a design pattern is to make your code better and simpler. However, they add complexity. So the only way to add a design pattern to make your code less complex is to already have more complex code. That means a design pattern will actually negatively impact your code until a certain point. Therefore, my recommendation is to learn how to build applications first so that you have a better handle on how large and complex an application will be before you start. At that point, it should become obvious which design patterns will be right for a specific application (each application will be different).
@micro2743
@micro2743 Жыл бұрын
.Net 7 is GA! I just made a suggestion on your suggestion site for a 10min video on Installing .Net 7, runtime, SDK, Visual Studio 22 v17.4.0, and Linux.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@ruchi__
@ruchi__ Жыл бұрын
What if you wanna learn your first framework?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Start with a language first. For instance, learn C#. From there, pick one framework to learn. But don't skip ahead to the framework. Learn the full language well first.
@micro2743
@micro2743 Жыл бұрын
Blazor, One Framework to rule them ALL! You must use the One Framwork, My Precious. Ok, yes, I know there are other frameworks, but I do no like any of them. Everything else seems like old news to me. Yes, I know this is bright shiney object syndrome, but right now it is a hot topic. I just hope Microsoft continues to support its evolution.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Which Blazor? Blazor Server? Blazor WebAssembly? Blazor Hybrid?
@micro2743
@micro2743 Жыл бұрын
@@IAmTimCorey All of them... Wait... Uno has WebAssembly... now I am torn... lol
@brynarn
@brynarn Жыл бұрын
C# is good for many things, but for web development it is too clonky. Too many lines of code for simple tasks. Node JS and React is so much faster. And with all the free packages and libraries it is my preference
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I would encourage you to check it out again. I think you've missed modern C# web development changes. For instance, I can get a full CRUD API up and running in less than 30 lines of code. With Blazor Server, I can create a client-side interactive CRUD form in less than 60 lines, including both the HTML and C# code. Both of these can be up and running within minutes of me deciding I need them. Oh, and I don't have to deal with npm or the massive dependency graph typically associated with a JS application. 😉
@siyata475
@siyata475 Жыл бұрын
@@IAmTimCorey Thanks for this great video!! Do you have a video demonstrating this?
@brynarn
@brynarn Жыл бұрын
@@IAmTimCorey Sure I will have a look at it some more :)
@arrrryyy
@arrrryyy Жыл бұрын
@@IAmTimCorey Also, you don't need to throw away you code in 3 years or so. It's not only because C# is strongly-types language, but because of the entire framework. Try a new developer to continue working on the code written by another in php or node. Almost impossible. While c# - no problems.
@quicktastic
@quicktastic Жыл бұрын
Just know that, whatever you decide, it will already be on it's way to being old and outdated a year from now and people will be suggesting you start converting to the newest and greatest thing. The biggest fault I see in web design is lot of thought going into the backend and little going into the user experience. That is what Amazon got right 20+ years ago. Think about the user of the website first and foremost. If the UI sucks, the site sucks no matter how much great thought and technology went into the backend.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I think the "outdated" idea is a myth. There is a difference between "not on the latest" and "outdated". For instance, Microsoft marks the even numbers of .NET as LTS (Long-Term Support) versions, which means you can still use the same version for three years, even though two new versions will be out by that point. Also, the "start converting" is a bit of an overstatement. For instance, the move from .NET 6 to .NET 7 takes practically no effort. Software has to be updated, because otherwise the bugs and vulnerabilities are not addressed, so even if we decided that new features weren't wanted, we still need to update our software. As for Amazon "getting it right" with UI-first, I'm not sure I would go there. The biggest part of Amazon is beneath the surface. But I do agree that a good UI experience is important.
@quicktastic
@quicktastic Жыл бұрын
@@IAmTimCorey Thanks for the thoughtful response Tim.
@gabrielgracenathanana1713
@gabrielgracenathanana1713 Жыл бұрын
The write answer: choose Angular, it is a must. Everything else is a "migration plan" -- migrate everything in that direction, piece by piece. Saying "it all depends" and then sell MS shit -- is not nice and honest.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Being so focused in on Angular is like saying your hammer is the only tool you need. Software development is about making wise decisions based upon the situation you are presented with rather than locking your choice in ahead of time. I love my truck, but I wouldn't take it to the racetrack. I also wouldn't take a racecar on a muddy path in the woods. Choosing the right tool for the job will make things a lot easier.
@gabrielgracenathanana1713
@gabrielgracenathanana1713 Жыл бұрын
this shows that you are indeed an old MS guy! I use that term not in a positive tone. It is close to "you are a asp page guy", or "you are a vb6 guy" in 2020. You mentioned all factors right, but you put the weight wrong. And, you put it in a silent FUD way, the typical old MS way. The key thing is, in your analysis, you never directly address technical issues. You always imply that people cannot learn a new technology within a few weeks. It is so strange!! You yourself actually learn new things. Why are you assuming that asp page people or desktop VB6 have to take much long time learning, for example, Angular, than learning Blazer? Why you sell MS stuff in such an "evil" way?!! Man, it is not cool.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
It sounds like you think "learning" a new technology means knowing how to build something small. That's not what I'm talking about. What I'm talking about is actually learning how to fully use a large technology. That takes time, especially since the biggest way you validate that you have learned something is to practice it. Using a technology seriously for the first time in production is a rookie mistake. By the way, I am an older developer in that I've been developing software professionally for 26 years this spring. In that time, I've been paid to develop in over 20 languages. They include VB6, C, C++, Java, JavaScript, Python, FoxPro, VB.NET, C#, SQL, PHP, Delphi, Fortran, Perl, HTML/CSS, Angular, and many more. As a consultant, I wasn't just asked to do little things. They would ask me to fix the hard things that they couldn't. In other videos, I've been very clear about the fact that C# isn't the only way. I use it because I like it a LOT, especially compared to the other options (very much including Java), and because of how versatile it is (it can run natively on almost any platform). To address your one comment at the bottom about why it would take someone longer to learn Angular than Blazor, that's a good question. The answer is that I stated at the beginning that I was talking to C# developers. If you already know C#, adding a web framework that uses C# is not nearly as hard as adding a JavaScript framework. Especially since you are already used to NuGet for package management and have things set up for that. You can reuse your libraries, etc. If you add Angular, you now have to add in npm (or similar) for package management, you have to add in all new libraries, and you still need an API powered by something (C# or Node, but either way you aren't done with Angular). That's a lot more work.
@allenbythesea
@allenbythesea Жыл бұрын
A lot of this is captain obvious stuff and really thin on content. Lately most of your videos have been all obvious / filler content and no meat.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
The premise of this comment is that people are born knowing things. From your other comment, it feels like your view is that this type of questioning isn’t valid, which I also disagree with. Growth comes from questioning what you “know” and want to know. My goal is to help people grow. That means answering questions, even if others already know the answer (or think they do). As for the comment about “most“ of my recent videos, I’m not sure what you mean. I release three videos this week on .NET 7 and how to use it. Are you saying they were “obvious” and had “no meat”?
@pjn2001
@pjn2001 Жыл бұрын
Link to where we can find your software dev videos?
@flogginga_dead_horse4022
@flogginga_dead_horse4022 Жыл бұрын
Hey, captain obvious, you obviously know it all and can stop learning. So why you here? Maybe you aren't his audience.
@mohammedmclovin4450
@mohammedmclovin4450 Жыл бұрын
@@pjn2001 AHAHAHA... that burns!
@Corvin_
@Corvin_ Жыл бұрын
Bruh these filler videos are terrible. The whole thing could be 30 seconds.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Sigh. Not filler, just not for you. Developers have questions. I answer questions. Not everyone has the same questions. That's ok.
@flogginga_dead_horse4022
@flogginga_dead_horse4022 Жыл бұрын
what a bonehead
@o_glethorpe
@o_glethorpe Жыл бұрын
What are you talking about? He made a lot of good points in my opinion
@allenbythesea
@allenbythesea Жыл бұрын
@@IAmTimCorey if someone is asking whether they should use a language most of their company is already using then maybe they shouldn't be in our field to begin with.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
@Allan A - I disagree. This question should be asked all the time. If you don’t, you start saying “our hammer is the only tool we need”. We need to question the decisions we make on a regular basis.
What Web Framework Should I Use For My C# Project?
20:07
IAmTimCorey
Рет қаралды 10 М.
How to OVER Engineer a Website // What is a Tech Stack?
11:20
Fireship
Рет қаралды 2,2 МЛН
JavaScript Framework Tier List
40:57
Theo - t3․gg
Рет қаралды 270 М.
I built 10 web apps... with 10 different languages
14:23
Fireship
Рет қаралды 1,5 МЛН
How Do I Structure My Application?
12:25
IAmTimCorey
Рет қаралды 16 М.
The Best Tech Stack for Web Developers
18:36
Suboptimal Engineer
Рет қаралды 68 М.
Everything You NEED to Know About WEB APP Architecture
10:27
ForrestKnight
Рет қаралды 430 М.
Python or JavaScript - Which One Should YOU Learn?
8:05
Tech With Tim
Рет қаралды 130 М.
HTMX, the anti JS framework (vs React)
7:17
Kodaps Academy
Рет қаралды 61 М.
Monolithic vs Microservice Architecture: Which To Use and When?
10:43