kentonv changed the topic of #sandstorm to: Welcome to #sandstorm: home of all things sandstorm.io. Say hi! | Have a question but no one is here? Try asking in the discussion group: https://groups.google.com/group/sandstorm-dev | Public logs at https://botbot.me/freenode/sandstorm/
frigginglorious has quit [Read error: Connection reset by peer]
frigginglorious has joined #sandstorm
frigginglorious has quit [Read error: Connection reset by peer]
<isd> So I'm futzing with a patch to make sandstorm work with mobile browsers' "add to home screen" feature. One of the things that needs to happen to support that is that we need to register a service worker. But, for some reason, after the sandstorm page loads, the navigator object's serviceWorker property has been removed. Does anyone know where and why this might be happening?
digitalcircuit has quit [Ping timeout: 264 seconds]
digitalcircuits has joined #sandstorm
digitalcircuits is now known as digitalcircuit
tobiasBora has joined #sandstorm
<tobiasBora> Hello,
<tobiasBora> I just discovered sandstorm and it looks awesome
<tobiasBora> I'd like to do the following, but I'm not sure yet if sandstorm can help me/contains the good app
<tobiasBora> basically, I'd like to provide one public link that would allow users to share files, modify folders... and all of them should be able to sync these folders/files locally if they want
<tobiasBora> (so basically one web interface, and one local interface)
<tobiasBora> I also would like to let users edit some rich-text files online
<tobiasBora> (like markdown)
<CcxWrk> tobiasBora: For syncing directories among users and sharing files privately you may want to look at Tahoe-LAFS. It's not really web-oriented though. There's also syncthing.
<tobiasBora> CcxWrk: interesting... but I really need web interface
<tobiasBora> also, can sandstorm give me several markdown editable files with a single link?
<tobiasBora> for now I can only have one note per link
<CcxWrk> I believe so when the grain is some kind of directory / file manager. How are you going to sync files locally though?
<tobiasBora> CcxWrk: Well, I'd like a double interface.
<tobiasBora> with file locally editable, or "online"
<tobiasBora> like google doc somehow
<tobiasBora> where you can just share a public link and let everybody edit the content
<CcxWrk> Isn't that called git? :P
<tobiasBora> CcxWrk: well not everybody knows how to use git in my team, there is no way to share a public link with writable stuff, the online editors are usually weak
<CcxWrk> tobiasBora: Well then your main issue is collaborative editing. That is, how to let multiple people edit document without needing to worry about manually resolving conflicts. And I haven't really seen anything that meets all your requirements. There are online collaborative platforms (Cryptpad, Etherpad, Ethercalc, Apache Wave, Kune) and there are file synchronizers (Tahoe's magic folder, Syncthing,
<CcxWrk> Nextcloud, Unison, AFS/Coda) that generally have one file as the finest granularity and can't merge changes by themselves.
<CcxWrk> So it's either-or of being able to edit offline and not worrying about conflicts.
<CcxWrk> I might be missing something, but I think that's it currently. I do have some vague plans in that direction, but it will take time before I can start on those.
<tobiasBora> CcxWrk: etherpad & co can just edit one file at a time... there is no notion of folders in etherpad, and it's not possible to sync them locally. Ideally a mix between collaborative editor and sync file would be awesome
<tobiasBora> ok thanks
<CcxWrk> Look at cryptpad.fr
<CcxWrk> I think they have some document collections, but I might be misremembering.
<tobiasBora> It looks amazing... but sadly can't find how to create "folders" here
<tobiasBora> hum... "Yes, you can create a shared folder from your CryptDrive and share all the pads it contains at once."
<CcxWrk> If that doesn't work out the other thing I'd probably look at would be NextCloud. Never really used it but they sure tried to add a lot of features in.
<CcxWrk> So I wouldn't be surprised if they bundle some kind of collaborative editor. But I wouldn't expect the integration of that and file syncing to be too great.
<CcxWrk> They seem to use WebDAV in NextCloud for file sync which definitely doesn't provide enough context to merge stuff correctly.
<CcxWrk> Or maybe not, don't want to dive in too deep right now.
<tobiasBora> Ok, I found folders in cryptpad :D
<tobiasBora> you have a way to sync it with a local folder?
<CcxWrk> I only used it for things like "minutes of a meeting" that is done and saved at some point. Most people I need to coordinate with in such fashion know some DVCS.
frigginglorious has joined #sandstorm
frigginglorious has quit [Read error: Connection reset by peer]
frigginglorious has joined #sandstorm
isd has quit [Quit: Quit]
isd has joined #sandstorm
<Zertrin> tobiasBora: also have a look at OnlyOffice, they have an integration with Nextcloud I think I have read somewhere. Nextcloud solves the part of having a local folder synchronised with the cloud (they have desktop clients to do the sync) and I think onlyoffice takes care of the collaborative editing of rich text documents (Word, Excel style...)
<Zertrin> Disclaimer: I use nextcloud personnally, but never tried onlyoffice
<Zertrin> (and I only use nextcloud for file and folder sync, and don't need collaboration)
<Zertrin> If you don't need simultaneous editing of documents, then nextcloud is enough, users can open the doc locally, and the file will be synced when saved
<CcxWrk> Zertrin: How does it manage concurrent offline edits?
<Zertrin> it creates a conflict, and users have to handle it. As you said earlier, there is no magic solution for offline concurrent edits
<Zertrin> like in DVCS, you have to merge. In DVCS like git however, *for pure text files* trivial merges can be handled, but in general, for non text files or non trivial merge, there's simply no magic solution in any case
<CcxWrk> OK, so it's as I suspected. This is actually not so easy task, not insurmountable. If you are into academic papers I can recommend those on Context-based Operational Transforms.
<Zertrin> yeah, I already have many academic papers to read in my own field, so I don't guarantee I'll find the time to have a look, but yeah I'm sure that this is the kind of problems which are still at the reseach level of technological readiness. The problem is really not easy to solve.
<Zertrin> for word like files (I'd say this is the most common type of documents where such collaborative offline merging would be of interest), the existing merge function in software is meh. Might work for simple cases, but it's a mess most of the time.
<Zertrin> the best in this case is to use LaTeX with git
<CcxWrk> Somewhat. I think we got it down fairly well now, as in know the various tradeoffs you need to make and conditions that need to be met. But there are many traps for naive implementations.
<Zertrin> but that's for a tiny fraction of users
<Zertrin> CcxWrk: are you working in this field?
<isd> Ot generally assumes online use though, in the sense that while conflicts are always resolvable, the result may not be what anyone intended. The idea being that since folks are right there, it's easy to fix quickly. I don't think it would work well for true offline operation, it's really just for dealing with network latency.
<CcxWrk> Other issue is that diff of hierarchically structured data has fairly insane computational complexity. So you need help from the editor itself.
<CcxWrk> isd: Yes, though that's kind of given. You either resolve conflicts automatically or you don't.
<CcxWrk> COT is very close to DVCS in design though so I believe that would be the way forward if you want to support branches and optional manual merges in the same framework.
<CcxWrk> Probably the things closest to it in VCS world are Pijul and Darcs with their patch theory.
<CcxWrk> Zertrin: Not really. I mean yes, by necessity of trying to unsuck software I need. :] But I'm not really affiliated with academia.
strugee has quit [Ping timeout: 264 seconds]
strugee has joined #sandstorm
frigginglorious has quit [Ping timeout: 268 seconds]
frigginglorious has joined #sandstorm
frigginglorious1 has joined #sandstorm
frigginglorious has quit [Ping timeout: 258 seconds]
frigginglorious1 is now known as frigginglorious
frigginglorious has quit [Ping timeout: 246 seconds]