Hacker News new | ask | show | jobs
Note-taking software,Novel ideas
5 points by huaqing 32 days ago
Can you use a software that anchors a note-taking program to a certain repository for synchronization.Most note synchronization services are paid,but repository is free.git needs to handle conflicts manually.Would you be interested in an open-source and free synchronization service provided by a code repository? If a strict synchronization method is used.
6 comments

Don't most note-taking software products already sync to multiple devices? I'm unclear what new idea you are trying to add in?

If you are suggesting that putting a git repo behind it would be an improvement, I'd question that. git is line-based, most freeform notes are sentence or paragraph based. In coding, line length is part of the UX of working in the code, so git works great. Not true for note-taking, where the line length of the data storage is not necessarily tied to the UX of working in the notes.

So I guess the answer is a solid "No" from me. I don't want to risk deteriorating my UX just to solve what is really a back-end data storage concern that I, as the user, should not have to give a crap about, and which doesn't seem to be broken in any meaningful way.

No.You don't understand.I just want a multi-device synchronized sticky note, not a relatively private note in a broad sense. Imagine a scene: when you are walking on the road, suddenly you have an idea and you want to write it down, so you record it on your phone. But when you want to implement it, you need to do it on your computer, which is a bit embarrassing. You have to take out your phone to check it.Moreover, this is an open-source project. I don't need to be responsible for the risks of the users. They are responsible for their own actions
It's already been the case for Obsidian? you create a github repo, create notes as md files, obsidian plugin sync it?

Actually not obsidian, but any note viewer like app. You put files in Google Drive or git repo for that matter.

Obsidian + Git already does this. The conflict problem is real though, CRDTs would be better but then you're rebuilding the sync layer anyway, which is what the paid services give you.
CRDTs are technically interesting, but I don't know how they solve fundamental merge issues? If a line of text is updated on two independent paths - there is no automatically correct merge decision. Is it just that CRDTs provides systematic merges for automatically resolvable cases?

For that matter, I guess I don't use Obsidian sync, so how does Obsidian present merges that may need manual input?

Synchronization would definitely be interesting. I currently use Obsidian for notes, but without a paid subscription - I just keep a folder of notes in iCloud Drive.
I’ve had the same issue too. What I finally found is that the most elegant solution is to stop editing the same note across multiple clients.
Yes, this is also what my software aims to do. By forcibly preventing multiple devices from editing the same note, it aims to avoid merging conflicts. Strict usage strategies are adopted to meet users' simple needs
If the syncing works smoothly and users never have to deal with Git conflicts, this could be a great option
You can always use --theirs or --ours in git. Are you planning to use it with several users or just one? OP did not mention anything about multiple users.
For personal use, I plan to directly implement it through the api interface of github or other free repositories because I found no good open-source software that can be synchronized