Metro Mx for Pebble

Recién publiqué una app para el smartwatch Pebble y Pebble Steel.

Se llama Metro Mx y sirve para llevar en tu reloj un listado de las lineas y estaciones del metro.

La publiqué el 22 de abril del 2015. El proceso de publicación fue bastante amigable.

Está realizada en Javascript usando la librería de Pebble.js

Pueden ver la página de la app AQUÍ

Saludos.

Desarrollo de solución móvil para asignación de exámenes de diagnóstico en la plataforma Android.

Este es el 2do. de 2 temas que propuse para realizar mi tesis. Describo el contexto  y la idea principal para dar a entender hacia donde estaría orientado dicho desarrollo.

En la actualidad los dispositivos móviles son un factor determinante en la vida de aquellos que los utilizan. Solucionan problemas, agilizan tareas, organizan información y mantienen al usuario conectado a la red mundial de computadoras.

Estas herramientas han permitido generar nuevas maneras de difundir el conocimiento. Le dan a alumnos y maestros facilidad de compartir información de interés, así como otros datos de aspecto académico.

Poniendo esto como base, se busca aprovechar dicha movilidad para generar una solución que le brinde al estudiante una herramienta donde pueda recibir de forma fácil exámenes de diagnóstico y que sea capaz de resolverlos sin tener que depender de una computadora de escritorio o una laptop.

Estos exámenes serán generados por un grupo de profesores de la materia que fungirán como administradores y las preguntas serán validadas por los miembros del mismo grupo.

Cuando alguno de los administradores genere una nueva pregunta y dependiendo de su nivel de permisos, deberá solicitar una validación al resto de los profesores con el fin de corroborar que el planteamiento y las posibles soluciones son correctas.

La solución en su primera versión permitirá al alumno contestar preguntas con incisos y preguntas semiabiertas. El profesor podrá asignar un porcentaje del valor total a cada pregunta con el fin de obtener una calificación final.

Dicha calificación será enviada de vuelta al servidor con el fin de mantener un registro de las respuestas obtenidas.

En caso de que el alumno necesite hacer alguna aclaración o propuesta de una respuesta diferente, tendrá la opción de hacerlo mientras que los administradores validen que la sugerencia es acertada.

Como ayuda adicional para el alumno y en base a los temas de los que tratan las preguntas del examen, los profesores podrán recomendar material externo al alumno. Dicho contenido será desplegado al final de cada prueba con el fin de que el alumno complemente sus conocimientos.

Tanto usuarios como alumnos deberán tener un nombre de usuario (pudiendo ocupar una dirección de correo electrónico, por ejemplo) y una contraseña con el fin de mantener segura su información.

La parte técnica de esta propuesta consta de los siguientes componentes:

  • Móvil: El alumno contará con una aplicación móvil que inicialmente correrá sobre la plataforma Android, buscando eventualmente expandirse a otras plataformas. Esta aplicación dependerá inicialmente de una conexión a internet para actualizar la información que manejará.

Contará también con una pantalla informativa que le indicará al usuario su nivel de conocimiento y otros datos de interés, como el historial de exámenes ó las fuentes que le fueron recomendadas para consulta.

Al estar realizada en Android, se usará Java como lenguaje de programación (controlador), XML para definir las pantallas y componentes visuales de la aplicación (vista) y tentativamente una base de datos interna que contendrá la información descargada (modelo). Aunque se deberá tener especial cuidado en esta última parte con el fin de evitar comprometer la seguridad de los datos.

  • Web: La interfaz web será principalmente utilizada por los profesores / administradores. El back-end estará realizado con PHP o Python, según sea conveniente. Se puede utilizar el framework de bootstrap para el front-end del sitio. Utilizará tentativamente MySQL como base de datos. Las herramientas utilizadas dependerán de lo que la evaluación comparativa determine.

Los profesores podrán administrar las preguntas desde la página web y agruparlas de tal forma que puedan reutilizar los bloques de preguntas tantas veces como deseen en futuros exámenes y/o grupos.

Los alumnos también podrán utilizar el sitio, aunque las opciones disponibles serán bastante más limitadas. Podrán resolver exámenes y conocer su status igual que en la versión móvil. Se buscarán homogenizar las partes web y móvil para el alumno.

 

El otro tema lo pueden encontrar aquí: Comparativa entre aplicaciones nativas y web para dispositivos Android. 

¡Gracias por leer!

Comparativa entre aplicaciones nativas y web para dispositivos Android.

Esta es 1 de las 2 propuestas que estoy realizando para mi tesis. Son solo generalidades y contexto del tema. Me servirá para explicarle con más detalle a mi asesor de que van los temas que pretendo desarrollar. 

Cuando hablamos de dispositivos móviles y de la posibilidad de generar soluciones que cumplan con ciertos estándares de calidad y que además generen una grata experiencia de usuario, nos encontramos con el problema de decidir si nuestro proyecto deberá ser desarrollado de forma nativa o usando tecnologías web.

