Tuesday, November 6, 2012

Why Android?

Some of you might question why I'm using Android as the platform OS for Porterbot.  Aside from my desire to eventually create a custom OS for truly parallel and intuitive robot processing, Android attracts me because of Java.  Why is Java important?  Why not program in C++, or better yet, in some "hot" old language like Python or Ruby?  Here are my personal and highly biased reasons.
  • I've been using Java in my dayjob since 1997, so I'm inherently comfortable using it. 
  • Java gets a bad rap these days by programmers wanting to be more efficient but it was never intended to be the ultimate programming language.   It was written by James Gosling for the same reason I would; because cross-compiling C++ code and makefiles with endless dependencies  makes my skin crawl. 
  • I can create a robot DSL (domain specific language) in Groovy (a functional language wrapper around Java) and with a little bit of lifting, figure out how to make it work on Android.
  • It would be nice to bring the robot community into the 21st century in a good way (not in a Nightmare on Elm Street way like Microsoft's Robot Developer Studio monster).
Anyway, Android is Google's take on Java, it's reasonably open source, and the developer community is very large. 

No comments:

Post a Comment

Thanks for commenting!