Working off of network drives (MobileMe, thumb drives...)

According to a help page at DropBox, they are working on a fix for Dropbox’s unfriendly relations with Scrivener and a number of other products:

dropbox.com/help/6

The problem is metadata and isn’t confined to Scrivener. iWork 05-08 files also have problems, although there’s no problem with iWork 09. Here is their current warning:

There is a fix that’s been in their pipeline since February 2010 and is being tested. If you consider yourself a “brave soul,” you might want to join the project. It’d be particularly helpful to make sure the fixes in general work well with Scrivener. Use Scrivener’s backup feature consistently, and you wouldn’t be at risk of lost files.

I’ll be absolutely delighted when this fix leaves beta. Currently, I do all my Scrivener writing on my MacBook because the hassle of risk-free synching it with my iMac is just too great. TaskPaper and WriteRoom synching via SimpleText have taught me the joys of multi-platform synching. I’d like to spread that joy to Scrivener.

–Michael W. Perry, Untangling Tolkien

Hey Michael,

Thanks for that update. That’s really good news. When that comes out of beta, along with Scrivener’s ability to detect whether a project is already open (which works better in 2.0), that will be a really good solution for sharing a Scrivener project between machines (although obviously because of connection issues it’s always a good idea to back up).

Incidentally, it’s not strictly true that there is no problem with iWork '09 files - although generally that is the case. With 09, Apple changed the default file format of .pages files from package files to zip files. This is why there is no problem. However, there is still the option, even in Pages '09, to “Save new documents as packages” (available via Preferences). So even though it is very unlikely that anyone would check this option in Pages, if you did, you’d experience the same problems as with Pages 05-08. That’s just worth mentioning for Pages users.

The support problem I see most frequently with Dropbox and Scrivener files is caused by Dropbox renaming files inside the Scrivener project - e.g. binder.scrivproj becomes binder-myComputer.scrivproj - which means Scrivener can’t find the necessary files. If they fix this, it will be great.

Thanks again,
Keith

Hi all, this has come up again over on their forums. Sorry to disappoint, this really has nothing to do with metadata and so Dropbox 0.8 won’t fix anything unless Scrivener uses extended attributes or resource forks (and it ordinarily doesn’t, AFAIK, unless you drop a really old school file in your project).

Their FAQ is wrong in suggesting otherwise.

Keith is right, it’s really about the package files. That will probably never be ‘fixed’ because technically Dropbox cannot infer what constitutes a valid package file. All it sees are a bunch of files (nested within directories), that it tries to keep in sync as quickly as possible. Scrivener could hypothetically switch to a single-file format, implement some kind of atomic write like an SQL database, or implement other validity-checking measures to make sure it isn’t edited on two machines. It sounds like Keith’s moved towards that last one a bit in 2.0. In the mean time, I’ve found that working outside of the Dropbox monitored file tree, and then saving backups into the tree, is a decent workaround.

Thanks cyberbryce. I wish they would fix their FAQ because it really isn’t representative of the problem, which is much more esoteric in my experience. As you suggest, the best way to work is to stay out of the DropBox tree with Scrivener projects—and use it to keep your backup storage in sync or save distribution copies in zipped format.

Yeah, I’m going to try to get them to change it over there. You’re right it’s esoteric, it’s really a basic limitation for “file synchronization” and it’s sorta Apple’s fault for adding the package layer but making it a second-class citizen within HFS+.

I don’t mean to sound too pessimistic though – when I enabled Skim’s monitoring feature, I found it was much harder to trigger a conflict within a PDFD package. So, who knows, maybe Keith’s got the kernel queue’s fired up and Scrivener 2.0 will be iron clad when it comes to file utilities messing with its internals. :astonished:

Maybe I’m just lucky, but I have been using Dropbox with my Scrivener projects for years, across multiple Macs and never had one single issue. I didn’t even realise there was supposed to be an issue. 8)

Don’t come crying to me though if you try this and it doesn’t work for you.

Gah! I just came online to post a question and came across this file.

I’ve just discovered Dropbox, and was treating it as the best thing since sliced bread; time to think again, apparently…

