3 ms·
Something I've noticed is that when you're building a backend, your program only ever interfaces with other programs. You can establish a reasonably predictable
by tenaciousDaniel 5y ago
Something I've noticed is that when you're building a backend, your program only ever interfaces with other programs. You can establish a reasonably predictable protocol. But when you build a front-end, you're interfacing with the human brain and all the messiness that that entails. It's an incredibly difficult thing to do well.
- mojuba 5y agoThis is exactly why frontends are orders of magnitudes more difficult to build if equal quality standards are applied to both back and front ends. A front end is a state machine that relies on a bunch of enormous framework layers. Give me an app, mobile or web, and I'll find a glitch or two in the first few minutes of using it. Backends on the other hand, like you said, only ever talk to other programs. And that means building a 100% correct and bug free backend system is not such a fantastical goal.
- Banana699 5y ago>Give me an app, mobile or web, and I'll find a glitch or two in the first few minutes of using it I find that a very strong claim, is it rhetorical or meant literally? If the latter, what can you find in (say) whatsapp* ? (*: aside from messages delaying or appearing out-of-write-order, which are probably backend bugs inevitably arising from its distributed nature)
- mojuba 5y agoI deleted WhatsApp a while ago so can't say right now. It is a pretty mature app that hasn't added big features in years I think, so I wouldn't expect a lot of bugs in it, but take a look at their version history on App Store, there are plenty of purely bug fix releases only this year.
- legulere 5y agoI think the biggest difficulty in front ends is that they are statefull. Backends are usually stateless and pass through data from a data store or a cache.
- valenterry 5y agoIt's the opposite. Frontends are statefull (backends are often also), but frontends don't deal with long living data. Everytime the app/site is reloaded/restarted, it starts with a fresh state. Backend however often has accumulated a lot of data tech debt over the time.