Back in, like, 1987, I lived in an apartment with three other guys. The four of us were all computer science majors and one of them had this catchphrase that we heard often late in the evening as he was working on his homework: “It was perfect, so I fixed it.”
That has stayed with me. Think about it, do you ever just look at something you’ve made and think, “Yeah, that’s great. I’m going to just leave that alone.” Well, if that’s you, then you can just move along. The rest of us morons just can’t leave well enough alone. Today’s examples: 1Password and my current software hobby. 1Password v3 allowed for synchronizing data across multiple devices by using Dropbox. Version 4 lets you use any folder, not just the top level Dropbox folder (this means that one might, for instance, use a shared Dropbox folder to share with one’s wife). The problem, though, is that the Android app, 1Password Reader, doesn’t decrypt the keychain properly. It can find it, but now that I’ve upgraded my desktop to use 1Password version 4 I can’t actually read the data on my phone or my tablet. It was working great, so I upgraded and now it’s less useful. Thanks.
That upgrade also required that I upgrade the OS on my laptop. So now it’s running OS X 10.8 “some stupid cat.” Meanwhile, I’ve decided that it’d probably be a good idea to rewrite my game server to run in Google’s App Engine environment. So now I’ve spent about a day and a half going around and cleaning up dangling pointers to obsolete Java frameworks and Maven installations. The “upgrade” seems mostly to have had the effect of making my IDE slower, my tools less reliable, and my hard disk more full. It was working fine, so I fixed it. Fantastic.
Oh yeah, and Oracle claims to have released a version of the Java SDK that plugs like a zillion security holes, so I had to download and install that. Because my old SDK was working fine.
2 thoughts on “Upgrades”
Bleh. I’ve still got to do the 1Password upgrade, since the mobile version doesn’t sync with Dropbox anymore because of some API that changed.
This morning I discovered that I get to rewrite most of my crypto manager, since Google App Engine doesn’t let you install a JCE provider. So I get to experiment with more undocumented and even lower-level Bouncycastle APIs. W00t! Once again, it was perfect, so I fixed it.