¿Deben los nuevos desarrolladores «invertir» en RubyMotion o quedarse con Objective-C? ¿Qué pasa con los desarrolladores de RubyMotion que quieren solicitar un puesto de trabajo como desarrollador de iOS? Crees que serán tratados por igual en el mercado laboral?

Creo que RubyMotion es una herramienta excelente, no me malinterpretes, pero realmente está hecha para desarrolladores de Ruby (hay algunos beneficios más allá de la sintaxis y la estructura, editor/IDE agnóstico, expresividad, meta-programación, etc). Si su nivel de habilidad es prácticamente el mismo en Obj-c y Ruby, yo no iría por la ruta de RubyMotion.

Como principiante, mientras que usted podría ser capaz de obtener algunas aplicaciones básicas en funcionamiento más rápido con RubyMotion, probablemente tendrá que dedicar tanto tiempo a aprender cómo implementar la mayoría de las características de su aplicación planificada como lo haría escribiendo Obj-C en Xcode. Mientras que hay algunos grandes recursos para el uso de RubyMotion, encontrarás mucho más disponible en Obj-C.

En cuanto al mercado de trabajo de RubyMotion, aunque esto es puramente especulativo, yo diría que hay pocas posibilidades de que encuentres un trabajo construyendo aplicaciones iOS en Ruby. En mi opinión, las empresas que se dedican a iOS, o al menos tienen una parte de su interés en los móviles, no van a comprometerse con RubyMotion frente a Obj-C. (Puedes ver una lista de aplicaciones en el directorio de apps de RubyMotion: RubyMotion - Apps) Aunque actualmente no hay ningún inconveniente real para construir una aplicación en RubyMotion, es posible que algún día Apple prohíba el uso de este tipo de cadenas de herramientas para crear aplicaciones, aunque esto es lo que explica RubyMotion:

Las aplicaciones enviadas a la App Store deben ajustarse a las Directrices de Revisión dictadas por Apple. RubyMotion implementa un dialecto de Ruby que se ajusta a esas normas. Las aplicaciones de RubyMotion están completamente compiladas, no descargan ni interpretan código y utilizan las APIs públicas de iOS a través de la misma maquinaria que las aplicaciones normales de Objective-C.

Además, es posible que la cadena de herramientas no se mantenga como hasta ahora (dudo que sea así, Laurent & co no parece que vayan a parar pronto). Si este es el caso, puede ser incompatible con las nuevas versiones de iOS cuyas APIs no están implementadas en RubyMotion.

RubyMotion es una herramienta increíble, y yo la recomendaría a cualquiera que ya se sienta cómodo con el lenguaje de programación Ruby. Es muy bueno para trabajar, especialmente en las pruebas, y hay algunas hermosas aplicaciones por ahí construido en él. Sin embargo, en base a la cantidad de experiencia que has compartido con Ruby/Obj-C, yo diría que será más beneficioso para ti si puedes escribir aplicaciones nativas para iOS en Obj-C.

Actualización:

Sin embargo, si eres hábil tanto en Ruby como en Obj-C, RubyMotion puede ser una herramienta increíblemente poderosa y una visita obligada. La capacidad de crear para iOS, pero escribir y pensar en Ruby es genial para la creatividad, la productividad y la diversión.

Si tienes experiencia en ambos lenguajes, ¡definitivamente compruébalo! No quería que este post desviara a nadie de su aprendizaje.

Otros artículos de RubyMotion de interés:

  • nitron - datos como ActiveRecord
  • BubbleWrap - helpers/wrappers para APIs más parecidas a Ruby
  • Libro: RubyMotion: iOS Development with Ruby

Si usas RubyMotion para tu proyecto iOS, envíame un mensaje