Since you get multiple installs per license, maybe try it out on your friends’ computers?
jlchulilla: While I’m not involved with Lit & Lat in any way (other than spending too much time here on the forums), I think I can address your question…
What you’re asking for isn’t something that will work for Scrivener.
A wiki is hosted on a website. When you click the edit button, a request to the server is sent, and at that time, the server can either allow or deny the request to present you with an editable page. Whomever’s request gets through to the server first gets the edit lock.
With Scrivener, there is no central server controlling the lock; if you don’t have network access at the time you open the project, Scrivener just blithely creates the lock file and lets you get on with editing your project–EVEN IF someone else opened the same drop-box-synced project 5 minutes ago and has uploaded that lock file to the DB servers.
Since Scrivener doesn’t require a network connection for you to be able to edit your project, it cannot avoid a scenario like I just described (in Comp. Science, this is called a race condition, though this example is very much a slow-tortoise-and-a-lazy-hare kind of race). Scrivener cannot require an internet connection to work, and even when there there is an active internet connection, it cannot rely on any file-syncing tech to handle lock requests properly. Even it’s current project-wide lock fails due to the same issues; that’s why I’d never recommend that two people share the same project unless they are 101% sure that the sync happened on both ends, and that they separately communicated that the project won’t be touched while the other person is editing. Even under those pristine circumstances, I wouldn’t share the same project file with someone else via dropbox or other sync service.
The only way to get this kind of multi-user, per-file-lock to work is for Lit & Lat to invest millions in support staff, programmers and infrastructure and completely reprogram Scrivener to become a server-based application like Google Docs. Chances of that ever happening are slim to none, in my opinion.
@sanguinus I used my installation on two of my PCs for that purposes, with the foreseable results
@robertdguthrie My quote about wikis was an analogy, not an actual solution. But let me draw two basic workflows:
Nowadays scrivener -
- Open a scrivener project
- Scrivener creates a lock file for the ENTIRE project, with all its files and folders
- Unless lock file is closed, the project cannot be modifyied but in the PC that is opened
Possible future feature -
- This feature could be optional, either switched on or off by the user
- Lock file is not deleted anymore
- If the feature is active, lock file is segmented. RTF files are locked when edited, and lock file receives updates. Another solution would be a lock file for every RTF file
3.1 Good case: lock file is correctly updated with dropbox, onedrive, whatever: users which are editing the project are happily writing on individual files. No problem
3.2 Bad case: lock file is not correctly updated. Scrivener detects a version conflict, renames the last version and put it below the original file on the outliner. There should be a conflict resolution, possibly using some merging feature.
For sure, this workflow is rough and possible with errors. But there is a possibility between a pure server-based application (which, you’re right, would cost millions) and a local application more compatible with a file duplication service such as dropbox.
I enjoy quite a lot scrivener. I really would like to use it in research groups. That’s the source of my interest of a solution as I am trying to draft and ask for
How is Scrivener (or rather KB and the Windows programmer) to know when these files are not being edited? If you’re using Scrivenings mode then any selected files, in other words all files, are being edited.
Even in that situation, you are only in one RTF file. I mean the cursor.
And this can be done more easy than based in file locking. For example, for same project in same network, scrivener can connect via socket with other scrivener instances. This is possible even outside same networks via tunneling or other routing feature (for example, in VOIP I use “stun” protocol to get a way to pass over networks).
Algorithm:
*First time a project is open, Master is taken by that Scrivener App. It puts listening in scrivener TCP port for other instances.
*A new Instance is open anywhere: it sends a broadcast message to detect any other instance o search for the “lock” file that tells where and if there is a master. Here you can put a server to connect instances of teams and get a subscription for the service. Your server only needs to “connect” both users. No big servers nor big data needed.
*Starting with that is more or less easy that 1st Scrivener instance control any other instances to lock/unlock the other instances.
It is not easy to do but it is feasible. All is possible. It’s a matter of coding.
No you are not! What happens when the user flips from the editor to the Synopsis pane of the Inspector, then the Document Notes, Document References, Keywords, Custom Meta-Data, etc panes. What happens when they have placed the cursor in the Document Notes pane but then switched to the Project Notes pane. When and how should that lock on the “document” be set or revoked?
Networks are not 100% reliable. Even intranets go down. And imagine the chaos when one is utilising a 3G/4G/WiFi network in a public space the network latency will be too slow for reliable locking. Imagine the very real situation of being in a railway tunnel with no network coverage at all—London Underground anyone!!!
Really with all that file/network activity happening you believe that nothing at all will break!
feasible: possible to do easily or conveniently.
No, it’s not feasible. Possible, yes; easy or convenient? No. Even if you don’t store the writing on the servers, it’s still going to require a huge, expensive support infrastructure, and a large effort, one that a boutique programming company like Lit & Lat cannot feasibly accomplish. They will be introducing a feature to import and merge changes from a copy of a project (I can’t recall where that was stated, and it’s not a guarantee until it’s rolled out to us). That will probably be the way collaboration is supported in the future.
If you have a high level of expertise in peer-to-peer, network-based file locking, then by all means, throw together a prototype server/app and let interested folks test collaboration across the internet. If you can crack that nut, then you could offer to license your cross-interent file-locking libraries to Lit & Lat. But everything I know about locks at the computer file-system level leads me to believe that you’d have to sacrifice the perceived responsiveness of your program (frustrating for the user) to make a similar mechanism work over a network connection. Especially if you take into consideration Project Replace, Scrivenings, metadata, intermittent network disconnects, and rapid document switching by users who are simply looking for the right place to start editing.
All rather a moot discussion, given Keith has stated it will not happen.
L&L simply do not have the immense resources necessary for such a program.
Like many users, I suspect, I’m just hanging out for the iPad version.
What will not happen?
A cloud version? sure
A team version compatible with dropbox? At least Scrivener is going to integrate a version control feature.
I’m in love with Scrivener. Not about what I do with it (which is work), but about the concept and its possibilities. It is NOT a writers’ tool: is the best set of concepts for producing structured text and manage related information and documents.
It plays in a different league compared with any WYSIWYG product. It is NOT a digital typewriter anymore, but a true writing software.
I do hope that in the future Scrivener is going to be compatible with teamwork. Creativity deserves a proper reward. But if some else take the ideas and produce a writing software fully compatible with team work, a lot of users will either adopt or migrate to it.
Not true. Scrivener has an “Append To” command that can add text to any document in the project whenever the user likes, whatever the location of the cursor might happen to be.
There’s also the small matter of the relationships among documents. I can change the project dramatically by dragging things around in the Binder, even if none of the affected files is changed.
I’m not sure I would agree that making Scrivener network-aware is “easier” than file locking…
Katherine
Heck, even if networks were 100% reliable – which they are not – users can undermine any reasonable networking scheme. Close the laptop, walk away from the WiFi point of presence. blammo Your network just went down.
Katherine
Unless this hypothetical company has the resources of, say, Google, I suspect that they will find the same obstacles that L&L has: huge development and support cost to be borne by a relatively small user base.
Katherine
Man, only one word: OneNote.
OneNote does it based in OneDrive API. OneNote has a very similar file structure than Scrivener, and syncs across devices/computers in real time very fast (well, sometimes very slow due interlock problem when two or more instances waits forever for each other[s]). It does not have any server-side stuff other than OneDrive (and recently, DropBox).
OneNote: a Microsoft product. Microsoft is the world’s largest software company.
Google Docs: a Google product. Google is the world’s largest internet company.
I think there’s a pattern here…
Incidentally, the OneNote file format is documented here:
msdn.microsoft.com/en-us/librar … 12%29.aspx
It doesn’t actually have much resemblance at all to the Scrivener project format.
Katherine
I’m a little tired with this conversation, really tired.
That’s the logical structure, not the physical one. In disk, OneNote is a bunch of folders with a bunch of files containing the data and a master index in the root folder. AFAIK, that is similar to Scrivener file format, with the logical differences in relation to handwritten notes, inserted graphics and so.
Of course, all Microsoft people is doing OneNote, as all Google is doing the same, then this is a very difficult task only able to be done for the most professional and elite developers [Ironic mode off]
Well, it is not easy, but it is not an impossible one. I can tell you because is what I’m doing just now for one customer. Not related to document management but similar. And I’m alone. And I’m not the best developer over the world.
I only understand one thing: if you have the will, the volition, to do it, you will do. If you start saying “impossible”, “too complex”, “a lot of time”… you won’t do it. It’s a way of life.
BTW, in Spanish there is a said: “espabila que te comen la merienda”. Direct translation could be: “ginger up or they will eat your food”. I mean with this that Scrivener is getting old and obsolete. Other solutions like Ulysses 3 are gaining customers and works flawlessly. They have both MAC and iOS version. For JLCHULILLA (another guy in this thread) he is not using Ulysses because he is a Windoze man.
What has Ulysses that Scrivener doesn’t?: iOS version. Some kind of collaborative mode as Chulilla likes. Of course Scrivener has a bunch of things Ulysses doesn’t.
I don’t want to be rude, but you promised iOS version -two years ago? And nothing yet. Thus, the collaborative stuff for Scrivener is the same song: I can’t, too difficult, I need more time, and so and so and so and so… Please note Scrivener is getting old with less and less advantages over other solutions.
And sorry for my English, I’m Spanish talking.
Let’s do simple math: most of the users who say in this forum that Scrivener is perfect are honest. They are very happy with the product as I am. And, because of it, they ARE NOT going to buy new licenses, with the possible exception of iOS ones.
However, if I had a viable collaboration feature, I would buy MORE licenses for the rest of the team. Giving that Scrivener is fully compatible with word, a good number of teams and workgroups could consider adquiring new licenses. Indeed, as an enthusiastic evangelist of Scrivener, I have received once and again the same input about this product: “How can we use it as a team?”
Team writing is more important than individual writing on a business perspective. For a business or organizational proposal to team reports and a huge etc, most of business documents are written by several hands. Time is so restrictive these days, that working together at the same time offers a huge competitive advantage. That is one of the main reasons of Google doc’s success, if not the most important one.
And remember: I’m not talking about a ridiculously expensive cloud, real-time solution. I’m talking about version control compatible with dropbox or other similar solution which blocks individual rtf files.
So, actually the users who are most verbal against collaboration features are the ones that most possibly are not goint to pay for new licenses. Meanwhile, groups who could adquire group licenses, several ones, etc., cannot put Scrivener into production because in 2015, lack of collaboration features is a deal breaker for organizations. They have to maintain themselves in glorified digital typewriters such as Word or Google doc because of it.
Very simple indeed
Adding to chulilla, if you add collaborative mode, you have a very valid reason to pass from license model to subscription model, or offer both: License no collab, subscription, collab mode.
Holy Cow! I’m seriously thinking in take one or two “sabbatical years” to try myself this model! (and not, I’m not kidding nor trolling).
And Literature and Latte’s next product turns base metals into gold. It’s not “impossible”, “too complex”, “a lot of time” … they just aren’t working hard enough.
Will be a next product?
Down at the physical level, that’s what any multi-document data format is, because that’s how computer storage works. But the logical structure is what users care about, and what any synchronization solution needs to preserve.
Katherine