Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think stacks that run on Java / .NET provide the best value in terms of productivity and costs when chosen to develop large web apps.

Sure, Django might be easier to start off with, but if you want to optimize your app, there is only so much you can do. However, the non-optimized performance of an ASP.NET core web app (developed as per Microsoft recommendations) is orders of magnitude faster than any Django App, without any explicit optimizations.

It also helps if you can split your app into an API and a client app, as APIs consume a lot less resources than traditional web apps.

It makes sense, going forward in a cloud dominant world, that the traditional web app development process, where HTML is passed around over the wire, a new set of HTML for every page, has to die.

Its imperative to replace it with modern stacks, with the client separated from the API.



It doesn't take a lot of consideration to arrive at the conclusion "modern = good", but I assure you, it's not imperative nor plainly better to make everything into a bundled js webapp.

The boilerplate code for basic web apps often dwarfs the actual content of a basic web page. You could also make the argument that many things designed as web apps have no business running in a browser and should be written as standalone applications, but what's "best" in some sense isn't always the most pragmatic thing.


> It also helps if you can split your app into an API and a client app, as APIs consume a lot less resources than traditional web apps.

We shouldn't focus so much on what's best for us (at least in operating costs) that we sacrifice what's best for the end-user. In many cases, a conventional server-rendered web application is what's best for the end-user. If we develop one of those by combining an API backend with a separate server-rendered application consuming it, we've likely added extraneous complexity and resource consumption to get back to what we used to have in an integrated server-rendered web app.

Also, as DHH has written [1] [2], an integrated system, a.k.a. monolith, is best for programmer productivity and especially for getting the most out of a small team of generalists. I want to use a framework whose authors and community are opinionated about this. It seems to me that the Phoenix framework and the broader Elixir community fall into this category, while still delivering pretty good performance. I've also taken a hard look at ASP.NET Core, but I don't think it's as focused on the integrated approach. So, after being undecided for too long, I'm using Phoenix for my new project.

[1]: https://m.signalvnoise.com/integrated-systems-for-integrated...

[2]: https://m.signalvnoise.com/the-majestic-monolith/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: