4 ms·
I feel your pain. My career happiness peaked around 2014 or 2015, when I was writing Rails monoliths. I felt like I could focus 100% of my energy on business lo
by hnuser847 4y ago
I feel your pain. My career happiness peaked around 2014 or 2015, when I was writing Rails monoliths. I felt like I could focus 100% of my energy on business logic since the framework was so opinionated and the stack was simple. Things went rapidly downhill after that, once microservices, SPAs, node.js, NoSQL, and serverless computing started becoming popular. Everything just felt like a step backward. Microservices made simple things (like transactions) impossible. Express felt like a degraded version of Sinatra. NoSQL, frankly, is utterly pointless, and I have no clue why it ever caught on. Serverless computing is interesting in some respects but the places that I've worked that have gone all in on AWS were total disasters. SPAs are definitely useful for rich, interactive front-ends, but the trend to make everything a SPA and render everything in JS is totally nuts.
I ended up switching to a PM role, where I can focus on the business problems without having to worry too much about the implementation. I do miss coding a bit, but it's not fun enough to do full time anymore.
- Ziggy_Zaggy 4y agoThis resonates* heavily. I moved to writing web-code for personal purposes only. Now, I specialize in other types of technical areas for paycheck purposes (C++, Git, PM support, computer HW maintenance and procurement, similar overly niche technical tasks, etc).
- globular-toast 4y agoI still work on a Django monolith and agree on being able to focus 100% on business logic. I've found Angular is excellent for "sprinkling" a little JS into the frontend where necessary rather than going the full SPA/React route.
- nakatu 4y agoHow is Angular adding just a sprinkle of js to your web app? Isn't the ouput of building an Angular app a full SPA?
- globular-toast 4y agoI am using the "original" angular-js, not the newer Angular whatever version it is now. It's not a full SPA. I just include angular.js and put the ng stuff in my HTML. Maybe the new Angular is different?
- ornornor 4y agoYes, angular 2 (which means anything after angularJS) is a full on SPA just like react is. I think stimulus is more like angularJS. But modern angular definitely isn’t.
- robben1234 4y agoI worked on multiple Django monolith projects in the past years where parts of it with heavy client-side logic were offloaded to tiny Vue.js applications injected into the html template. If data requires reloads or manipulations a side restful api needs to be created along the main endpoint which renders html. But it's fairly straightforward with DRF and the enforced by default apps/models structure of Django. Until a certain point I find this arrangement enjoyable to work with. Once it stops, it's clear as day that the page should be rewritten from scratch with rendering on client side.
- alephu5 4y agoHave you tried htmlx? It fits this gap quite nicely, it's lets you do AJAX with SSR.
- linux2647 4y agoAnd I think that’s why some stacks like Hotwired and Phoenix have decided to let the server handle a bunch of common JS use cases so that you don’t need some all of the frontend complexity like with React
- erlich 4y agoSpot on. Rails just let you get shit done. All we needed was a Rails for Node.js.
- tsp 4y agoThere is a Laravel for Node.js - https://adonisjs.com/ https://adonisjs.com/
- omnimus 4y agoAnd Laravel is essentially Rails for PHP
- 0xblinq 4y ago+1 for Adonis. I've been using it for some time, together with unpoly + alpinejs and it's a real pleasure. I'm really productive with this stack. In fact, their docs site is built using these tools: https://github.com/adonisjs/docs.adonisjs.com/blob/develop/package.json https://github.com/adonisjs/docs.adonisjs.com/blob/develop/p...
- mfontani 4y agohttps://mojojs.org/ https://mojojs.org/ might just do the trick?
- reducesuffering 4y agoRails for Node.js is Next.js + Prisma
- 0xblinq 4y agoYou have never used Rails, have you? From the top of my head, you'll also need libraries for: - Background jobs - Validation - Translations/i18n - CSRF and other common security considerations - Testing (and integration testing) tools - Logging - Email sending - File uploads (S3 storage, etc) - Websockets And then write the glue code to make all of this work seamlessly, document it for others to understand how you made it work together, ensure there are no security holes and battle test it in production. Saying that Next + Prisma "is Rails for Node" is like saying a moth is an airplane just because both can fly.
- mhuffman 4y ago>NoSQL, frankly, is utterly pointless, and I have no clue why it ever caught on. It caught on because "feature factory" startups used simple frameworks to make an MVP and didn't know shit about RDBMS administration, optimization, or schema planning so when it was schema migration time it was time for things to start breaking. With NoSQL (specifically the "document store" types) you could just keep throwing shit in there whenever you needed it -- magic schema migration! And it was "Web Scale"©!
- thepra 4y agoI've been through projects that gave schema migrations and when there was any mistake or error during schema migrations it was a real big pain to rollback, fix and release. With mongodb this is gone, schemas are no more of an issue as long as you make sure to keep the models sane and the business logic of the fields up to date.
- quickthrower2 4y agoSchemaless means anything can come put of the DB, or be put onto it. It adds a lot of work to the app developer to keep things validated and secure and there are more exceptions to handle. Definitely a trade off. Never had big issues migrating schema-ed databases.
- snicky 4y agoSorry, but when I see "Web Scale" or "MongoDB" I can't help but recall https://www.youtube.com/watch?v=b2F-DItXtZs https://www.youtube.com/watch?v=b2F-DItXtZs