Skip to main content

Brutally Honest Advice for New .NET Web Developers

 Brutally Honest Advice for New .NET Web Developers:

If you want to learn .NET in 2025 then what should you learn and what should not, In this article I am explaining complete .NET Roadmap and topic that is important to learn in 2025.

Learning C# 

The first thing you obviously need to learn is C#. If you don't know C#, you will get horrendously stuck. You need to be able to write a console application before you even begin to consider writing a web app of any type.

What Not to Learn

Visual Basic .NET: As a beginner, you should not learn Visual Basic .NET ever today unless you want to work on horrible legacy code.

F#: This is for people with galaxy brains, and you might not be there yet.

Moving to Web Applications

Once you are ready to move on to web applications, you should learn ASP.NET MVC first before you do anything else.

Core Concepts in .NET MVC

The reason you need to learn .NET MVC is that these three core concepts will be everything in C# and .NET web application frameworks:

Routing

View Models and MVVM

Web API and API Controllers

Basic Web Technologies

The next set of table stakes are HTML, CSS, and JavaScript. These are the basic building blocks of the web, and don't let crazy abstraction layers over these basic technologies distract you from actually learning the fundamental principles of how web pages are made.

Single-Page Application Frameworks

If you need to learn a single-page application framework, learn React. Don't bother learning anything else. Do not do Angular, and certainly don't try to learn Blazor before you can do MVC.

Foundational Software Architecture Concepts

You need to know the following:

Dependency Injection

SOLID Principles

Testable Code: You don't need to do strict TDD (Test-Driven Development) 100% red-green-refactor at this stage in your career, but you need to be able to write testable, decoupled code.

Recommended Books

To help you get there, I've chosen three books I would consider as Bibles for .NET developers:

Pro C# with .NET 6

Clean Code by Robert C. Martin: Despite his politics, you need to read this book because everybody else in the office will be talking about the contents of this book.

Dependency Injection in .NET by Mark Seemann: He is a genius. This is a classic book, and all the concepts still apply all the way through to the new dependency injection frameworks in .NET Core.

Databases

For databases, you need to learn SQL Server. 95% of applications using .NET will be in SQL Server. Do not be tempted to try and use PostgreSQL or MySQL at this stage. These are very esoteric options that very niche companies use with .NET.

You can use Entity Framework Code First as your ORM. You might want to experiment with Dapper, but you don't need to. Entity Framework will force you to understand LINQ as well, which is extremely important. You should also install SQL Server Express on your local Windows machine so you can get used to SQL Server Management Studio, which you'll be spending a lot of time with in your future career.


Types of Companies Using .NET

Be aware of the types of companies that actually use .NET:

Enterprise: Big companies, banks, insurance companies, and so on. Big and stable, may or may not be much fun to work at.

Small Software Companies: Started a long time ago, maybe a decade ago, that use quite old versions of .NET. They might have updated their stacks and frameworks, but there are not many new startups using .NET today.

Job Hunting Tips

When you are job hunting, be very careful with job descriptions:

.NET Core vs. .NET 5: .NET Core was rebranded to .NET 5, so be careful with job descriptions to ensure you're not getting a job that uses .NET Framework.

Red Flags: If the job description mentions WebForms, SOAP, WCF, or MSMQ, avoid those jobs to stay sane.



Comments

Popular posts from this blog

DSA in C# | Data Structure and Algorithm using C#

  DSA in C# |  Data Structure and Algorithm using C#: Lecture 1: Introduction to Data Structures and Algorithms (1 Hour) 1.1 What are Data Structures? Data Structures are ways to store and organize data so it can be used efficiently. Think of data structures as containers that hold data in a specific format. Types of Data Structures: Primitive Data Structures : These are basic structures built into the language. Example: int , float , char , bool in C#. Example : csharp int age = 25;  // 'age' stores an integer value. bool isStudent = true;  // 'isStudent' stores a boolean value. Non-Primitive Data Structures : These are more complex and are built using primitive types. They are divided into: Linear : Arrays, Lists, Queues, Stacks (data is arranged in a sequence). Non-Linear : Trees, Graphs (data is connected in more complex ways). Example : // Array is a simple linear data structure int[] number...

Conditional Statement in Python

It is used to solve condition-based problems using if and else block-level statement. it provides a separate block for  if statement, else statement, and elif statement . elif statement is similar to elseif statement of C, C++ and Java languages. Type of Conditional Statement:- 1) Simple if:- We can write a single if statement also in python, it will execute when the condition is true. for example, One real-world problem is here?? we want to display the salary of employees when the salary will be above 10000 otherwise not displayed. Syntax:- if(condition):    statements The solution to the above problem sal = int(input("Enter salary")) if sal>10000:     print("Salary is "+str(sal)) Q)  WAP to increase the salary of employees from 500 if entered salary will be less than 10000 otherwise the same salaries will be displayed. Solution:- x = int(input("enter salary")) if x<10000:     x=x+500 print(x)   Q) WAP to display th...

JSP Page design using Internal CSS

  JSP is used to design the user interface of an application, CSS is used to provide set of properties. Jsp provide proper page template to create user interface of dynamic web application. We can write CSS using three different ways 1)  inline CSS:-   we will write CSS tag under HTML elements <div style="width:200px; height:100px; background-color:green;"></div> 2)  Internal CSS:-  we will write CSS under <style> block. <style type="text/css"> #abc { width:200px;  height:100px;  background-color:green; } </style> <div id="abc"></div> 3) External CSS:-  we will write CSS to create a separate file and link it into HTML Web pages. create a separate file and named it style.css #abc { width:200px;  height:100px;  background-color:green; } go into Jsp page and link style.css <link href="style.css"  type="text/css" rel="stylesheet"   /> <div id="abc"> </div> Exam...