Monthly Archives: February 2010

Why I Switched from Ubuntu One back to Dropbox

As many of you surely know, Dropbox and Ubuntu One are applications to keep files on your desktop in sync across multiple computers, and backed up in the cloud. After using Dropbox for a year or so on Ubuntu, the Ubuntu One project came out and I thought I’d move over to it. I assumed it would be easier to set up, being pre-installed, and could integrate better with the file manager and other applications, being made specifically for Ubuntu.

After about 6 months of using Ubuntu One, I found it to be too much of a regression compared to Dropbox and switched back. I thought I’d detail why here for the usefulness of others and to hopefully provide some constructive criticism to the Ubuntu One team which overall is doing good work. So here’s why I went back to Dropbox:

Better Nautilus integration
The nautilus (file manager) integration in Dropbox feels very mature and polished. Normally I’d say this is to be expected since Ubuntu One is much younger, but since the nautilus aspect of Dropbox is open-source, there didn’t seem to be much of an excuse for the Ubuntu One team to not use it as a starting point or at least as inspiration. Whenever I added files to my Ubuntu One folder, no matter how large or how many, they instantly had the checkbox emblem which implies to me they are in sync, even though they couldn’t possibly be uploaded that quickly. In Dropbox, the files show an animated progress emblem until they are actually uploaded, and show this again when they are being updated. I wasn’t able to trust the status of files with Ubuntu One, and that wasn’t a good feeling.

Sharing files in Dropbox is also a lot easier via Nautilus, but that deserves it’s own point.

Easier file sharing
In my typical use cases of file sharing, I want to go from having a file in mind to someone else seeing that file as quickly as possible, be it in an instant message, chatroom (IRC/Jabber), or email to a friend or two. Dropbox makes this a breeze; drag a file into the “Public” folder in your Dropbox directory, and right-click on it and select “Dropbox > Copy Public Link”. Now you have a publicly accessible link to your file in your clipboard!

I never quite figured out how to do this in Ubuntu One; it seems you have to share files with specific people who also are running Ubuntu One (which really compounds the non-cross-platform issue) via the web interface by typing in an email address. This is a cool idea, but seems way over-engineered as a starting point. This was even brought up at the last UDS in an Ubuntu One session but was brushed off; they sadly seemed more interested in engineering complex sharing UIs than getting feedback to ensure they were solving actual problems.

Sane notifications
I think bug 462747 is what ultimately drove me to drop Ubuntu One. It notifies you not once but twice for every file you change; once to tell you it is syncing the file and another to tell you it is done. Regarding the first notification, I probably already know that I changed that file; regarding the second, if I’m really curious about the status of the synchronization, a quick glance at the applet should tell me what I need to know. This was mildly annoying as is, but it does this for hidden files like vim swap files too. Every time I would open or save a file in vim (and I save early and often), I got two notifications about syncing the hidden swap file!

Dropbox was much more sane regarding notifications; whenever I would turn on or sit down at a computer, it would show one notification telling me how many files it synced from other machines or, if there was just one changed file, the name of it. Beautiful!

Better web UI
The web user interface for Dropbox felt a lot easier to use, and I often had problems where the Ubuntu One web view would show deleted files or not show files I knew were there that were added days ago. Sometimes I had to collapse and expand a folder a time or two to get it to show the right contents. This led to a similar problem that I mentioned with the nautilus integration; it wasn’t a UI I could trust to be accurate as was therefore essentially useless. The Dropbox UI was always accurate, and had some nice extras which could prove to be lifesavers like getting past versions of files.

I also experienced some other issues including bug 498444 which caused Ubuntu One applet to start up with the exclamation icon, giving the impression of not syncing files. If I wanted to edit or view a file that might have changed remotely, I had to manually tell the applet to try syncing again after startup to make sure the file was latest version (or else I could silently end up with .u1conflict file, but that’s another issue). Additionally, although the transparency is praiseworthy, all these tweets about recent issues or downtime do not inspire confidence.

That being said
Ubuntu One does have a few things going for it, however. It is installed by default which means it is the easiest cloud sync/backup solution to get started with for an Ubuntu user. And thanks to CouchDB and a package manager, Ubuntu can ship applications that make it trivial to sync their data with Ubuntu One out of the box. If I can tell all the applications I care about to sync with Ubuntu One (bookmarks, notes, podcasts, basic OS settings/appearance) from one configuration UI, that’s going to be pretty compelling.

While I currently can’t in good conscience recommend Ubuntu One to a friend (and plenty of my friends don’t even use Ubuntu), I do have high hopes for the project; it is young and if they can work out some of the above issues, many of them being personal show-stoppers, while providing application and OS integration, Ubuntu One (and perhaps Ubuntu itself) could become too compelling to not use for many people. For now however, Dropbox is the solution which stays out of my way, allows me to solve my problems, and just works.

