vrtmrz / obsidian-livesync

MIT License
3.93k stars 132 forks source link

User-focus for problem scenarios #365

Open andymarden opened 5 months ago

andymarden commented 5 months ago

I see this a lot (I am an Enterprise Architect for a large bank by day) and I think this plugin is a victim of it.

Engineers often think in terms of the functions that need to be performed without really focusing on the user.

I have had to handle devices not syncing properly and the plethora of options of rebuild, verify, repair require an enormous amount of investigation. The tools are all there but it is unclear now to use them in which situation (even for me and I think (hope) I am more technical than the average user). It is rather like my wife saying to me "I have a problem with the plumbing, it's leaking water" and I dump a bag of tools at her feet and say "there you go"!

I propose a page under options (can extend the wizard page if you like) that lists problems that a user is likely to encounter, in language that they can relate to eg:

Each option can then have an Analyse button and Fix button next to it. As usual Analyse reports and then gives the option to Fix - Fix just gets on with it.

When you click these buttons then, the plugin does some analysis and takes the most appropriate set of actions that are most likely to the issue (and can then say, if appropriate "no go and do this on any synced device for this vault".

It reports back which actions i t had taken and if it believes the problem is fixed.

That would do a HUGE amount to the usability of the plugin. I suspect there are a large population of users who try the plugin and if they can get past the setup on each device (I have raised a similar post on this), give up when things go wrong cos they simply can't work out how to fix it.

If we want to get process oriented about the principle of agile stories taking the form "I am a normal user and I want to...". The bit that comes after this is the thing that should appear in the options because it looks at it from the user perspective, not an engineer's perspective (of course the lower level techie stuff should still be there so techie users can work with the building blocks one by one)

What do you think and do you recognise this issue?

vrtmrz commented 5 months ago

Thank you for the great idea! I think this feature will be useful for everyone. Over the years, I think our configuration dialogue has become more and more complex.

I imagined the just all-in-one Doctor button; like flutter doctor. But separated with each case may be more focusable to the issue. I would love to implement them, even if from the small one! I appreciate the proposal!

hilsonp commented 4 months ago

I kinda agree with @andymarden

I'm using your plugin for a rather long time now and find your work awesome hence my monthly (small) contribution ;-) I think I'm what people depict as a nerd/geek and do devops as a living. Still, I must say I'm unconfortable with livesync and this makes me really sad.

I went with obsidian because I want to own my data (simple files on the filesystem). I went with your plugin because its features outperforms other sync mechanisms (covering all desktop and mobiles platforms).

Unfortunatelly, because I do not have a clear view of how in sync are my 3 devices (2 windows + 1 iOS), I just feel that I'm not owning my data anymore which was the first reason to come to obsidian.

Do not get me wrong. What you have achieved is increadible but as of today, I cannot recommend it to my friends because I would fear they loose their data. I would love being your plugin advocate, really. Just give me confidence and simplier ways of understanding the status of my distributed vault.

Edit: A quick update after a manual diff of my 3 vaults 🎉 I just did stop all my obsidian instances, zipped their vault and did a manual diff. All files are identical (205MB made up of 128 folders and 692 files (mostly md, some images and a few pdf) except:

KoriIku commented 4 months ago

This suggestion is indeed excellent, and I share your sentiment. However, from my perspective as a software engineer, I must say that while implementing such a feature sounds wonderful, it requires a significant amount of development effort. For a free and open-source software, expecting it to be as polished as commercial software is quite challenging, in my opinion.

There's a more common approach to your requirement in the open-source community: relying on community-contributed Q&A and documentation rather than solely on code within the software. This approach offers greater flexibility, faster updates, and wider coverage. It allows developers to focus on implementing the core functionality of the software rather than diverting some of their attention to guiding users.

In essence, perhaps all we need is a more comprehensive user manual?

Of course, the above represents just another perspective as a user.

vrtmrz commented 4 months ago

I really appreciate and respect you all and your all respectful attitude and kind words!

@hilsonp I am always really grateful for the various contributions!

one pdf file that shows the same content (and pdf file properties) but is 5MB on my windows vault (where it was added initially) but is 32MB on iOS. This only happened with this one file. I'll keep an eye on it but my idea is to move all pdf to an paperless instance and use links to those document instead of storing them in obsidian.

This is also an old bug; which has been fixed at #308. And, indeed, checking features are lacking. (The vault history can show the history and file integrity, but only for non-binary files).

@KoriIku

There's a more common approach to your requirement in the open-source community: relying on community-contributed Q&A and documentation rather than solely on code within the software. This approach offers greater flexibility, faster updates, and wider coverage. It allows developers to focus on implementing the core functionality of the software rather than diverting some of their attention to guiding users.

It might be so good! Documents like FAQs are always welcome, and I will merge almost anything. I think that this is the most convenient, fastest and iterative solution, for now. For the next version, we will get a link or embed view to docs/troubleshooting.md.

In essence, perhaps all we need is a more comprehensive user manual?

Yes, indeed! Recently I rewrote the readme and setup_flyio. I think that we will enough by this for normal use cases. However, through this discussion, I noticed that documents of each setting item possibly be meaningless without the case guides if we simply refined them. I would love to express to you all my gratitude for your contribution again! I will also address it later.

Of course, any additional contributions are welcome.