Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


What is Your Web Stack in 2022?
New on LowEndTalk? Please Register and read our Community Rules.

What is Your Web Stack in 2022?

raindog308raindog308 Administrator

I have a modest webapp to write.

I'm thinking of using Flask for the backend, as I know Python well. I did one large project in NodeJS for work and never really fell in love with Node.

Even though I'm a DBA by trade and lean towards traditional RDBMS, for this I could actually use anything. MongoDB (aka "Snapchat for data") never impressed me, and to be honest I think if I did want to do something NoSQL or storing JSON in the DB, I think Pg would work just as well...? I know I'm not the first or even the 100,000th to make that observation, though perhaps I'm completely wrong.

For the front end, either old-school Web 1.0 click-and-submit or perhaps React for the front, though my experience is limited to a single React class back in 2015.

What is your web stack in 2022?

«1

Comments

  • MrRadicMrRadic Member, Patron Provider

    .Net is great and getting better every year.

  • edited August 31

    I'd use Python aiohttp + aiopg for something like this. A few years ago I wrote a semi-large PHP webapp written the traditional way with server-rendered pages.

    Thanked by 1ehab
  • HxxxHxxx Member

    Backend:
    .NET or PHP

    Frontend
    Bootstrap + jQuery
    or
    Bootstrap + Vue
    or
    Bootstrap + Vanilla JS
    or
    Angular + Bootstrap
    Angular + Material

    Firm believer that JS belongs to the frontend. But of course Node exist, works well, so is all preference in the end.

    There is a new library or framework every day, hard to keep up with everything. Pick what works for you and master it. If get's boring, try new things. Don't get too weird or degenerate.

    When it get's boring try the github trending list. Is an excellent source to see what's up or what's new.

    Some people love tailwind for styling. Personally haven't tried it, heard excellent things.

    Thanked by 1ehab
  • AXYZEAXYZE Member
    edited August 31

    For backend .Net/C# is top-tier right now. Amazing performance, minimal API's, very nice release schedule (.NET 3.1 is LTS, .NET5 cutting edge, .NET 6 is LTS, .NET 7 cutting edge... you know what and when you will get)

    I had 0 problems migrating from .NET5 to .NET6 on every app! Whereas with Node hahahahha it is complete mess, I couldnt migrate even basic apps because there was soo many problems (for example node-fibers in Node 16 is gone). .Net is improving soo much every year and it is way faster than pretty much everything else, only some very niche frameworks built on C++ etc. are faster.

    For frontend you can use Blazor WASM from .Net ecosystem, but bundle size is quite big because of MONO and performance is not that nice. It is very nice for internal apps, but for public apps where SEO is very important and you want to view many components... I wouldnt reccomend it - Nuxt or Quasar Framework are the best options for it right now. Both of them are based on Vue, so pretty robust and very fast framework.
    You can also take a look at Svelte, it is also very fast, but I found Nuxt the best for my needs.

    For databases I think is PostgreSQL the best. Reads are quite fast (faster than MySQL), you can put JSON data to reach NoSQL performance, cache on RAM is working OOB very nicely, no drama with licensing and even searching works better than expected! One database to rule them all :)

    So tl;dr

    .NET Backend + Nuxt(Vue) Frontend + PostgreSQL

    Thanked by 2Hxxx nick_
  • HxxxHxxx Member
    edited August 31

    If .NET it makes lot of sense to use MSSQL @AXYZE for the relational part. Maybe is just me, but usually in enterprises (from my experience as consultant in the past) that's the way to go. Have seen Oracle DB too.

    You can always add an additional layer on top for cache or fast reads.

    .NET do works ok with MySQL / MariaDB, and possibly PostgreSQL too.

    In the end is all tools, performance will depend heavily on the developer techniques, experiences, etc.

    There are so many tools from normal to weird.

  • raindog308raindog308 Administrator

    @Hxxx said: jQuery

    I've used JQuery a bunch in the past but I've read comments online that it's fading out, though I take those with a grain of salt. For example.

    @Hxxx said: If .NET it makes lot of sense to use MSSQL @AXYZE for the relational part. Maybe is just me, but usually in enterprises (from my experience as consultant in the past) that's the way to go. Have seen Oracle DB too.

    My day job is managing teams of DBAs and we have Oracle, SQL Server, etc., so very familiar with the DB side. I've never been a Microsoft pro and don't care for their technologies at all (going back to MS-DOS!), but SQL Server is the one exception. I'm an Oracle guy from way back, but I do respect SQL Server. (and now you can run it on Linux).

    In this case, I'll probably use Pg just because we're trying to do more with it.

    @AXYZE said: For backend .Net/C# is top-tier right now.

    I find that interesting, as it wasn't something I'd considered. I'm assuming you're taking hosting on Linux, right?

    I did a couple toy C# apps but never really got into it because I'm not a Windows guy. I suppose after you know many languages learning another one isn't hard, but...that adds runway. Interesting to think about and of course the nerd in me says "oooh, piss away a week learning a new ecosystem, fun!" :D

  • jinxyjinxy Member

    Vue with Blade templates + PHP/Laravel
    or
    Nuxt + PHP/Laravel APIs

    CSS Frameworks:
    Tailwind or Materialize

    DB:
    MariaDB

    I could never get into the python frameworks, but really did enjoy Node + Express a few years back when I was trying to settle on a stack

    Thanked by 2exception0x876 nick_
  • HxxxHxxx Member
    edited August 31

    @raindog308 While Net Core have Linux compatibility (if I recall correctly), if you are using .NET and MSSQL I would stick with Windows Server. Is really super simple and it just works perfectly with that stack. IIS is friendly IMHO.

    You can try serverless too with Azure if you don't want to manage Windows Server.

    I have yet to see a business that uses this stack and Linux. Not saying there aren't. I bet there are a whole lot of people and companies doing that. Most of the time could be that the talent that work with that stack prefers Windows Server.

    Yes C# is top tier.

    Can somebody include a chart of programming languages vs Salaries?
    Those tend to be an eye opening.

  • MySQL and Elasticseach for the backend
    Golang for backend API server
    Vue for the frontend

    Thanked by 1ehab
  • Assembly for the backend, using asmhttpd
    ASCII text for HTML, using hecate hex editor

    I write the entire web from a rooted android terminal, I recommend the Wezterm for the TTY and Micro for the text editor.

    Thanked by 1wkm
  • My web stack is a piece of paper, ink, and a carrier pigeon that flies to my closest internet exchange and types it up for me onto one of them computer things hosted on a hamster with bad memory clicking on a telegram device to send signals to your computer-brain.

  • darkimmortaldarkimmortal Member
    edited August 31

    Good old fashioned PHP and MySQL for backend, with minimal 3rd party code. Static pre-generated pages for anything performance critical

    For the front end: plain HTML/CSS/JS with no frameworks other than maybe jQuery

    I pick technologies based on whether they can pass the 10 year test. Very few web technologies will work unchanged, or even exist, 10 years in the future

    I’m stuck maintaining a bunch of old websites and it’s the shitty hand written PHP ones that give the least hassle. The ones that use dependencies and unupgradable frameworks like Laravel 3 are a nightmare

    If an ecosystem differs significantly from how the C or C++ ecosystem works, it’s probably doing it wrong. Glacial change and manual dependency management are good, unironically

    Thanked by 1DataIdeas-Josh
  • CalmDownCalmDown Member
    edited August 31

    Ruby, Rails, React, C#, Java :) and I do not mention Oracle, MongoDB and such here.

  • For backend stuff I write myself, Rust with Axum

  • kasodkkasodk Member
    edited August 31

    I have just started programming web apps again after a couple of years' break.

    I use Django API for the backend and next.js and tailwindcss for the frontend.

    Next.js = SSR pages and pre-rendered (static/fast) pages.

    It is easy to create a modern-looking frontend without being a web designer with tailwindcss and headlessui.

    I have paid for tailwindui to support the project, but you can easily make similar-looking components and templates with just tailwindcss and headlessui.

  • exception0x876exception0x876 Member, Host Rep

    @jinxy said:
    Nuxt + PHP/Laravel APIs

    Same here. @raindog308 if you know Python well I think you should stick with it for a backend while you can try something new like Vue or React for frontend.

    Thanked by 1nobizzle
  • varwwwvarwww Member
    edited September 1

    You could use mariadb as a nosql storage as well. There are json functions now. I think postgres/mysql also has them.

    My stack is nginx-mainline + php8.x-fpm(or most recent stable) + mariadb(most recent stable or LTS) + redis/dragonfly https://github.com/dragonflydb/dragonfly (if I need to squeeze more performance)

    For full text search, either use the one provided by database (mariadb) or meilisearch looks promising https://github.com/meilisearch/meilisearch

    For frontend, I am still using bootstrap5+ plain javascript/jQuery since I hate keeping up with frameworks that is released every other day.

  • Python/Flask/SQLAlchemy/Postgresql/Bootstrap
    Make it minimal and simple

  • Debian/freebsd as the os, nginx and flask to serve content. There are also several old cgi programs in cpp running.

  • jsgjsg Member, Resident Benchmarker

    @raindog308 said:
    I have a modest webapp to write.

    I'm thinking of using Flask for the backend, as I know Python well. I did one large project in NodeJS for work and never really fell in love with Node.

    Even though I'm a DBA by trade and lean towards traditional RDBMS, for this I could actually use anything. MongoDB (aka "Snapchat for data") never impressed me, and to be honest I think if I did want to do something NoSQL or storing JSON in the DB, I think Pg would work just as well...? I know I'm not the first or even the 100,000th to make that observation, though perhaps I'm completely wrong.

    For the front end, either old-school Web 1.0 click-and-submit or perhaps React for the front, though my experience is limited to a single React class back in 2015.

    What is your web stack in 2022?

    I'm quite surprised to see something like this from you. No actually relevant info whatsoever (kind of data, size of data (e.g. expected current and max number of rows, rough number of expected number of users/connections/..., rough idea re performance needed, not even an OS) but (probably interesting) general "who is raindog" remarks and bits plus a dangerous very general question at the end.

    Lacking any and all relevant info I can't offer any useful advice re. your "modest webapp".
    Regarding the question at the end my "trap" sensors activate and I think that besides (hopefully) few developers who toil away at always the same kind of job in always the same context the correct answer is "None. Because every decent developer has/uses multiple stacks depending on the task at hand".

    Or no, wait, one thing at least I have: Oracle, M[whatever]SQL, PG - for a "modest webapp"? Seriously? If SQL then how about Sqlite?

    Thanked by 1stevewatson301
  • Debian + Haskell + Servant + PostgreSQL

  • v3ngv3ng Member, Patron Provider
    edited September 1

    Laravel + IntertiaJS (Vue) or Laravel + Blade
    plus FastAPI if needed

  • GoLang for backend REST and VueJS hosted in CloudFlare Pages for frontend

  • zhizhi Member

    php + vue

  • @exception0x876 said:

    @jinxy said:
    Nuxt + PHP/Laravel APIs

    Same here. @raindog308 if you know Python well I think you should stick with it for a backend while you can try something new like Vue or React for frontend.

    I agree.. Python is easy, yet powerful (Django Rest Framework) and React as frontend

    Thanked by 1exception0x876
  • React + Express (Node.js), mainly because I can share some types across them.
    Considering how no one mentioned Node.js backend so far, should I find another backend language?

    Thanked by 1nick_
  • HxxxHxxx Member
    edited September 1

    @Cabbage Node is perfectly fine. It depends on your experience and how long you have been a developer.

    For example if you have been programming before NodeJS was even a thing, there has always been this idea of JavaScript only being frontend. I'm confident that some might consider a sin that JavaScript is now used in the backend too.

    At some point it was considered a hipster thing. Nowadays JavaScript is super mainstream front and backend.

    There are many other languages perfect for backend that are more sophisticated. Usually (apart from NodeJS), you will find PHP (the most mainstream probably), C#, JAVA, Python, C++.

    I always say these are just tools. There is no need for elitism, in the end performance depends a lot on your technique and skills. Use what you are good and fast with. Get the job done, get paid, live.

    Thanked by 2nick_ Cabbage
  • AllesAlles Member
    edited September 2

    Been working with Rails for the BE and Svelte for the FE, with PGSQL for DB. I have been trying out Rust lately with Axum and I'm liking it so far.

  • HassanHassan Member, Host Rep

    Serverless Node with AWS is a really nice dev experience but doesn't fit every use case.

    For an especially simple web app I like Python with Flask + Peewee ORM, for more complex cases Django's ORM really makes it the best framework option out there. I personally hate dealing with SqlAlchemy

    Frontend wise I <3 React especially since hooks were added. And you gotta use TailwindCSS these days especially if you're not the best at frontend styling. Tailwind makes it really easy to get a nice looking UI.

Sign In or Register to comment.