Open C de ZTE con Firefox OS 1.3 – Review

14 jun 2014 by shadow_of__soul, No Comments »

Open C Firefox OS

 

Soy una persona Pro Open Source. Todo lo que puedo, lo intento liberar bajo alguna licencia Open Source. Hace unos años, escuche a Hernan Colmeneiro en una charla en la JSConfAr, hablando sobre Boot2Gecko, el proyecto de mozilla de hacer un OS para mobiles de bajo costo, donde las apps fueran echas en tecnologia web (html, css js). El OS en si mismo es un navegador, por lo que todo es echo en tecnologia web, y con API’s especiales, se acceden a funciones como almacenamiento, localizacion etc.. Desde ese momento quise tener un Firefox OS, pero tuvieron que pasar varios años hasta que me llegara la oportunidad. En particular el equipo es un Open C de ZTE, que se vendia en ebay a $100 USD. El mas low end de la gama, con Firefox OS 1.3 instalado.

Experiencia del usuario

No quiero hacer una review para consumidores, pero me veo obligado a comentar puntos importantes sobre la usabilidad y capacidad del sistema en si, para que tengan una idea de la plataforma desde el punto de vista del consumidor (que son los usuarios de sus aplicaciones).

El telefono, a pesar de ser low end, se mueve muy fluido y rapidamente. El inicio del sistema es aun mas rapido que uno de similares caracteristicas en android, y la calidad del equipo es excepcional considerando el precio. Servicios como wifi y 3g, funcionan a la perfeccion, aunque no llegue a probar el GPS. Tiene una pantalla multitouch responsiva, de buena calidad, sin ser un iphone, pero siendo muy usable y que responde rapidamente y con precision.

El problema llega a lo que deberia ser su principal ventaja, el software. Mas alla de que hay poquisimas aplicaciones (no esperen whatsapp, telegram tiene un cliente en alpha, la mayoria de las apps no soportan notificaciones, no hay clientes de ssh, ni nada complejo para el nicho de programadores tampoco, ni siquiera un cliente de correo de gmail). Pero igualmente soy tolerante, entiendo que es una plataforma abierta, nueva y es dificil seducir a los developers. El problema no solo esta ahi, sino en el OS en si mismo. No se pueden compartir fotos o contenidos mas alla de que sea por el cliente de correo incluido. Para compartirlas por las redes sociales, hay que abrir la app, y hacerlo desde que ahi (que dicho sea de paso, la app de twitter es un wrapper de su version mobil, con muchas menos funcionalidades que su par en android). Las apps andan bien, se pueden eliminar de su ejecucion como en android, pero es muy confuso y molesto que si la conexion es intermitente, la apps quedan trabadas en negro o en blanco, esperando procesar. No es user friendly ni por asomo,  deberian tener un timeout o mostrar un error si no se pueden conectar.

Otro error garrafal e increible, es que no es posible bajar archivos desde firefox browser ! Tampoco encontre algun editor de textos o suite ofimatica mobil que suele ser muy util. El echo de no tener notificaciones en apps como FB o TW es bastante molesto y no se condice con un OS que teoricamente estaria listo para el consumidor (y orientado a la navegacion web por sobre todo).

Experiencia del programador

La primer impresion desde el punto de vista del desarrollo fue frustrante. Despues de bajarme una template para realizar la primer app (no vi ningun plugin, editor o generador de templates de proyectos), me encontre con el problema de poder conectar el telefono a la PC para poder transferir las apps. En este punto, me di cuenta que depende de ADB para ello. Yo ya lo tenia seteado para android, asi que lo unico que hice fue agregar las reglas udev para el telefono (aclaro que uso linux como OS principal). Igualmente, seguia sin aparecerme en la lista de dispositivos por ADB. Despues de mucho intento, por casualidad me doy cuenta de que cuando el telefono inactivo, este deja de estar visible desde ADB. No hay ninguna instruccion al respecto y no se si esto es culpa del OS o del fabricante (ZTE). Una vez visible, es posible conectarse via el App Manager desde firefox para transferir las apps, aun cuando se ponga en modo inactivo, no se va a desconectar del sistema.

Despues de setear todo, estaba listo para hacer deploy. El proceso es bastante simple, solo agregar la app al manager, y apretar “update” Es muy rapido, y sencillo, mucho mejor que android.

Bechmarks

Obviamente hice unas pruebas de rendimiento, y estos fueron los resultados:

Pixi.js

Pixi.js bechmark

<1000 bunnies = 60fps

<1500 bunnies = 40fps

<2250 bunnies = 30fps

Hay que decir que cuando se agregaban bunnies muy de golpe o al salir y entrar de la app, existe un congelamiento de alrededor 2-3 segundos donde no funciona nada.

Por otro lado, llegue hasta 40.000 bunnies, y aunque obviamente andaba a 5fps, nunca llego a crashear.

OpenFL html5 nativo

OpenFL BunnyMark

Me lleve una sorpresa al ver que solo andaba a 12fps con 500 bunnies. Totalmente inusable.

3D WebGL test

Boxes bechmark

Por ultimo, quise probar el rendimiento con WebGL, para eso use el bechmark que pueden encontrar aqui. Los resultados fueron:

54-60 FPS = 3       Cubos
47-53 FPS = 30     Cubos
34-38 FPS = 100   Cubos
27-31  FPS = 150  Cubos

Conclusion:

No me arrepiento de la compra, creo que es importante apoyar el desarrollo Open Source, aun, sacrificando 100 USD. Por otro lado, no es un telefono listo para el usuario normal, y tampoco para el programador, ni para su uso, ni como plataforma viable para el soporte de productos comerciales. Si estan desarrollando una web app, y tienen los recursos, los animo a sacar una version para Firefox OS. Pero cuando los recursos son limitados y su app no es web ni su principal target es html5 o la web, es inutil. No tengo idea cual es el market share de la plataforma hoy dia, pero con el simple uso, se nota que todavia esta en una etapa muy temprana, y que requiere de mucho apoyo y desarrollo, tanto creando aplicaciones como en el sistema en si.

Espero que evolucione, que se haga masivo en algun punto, y aunque android tambien es Open Source, tiene muchas partes que son cerradas. Plus, por ahi, un OS basado en web, pueda ayudar a que la fragmentacion no sea un problema tan complicado como ahora, con iOS y Android.

 

Etiquetas: , , , ,

Sigueme !

Follow Me! Follow Me! Follow Me!