Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve the "skip folder configuration" and manual folder configuration workflow. (Was: Do not include 'root' by default in desktop client) #3664

Closed
tzaeschke opened this issue Aug 21, 2015 · 23 comments
Assignees
Labels
Design & UX Discussion p2-high Escalation, on top of current planning, release blocker
Milestone

Comments

@tzaeschke
Copy link

tzaeschke commented Aug 21, 2015

I'm new to OwnCloud. When I started the Client and wanted to add folders for syncing, it told me to 'unsync' the root first. However, unsyncing the root is not possible, instead I had to 'remove' the root and then add individual folders. I took me a while (and some help) to figure this out, and I don't think it is very intuitive.

An easy improvement would be to change the error/warning message in the 'Add folder...' menu to indicate that the 'root should be removed before new folders can be added'.

However I think the best option would be to not have the root by default in the client, instead, by default, either don't show any folders at all or add some default folders, such as, 'Music' and 'Document' as separate folders.
I think this is what most people need anyway, because often people may have more than a single folder/partition that they want to sync (especially in Windows).

This is related to #3632 and #3645. I previously posted this on the forum: https://forum.owncloud.org/viewtopic.php?f=14&t=29949&p=94583#p94583

@tzaeschke tzaeschke changed the title Proposal for change: Do not include 'root' by defualt in desktop client Proposal for change: Do not include 'root' by default in desktop client Aug 21, 2015
@phil-davis
Copy link
Contributor

The 2.0 "Add an Account" ownCloud connection Wizard asks for the server address, then username and password, then the "Setup local folder options" dialog that asks details of what to sync from the server to where on the client. That allows you to sync whatever is on the server with a single location on the client, and, if you like, choose only a subset of folders on the server to sync with the client.

That has a button "Skip folders configuration".

If you want to sync various folders in different places on the client to individual folders on the server then you need to do "Skip folders configuration" in the wizard. After the account is saved, then add folders one-by-one.

Perhaps there can be some way to explain this on the "Setup local folder options" dialog, and that would help first-time users?

It might clutter the wizard if a lot of stuff was added to it to allow direct setup of multiple client-server folder pair sync within the wizard.

@tzaeschke
Copy link
Author

Maybe "Skip folders configuration" could also be renamed? As a new user I wouldn't expect to have to "skip folders configuration" if I want to configure multiple folders. Especially since the "folders configuration" only allows to configure a single folder... Or did I misunderstand that?

@phil-davis
Copy link
Contributor

You understand correctly. The wizard only allows for setting up the sync of the server root to a (single) place on the client, and (if you want) selecting a subset of folders from the server to sync inside that place on the client.
If you/someone can think of good words to put in the "Skip folders configuration" button text that will help users to understand that they need to choose this if they want to sync various server folders to various places on the client, and that they add those syncs one-by-one after the wizard finishes, then great! It would be a simple text replacement in the button.

@tzaeschke
Copy link
Author

One could use "Skip to multi-folder configuration" if there was a multi folder configuration. But I think all this could be avoided, I think the real problem is that the single-root-folder configuration is the default. Wouldn't it make sense to remove the default root folder?

As a replacement for the default root folder there could be:

  • No folder
  • A sync for the HOME folder
  • Two sync folders, one for the 'Music' folder and one for 'Document' folder in HOME

I think either of these would be easier to understand than the root folder. I also don't quite understand yet why 'root' is there by default. Are many people using the default configuration?

With a different default set-up, the "skip folder config" would then do exactly I would expect.

@guruz guruz added this to the 2.1-next milestone Aug 24, 2015
@MTRichards
Copy link

Good discussion. @tzaeschke root folder syncing is there to cover 75% of the user cases with the default - the standard "click click click" don't read it, and just want my stuff to sync. What we have found is that most of the users (so many being non technical folks) out there just want it to sync server to desktop like dropbox or similar and voila. Then selective sync makes it easy-ish to configure sub folder syncing based on the root.

We kept the more complex individual folder setup for what you are describing so that it is possible to do what you want, but for the above not default. Perhaps the wording could be investigated to make it clearer what all this means? With millions of downloads, we can't change the default behavior too dramatically without messing up existing users too - finding that balance can be challenging.

@MTRichards
Copy link