If you are using Ubuntu One or Dropbox, certainly chime in on what the critical features are for you and why you chose one over the other!


Update: There are now Windows beta versions available of UbuntuOne and UbuntuOne now has a graduated price structure. $2.99 per month for everyone 20GB of space needed or $29 a year. Its working very nice on 10.10 Maverick.
Dan Jones
I agree with all your points. I had a similar experience, but I used Ubuntu One even less before I got sick of it.

My main problem, though, was lack of cross-platform ability. I don't only use Ubuntu. I don't even only use Linux. If Canonical ever ported Ubunutu One to Windows and OS X, I might consider using it again.

The proprietary nature of Dropbox does bother me, but then again, I have Flash installed, so how bothered can I really be by it?

A note: Dropbox does have other notifications, and they are incredibly useful. If a file changes in your Dropbox on another computer, it shows you a notification when the new file has synced to the one you're currently using. That's great for me, because sometimes my home computer might be working on a file in my Dropbox through some cron job, or something, but I'll be at work (on a Mac), and it's great to have a little Growl notification saying such-and-such file has changed on Home.
I was just checking the web to se if others had the same issues with ububtu one as myself… and found your post.
I probably lost a Lazarus project where the sources were under my ubuntu one folder so that I could easily work from different locations (single user) and have the updated version everywhere.
Now I found myself sorting out .conflict files manually to try to rebuild the "latest" version.

