www.rdiaz.es

Página personal y blog de Roberto Díaz Ortega
RSS icon Email icon Home icon
  • Widgets Móviles (Mobile Widgets Engine)

    Posted on 9 June 2009

    Para tener claro que es un widget y como funciona recomiendo la lectura de la siguiente entrada en el blog de Gema. Centrándonos más en la utilidad de los widgets en los disitivos móviles,  debemos tener en cuenta que debido a ciertas características como el tamaño de pantalla, el modo de uso del teclado/pantalla táctil y las tarifas de datos entre otras. Los dispositivos móviles se convierten en el entorno ideal para el desarrollo de widgets que simplifiquen la interacción del usuario con el dispositivo y proporcionen la mayor cantidad de información posible. Veamos un ejemplo práctico que refleja la utilidad de un widget en un dispositivo móvil:

    Supongamos que deseas ver las últimas noticias de tu periódico preferido, en ese caso los pasos a realizar en un móvil cualquiera son:

    1. Desbloqueo del terminal.
    2. Busqueda del navegador en el menu si no existe un acceso directo.
    3. Inicio del navegador.
    4. Selección del método de conexión si no se tiene contratado un plan de datos o si se quiere usar una wifi.
    5. Tecleado de la dirección si no esta en favoritos o se tiene como página de inicio.
    6. Disfrutar de las noticias

    Tal y como puede observarse se realizan un total de unas 6 acciones para ver las noticias, con la incomodidad de tener que teclear etc… En cambio teniendo una plataforma de Widgets en tu móvil el proceso puede quedar de la siguiente forma:

    1. Desbloqueo del terminal.
    2. Presionar Boton que activa plataforma widgets.
    3. Selección del método de conexión si no se tiene contratado un plan de datos o si se quiere usar una wifi.
    4. Disfrutar de las noticias.

    Como puede observarse se ha pasado de 5 tareas con incomodidades de por medio a 3 simples pasos antes de poder disfrutar de las noticias. Como este ejemplo existen otros muchos donde los widgets pueden solucionarte la vida.

    Actualmente las plataformas widgets ya son común en todos los sistemas operativos móviles como por ejemplo:

    • Zumobi para Windows Mobile y muy controlada por Microsoft, solo permiten fuentes de noticias controladas por ellos.
    • Betavine para Symbian con la colaboración de Opera y potenciado por Vodafone
    • Widset para Symbian

    Desde mi punto de vista lo mejor de los widgets es la sencillez con la que se desarrollan, indistintamente de la plataforma para la que se desarrolle los widgets estan formados por un acrhivo comprimido que contiene los siguentes elementos:

    • index.html: Web principal del widgets y donde se desarrolla toda la actividad
    • Config.xml: Manifesto donde se listan todas las características del widget
    • Archivos css: Para definir estilos
    • Archivos Javascript: Para definir acciones e interacción en el widget

    Lógicamente tal y como he comentado en días pasado los frameworks de javascript pueden ser de gran utilidad ya que ayudan en gran medida a llevar a cabo la abstracción a la hora de desarrollar y hace que el desarrollador se despreocupe un poco de la parte más técnica y se centre más en la utilidad, usabilidad y diseño del widget.

    Como conclusión y valoración personal de los widgets considero que son la herramienta para conseguir que “internet móvil” despegue definitivamente porque el usuario medio no navega por internet desde el móvil, simplemente quiere tener su dosis exacta de información, entretenimiento etc… de la manera más simple y cómoda posible. Como ejemplo pueden tomarse las aplicaciones para actualizar Facebook para iPhone y otras plataformas (el usuario puede acceder a la web de facebook desde el móvil pero prefiere acceder desde la aplicación).

  • La pesadilla móvil

    Posted on 7 May 2009

    Cada día son más las empresas que empiezan a solicitar programadores de dispositivos móviles. El principal problema que se plantea a la hora de dedicarse a la programación móvil es la cantidad de plataformas sobre las que se puede desarrollar. Aquí va un pequeño resumen de lo que es el mercado….

    En los comienzos de  los dispositivos móviles los fabricantes desarrollaban arquitecturas a medida sobre plataformas propias, creando así sus propios sistemas operativos. Con el paso del tiempo y a la vez que aumentaban las funcionalidades de los dispositivos móviles se hizo necesario el poder ejecutar software externo dentro del teléfono como juegos, etc. Esta necesidad obligó a los fabricantes a replantearse su filosofía de trabajo obligándolos así a definir plataformas de programación estándar. Fruto de esta reflexión, se tomo Java como lenguaje de referencia debido a que se trata de un lenguaje multiplataforma. Así cada fabricante empezó a implementar maquinas virtuales en sus dispositivos que permitían ejecutar código Java de terceras partes.

    Con el siguiente aumento de las capacidades de los dispositivos móviles, una vez más los fabricantes tuvieron que plantearse la implementación de sistemas operativos más eficaces y con más capacidades, por lo que ya entran en juego sistemas operativos móviles como Symbian o PalmOs. Los fabricantes concientes de la necesidad de proporcionar herramientas para facilitar la programación de los dispositivos móviles desarrollaron junto a estos sistemas operativos sus correspientes FrameWorks comenzando de esta forma la pesadilla para los desarrolladores.

    Acercándonos más a la actualidad, Apple lanza su “magnífico” iPhone, con el consecuente boom en el mercado. Una vez lanzado el iPhone y debido a la aceptación que ha tenido en el mercado a los desarrolladores no les ha quedado otra opción que tmabién aprender a desarrollar para iPhone (obligándolos a comprarse un “maravillos” ordenador Mac).

    Haciendo resumen, hasta este momento nos encontramos con Java, Symbian, PalmOs y iPhone. Si parece poco, luego entra acción Google con Android y Adobe con su versión de Flash Lite que corre sobre Symbian, no olvidándonos tampoco de Microsoft con Windows Mobile, introduciendo nuevas plataformas con su correspondiente Framework, aumentando de esta forma la esquizofrenia colectiva. Recientemente están apareciendo alguna que otra plataforma basada en open source como OpenMoco que aporta tambien su granito de arena a la paranoya mundial.

    El problema de todas estas plataformas móviles no son los diferentes Framework, el principal problema radica en la cantidad de lenguajes que hay que controlar, a continuación añado la lista de las capacidades que debería tener un desarrollador para dispositivos “móviles completo”:

    Lenguajes controlados: C/C++/C#,  J2ME, Java, Python, Flash Lite, Objetive C, COCOA

    Entornos controlados: Carbide c++, CodeWarrior, NetBeans, Eclipse, Xcode, Visual Studio

    Conocimientos Valorados: Linux, ensamblador y leguaje nativo ARM.

    Vamos….  casi naaaa…. casi mejor que merece la pena esto….

    un autentico programador