El reto de ser ‘Mobile First’ a día de hoy

6 min lectura
Desarrolladores / 12 enero 2016
El reto de ser ‘Mobile First’ a día de hoy
El reto de ser ‘Mobile First’ a día de hoy

BBVA API Market

Algo que podemos ver en cualquier película de ciencia ficción que se precie, es el uso de dispositivos de comunicación personales que el protagonista lleva en la mano, en la muñeca, en una pequeña insignia en el pecho o como parte integrante de un espejo.

Como en casi todos los casos, la realidad ha superado a la ficción y el uso de los dispositivos móviles es algo endémico en nuestra civilización actual, siendo profusamente utilizados hasta en las situaciones geográficas más insospechadas.

Y estos nuevos ámbitos de uso, han impactado de lleno en la orientación de la industria del desarrollo de aplicaciones informáticas.

De dónde venimos

Desde la llegada de la informática personal en los años 80 del siglo XX, los programas informáticos estaban diseñados para ser utilizados en ordenadores de escritorio. Es decir, sentados frente al equipo de una forma estática, sin más posibilidad de transporte que realizar una mudanza.

En los años 90 se fueron introduciendo los portátiles – inicialmente en el ámbito profesional – que de una forma imparable han desembocado al momento actual donde los sobremesa solamente se utilizan en casos particulares, cuando los requerimientos de cálculo o potencia gráfica así lo recomiendan.

Pero el fenómeno de la informática en movilidad empieza a perfilarse con la llegada del siglo XXI, en el momento en que nuestros teléfonos móviles abandonan el camino de la minituarización, en pos del incremento del tamaño de las pantallas, de las capacidades del sistema operativo, y desarrollando una experiencia de usuario táctil efectiva.

A estos se unen, en los últimos años, las tabletas y los phablets – que se pueden definir como teléfonos móviles con esteroides – que ponen en valor la capacidad de cálculo y las prestaciones visuales, a cambio de degradar la experiencia del uso con una mano o su transporte en un bolsillo.

¿Qué es Mobile First?

¿A qué nos referimos entonces cuando hablamos de Mobile First? Si bien todos los “aparatos” que componen esta nueva era de movilidad son avanzados descendientes de dispositivos que llevan décadas en el mercado (como los enormes teléfonos móviles, las tabletas windowsPC o los ordenadores portábles, etc.), lo que marca las principales diferencias son los siguientes factores:

●      Experiencia de usuario táctil. A diferencia de la informática “clásica”, las aplicaciones móviles están diseñadas y orientadas a ser utilizadas con los dedos. Son puramente táctiles y el lenguaje de interacción es radicalmente diferente al de teclado y ratón.

●      Orientación de consumo. Aún cuando se puedan encontrar aplicaciones de productividad, el mundo “Mobile” es masivamente utilizado por usuarios consumidores de contenido. Lo cual marca el tipo de desarrollos que demanda el mercado y su arquitectura de la información.

●      Conexión permanente. Otra característica de la unión de las comunicaciones móviles con la informática de consumo, es que los dispositivos móviles están conectados de forma permanente a internet. Desarrollando el concepto de Cloud, en donde los datos ya no se almacenan de forma local y están accesibles en cualquier momento y desde cualquier dispositivo.

●      Duración de las baterías y  peso. Aunque entramos en el ámbito del hardware, no se puede entender el concepto de “Mobile” sin resaltar los avances tanto en la ligereza de los dispositivos como en la duración de las baterías. Conquistando, de esta forma, el desarrollo de la movilidad total en donde se puede consumir este tipo de productos en, prácticamente cualquier momento y situación 

En resumen Mobile First trata sobre la priorización de la explotación de estas plataformas de consumo desde el punto de vista de la construcción de aplicaciones informáticas. Reconociendo su peso específico, cada vez mayor, en la industria.

Conformando, sin duda, una revolución en la Sociedad de la Información, como lo fue en su momento la llegada masiva de la Web al gran público.

Principales retos

Las dificultades actuales y futuras de los dispositivos móviles tienen su punto de origen en la propia definición de portabilidad. Esta obliga a que los procesadores utilizados en sobremesa o portátiles, con sus altos consumos energéticos, difusión de calor y gran potencia de cálculo, se hayan rediseñados de acuerdo a las prioridades del nuevo mercado.

Así, el rendimiento de las aplicaciones que se ejecutan en móviles, aún cuando ya tenemos dispositivos con una potencia más que considerable, sigue siendo el carro de batalla con el que se debe enfrentar todo desarrollador.

Otro reto al que se enfrenta el equipo de desarrollo, es la variedad de dispositivos sobre los que deben funcionar las aplicaciones. Smartphone con todo tipo de resoluciones y tamaños de pantallas, capacidades de los sensores (cámara, gps, brújula, etc.), sistemas operativos (iOS, Android, etc.), e incluso versiones de los mismos.

