Desarrollar Software es un arte que integra muchos procesos, personas y actividades, las principales actividades que podemos encontrar en este son: Recibir requerimientos en forma de solicitud de un cliente, un proyecto, una licitación o simplemente una idea para desarrollar un software,Análisis donde clasificamos los requerimientos, realizamos diagramas para abstraer lo anterior a un lenguaje menos humanos y más computacional que permita que todas las personas involucradas en un proyecto de software entendamos o estemos de acuerdo en lo que se realizará
Diseño donde creamos Diagramas, Modelos, Bocetos, Mockups, y demás elementos para tener un acercamiento con lo que hará el softwareCodificación la parte donde pasamos el PseudoCódigo, algoritmo, requerimiento a código funcional.Pruebas donde verificamos que el software que estamos desarrollando cumple su función, tiene seguridad, soporta concurrencia y es de calidadDespliegue es donde llevamos nuestra aplicación a un entorno (seguramente de producción) para que el cliente, y/o los usuarios puedan interactuar con este.
Algunos de los inconvenientes con los que se encuentran algunas personas a la hora de desplegar sus proyectos en internet son:
Es por ello que hoy vamos a hablar de algunos servicios gratuitos para desplegar aplicaciones, y para esto empecemos hablando de los Stacks tecnológicos.
Lee también: ¿Qué son las aplicaciones web?
Son la combinación de las tecnologías usadas en las capas principales de una aplicación, es decir, frontend, backend, servidor web y capa de datos. El stack más famoso y uno de los más usados es LAMP (Linux, Apache, Mysql, PHP), y esto es debido a que las distribuciones linux (donde están la mayoría de servidores web) venían con soporte para estas tecnologías.
Con el paso de los años surgieron otros Stacks como JOTL (Java, Oracle, Tomcat, Linux) que utiliza tecnologías de oracle. Luego pasamos por los más modernos como MERN (MongoDB, ExpressJS, ReactJS, NodeJS), MEAN Cambiando Angular por React en el frontend. Y en los últimos tiempos está tomando fuerza JAM (Javascript, API, Markup). Qué es básicamente una aplicación en Javascript que consume datos de una API externa y utiliza plantillas con formato markdown para presentar la información.
Para desplegar aplicaciones tipo JAM podemos utilizar servicios gratuitos como Github Pages, Vercel, Surge.sh, entre otros.
Para desplegar aplicaciones tipo LAMP podemos utilizar servicios de hosting gratuito como 000webhost
Para desplegar aplicaciones tipo JOTL, MERN o MEAR podemos utilizar Plataformas As a Services como Heroku donde además del backend, podemos alojar una base de datos en postgresql.
Para alojar bases de datos tipo mongo podemos usar la capa gratuita en mongo atlas.
Y los grandes proveedores de cloud computing? AWS, Azure, Google Cloud Platform, IBM, entre otros, también cuentan con capas gratuitas, sin embargo requieren tarjeta de crédito (en algunos casos realizan un pago de 1 USD reembolsable para validar la tarjeta) y también son limitados en tiempo.
En el curso de Despliegue de aplicaciones aprenderás cómo desplegar tu aplicación de forma gratuita.
Parecía un buen artículo, pero tiene 1000 líneas el último párrafo. Lo curioso es que platzi tiene un curso de escritura…
Disculpa, no entendí.
Para desplegar una app que incluya el Lenguaje Python, sería un PaaS la mejor opción o alguna otra como heroku o GitHub Pages si es que soportan Python y su Stack (Python, DJango, Flask, PostgreSQL) en definitiva cual sería la opción mas recomandable en este caso.
Si alguien sabe.
He trabajado con Heroku por varios años, todo muy sencillo. Al trabajar Heroku con entornos de producción los costos suelen dispararse.
Probaré con Netlify. Gracias Edgar.
El detalle, es que netlify es JAMstack(Javascript, Api’s, y Markdown), y en particular lo que pregunta el Alexander es el siguiente stack: python, django, flask, PostgreSql.
Soy Front, pero me encantaría aprender a configurar bien los entornos de desarrollo y de producción. Actualmente es un dolor de cabeza para mi incluso en servicios tan sencillos como Vercel.
Me vi completo ese video 😆 estuvo muy bueno. A pesar de que se vio poquito de vercel, pero por lo menos entendí lo de la consola. Buen aporte!
Gracias por el artículo, muy bueno.
Existen stacks tecnológicos con Vue o Svelte en el frontend?
Yo solía utilizar LAMO Y JOTL, pero ahora estoy en desarrollo android, aunque en un futuro me gustaria poder crear una app web con la misma sencillez que puedo crear apps móviles.
también puedes incluir XAMPP, para poder montar un servidor de manera loca.
Muy buen aporte.
Es lo que me falta aprender, y batallo mucho con esa parte de Devops 😦
Los invito a ver mi proyecto creado en un LEMP stack https://platzi.com/@jericsson-carvajal/
Parece que hubo un error con el Markdown o algo así, hay varias líneas que están unidas sin ningún espacio.
Wow los párrafos están muy densos, no tiene secciones. Podrían mejorarlo? 💚
Creo que hay un problema con los saltos de línea en el documento.
Un buen artículo, supongo; pero al hacer select copy and paste de otro sitio deberian por lo menos en cuidar el formato… espacios, saltos de línea, etc
Gracias por el aporte 💚
Muy útil e interesante, pero creo que amerita una revisión y corrección.