I think I’m safe so far, though - I’ve been keeping the file in my Dropbox on my Macbook, and letting it backup to the cloud. I’ve not needed to call on the backup yet.

I’ll switch back to a jump drive.

thanks, all.

Dropbox is great, though it can cause problems with file packages. Keeping your .scriv project in the Dropbox folder on your Mac does not ensure safety. The trouble is, that if for any reason while it is uploading there is a glitch or the process is interrupted, the uploaded version will be corrupted but will have a later creation date than the good one in the Dropbox folder on your Mac. Dropbox will synchronise the two as soon as you next go online using the one on the server as it was the most recent. Potential disaster in the making.

Do heed what has been said on this thread. There are only a few of us out of the many who use Scrivener who have suffered in some way – only minor loss of data in my case, thank heavens – but just ask yourself if it’s worth the risk. Keep your project in another folder on your Mac, and do a regular zipped-up “Save As …” to the Dropbox folder. Zipped files are less problematic than .scriv projects, as they’re single flat files, not bundles of hundreds of small files in a package.

Mark

I’ve noticed that folks are using Drop Box for local file transfers (ie laptop to desktop etc).

Drop Copy is an app well worth exploring. You drop the file you want to transfer to a Drop Copy image on your desktop and it appears instantly on the receiving computer or computers if there are more than one. I repeat - instantly.

macupdate.com/info.php/id/16250/dropcopy

Also works great with DropCopy Mobile to transfer files to and from your iPhone or iPod Touch to another iPhone or iPod without a computer being involved – the devices simply “see each other” when they are both on the same wifi network.

10base-t.com/iphone-ipod-softwar … e_dropcopy

Developers site:
10base-t.com/macintosh-software/dropcopy/

Just another solution to the back up story - I use this Drop Copy process personally for local file transfers from my desktop to my laptop and vv, and have no hesitation recommending it. It is FREE! It will transfer any kind of file, folder or application from one computer to another on a local WiFi or ethernet or USB network.- I use a WiFi network (that is what I use my TimeCapsule for - its wifi transmitter). So I guess finally the best advice is - already clearly spelled out by Amber - set your Backup preferences to save the backups as .zip files to keep everything together that should be together. Yes, Drop Box is probably the best solution for ‘remote’ file transfers - lots to recommend it. Drop Copy is pretty nifty for ‘local’ file transfers.

:slight_smile:

Seconded on Drop Copy. Very good little free programme. I haven’t tried it on my iPod Touch, but I don’t use that for files from my laptops … but between the MBA and the MBP, it’s great.

Mark

Would someone mind summarizing for me the current thinking on the safest way to work with Dropbox?

My understanding is that the best thing for me to do would be to work with the Scrivener file on my laptop, and, when I’ve finished it, save it as a zipped back-up. The zipped file could then be safely posted to Dropbox. Then, when I’m back to working on my desktop, I could open my Dropbox, drag the zipped project file onto my desktop, unzip it, and continue working on the resulting restored Scrivener file.

Is that it?

And would a similar approach to backing up to USB flash drives be advised?

Thanks!

Yes, the original post in this thread is up to date and contains a summary of best practices, which are essentially what you just described. :slight_smile:

There are a lot of factors involved in flash drives, way too many to really summarise it into a “do or do not” type answer. If I had to produce one though, it would be to feel free to use them as a working device, but as with all things, backup, backup, backup. Don’t ever let one spot be the only spot where you stuff is saved. If that one spot is the size of a stick of gum (and thus easy to drop/lose/run through the wash/etc) then you put your work at extra risk.

As with Dropbox, I’ve only ever relied on flash drives for the transfer of information. I would ChronoSync to them on a daily basis, but only to update my other computers so that they remained in parity—never as an external drive that they could all access and use common information from, but never store locally. It just makes no sense to me, if one has extra computers, to not make vital use of that asset as redundant backups. Two identical computers are a great backup all in itself.

Thanks, Amber.

I want you to know that I did read your original post, but suspected that over the years some things might have changed. I’m probably a little skittish because I’m still fairly new to Dropbox.

Thanks!