Por lo cual el esfuerzo a realizar para ajustar una misma App a diferentes plataformas de publicación, es proporcional a la amplitud del ámbito de usuarios al que se quiere proporcionar los servicios.

Además, a diferencia que en la informática de escritorio, en el mundo móvil las aplicaciones Web – en sus distintos sabores – han sido apartadas por las app nativas; con las que se obtiene un rendimiento y experiencia de usuarios muy superiores. A cambio se pierde la enorme flexibilidad y reutilización que permite el desarrollo de aplicaciones Web, y prácticamente hay que construir una versión para cada plataforma.

Lo cual, esto último, nos lleva a un problema principal: ¿Cómo obtener beneficios en un mercado muy orientado a lo gratuito, con mucha competencia y con muy poca madurez en los modelos de negocios probados?

Formación

 

El primer paso para contestar esta compleja pregunta, sin duda, es constituir un equipo de desarrollo con conocimientos y experiencia en el mundo del desarrollo móvil.

Pero no hay que olvidar que estamos hablando de que la propia industria del desarrollo de aplicaciones informáticas es muy joven (poco más de medio lustro), si la comparamos con los siglos de conocimiento que atesoran profesiones como la arquitectura o la medicina, y donde prácticamente todo está por inventar o descubrir.

Por lo cual, si a esto le sumamos los efectos de las “modas” – que existen entre los desarrolladores – nos encontramos que las necesidades formativas de los programadores varían constantemente, a un ritmo frenético muy difícil de seguir.

Así, podríamos definir dos roles generalistas en donde debería especializarse y concentrar su aprendizaje los desarrolladores:

Backend. Toda aplicación de movilidad tiene que tener un sistema de persistencia de datos (base de datos), de integración con otros sistemas, y una capa de servicios que conecte la aplicación que está situada en el dispositivo, con la potencia y capacidades de un servidor.

El desarrollador de backend debe moverse con soltura trabajando con bases de datos, ORM, mapeos, servicios RestFull o Json. Programar en POO, con un uso correcto de patrones, manteniendo los principios SOLID y aplicando Clean Code. Y el uso intensivo de las capacidades de escalado de los servicios Cloud.

Todo ello con una orientación clara a priorizar el rendimiento.

Frontend. Aunque es un concepto muy Web, en movilidad el frontend es el desarrollo de la app nativa en sí. Lo cual implica conocer las características de los lenguajes de desarrollo de cada plataforma, las herramientas de programación y las posibilidades tanto de los dispositivos como de las interfaz gráficas que se pueden construir.

Android, iOS, Windows 10, xCode, C#, Java, etc. deben ser conocidas en profundidad de acuerdo a la plataforma sobre las que el desarrollador construya sus app. Incluso aplicaciones multiplataforma como Cordova o Xamarin, han de estar en el radar o en la especialización de los profesionales.

Con una mezcla heterogénea de estas dos áreas, un  desarrollador debería estar capacitado para crear aplicaciones móviles, integrado en un equipo. Pero hay perfiles especializados que deberían de existir en todo proyecto, pero que en la mayoría de los casos es asumido por parte del equipo:

●      Diseñador gráfico. Profesional proveniente de Bellas Artes o de Diseño Gráfico, que realiza la definición gráfica del interfaz del usuario (bajo indicaciones del equipo de UX), desde un conocimiento de las limitaciones de la plataforma.

●      UX (Experiencia de Usuario). Profesional proveniente de la comunicación y medios audiovisuales que define la arquitectura de la información, los procesos de interactividad y el lenguaje multimedia del interfaz, para obtener una experiencia de usuario satisfactoria.

●      Tester. Si bien todo desarrollador debe incluir pruebas automatizadas de su código como parte integral e inseparable de su trabajo, en un equipo es necesario contar con un especialista que diseñe las pruebas de aceptación, que construya las pruebas exploratorias y que defina, mantenga y automatice el plan de pruebas.

Por último, y no por ello menos importante, todos los componentes de un equipo de desarrollo de aplicaciones de movilidad debería tener conocimientos profundos y experiencias personales en metodologías de trabajo en equipo y personales.

Así, conceptos Agiles, el uso de Kanban o Scrum, el porqué de las fases de Análisis y Diseño en las metodologías Waterfall, o integrarse en procesos de mejora continua; deben ser conocidos, entendidos y utilizados por todo desarrollador moderno.

A nivel personal el conocer y utilizar técnicas de concentración, productividad y gestión del tiempo (GTD), permiten incrementar el orden, la concentración y la capacidad de priorización que es tan importante en una industria caótica, extremadamente cambiante y de un ritmo frenético.

En conclusión, el desarrollo de aplicaciones con una orientación “Mobile First” es un reto y uno de los campos con más perspectiva de crecimiento en la industria de la informática actual. Un área apasionante en donde cualquier desarrollador puede situarse en la punta de la tecnología del hoy y el futuro.  

Síguenos en @BBVAAPIMarket

También podría interesarte