As technology evolves, our stack does, and it brings an important decision to make when selecting your stack to use!
What backend are you using? W...
For further actions, you may consider blocking this person and/or reporting abuse
Every project is different, everybody has different needs, and so on. Yet I have been using this stack for practically 10 years and always found that it was easy and straightforward to use for the dozens of apps I built in the meantime:
Exactly,
The rapid development speed that Django provides and stability for the big projects is a huge plus. There are almost a few good packages available for most of the generic application needs.
With all of the above, you mentioned if you add NGINX its the most go to stack for me 👍
Oh yes. Nginx. I've got so many of them :D
Awesome stuff about PostgresSQL, will definitely have to check it out.
I maintain my own. I discovered the project about two hours out from giving up on the state of relational data access with Node and rolling my own framework. I've been using it for something like four years at this point, and not quite two years ago, the original developer moved on and I took over the project.
Two points to the elevator pitch:
For our current project we are using a C# WebApi backend, which connects to a MySQL database hosted on RDS and AWS Athena for the big data part. The MySQL part is handled through nHibernate, but I'm personally not happy with this framework and would rather see it replaced by something a little more lightweight and easier to use. As for AWS Athena, I tend to think the cloud services pitch themselves. We had to search for a scalable and affordable big data solution and AWS Athena came out as a winner. It is really fast on the queries we are running, easy to update and cheaper then any other solution.
Imaginate server which supersede even outperforms all moving parts of your backend stack like NoSQL database, graph database, search server, cache server and application server.
Imagine how much pain caused by integrations you could avoid and how much time needed to learn, set and maintain all moving parts of your stack you could save by having one stop shop highly available and scaleable solution where Javascript rules to all.
Then give a shot to ArangoDB and make your dreams come true.
Stack
ArangoDB - highly available Multi-Model NoSQL database with integrated JS framework powered by Google’s™ V8
Node-RED - flow-based programming for the Internet of Things
Depends on the client.
Lately: Flask/Django/Python or Go (framework less) or Rails/Ruby
The common denominator is PostgreSQL. I use Redis as well.
I don't like Django that much, in a specific case it was his admin framework to be a factor in the choice.
In the future I don't know: I hope more Flask/Python and Go :D
Elevator pitch for Flask:
it's super simple but it can scale to big apps thanks to composable apps. It mostly gets out of your way: you can decide to use an ORM or not, it doesn't care (data mappers are appreciated). It's not the fastest ever but you already know that most of your issues are I/O related, don't you? :D
I am just curious, What are the things that you disliked most about django?
I have nothing against it, is just that lately I favor simplicity and lightness and Flask has both.
Django has better "defaults" being a full framework. The admin is miles ahead any admin for Flask but, apart from the obvious plus of having a bigger community and hence more "plug-ins" I don't have a compelling reason to favor it over Flask.
My typical toolbelt includes Rails and Node for the backend. For sites with tighter deadlines, lower performance restrictions, or less interactive frontends, I usually reach for a vanilla Rails backend w/ Postgres + Heroku. For more involved web apps, Node is usually my choice and nowadays I might also consider a GraphQL server powered by Apollo Server.
Elixir/Erlang for the backend apps. I usually use Phoenix framework for the web/http part.
Postgresql as database. It also has JSONB support when I need to store data that I don't need to query too much.
Redis/Mongo for storing not-so-important stuff (eg: caching data or events). Sometimes I rely on Erlang's ETS (in memory, concurrent, built-in key-value store) instead of Redis.
Nginx as http server and/or reverse proxy.
When I can chose, I always go for FreeBSD as server OS. I don't like Linux anymore (at least since systemd). It's easy to use, very well documented (official Handbook and well crafted man pages), stable. When I need isolation/container-like stuff, I use FreeBSD Jails (a sort of builtin LXC, the foundation for docker).
Ansible for server provisioning.
Depends, but my favorite stack is
Slim 3 - the fastest framework for PHP atm
Vue.js - which needs no introduction ATM but a couple of months ago it was a risky decision
nginx - the best server for doing weird things, glorious config
MariaDB - the standard db
PHPUnit and xDebug for backend testing and analisys.
I also enjoy developing plugins with the PHP-CPP library. Once, I wrote a web enabled face matcher based on dlib and hosted it via a plugin.
Other than that, composer, npm. Deploying the frontend via CDN and reverse proxy, backend usually on specific subdomain. Clean cut between front and backend.
Recent deliberations involve going redis and NoSQL, CI/Testing automation. Otherwise, this stack works swell, it's easy to onboard new developers and gets results fast once the simple patterns are understood.
I've been using ASP.NET Core for the backend for the past three years. I've coupled that with PostgreSQL DB and it's worked perfectly. I'm migrating to Microsoft SQL server because that's what I'll have available in next environment.
Also, currently been playing with RabbitMQ and MassTransit service bus to transfer messages between services.
ASP.NET Core is fast, open source, cross-platform, and comes with great documentation and community.
Rails on Heroku, with Postgres and Redis. I work alone rather than as part of a team, and the convenience and productivity of these tools is phenomenal under those circumstances. The Rails team has done a great job keeping the framework up-to-date too, making it both well-established and continually improving. It hands you a lot of configuration by default, including important security options. Abstracting away virtually all ops concerns via Heroku has been invaluable to me.
Rails is opinionated, so the biggest reason not to use it is if your opinions differ from those it is based on. Additionally, if you are a fan of static typing over dynamic, you will hate it. If you're concerned about memory usage, you will hate it. If you rely on a compiler to find errors for you, you will hate it. Rails lets you build your app fast, but that means you build up technical debt just as fast if you are not disciplined as you go.
As for Heroku, the biggest reason not to use it is that the shared infrastructure leads to variable performance. My response times and memory usage vary from day-to-day. This is an issue that isn't unique to Heroku, but more a byproduct of shared cloud infrastructure. Heroku also restarts all dynos once a day, so if you rely on long-running processes or have long startup times it might not be a great fit.
Quite depends on the client
Back end: SpringMVC, MyBatis, Hibernate
Front end: AngularJS, Iceface, ExtJs
Database: Oracle
SpringMVC and Oracle may be the core technology.
At my workplace it's rather mundane: Oracle DB and Java EE for the most part.