We are living in a world of saturated SaaS products. There is always a service for that. Every single tool we’ve used to install on our machine now have a version in the cloud. From notes taking (Notion) to photo editing (Adobe) to designing tools (Figma) to even coding (VS code in the cloud). I think it’s fair to say, SaaS services pushes the instant gratification of getting things done to the limit. By the end of the day, all you need is a browser and a URL.
Of course this is not the complete story. Along with this convenience, you also have to accept couple of sacrifices as well. The always on connection, losing (at least part of) privacy, and dependency of the running service are among the most notable ones.
I can see there is an interesting come back of the original thick client software coming back. But this time is different than the prior web 2.0 days. Before web 2.0 we are doing thick client because of low performance of the browser or the lacking of interactivity of the web.
This time however, thick client or another cool term Local-first software is mainly caused by privacy concerns, decentralization of the future. It’s not all about performance, although that matters as well. But mainly we want something to be firstly working on my local machine, then we want that cloud-enabled ability to collaborate as well.
Please remember local-first doesn’t mean it’s built using native technology, although that’s the natural choice because local means close the native platform it provides. We can still leveraging web tools or browser to develop local-first software as well. As a web developer, I am particularly interested in building offline first software using web-assembly recently. It enables us to reach most of the people while not losing too much on the native performance.
Yes, there will be tons of people are willing to make all of these three sacrifices given it’s so compelling to just pay and forget about it. Software at the end of day, maybe to most of the people, is just a tool to get things done, to make some zeros to ones or vice versa. Also local first software might not applying to everything. For example, it doesn’t make too much sense to make a food ordering service offline first. But I think local-first software will shine the most on creativity and some productivity or privacy focused areas. Yes, this is what I will bet on and personally want it to happen.