Switching from my main work in Python to a hobby project that until recently I did in Objective-C, but now switching to Android. Here's some thoughts of a braindead person at 01:26AM.
Things I noticed when switching from Obj-C to Android:
- Installing the Android SDK is only a fraction of the size of Xcode.
- Xcode worked out of the box, whereas Android wouldn't even download. I had to try this several times to get it to work. Rather poor.
- Thank the lord almighty for Eclipse and all its lovely proper IDE features. I never ever want to see Xcode again.
- Creating code in Eclipse/Java is so easy! It lowers the threshold for creating properly structured code a lot.
- Ugh, lots of exception catching
- Yuck, so many brackets and semicolons.
- Autocomplete works 10000 times better in Java
- Yummy, structured code. Fancy architectures. I like it.
- I find myself thinking of very fancy solutions to architectural problems in Java, which I quite enjoy. Then I realize that in Python these problems don't even occur, and I can just write useful code instead of boilerplate bullshit.
- ORM: this is an unfair comparison, but I have never seen an ORM that works as good out-of-the-box as the django one. No Java ORM comes even close (been working with ORMLite).
- Spent about 20 minutes tinkering with generics to create an optimal solution to some query problem. In Pythonworld such a problem wouldn't even occur.
- I don't miss git's merge featureset at all because I'm on a hobby project that won't need much merging anyway. SVN is adequate.
- That being said, SVN shot itself in the food when I tried to rename a file (!), breaking the svn file system somehow, after which I had to restore from the repository manually.
- Eclipse's graphical diffs are still much faster with SVN. If only the git Eclipse plugin could do this, then I could forget about SVN completely.
Things I noticed when switching from Windows 7 to Ubuntu:
- Multiple monitors do not work on my laptop's nvidia graphics card.
- Switching to built-in Intel graphics did make multiple monitors work, but performance was so poor that I could not drag windows around.