Ambas opciones son muy ocupadas actualmente y existe una enorme cantidad herramientas para crear distintos tipos de aplicaciones, desde soluciones de índole empresarial hasta juegos de alta calidad y en especial de alto rendimiento.

Con esta investigación se pretende analizar el panorama de ambos nichos comparando y buscando la solución más conveniente para el desarrollo de aplicaciones móviles.

Por un lado, las aplicaciones nativas presentan ventajas en cuanto a rendimiento y control del dispositivo. Pues corren a un nivel más bajo y normalmente son más rápidas. Permiten al desarrollador acceder a lo sensores, la configuración y demás periféricos del equipo mediante el uso de las librerías nativas del kit de desarrollo.

El tiempo de desarrollo de una aplicación nativa normalmente es mayor que el de una aplicación web. La curva de aprendizaje comúnmente es mayor. Además de que al considerar que el código solo será útil para una plataforma en especifico, requiere de más esfuerzo al buscar abarcar una parte más amplia del mercado.

Delimitando esta comparativa a dispositivos que corren el sistema operativo Android y basándonos en la arquitectura Modelo-Vista-Controlador, se sabe que el desarrollo de las aplicaciones nativas se realiza con el lenguaje de programación Java como controlador y XML para generar las vistas y los archivos de configuración. El modelo trabaja con SQLite y el almacenamiento con el que cuenta el dispositivo.

El panorama de aplicaciones web que se ejecutan en el móvil implica desarrollo de vistas utilizando hojas de estilo CSS y el lenguaje de maquetado HTML, comúnmente la versión 5, además de JavaScript como lenguaje del controlador. Comúnmente el almacenamiento de los datos se realiza con SQLite y almacenamiento local.

Las herramientas de desarrollo para ambos tipos de desarrollos son bastas, aunque existen más posibles soluciones para el desarrollo de aplicaciones web.

El Entorno de Desarrollo que se utiliza para generar aplicaciones nativas y que es proporcionado en la página oficial de Android es Eclipse. Ya que, además de ser open so urce, permite integrar las herramientas de desarrollo oficiales de Android.

Por el contrario, el desarrollo web para android permite utilizar bastas herramientas, que van desde un block de notas hasta entornos completos como Dreamweaver de Adobe o Aptana Studio.

Otro tema a considerar sería las herramientas que permiten desarrollar aplicaciones multiplataforma y que aseguran que el rendimiento es igual de bueno que un desarrollo nativo. Sus limitantes suelen ser muchas y el control que se tiene sobre el dispositivo no siempre es el esperado.

El segunto tema está en este link: Desarrollo de solución móvil para asignación de exámenes de diagnóstico en la plataforma Android.

¡Gracias por leer!

Buscando tema para mi Tesis

Actualmente me encuentro en proceso de definir un tema para mi tesis. Soy egresado de la carrera de Ingeniería en Informática de la UPIICSA del IPN, en México, Distrito Federal, por si alguno no tenia el dato. 😉

Busqué un asesor en la universidad, el Prof. José Luis Goytia, el cual me sugirió que desarrollara un par de temas que me interesen para poder definir cual será el que elija para mi tesis.

Trabajo como desarrollador de aplicacines móviles y mi fuerte son las soluciones en la plataforma Android, (aunque disfruto más desarrollar web), por lo que tomé eso como base para planear los siguientes 2 temas:

  1. Comparativa entre aplicaciones nativas y aplicaciones web móviles para dispositivos Android.
  2. Desarrollo de una solución móvil para asignación de exámenes de diagnóstico en la plataforma Android.

El primero fue completamente idea mía, esto en base a la experiencia que he aculumado en mi tiempo como desarrollador y la gran cantidad de soluciones que existen para generar aplicaciones de este tipo, así como las ventajas y desventajas que poseen estas herramientas en general. Aquí habría que desarrollar varios ejemplos buscando imitar la funcionalidad en web como en nativo y medir y comparar resultados.

El segundo tema fue una propuesta de  mi asesor, la cual me parece una idea bastante interesante y prometedora. Está basada en soluciones como la página de Duolingo.com y es una idea para generar examenes que mejoren el aprovechamiento escolar mediante el uso de tecnologías informáticas web y móviles.

Estas propuestas son las 2 finalistas de las 4 o 5 que tenia al principio. Eventualmente publicaré lo que haya desarrollador de estos temas y lo que vaya surgiendo después de que tenga el tema definido.

Gracias por leer!

Choose a life styles and let it kill you

How do you want your life to be told?

Think about the story of a couple of brokers who have had their own movies. Jordan Belfort from «The Wolf of Wall Street» and Chris Gardner from «The Pursuit of Happyness«.

Contemporaries, same profession, completely different life styles. At the end one of them could be the pet of the other.

broker

People say that bad decisions become great stories. I think this is the perfect example.

pump