Simple feature matters
With so many options available in the cloud storage space I am sure everyone uses one or more of those cloud storages(Dropbox/Box/Google Drive etc). One key missing feature is to provide a simple way to exclude files from syncing.
Storage space is not free
Storage space is not free so it really matter what we sync to cloud. Nitpicking individual files to save space is not an easy option, so we tend to copy files which we dont need.
It was not just me who was facing the above mentioned problem there were similar feature request in dropbox forums , box , google drive forums. I wonder why these simple features we ignored anyway enough of nagging lets get to the good part.
Deciding what language or tools to use.
Languages I know : C, C++, Java, Scala, Python After working in C/C++ for a long time I knew managing binaries and shared libraries will be painful hence eliminated them.
- Should support monitoring directory/file changes.All three languages java,scala and python qualify for this
- Should be installed by default or installation should be bare minimum. Python is installed by default on all OS and hence a good candidate.
- Should be unix based system with support for forking. (Thanks for the comment from Nei)
Python it is!!
I followed a similar method to .gitignore and hence decided to have a list of all the pattern that need to be ignored from syncing
- .*.jar : Ignore all the files containing .jar
- .class$ : Ignore all the files ending with .class
- ^Bingo : Ignore all the files starting with Bingo
For more information on using regular expression please check the python regex documentation.
) smartcopyd : SmartCopy Daemon smartcopydaemon monitors for changes to a directory , filter the files according to the ignore patterns and sync’s to the cloud storage.
) smartcopy : SmartCopy Client smartcopy allows you to change the config file and modify any ignore pattern rules.
If you need a feature do tweet. Feature with more tweets or retweets wins and will be implemented next
If space is not a problem then sync files across multiple cloud storages for improved availability and not to be locked into a single cloud storage option Tweet #multicopyfeature
Compressing files before syncing. Tweet #compressionfeature
Encrypting files before syncing. Tweet #encryptionfeature
For mac app Tweet #macapp #smartcopy
For anything else . Tweet #anythingsmartcopy