Thinking of moving to C# and ASP.NET 8 instead of Python and JavaScript

Kerwin

Free Member
Dec 1, 2018
892
192
I'm considering moving to C# instead of Python and JavaScript (backend) but was curious what people thought about that? I've used Django and Flask in the past with Python and Express.js with Node / JavaScript (backend).

I'm attracted by the fact that C# and .NET 8 are meant to be fast and scalable and will have a long life.

If you have any other recommendations what would they be and why would you recommend them?
 

rsshep

Free Member
Apr 9, 2014
74
8
45
It depends what you're building.

Most of the time the tech stack doesn't matter that much, what's more important is that whatever you build solves the problem that it was intended to solve.

I've worked various stacks over the years, and still use different stacks daily. Mainly PHP, Java (Spring Boot) and .NET + Angular.

My preference (and where I spend most of my time) is .NET + Angular, but I've recently started building apps in Blazor, which for MVP I'm finding great, huge time saver.

The only thing I will say is, if you're going to switch to .NET and plan on using MS Azure, it can get expensive, especially MSSQL databases.
 
Upvote 1

rsshep

Free Member
Apr 9, 2014
74
8
45
It'll be deployed on Linux (probably Fedora) and the database will be PostgreSQL (also on Linux).
They'll work fine I would imagine.

I'm hosting a Blazor app in a Docker container on a Linux Server, and using MySQL for the database.

The only issue I've come across so far is, when you're building unit tests, there's no in-memory MySQL database Nuget package, so I've had to incorporate a MySQL container in my CI environment that's spooled up during the test job.

I develop on an M1 powered Mac, which I think is testament to how far .NET has come recently.
 
Upvote 0
Surely you change to what works best for your project - cart and horse comes to mind!
 
Upvote 0

rsshep

Free Member
Apr 9, 2014
74
8
45
Surely you change to what works best for your project - cart and horse comes to mind!
Yes and no.

It depends what projects you're working on.

If you're working on fairly standard web applications then in most cases, your choice comes down to personal preference. I've worked on very few projects where the tech stack would have made any difference at all.

There have been cases where clients have stipulated use of a certain stack, mainly because that's what they're familiar with, or they have the expertise in-house to support the app going forward.

If however, you're working on something that has very specific requirements, for example, it needs to handle huge amounts of requests per second, then your chosen stack starts to become more important.

Then only recommendation I would give new devs, is don't chop and change your tech stack too much, as it can result in you never getting a deeper understanding of a particular stack, which is important if you want to specialise. I made this mistake, and it took years for me to come to terms with being a generalist developer and working to my strengths rather than being disappointed because I always wanted to specialise.
 
Upvote 0
There have been cases where clients have stipulated use of a certain stack
That isn't relevant to your original question - that is a commercial requirement.

If however, you're working on something that has very specific requirements, for example, it needs to handle huge amounts of requests per second, then your chosen stack starts to become more important.
Just what I said - use what is best for your project!
 
Upvote 0
If a client demands a stack, that is best for your project.
If certain code is needed for something, that is best for your project.

Sure, for most projects, multiple platforms can be used, however, not all - I refer to the 10-20%!
 
Upvote 0

Kerwin

Free Member
Dec 1, 2018
892
192
If a client demands a stack, that is best for your project.
If certain code is needed for something, that is best for your project.

Sure, for most projects, multiple platforms can be used, however, not all - I refer to the 10-20%!
The vast majority of websites are blogs/CMS/ecommerce platforms and don't necessarily require anything special. The one thing I can think of that might be a special requirement is if you are building a website which needs to handle a massive amount of traffic but even that can be mitigated by decent caching on both the backend and frontend.

Now if you were building something like a Twitch clone that is where things start getting specialised or you need to spin up and down hardware to handle traffic spikes because your traffic comes sporadically then that also might require doing special backend work.
 
Upvote 0
Upvote 0

gpietersz

Free Member
  • Business Listing
    Sep 10, 2019
    2,712
    2
    705
    Northwhich, Cheshire
    pietersz.net
    I've used Django and Flask in the past with Python and Express.js with Node / JavaScript (backend).

    I'm attracted by the fact that C# and .NET 8 are meant to be fast and scalable and will have a long life.
    Django is pretty scaleable. It is used by some huge systems such as Instagram and Disqus.

    Python has been around longer than C# and is more widely used. Its not going to go go away any time soon.

    The language you use is not going to be the bottle neck except in exceptional cases. You can run parallel instances of web frameworks, even over many servers. The most likely bottlenecks are the database and the available bandwidth. From the clients point of view slow pages come from loading assets, especially third party ones.

    Where you do have performance issues it is more likely to be application architecture or slow DB queries.
     
    Upvote 0
    I've worked with Django, Flask, and Express.js in the past, but I'm seriously considering a shift to C# and .NET 8 for backend development. From what I’ve seen, .NET 8 has strong support for scalability and speed, which is appealing as I look to build apps with longevity and reliable performance. C# also has a great ecosystem and community, and with Microsoft's continued investment, I feel confident it’ll stay relevant for years. Given my experience with Python and JavaScript, this shift feels like a natural next step to improve performance and tap into the power of .NET’s robust tooling.
     
    Upvote 0

    Latest Articles