1,249 karma · joined August 14, 2015
personal website: https://hyperknot.com/
email: zsolt@maphub.net
If you implement auto-save, users will expect every click/keystroke to be saved, like how Google Docs does it. Simply adding a 1-minute timer will make people lose work in the last minute, as they switch tabs, go offline, etc. and forget about it for days, when the browser clears tab state.
The other reason is that there is no Undo-Redo implemented on MapHub. Implementing Undo properly in a web app is not trivial if you haven't designed the whole app around a time-traveling state management. It's actually a really difficult problem to solve, even though it looks simple on the surface. Combining it with real-time collaboration is even more complex. Short story: there is no Undo-Redo.
So if you don't have Undo, then Save button plays the role of making a checkpoint, trying out something, reverting if needed. With autosave this could be ruined.
Also, you write that you expect every web app to auto-save, but this is still not the universal case today and definitely wasn't the case a few years ago. I agree that most VC-backed startups with hundred-million-dollar valuations have autosave in their web apps. Again, the proper solution is to have a time-traveling diff system implemented, which can easily get really complicated with real-time multi-user collaboration. Have a look at Figma's technical blog post about this topic [1].
You might be right in saying that it's not a generation of users, but the same users being conditioned to web apps doing auto-save. I agree this is probably the case. The point of the article is this definitely wasn't the case all the time, and how I've experienced this on my side, during my 8+ years of running MapHub.
[1] https://www.figma.com/blog/how-figmas-multiplayer-technology...
Of course there is the "Previous versions" feature, but it still breaks my logic of Checkpoint-Experiment-Revert cycle. But I might be alone in this and users would be happier with autosave.
Update, answered in detail here: https://news.ycombinator.com/item?id=42016231
Update, answered in detail here: https://news.ycombinator.com/item?id=42016231
Update, answered in detail here: https://news.ycombinator.com/item?id=42016231
Update, answered in detail here: https://news.ycombinator.com/item?id=42016231
Update, answered in detail here: https://news.ycombinator.com/item?id=42016231
Thanks for bringing it to the Free accounts, great outcome!
Also, the article is about DNS-RR, not the L7 solution.
But you really need to implement email change for users. It's a joke that it's not offered, that's a standard feature for every SaaS v0.1
I'll write an updated article for 2024 but as you've mentioned here, it's almost impossible to follow this landscape. So many solutions appeared during this time.
My recommendation right now would be to either:
- Use a reliable framework with a well-tested built-in solution like Rails/Django
- Choose WorkOS / AuthKit (1)
Some more thoughts:
- Clerk didn't turn out to what I thought when writing this article. Their offering is very much targeting the JS ecosystem, especially Next/Remix, it's not an universal solution.
- It's difficult to recommend hosted solutions when you see how much pricing changes even during 1.5 years. Like you decide on a solution then next year the company raises prices and you are stuck with it forever.
(1) Note for AuthKit: It's an amazing solution but it's a joke that users cannot change their emails. How can it be a production-ready solution, if it doesn't allow any app to offer email change for their users?
For POIs, they are present in the data, it's just that the styles might not have the matching icons for them. But you can always make them into a circle, etc.
Having said that, working on the styles is a big and never ending effort, so if someone would like to help with matching the POIs then contributors welcome.
BTW, we are discussing latency with bdon in this issue, it seems to be specific to Cloudflare: https://github.com/hyperknot/openfreemap/issues/16
So using nginx in a 1 Gbps server is definitely not asking too much of it, or I might not have understood your comment clearly.
Why would Facebook decide to use my tile server? When a company's business depends on having reliable map tiles, they either self host or have an Enterprise deal with Mapbox, etc.