Oh, I should mention that in the past we had the default set to not sync the root folder, and we had a lot of complaints about the behavior not making sense. Some may recall the "clientsync" directory and all of that mess, we cleaned it up to solve that problem.

@tzaeschke
Copy link
Author

Okay, thanks for the explanation. I'm new, so I don't know about this discussion but I fully understand that changing the default can be problematic with a large user base.

But I haven't quite understood yet what the point is of syncing the root folder. Is there some documentation on that?
I would expect that the default is to sync the parts of the home-folder, such as Music/Docs (as is with many other sync/backup tools). OwnCloud does that, but unlike other tools (Wuala, Tresorit) I can't just add more folders. So in a way it is okay to have a root folder, but I think it is not obvious why you can't just add more folders, just like in other tools.

Maybe the problem (or at least my problem) is the definition of what constitutes a 'root' folder. I initially assumed it is the folder under which I can organize all my synced folders, but that doesn't seem to be the case, at least not on the client.

I don't know, how is it on Linux? Does the OwnCloud root represent '/' ? In that case, maybe we have a Windows issue only and it could be resolved by mapping 'root' to 'Computer'. One could still simply add 'home\Music' etc as defaults to 'root', but it would be simpler to add 'D:\Pictures' and such.

@tzaeschke
Copy link
Author

With Linux, I think it's anyway less of an issue, because traditionally user data is located in the home folder, potentially via soft-links if it's on a different partition. With windows this is unfortunately much less the case, I think, simply because the home folder is harder to get to and you can't link in other partitions as easily (though there has been some progress).

@SamuAlfageme
Copy link
Contributor

Also requested on #2985

@unalignedcoder
Copy link

I think something like "Advanced folder sync configuration" would be enough. If the user doesn't click, the wizard proceeds to setting up a "sync all" scenario. If the user clicks, there should be a "start over" situation where not root nor other folders are selected.

@BloodyIron
Copy link

Yeah this needs to be fixed, including this by default will lead to accidental data loss as general users won't realise that this behaviour is happening, even though they don't want it. 2 years old? Yeah, cmon!

@SamuAlfageme
Copy link
Contributor

@ckamm @ogoffart how hard would this one be? Can be understood in terms of "unifying the behavior of the new account wizard and the new sync connection's"

@BloodyIron
Copy link

Surely this is something trivial to add, and this issue has been open since... 2015??? Come on! It's so old, I accidentally created another issue on the same topic, because I forgot about this one! :|

@ogoffart ogoffart added this to the 2.5.0 milestone Dec 6, 2017
@ogoffart ogoffart added the p2-high Escalation, on top of current planning, release blocker label Dec 6, 2017
@ogoffart
Copy link
Contributor

ogoffart commented Dec 6, 2017

We just need to find the right wording for the current "skip folder configuration" button and change the name. (And potentially make small UI improvments)

We won't change the way the sync works.

@ogoffart ogoffart changed the title Proposal for change: Do not include 'root' by default in desktop client Improve the "skip folder configuration" and manual folder configuration workflow. (Was: Do not include 'root' by default in desktop client) Dec 6, 2017
@BloodyIron
Copy link

"We won't change the way the sync works."

Why not? That seems very close-minded of a response.

@hodyroff
Copy link

hodyroff commented Dec 6, 2017

Thinking through this, it will actually lead to data loss if we don't sync the files in the root folder. Can you explain why you see it the other way around?

If we don't sync a folder content the folder will still show up in the desktop file system. This leads people to put files into such folders. If we don't sync it - while the user assumed it was synced because it is in the folder which is setup for syncing - it will be lost at some point while the user trusts that it was synced to the server.

Does this make sense? Or how else do you envision the logic to work here?

@BloodyIron
Copy link

BloodyIron commented Dec 6, 2017

I'm not quite understanding the data loss you're perceiving here, and it sounds a lot like perhaps you're misunderstanding the concern I have.

The way folders and sub-folders (selecting which ones) work for syncing now, that's not what I'm talking about.

I'm JUST talking about files in the ROOT of the structure (within the account being used), as in, the files that are NOT in any folders whatsoever.

When I started using the desktop sync client, I actually had a bit of minor data loss as a result of the current behaviour (which I was able to undo). This was because the EXPECTED behaviour, did not match the REAL behaviour.

In my case, I only wanted to sync some specific folders/sub-folders, but NOT files that I see at the ROOT of what my account has access to (as in, files that exist at the top level of my folder acces). One way to visually represent this is...

