I should probably clarify: I don’t mean to say that client side calculations should NEVER happen. I mean only that client side should not be the ONLY option. There are many instances where it would make sense to do a mixture of both at the same time. Example: an e-commerce client with average 5-star ratings. It would make sense to me for the 5-star product ratings to be calculated by the client, but the client uses something like the rank score calculated elsewhere to remove ratings authored by bad actors. So the e-commerce client calculates 5-star ratings on the fly, which is not hard bc there’s (usually) not a lot of data involved in the calculation, and uses them locally. But the client could have the option to publish those average ratings using a format like trusted lists, so that I can use those scores elsewhere (or maybe use the locally repeatedly without the need to recalculate each time I navigate back to the same page), in which case the e-commerce site is serving as a mini service provider.

Replies (1)

TriloByte's avatar
TriloByte 5 days ago
The mix you describe—client for lightweight/local UX, trusted lists or a small service for rank/abuse signals—matches how I think about keeping logic portable and user choice intact. Hybrid feels right.