Firebase es una de las compras más potenciales que ha tenido Google en los últimos 5 años, cuenta con una propuesta de valor súper interesante tanto para un equipo de marketing, como para un equipo de desarrollo. Entre la más famosas encontramos Firebase Analytics, Mensajería en la nube, Notificaciones tipo Push, base de datos en tiempo real, entre otras cosas. Pero no todo es color de rosa, tenemos claras ventajas y desventajas para el uso de esta revolucionaria plataforma de Google para este 2017.
Ventajas
-
Adios WebServices
Cuando desarrollamos una app móvil que deba conectarse a una base de datos en la nube, salen a presumir los programadores backend con sus habilidades en base de datos SQL y lenguajes como, php, java script o aún más, sus conocimientos en frameworks como Laravel y Node.js.
Sin embargo con Firebase, ya no tendrás que solicitar apoyo para la construcción de web services, api rest, configuración del servidor, etc.
Basta con tener la lógica de tu app móvil y tener un poco de conocimiento en base de datos (bueno, en realidad no necesitas saber prácticamente nada). Y tan fácil como implementar la librería y utilizar los ejemplos de la documentación de Firebase, será suficiente para realizar tu respectivo CRUD de usuarios.
Esto hará que tu equipo de desarrollo se enfoque en temas más trascendentales para el usuario, como la experiencia del mismo UX (User Experience).
Si te interesa, puedes ver: ¿Cómo funciona un api?
-
Multiplataforma
Esta ventaja le ha gustado a muchos desarrolladores. El hecho de tener una librería multiplataforma, se agradece demasiado. De esta manera podemos utilizar prácticamente la misma lógica del código para cada lenguaje de programación.
Firebase está disponible para Android, iOS, C++ y Node.js <<Lastima por Windows Mobile>>.
Implementa Firebase ahora mismo en tu proyecto.
-
Push Notification
Facebook recién clausuró Parse, y con su cierre dejó huérfanas a miles de aplicaciones móviles que utilizaban este servicio. Parse ya estaba bien posicionado en el mercado pero por temas financieros el gigante de las redes sociales decidió dar fin al proyecto.
Así que Google vio una gran oportunidad para implementar Notificaciones tipo Push en la librería oficial de Firebase. De una manera intuitiva y genial, puedes implementar esta función con pocas líneas de código.
-
Firebase Analytics
Esta probablemente sea de las funcionalidades más importantes de Firebase. Los análisis de datos hoy en día son indispensables, por lo que de alguna manera se deben medir los resultados de un producto en el mercado.
Para los marketers es necesario tener métricas al menos por semana, mes y año.
Firebase Analytics está enfocado a medir métricas específicas de una aplicación móvil. Muchas personas aún dudan si utilizar las analiticas de Google o Firebase. He utilizado las analiticas de Firebase y podría decir que tiene lo escencial para, medir mercados, conocer a tus usuarios, por cual canal se genera más tráfico e instalaciones, entre otras cosas, las puedes obtener fácilmente con Firebase.
El Dashboard es super sencillo de utilizar (a comparación de Google Analytics). Te puedo decir que Google Analytics esta enfocado más a sitios web, en cambio Firebase Analytics, está enfocado y optimizado para apps móviles y por supuesto para apps web.
-
Ganar Dinero con Firebase
Para retornar de manera sencilla la inversión en tiempo y desarrollo de tu proyecto, puedes implementar AdMob con Firebase. No quiero entrar en detalles de la publicidad para móviles, pero si te digo que es una manera muy fácil de obtener tu ROI (Retorno De Inversión).
Desventajas
-
Límite de conexiones simultáneas
En la versión gratuita de Firebase solamente puedes tener como máximo, 100 conexiones simultáneas. Para conexiones simultáneas ilimitadas deberás pagar por una cuenta con más capacidad y funcionalidades.
Los precios los veremos en la desventaja #5.
-
Base de datos no tan complejas
Es cierto que con esta propuesta, probablemente abarcaremos el 90% de las situaciones para desarrollar nuestra app móvil. Pero y ¿el otro 10%?
Esta talvez será un situación difícil para los que tienen en mente construir un proyecto gigante, como hacer una red social compleja o una plataforma tipo Amazon, entonces sí deberás invertir en tu propio servidor y en desarrollo de backend para tu servicio web. De lo contrario será más que suficiente.
-
Algunas Funcionalidades no disponibles en las analiticas
Como es habitual de Google Analytics puedes echar un vistazo a tus usuarios activos en tiempo real y su localización. Esto no pase con las analiticas de Firebase. Pero como mencione anteriormente, Firebase está enfocado en apps móviles, no en la web. Por lo cual han decidido quitar esto y entre otras que si se encuentran en Analytics.
Pero Firebase traé otras analiticas que Google Analytics no provee.
-
Pruebas en la nube limitadas
El servicio de realizar testing de tu apk en la nube, es algo que nos ha gustado a todos. Pero tenemos restricciones en la versión gratuita. Solamente puedes hacer pruebas en 15 dispositivos por día, de los cuales, solo 5 dispositivos son físicos, los demás son virtualizados.
Cabe mencionar, que no son pruebas sencillas. Son pruebas donde Firebase utiliza un robot para hacer pruebas, como si un usuario tuviera tu app en su propio smartphone. <<Muchas de estas pruebas simulan a un usuario Dummy>>.
-
Precios
Aquí se pone interesante la cosa. En realidad tenemos muchas funciones (por no decir, casi todas) con la versión gratuita. Pero, no por tener todas las funcionalidades, significa que no hayan límites.
Mencioné varios situaciones donde habrá límites, como la conexiones de usuarios simultáneos. Para tener ilimitado deberemos pagar. Los planes que ofrece Firebase son los siguientes:
- Spark (FREE).
- Flame ($25 por mes).
- Blaze (Pagas en medida a como lo requieras).
Talvez te preguntes, ¿Pagar en medida a como lo requiera? Bueno, significa que pagarías una cuota en base a tus resultados, es decir que puedes personalizar más tu plan y en base a lo que solicites así será tu mensualidad de pago.
Cuentame si continuarás invirtiendo tiempo y dinero en el desarrollo de tu backend o darás el salto hacia la plataforma por excelencia de Google para construir fácil y rápido tu propia api rest. Deja tu opinión en los comentarios o comparte tu experiencia con Firebase.
muy buena nota, acabamos de iniciar con el desarrollo de un nuevo proyecto y decidimos q fuera sobre firebase, en lo personal me gusta mucho la velocidad a la q puede ir desarrollo supera por mucho en tiempo al proceso de crear tu propio backend, solo me tiene nervioso el costo, quizas inicie con wl flame de 25dll al mes, pero la duda es, hasta cuanto podria irse la cuenta si uso el ilimitado??? alguna experiencia de alguien sería de mucha utilidad, gracias y un saludo desde xalapa, ver. http://www.codeando.me
Hola Carlos, Una pregunta, siempre si contrataste el Blaze?, me gustaría que me dieras una idea de lo que estas pagando en relación a tu uso de datos, tambien me estoy animando a obtenerlo pero no tengo referencias del pago, gracias de antemano, Pedro BM
Hola Pedro, no hemos concluido aun, seguimos en pruebas, espero comprarlo en dias y ya les contare
Saludos
Estimados, actualmente estoy desarrollando una app en Android y el backend lo hice por web services. Todo el backend esta en el servidor de mi centro de trabajo. Lo único que me falta es que la APP reciba notificaciones como otras apps. Mi consulta está en que si Firebase, en su plan FREE, tiene limitaciones en las notificaciones push (cantidad de usuarios, notificaciones, usuarios específicios) ? Ya que en sus planes solo dice Incluido.
Hola, me pasa lo mismo, encontraste la respuesta?
Hola, pudieron encontrar una respuesta?
Yo tengo el plan Blaze para un proyecto (vale acotar que los planes son independientes por cada proyecto creado).
Es cierto que este plan utiliza el método «paga por consumo», pero aún así tiene un mínimo al cual lo siguen considerando «gratis» y eso se lo puede apreciar al final de la página «https://firebase.google.com/pricing/?hl=es-419#blaze-calculator», y en realidad son muy cómodos ya que para que llegues a esos límites mínimos tu app necesitaría ser de gran escala y estar en funcionamiento.
Lo único que deberían tener mucho cuidado es que al desarrollar no caigan en algún bucle infinito por error, especialmente en las notificaciones Push; (experiencia propia) mi app comenzó a enviar notificaciones sin parar; afortunadamente aún tenía el plan FREE y no me cobraron nada.
Pero estoy casi seguro que ni así hubiera llegado al límite mínimo ya que según la calculadora Firebase, necesitarías pasar las 2 millones de invocaciones a alguna función que envíe notificaciones para que empiecen a cobrar y para rematar si completas 4 millones el pago es de $0.80 (claramente accesible)
Hola a mi me salta la duda de la cantidad de Authentication mensuales, se supone que son 10k/month osea 10.000 usuarios, que pasa si un usuario se autentica mas de una vez al mes eso se cuenta como otro usuario y sigue valiendo por el mismo?
Yo creo que una Authentication es como un request más. Y pues si, contaria las veces que ese mismo usuarios se autentique.
Hola, estamos en una app que usa firebase, plan free de momento, pero si cada vez que un usuario abre la app cuenta como autenticación (no sólo el primer registro en la app), calculo que en mi caso se darán de media 60 autenticaciones mensuales, 2 por día. 10.000/60 = 165 usuarios. A partir de ahí, el coste por usuario al mes, 60×0,06=3,6€. Si esto es así, imposible. Alguien me puede confirmar?
las desventaja de bases de datos complejas se vería solucionada con la nueva versión de firestore? veo que introducen un modelos de colecciones, subcolecciones, documentos etc?
Estoy tratando de utilizar firebase para algun proyecto, PERO ME PARECE DEMACIADO COMPLICADO, todavía no logro entenderlo y no pude hacerlo andar, pero bueno veo que pasa con el tiempo…