4 ms·
There's an older term for "local-first", aka, https://en.wikipedia.org/wiki/Rich_client https://en.wikipedia.org/wiki/Rich_client The thin/thick client cycle s
by bfung 3y ago
There's an older term for "local-first", aka, https://en.wikipedia.org/wiki/Rich_client https://en.wikipedia.org/wiki/Rich_client
The thin/thick client cycle starts again...
- bbor 3y agoHmm I just stumbled on this and am loving it so far, and your objection interests me: I'd be curious to hear what you see as the cycle? Lets say in WebDev only. My best guess: 1990-2010: *thin* static sites w/ minimal JS (e.g. JQuery). 2011-2019: *thick* SPAs 2020-2023: *thin* Server Side Rendered SPAs 2023-20??: *thick* Local-First apps Is that close to your thoughts? If so, I don't really see how this is promoting thicker apps. This whole approach assumes from the jump that you have complex state interactions on the client, and is just providing a wrapper around that to simplify syncing that state with the server. Couldn't you write a very thin SSR app that uses this paradigm to offload as much business logic (e.g. update cascades) to the server as possible? I suppose it would lose the offline capabilities, but otherwise it seems like the same fundamental approach. All of this is assuming we're not going with what Hacker News wishes was true: that pure static sites are becoming the standard again ;)
- barrkel 3y agoLet's not say in WedDev only, because the cycle predates web. Thin client - dumb terminals connected to a powerful central computer; 1960s, 1970s onwards Thick client - multi-tier architecture, 1990s onwards, with client typically running on Windows, communicating with an application server (three tier) or database (two tier); for two tier, almost all the application logic is in the client. Thin client - web browser communicating with web server; ~2000 onwards. The early versions are OCX controls hosted inside IE, basically hosting a Thick client as a downloadable control inside a web page, but it gradually migrates to web native as the browser gets more capable (AJAX revolution). Web native is a step change back to thin client compared to a client app or OCX control. Thick client - this article here, a continuation of a trend over the past couple of decades, as browsers increasingly resemble operating systems in the breadth of APIs, permitting building something closer to a classic two-tier architecture, with not much more than basic validation and data backup / sync support on the back end.