Nativo vs. Híbrido: let the games begin

¿Estamos ante el comienzo de una nueva era de programación? ¿De una batalla entre dos bandos contrarios? ¿O es parte de la evolución de un paradigma que llegó para quedarse?

Rodrigo Petito
Flux IT Thoughts

--

Ante la premisa anterior surgió una idea. Un encuentro. Un defensor de híbrido y dos defensores de nativo. Público. Cara a cara. Contar experiencias. Cada parte compartiría un proyecto desarrollado en alguna de estas dos tecnologías, y se decidiría un ganador (¿Lo habrá?).

El escenario fue el meetup Nativo vs. Híbrido, organizado por Flux IT en oficina Agua. El formato drinks & talks se cumplió y hubo con que pasar el rato, mientras el debate se hacía más interesante.

Nativo

Si en algo se llegó a un acuerdo entre los dos defensores del desarrollo Nativo, fue que las nuevas tecnologías que tanto iOS como Android sacan al mercado quedan automáticamente disponibles para ser utilizadas cuando son publicadas.

Otro punto que se tocó (el más fuertemente discutido y, para mí, el más importante), fue la experiencia de usuario. Un usuario Android está acostumbrado a la experiencia que ese SO le brinda, y lo mismo ocurre para un usuario iOS. En esto Nativo saca la ventaja de respetar (o al menos brindar las herramientas para que así sea), la experiencia que cada SO brinda.

Finalmente se tocó el tema de los recursos que consume el desarrollo Nativo, el cual es coherente (en teoría) con el hardware de los equipos que cada plataforma tiene.

Híbrido

Como desarrollador Android juro solemnemente que mis intenciones no son buenas.

Híbrido sale a la cancha y ataca.

La facilidad de las tecnologías que implica es lo primero que se destaca, tan conocidas como antiguo su uso. De esto se desprende una gran ventaja: cualquiera que ya sepa de esas tecnologías, puede empezar en la programación híbrida con cierta facilidad.

La otra gran ventaja (y la que más peso tiene en mi opinión) es la velocidad de desarrollo. Con un mismo código se generan distintas apps, por lo que el tiempo y los recursos utilizados son mucho menos que para aplicaciones nativas específicas para cada plataforma. Si hablamos de iOS y Android como lo venimos haciendo, la teoría indica que se reduciría al menos la mitad del tiempo y del costo de desarrollo. Y, por supuesto, ¿Cómo no pagar menos y tener más?

En cuanto al consumo de recursos, Híbrido se defiende con la premisa de que la tecnología avanza exponencialmente y el hardware requerido para emular perfectamente el nativo en el híbrido, tarde o temprano estará disponible. Pero, cuando esa tecnología pueda ser aprovechada por Híbrido, ¿Cómo será aprovechada por Nativo? ¿Tendrá todavía funcionalidades a desarrollar que tomen el nuevo potencial del hardware y le permitan diferenciarse de Híbrido?

Fluxers y amigos de fluxers durante el debate.

Conclusión

Aunque el título marca “Nativo vs Híbrido”, bajo mi punto de vista podría ser fácilmente “Experiencia de Usuario vs. Velocidad de desarrollo”. En todo caso, hablamos de dos exponentes igualmente importantes que habrá que evaluar en cuanto al costo-beneficio que otorgan en cada situación.

Cuenta le leyenda que allá por 1981 un tal Bill Gates supo hacer una profecía en la que aseguraba que 640kb era la memoria que todos necesitaban para almacenar todo lo que tenían. Creo que todos sabemos cómo terminó eso.

¿Estaremos bajo una nueva discusión de esa índole? El hardware que hay disponible actualmente soporta con altura la programación híbrida. ¿De qué forma la programación nativa puede diferenciarse para no quedar bajo la sombra de una tecnología que permite desarrollar el doble de rápido? ¿Será que la tecnología nativa es todo lo que cualquier desarrollador querrá a futuro? ¿O tendremos programación híbrida y lo nativo será el pasado? ¿Hay un ganador?

Supongo que el tiempo lo dirá.

--

--