4 ms·
It used to be, back before SPAs were common, about 7-10 years ago. Rails, django, asp.net mvc - all of them had autogenerated most code, including html, handle
by Illniyar 9y ago
It used to be, back before SPAs were common, about 7-10 years ago.
Rails, django, asp.net mvc - all of them had autogenerated most code, including html, handled auth, persistance and such.
Even now if you don't go spa it's very common.
Spa changed things considerably and the stacks haven't caught up in maturity yet. But we are on the way there, especially node.js and react based stacks.
- sampl 9y agoFirebase is doing most of this for SPAs: auth is standard, data persistence is done with declarative rules (basically no written backend), and using Create React App for views handles most other things. I’m actually working on a boilerplate now to show how simple dev can be with these tools: http://getfirefly.org/ http://getfirefly.org/
- Illniyar 9y agoI love the idea behind firebase, but it's just not worth it unless they have triggers - even the simplest functionality is extremely hard without pre-persist triggers.
- sampl 9y agoCould you tell me a little more about what that means? Would like to hear what I’m missing out on. Possibly relevant: https://firebase.google.com/docs/functions/firestore-events https://firebase.google.com/docs/functions/firestore-events
- Illniyar 9y agoThese are async functions - which means they happen after the data is already in the database. They basically act like a producer/consumer pipeline. Triggers happen before the data is saved - which lets you change the request (or other data in the db) before it is saved or abort the request. Without it even trivial operations become hard - such as add a column from other places in the database, incermenting counters/cached aggregates, authorization that isn't role/access based, etc...
- sampl 9y agoAh, gotcha. I think I’ve been getting by with Firebase transactions for counters and db rules for complex authorization. Firebase doesn’t have columns. Can you share a specific use case that’s difficult to accomplish in FB?