Hi Nathan! I haven't tried SugarSync, obviously since there is no Linux version; I use Dropbox to sync 3 Ubuntu computers at the moment :)
Nathan Brauer
Have you tried SugarSync? I haven't tried it yet but they seem pretty convincing (see their comparison chart here) compared to DropBox. They're on everything but Linux so far though :(
I switched from db to u1 because I expected better integration and rather wanted to give my money to canonical. The reliability has steadily improved (I run the daily builds) but all the issues you point out are correct. I have been very disappointed that the service is so inferior to dropbox.
Jorge E. Gómez
I recently switched to Dropbox as well; my main problem with Ubuntu One were the .conflict files appearing for no valid reason (I was careful to sync before changing between computers, but I always had to double-check and then manually diff the conflict files); that problem is gone since I switched.

Lack of symlink support (wishlist #386019) is also a bummer: with Dropbox I don't have t change the way I work, or where I want my files to be.
I have to say that the cross-platform nature of Dropbox is the major win for me. Much as I'd love to be Linux on all devices, fact is I have Windows, Linux and OS X devices (and an iPhone) and Dropbox just works on all of them. I can't yet see the point of Ubuntu One.
Free account. I think with the free account there are limitations on how many revisions are stored, but something like 15 or 30 days worth. I also do my own backup with a Drobo, but for certain docs which I need regularly the web interface comes in real handy.
Jef Spaleta
Are you a paying DropBox customer now or just using the free account?
It's been a little while since I've used Ubuntu One, but the last time I looked at it you could not revert back to an earlier version of a file or folder the way you can from the Dropbox website. Is this still the case? This is a big reason why I've not switched from Dropbox yet. If I mess up a file, or if I accidentally delete it from one machine, I would like the ability to bring it back rather than having those changes propagated to the server and all my other machines as (I think) is currently the case with Ubuntu One.
Dropbox client is also cross platform (Windows, Mac, Linux, iPhone, and Android coming soon). Right now this is a huge one for me. I only have two Linux machines synced at this point, but what if I wanted to sync a Windows machine with Ubuntu One I'm out of luck.
I would like to add that Ubuntu One is much slower at least from my city São Paulo, Brazil.
Corey Burger
So Ubuntu One is a poor Dropbox clone. Shocking. Now imagine if they had decided to open source the server from day one. That would have bought them marketing time to make the product rock, as opposed to the poor Dropbox clone stories that keep running around.
Thanks for the update Stuart, that's great to hear! I'll definitely be following the progress of Ubuntu One and as I hopefully implied I won't be surprised if (and in fact I hope that) one day I'll switch back.
Stuart Langridge
"I never quite figured out how to do this in Ubuntu One" – that's because, right at the moment, you can't give a file a public URL. This is coming in Lucid – we've been working pretty hard on it since UDS, and it'll be available with the 10.04 release.
Ah, so you haven't suffered connectivity problems then!

I frequently find myself where the applet has "disconnect" as the menu item, but the folder has "connect" (which does nothing). It seems that hibernates and suspends confuse the heck out of everything and nothing short of a reboot fixes it.

I've also had the case where it most definitively is not connected yet somehow claims that the files are all up to date - something that is not true.

There was also a problem where it would keep wanting reauthorization which was allegedly fixed in an update a few weeks ago. (Each of my machines was listed several times as a result.)

My view is that Ubuntu One is at best beta quality whereas Dropbox left beta long ago.
So you hate freedom now? ;)

wxBanker 0.7: simple personal finance

Your favorite personal finance application, wxBanker, has turned 0.7!

This release comes about 2 months after the previous release, and focuses on usability and user experience issues that I obtained from watching people use wxBanker as well as from Launchpad bugs (thanks Arty!). Let’s take a look at some of the changes, starting with the account control:

On the right we have the new account chooser in 0.7. The main change is using radio buttons for the accounts instead of links. This is a much better, already understood method for choosing accounts, and will also fit in with themes better. The last item is now “All accounts” and is selectable, making it easy to get a view of all your transactions and search in them.

The “Hide zero-balance accounts” option has moved to the View menu, and now has a keyboard shortcut. I’ve also removed the total number of accounts from the header, as well as the colons after the account names, to reduce clutter. Finally, everything has been given a bit more padding and the buttons have been slightly rearranged.

Additionally, the previous graphing library has been replaced by cairoplot (thanks Karel!), which looks much more attractive. Let’s check it out:

The Summary view allows you to see a graph of your balance over time, and you can view a graph of a specific account or all accounts by using the account chooser on the left (previously the graph had its own account chooser, that was silly!).

And in case you missed the 0.6 announcement, that version brought recurring transactions, XDG directory support, and more intuitive behavior regarding deleting/editing transfer transactions.

For downloads and the full list of features and bug-fixes, check out the release page. You can also add the PPA for easy installation and upgrades.

If you’d like to stay in the loop join the wxBanker Users team (and announcement mailing list) on Launchpad, follow wxBanker on Twitter, or hang out in #wxbanker on


I like the message panel idea. That sounds like a perfect way to do it.
Forest: That seems like a good idea. Can you think of a good way to fit this into the flow without some sort of modal pop-up? What would account creation look like; would this be required or just simpler to do?

Maybe using a message panel (as used when creating recurring transactions) to say something like "Your account has been created." with a button "Add initial balance", that enables a box an amount field next to it, where you can enter it and it will enter the transaction with date today and description "Initial balance"?
Why don't you just have it query the user for an initial balance every time they create a new account and then automatically create the transaction representing that initial balance? This is consistent with the way you're suggesting users use the program, but also more intuitive.
Hi Anonymous! Once you create the account, just add a transaction representing your initial balance via the controls on the bottom, just like you would in any sort of ledger. Then add transactions from there as they occur!

Do you have any suggestions for making this more intuitive? I'd love to hear any of your suggestions!
haven't really figured out how, after I create an account, I can set up the current balance of my account…

Automating translation template generation and check-ins for Launchpad

I previously wrote about how excited I was for the automated translation import and export features of Launchpad. Launchpad will automatically notice when you commit a translation template and import it, making it available for translation online. Generous translators will then contribute translations, and Launchpad will commit them back to your project.

Okay, so this is pretty good! However for this process to work well, the translation template needs to be generated manually by a developer whenever there are changes to strings. Otherwise, translators are working on potentially outdated strings; some are perhaps not in the application anymore, and there are likely some strings which aren’t in the template yet.

After forgetting to generate and commit my template until shortly before a release more than once (and thus having poor translation coverage on newly added strings), I decided to automate this part of the process as well. All it took was a relatively small script to generate the template, and then if there were any changes, commit and push to the branch configured for automatic import in Launchpad. The following script does just that, by searching for any files using gettext calls starting with _(” or _(‘, and passing them to xgettext.

set -e
ack-grep "_\([\"\']" -l | xargs xgettext --output=wxbanker/po/wxbanker.pot
ACTUALCHANGES="`bzr diff | grep \"^[\-\+]msg\" | wc -l`"
if [[ "$ACTUALCHANGES" != "0" ]]; then
bzr ci -m "automated generation of translation template"
bzr push :parent

Note that if you aren’t using Python, you may need to tweak the regular expression supplied to ack-grep. Once the template is generated, the diff is piped through grep to grab any changes to actual messages and make sure there was at least one. Otherwise there would always be changes due to the timestamp in the template, causing useless commits.

I then threw this script into a Hudson job, the Continuous Integration server I use for wxBanker. I configured this particular job to run nightly, pulling down the latest bzr branch beforehand, and emailing me on any failures.

It seems to be working quite well and ensures translators are always translating the latest strings and leaves nothing for me to forget, smoothing out the release process.

If this sounds interesting to you but you’re not familiar with Launchpad as a translation system, check out and feel free to ask any questions here. If you do have experience with translations, how do you handle generating translation templates and then integrating the translations?