Ya hace tiempo que la nube pública está presente en la conciencia pública. Los gigantes de la tecnología conocidos en casa, como Microsoft, Amazon, Google, Facebook y Apple ya ofrecen soluciones domésticas de almacenamiento de ficheros y mensajería, el meollo de nuestras vidas digitalizadas, totalmente administrado y sin límites. Las últimas startups son todas “nativas de la nube”, prescindiendo de infraestructura física y aprovechando los servicios de los proveedores de nube pública para sostener sus modelos de negocio. Hasta las instituciones con más solera y fiabilidad de nuestra sociedad, como pueden ser los gobiernos y universidades empiezan a aprovechar sus ventajas.
A lo largo de la siguiente entrada vamos a tratar de realizar un análisis más o menos pormenorizado de las ventajas y desventajas de desarrollar productos digitales en la nube.
Lógicamente el uso de la nube no es apto para todo tipo de proyectos, el uso de proveedores de nube pública, privada o híbrida está íntimamente relacionada con el tipo de producto o servicio ofrecido por nuestra empresa, así que es indudable que aunque no sean core para nuestro negocio, lo más probable es que tengamos presencia en Internet, servidores de correo electrónico, tránsito de ficheros compartidos, etc … así que de una forma u otra siempre podemos aprovechar las ventajas del cloud computing. Este tipo de usos, no los cubriremos ya que existen alternativas de sobra, que normalmente usan la nube para suministrar sus servicios aunque se nos abstraiga de ello.
Aún hoy en día, existen productos digitales que se podrían desarrollar de forma íntegra en entornos locales u on premise, pero ya sea por necesidades de cómputo, espacio o tiempo de respuesta, acabaremos necesitando la nube. Por contra, ideas relacionadas con grandes volúmenes de datos o con Internet de las cosas, son muy difíciles de ejecutar sin cloud computing, que actúa como el nexo de unión de estas y muchas otras tecnologías.
Particularmente, a la hora de iniciar un proyecto, el uso de la nube nos entrega estas ventajas:
- Menor Time to Market: Ya que podemos disponibilizar nuestro a gran escala en menor tiempo.
- Coste menor de las pruebas: En el caso de que la viabilidad sea cuestionable, una forma muy asequible de experimentar será la nube, ya que implica unos costes marginales y puntuales, que nos permitirán la toma de decisiones fundamentada.
- Posibilidad de innovar: Enfoques alternativos, disruptivos, o simplemente innovadores que podrían poner en riesgo entornos productivos, se pueden realizar como cargas de trabajo en la nube en condiciones de aislamiento,
- Pago por uso: La principal baza de la nube, aunque pueda parecer que es un gasto que no se recupera, es un gasto por lo general previsible y relacionado con el uso, sin largos períodos de amortización o grandes desembolsos iniciales.
- Enfoque serverless, el uso de servicios con el mantenimiento totalmente mediado por los proveedores de la nube ahorra mucha gestión y horas de mantenimiento, pudiendo dedicar esfuerzos a crear soluciones complejas y funcionales en poco tiempo, que además tienen un bajo mantenimiento.
- Uso de servicios gestionados que nos permiten ahorrarnos el arranque y mantenimiento de los servidores más clásicos (bases de datos, directorio activo,…) que aunque siguen teniendo servidores visibles, con un sobreprecio porcentual nos libran completamente de la gestión.
Por otro lado, existen otras desventajas, mencionamos aquí algunas que requieren esfuerzo y suponen un hándicap, por fortuna lejos de ser insalvable, para el viaje a la nube.
- Curva de aprendizaje: lógicamente la nube requiere ciertos conocimientos para aprovechar al máximo sus posibilidades, siempre se puede alquilar un servidor por horas y trabajar en remoto, pero esto se acerca más al housing que al cloud computing.
- Mayor énfasis en seguridad: Al estar nuestros datos en Internet deberemos ser más conscientes en su acceso, control y permisos.
- Posibles necesidades de recursos existentes on premise: Podemos vernos en la necesidad de acceder a datos de nuestros servidores físicos, teniendo que diseñar un sistema de nube híbrida con conexiones seguras y persistentes entre ambos.
El desarrollo de aplicaciones en la nube da lugar a numerosos framework o metodologías de trabajo, como pueden ser los productos cloud native o el enfoque serverless. Este tipo de enfoques y metodologías nos abren un abanico de posibilidades para el desarrollo de productos digitales.
Se trata de enfoques que aportan velocidad de desarrollo, permiten experimentar y fallar pronto para iterar y pivotar hacia productos viables pero también robustos, de la misma forma que permiten ventajas como escalabilidad y alta disponibilidad y un crecimiento sostenible. Todas estas características son deseables para nuestros productos, sin embargo, el viaje a la nube es un proceso, no una meta en sí.
Deja un comentario