Newsletter para devsEntra
Web Reactiva

WR 63: Docker, Xampp, Vagrant... ¿De qué familia eres?

Los entornos locales de desarrollo son como grandes familias. Parece que cuesta trabajo moverse entre ellos, pero, ¿realmente es así?

Escúchalo también en Spotify | Apple Podcasts | Google Podcasts | iVoox

Ya está abierto el Calendario de Adviento del Código Libre. Esperando a que llegue el 1 de diciembre y que aparezca publicado el primer recurso de Software Libre / Open Source.

Puedes participar a través de este formulario, ¡todavía hay días libres!

Además hemos pasado a la quinta y penúltima entrega del #desafíoPython, colocando ya en una web visible todo el contenido de nuestro ranking de podcasts de ivoox.

Entornos de desarrollo local

Hay cientos de entornos de desarrollo local, casi tantos como desarrolladores. Cada uno cuida su casa como mejor sabe o puede y con esto pasa igual. Unos quieren comodidad y que se lo den todo hecho. Otros buscan como mantener hasta el más mínimo detalle bajo control.

Vosotros habéis dicho esto en la encuesta que lanzamos en el canal de telegram:

Resultados de la encuesta sobre entornos de desarrollo local

En mi caso he pasado por varias etapas. Arranqué hace muchos años con wampserver. Era muy cómodo, no sabía nada de servidores, y tenía un ecosistema LAMP listo (Linux + Apache + MySQL + PHP).

Con el tiempo descubrí que todo era más difícil de la cuenta. Hacer una actualización de una versión de Apache o PHP se convertía en un suplicio, siempre con miedo a perder datos.

Pasé entonces a usar máquinas virtuales con VirtualBox, pero instalar toda una Ubuntu para un proyecto completo me pareció una barbaridad. Así que dí un salto de calidad aprendiendo Vagrant.

Levantaba máquinas con todo lo que necesitaba, en un solo comando. Me llenaba de gozo y satisfacción hasta que la máquina, por un mal apagado, se corrompía hasta el tuétano. Y fueron varias veces de volver a empezar.

Al final Docker vino en mi búsqueda y conseguí la salvación. Levanto infraestructura desde el software, gracias a los Dockerfile o docker-compose. Se me ha olvidado casi lo que tuve que pasar para ponerlo en marcha y cada día lo disfruto más.

Eso si, sigo fiel a la consola para levantar nuevos proyectos más sencillos y últimamente vengo trabajando con Laravel Valet con el que consigo más rapidez que con ningún otro.

Características de un buen entorno de desarrollo local

  • Rápido. Ya que es una necesidad en cualquier proyecto en producción, imagínate en local esperar a que cargue la página o la aplicación para seguir desarrollando.
  • Fácil actualización. No podemos quedarnos en las versiones antiguase Tenemos que poder actualizar sin que eso suponga poner en riesgo todo nuestro desarrollo.
  • Opciones de configuración. Fácil de tocar sus características, de consumo de memoria, para hacer debug, enviar o capturar correos… Tiene que abrirnos puertas, no cerrarlas.
  • Infraestructura como parte del software. Tus dependencias están claras y deberían ir de la mano de una configuración de tu software.

Enlaces del programa

Puedes seguir a Web Reactiva en el canal de telegram t.me/webreactiva o en la cuenta de twitter @webreactiva con referencias, recursos y enlaces de interés.

Escrito por:

Imagen de Daniel Primo

Daniel Primo

CEO en pantuflas de Web Reactiva. Programador y formador en tecnologías que cambian el mundo y a las personas. @delineas en twitter y canal @webreactiva en telegram

12 recursos para developers cada domingo en tu bandeja de entrada

Además de una skill práctica bien explicada, trucos para mejorar tu futuro profesional y una pizquita de humor útil para el resto de la semana. Gratis.