/Folder Something Or Other/
/Folder Something Or Other/CatPic44.gif
/Folder Something Or Other/Sub-Folder/
/Example Doc.pdf

I want to be able to sync the folders WITHOUT syncing the "Example Doc.pdf" which exists at the root. It's not that I want to be able to select files individually to sync, it's that I want to choose whether files at the root are synced or not (very similar to how I select the contents of a folder/sub-folder to be synced).

Now, when I first started using the desktop sync client, I selected a sub-folder, and assumed that files at the root would not be synced, since I was being selective of what to sync, and did not tell it to explicitly sync files at the root. HOWEVER, it did sync them, and I thought this was a mistake. So I deleted the files from my computer (not the server) at the "root", and it synced the deletion back to the server, and the server put them in the trash. THIS behaviour did not match my expectation, as I originally thought that syncing of those files would not happen, as I had not explicitly told it to sync the files at the root.

I hope this clarifies, because I'm not sure how to better explain this. I know this is a bit tricky to see compared to selecting folders, and I'm not sure the best way to address this. But as it is right now, I do not know of a way to disable syncing of files at the root.

I have worked with users enough to know that others will also make this same mistake, by accident, and I think this should be addressed.

So, if you still see that perhaps I'm missing an angle on this topic, please let me know. But I do think that the issue I'm seeing should be addressed at some point, primarily to avoid accidental data loss for any user, not just myself.

@unalignedcoder
Copy link

Wouldn't a checkbox that says "include files in the root folder" suffice?

@hodyroff
Copy link

hodyroff commented Dec 7, 2017

"Wouldn't a checkbox that says "include files in the root folder" suffice?"
Not really. Challenges:

  1. Yet another button in the UI - we need and want to make it simpler, not more complex
  2. The user will forget over time and still put a file into the root folder, which we can't prevent. And assume that it will be synced.
  3. In automated install situations it is unclear for the user what is configured, we operate then differently in different setups pending on config - rather have one behaviour

@hodyroff
Copy link

hodyroff commented Dec 7, 2017

"I selected a sub-folder" @BloodyIron
Reading through what you write, it seems you are really looking for a way easier mechanism to select folders for syncing and I and we as a team fully agree with you.
We do want to have 2 behaviours.
One and the default: Sync everything, but be able to deselect certain folders ... this is what we are talking about above.
Two as an easy to understand option: Select Folders you like to sync ... and then we sync only those + all the files + all the subfolders which are not de-selected.

This is rather difficult to setup today and we like to make that easier. Does that make sense?

@BloodyIron
Copy link

BloodyIron commented Dec 7, 2017

@hodyroff
I have no issue with the "Sync everything option". No issue with that whatsoever. The reason I don't use that for myself is I just have soooooo much data ;)

As for the second option, I think we're on the same wavelength here. I don't find that the way I can select folders to sync now is hard, I just want to be able to also control that which is synced at root.

I'm willing to accept that I may not know the "best" way to do this behind the scenes, but I do see it as a hurdle to overcome.

Oh, also, in a slightly related/unrelated thing. I see slightly different visual behaviour between two computers syncing folders. (I suspect you may want me to open a second ticket for this). On one computer, when I select a folder way down, the folder I selected is coloured AND checked, but the parent folders are coloured AND NOT checked (suggesting that a sub-folder is synced). This visual aid happens on my laptop, and I like it.

But on my desktop, the parent folders do not show any colouring, even if a sub-folder is selected (which does show colour and check). The version v2.3.4 is the same on both computers, so I'm not sure why that is different. I PREFER to have the way the laptop is behaving, where a parent folder is coloured but not checked, signalling partial sync, and that a sub-folder has been selected for syncing.

I can tell you more about that one if need be, but here? Another ticket?

@guruz
Copy link
Contributor

guruz commented Apr 20, 2018

Let's discuss in the PR #6470

@guruz guruz closed this as completed Apr 20, 2018
@BloodyIron
Copy link

@guruz that one does not seem to talk at all about excluding root from being synced. Please re-open this issue as the other one does not comprehensively address the concerns expressed in this thread.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Design & UX Discussion p2-high Escalation, on top of current planning, release blocker
Projects
None yet
Development

No branches or pull requests

10 participants