- Java - Write in Java on both the Client and Server sides. Simplifies development and presents a low learning curve for newcomers.
- Paid apps culture - Unlike when using web apps, mobile app users we're tamed to pay for the apps they like (Thank you Apple for cracking the ice). Developing for Android might be the first time that you'll sell a piece of software directly to your users (it is my first time, and I've been programming since 1996).
- TTD - When creating a new Android Eclipse project it auto suggest to create matching test project. Proves to show that the Eclipse perspective designer had TTD in mind.
- API Demos - Good samples project to copy code segments from. Bundled with the SDK.
- No single point of entry - No single main() function. Your application can have multiple entry points (Activities), which can be used to service the user's Intents. Different from what I'm used to.
- Construct UI using XML - specifying UI elements using a markup language makes more sense than doing it programmatically (attention Swing).
- Multiple App markets - More choices for us developers.
- Coping with multiple device resolutions - using density independent pixels worked well for my modest needs.
- App Inventor - Ridiculously easy to build your first app. Go try it.
- What's your 10th? Comment if you have one.
My first App:
My first app is the Weight Watchers Points Tracker (diet related), that I've initially created for my own usage, then later posted to the Android Market. Surprisingly it has been doing pretty good (>10K installations). I'll need to see what comes next...