Nope! Thanks for checking, though. I’ve kept that top post up-to-date as new information came to light and so forth, so it remains the de facto advisory. There is unlikely to be any change in this in the near future. It’s really a problem of competing technologies, and so the only way to find a true resolution that is safe for everyone to use is to change at least one technology. We can’t control Dropbox of course, and changing the Scrivener project format is undesirable, difficult, and probably not wise in the grand scheme. There really isn’t a good solution on the Dropbox end of things either. The frustrating part about it is that neither system is in itself bad—in fact except for in combination, both systems are about as good as you could ask, for what they do. It’s like ketchup and peanut butter. Two “use on anything” condiments that are pretty bad when used together. :slight_smile:

I would echo all the opinions about Scrivener and Dropbox. Use Dropbox only as a repository for zipped backups created by Scrivener.

I’m too soon old and too late smart, and learned this lesson the hard way. I was able to extrapolate it to other programs that create “projects”, i.e. collections of files in a folder, and am careful to zip everything into a single file when I use those other programs as well (one example is Personal Brain – thebrain.com – Dropbox’s procedures can corrupt “brains”, too).

So zip it, THEN ship it. Version control (looking at and paying attention to date and time stamps) becomes more critical using Scrivener on different machines – but it’s better than having lost hours of work to corruption by not archiving properly.

Jim Carroll

Yup, this advice extends to all formats that use “cohesive bundles of files” for their data storage. DEVONthink and VoodooPad are two others that have known issues with the technology, not to mention Ulysses, which has a similar mechanism internally as Scrivener.

The best thing to do is check your file formats. Right-click on those saved files and if they say “Show package contents”, chances are you shouldn’t be storing it as a live file on Dropbox. There are certainly exceptions (applications being the main one), but to err on the side of caution, that’s a good place to start.

How about storing the .scriv package inside a disk image (sparse or regular) in the dropbox folder? If you happen to open the same image on 2 computers, or forget to eject the before leaving the computer, it simply creates a copy of the image (with a new name), so you have a record and can resolve the conflicts manually. It seems that the image file is not updated until the disk is unmounted, so you wouldn’t want to work off an image all day without unmounting it periodically so that your edits are saved to disk.

It should work for bigger disk images too, because dropbox only uploads the part of the image that has changed (dropbox.com/help/8), so I assume you wouldn’t have to upload the entire image if you make a small change. I wouldn’t want to use a sparsebundle, since that appears to be a package. You’d want to keep the disk image small if Time Machine storage is an issue.

Of course, this will make the files inaccessible to iPad/iPhone, but it should be OK for syncing between multiple macs.

Disk images are pretty stable, though some people worry about image corruption. But the good thing is that you’ll KNOW when a disk image is corrupted, because it won’t open. If that happens, you just go back to a previous version. That’s better than losing bits here and there without ever noticing, in my opinion.

Anybody see problems with this method?

The question that occurs to me is – why is this better than placing a zipped back-up in Dropbox?

(Apart from anything else, “Store package in disk image” doesn’t trip off the tongue as easily as jimocarroll’s “Zip it – then ship it”. :wink: )

there are a couple of things that make a disk image attractive. I am too lazy to put an exhaustive answer together, but imagine having non-scriv assets all packaged together. Think about a person writing a book about development in cocoa. Source code and executables all on the one disk image with the .scriv.

It is better because there are less steps. I find the zip method to be somewhat tedious, especially if I’m working in a number of different scrivener files or just want to add a quick note in one of my projects.

Steps for using a zip file:

  1. open dropbox, find most recent zip file
  2. copy zip file to desktop
  3. try to find file amid desktop clutter
  4. double-click on scrivener file to open project in Scrivener
  5. write
  6. make new zip file
  7. copy zip file to dropbox
  8. delete scrivener project file from desktop

Steps for using a disk image:

  1. click alias of scrivener project in dock (alias points to a Scrivener project file inside the disk image); the disk image automatically mounts and your project opens in Scrivener).
  2. write
  3. eject disk image

If you use a dock alias, it’s just one click and you’re writing. Then one click and a keystroke to eject the disk when you’re done. Just one more step than keeping a Scrivener project on your hard drive.

As for the name, how about “Disk Imagery”?