El cambio climático no suele ser una cuestión que preocupe a demasiados desarrolladores web, aunque nuestro trabajo también tenga efectos negativos en los ecosistemas y en el medio ambiente. Qué efectos son estos y cómo podríamos dejar de “dejar huellas” de carbono en el medio ambiente, es la reflexión a la que te invito hoy.

¿Cúal es el problema?

El internet gasta energía, mucha energía. Este gasto de energía producido en algún sitio, o vários, hace del internet una de las  “mayores máquinas de carbón” de la Tierra. Por eso la sostenibilidad debe ser una prioridad también en el desarrollo web, sobretodo en esta época de pandemia de datos, en la que apostar por el digital es obligatorio, los sitios web antiguos tienen tendencia de crecer y nuevos sitios web van a aparecer en los próximos tiempos de forma exponencial.

El digital es físico

Parece contradictorio pero, es que además el “digital es físico”, y cada vez que un usuario accede a un sitio web, o descarga un documento de tu sitio web está contribuyendo de alguna forma para el calentamiento global pues, como dice Gerry McGovern, “Los centros de datos no están en la Nube. Están en tierra, en edificios físicos llenos de ordenadores hambrientos de energía.” y pronto podrán estar en el mar.

Si la actividad humana es responsable por el cambio climático y por acontecimientos extremos que llevan a crisis como la del COVID19, reducir este impacto detrás de la pantalla también es posible, y como desarrollador web creo que sí, podemos tener alguna influencia y ayudar a mejorar esta situación.

Para empezar, en este camino, es urgente compartir conocimiento y trabajar por la sostenibilidad en la web. Además, como desarrolladores web, hay algunas tareas que podemos pensar o realizar - además de utilizar servidores con energías renovables - para luchar contra el cambio climático. Aquí están algunas:

Medir el impacto

Siempre "decimos que no puedes gestionar lo que no puedes medir". Lo cierto es que esta frase tiene mucho sentido en el desarrollo web, como en el impacto que puede tener el desarrollo web en el medio ambiente y en la Tierra. Por tanto, deben haber mecanismos para medir, aunque sean aproximados.

Asimismo, pensar en sitios web más sostenibles es entrelazar el rendimiento, la experiencia de usuario y la sostenibilidad, y si quieres medir la sostenibilidad de tu producto digital, una métrica clave es el uso de energía -  el trabajo realizado del lado del servidor, del lado cliente y todas las comunicaciones de red intermediarias que transmiten datos.

Supongo que empiezas a entender donde tu trabajo como desarrollador web tiene impacto. Sin embargo, no es fácil medir el uso de energía de un sitio web, sobre todo precisar en los datos. Pero puedes utilizar alternativas como “cuanta cantidad de datos el navegador transfiere para mostrar tu sitio web, el uso de recursos del hardware, el uso de CPU, la memoria, el almacenamiento, etc…”

Medir la transferencia de datos

Herramienta para desarrolladores - Chrome

Con la ayuda de las herramientas para desarrolladores de cualquier navegador moderno puedes medir la actividad de la red y ver, por ejemplo, cuántos bytes de transferencia de datos ha cargado un sitio web, o una página web. Si puedes mantener este número (4.7MB en la imagen)  muy bajo, entre 1MB a 2MB, enhorabuena, le estás haciendo un favor a tus usuarios y a la Tierra. :)

Medir el uso de la CPU

Si tienes conocimientos de sistemas, usando el comando top (tabla de procesos) en MacOS o Linux  puedes tener acceso a detalles técnicos sobre el uso de la CPU. Navegadores como Chrome también te proporcionan información sobre el uso de la CPU, la huella de memoria y la actividad de la red.

Piensa que el objetivo es optimizar y reducir al máximo los valores de las métricas. Si quieres conocer estas métricas en CO2, o entender mejor qué impacto está teniendo el uso de la CPU en el planeta, puedes usar herramientas como WebsiteCarbon, o Ecograder.

WebsiteCarbon

Para calcular de forma aproximada las emisiones de carbono de un sitio web, la calculadora de “Website Carbon” utiliza cinco piezas clave de datos:

  1. Transferencia de datos por cable
  2. Intensidad energética de los datos web
  3. Fuente de energía utilizada por el centro de datos
  4. Intensidad de carbono de la electricidad
  5. Tráfico del sitio web

¿Interesante?

Diseño de sitios web para la sostenibilidad

¿Cómo podrías optimizar tu sitio web para que sea más sostenible, tenga mejor rendimiento y mejor experiencia de usuario? La verdad es que podrías encontrar mucha información  - otro problema - sobre este tema  en la red. Pero la idea es que si vas crear un sitio web nuevo, o rediseñar uno antiguo deberías hacerte, por ejemplo, las siguientes preguntas:

  • ¿Qué es lo realmente necesario que aparezca en la página principal?
  • ¿Qué valor añade cada uno de estos elementos a la página principal?

Además, para aplicar técnicas y conceptos de diseño web sostenible, deberías considerar:

  • Reducir las solicitudes de red. Algunas solicitudes HTTP en tu página web o sitio web pueden no ser necesarias. Revisa los CSS y JavaScripts de tu CMS. Establece una filosofía para limpiar código no deseado, y limpiar solicitudes no deseadas a tus páginas web. Te recomiendo que tengas especial atención a los plugins y frameworks de JavaScript, carousels de imágenes, usar formatos de imágenes optimizados, como por ejemplo WebP, vigilar y reflexionar si necesitas realmente las fuentes web, o si necesitas optimizarlas, y decidir por publicar una URL al Youtube envés de incrustar los vídeos en la página.
  • Examinar cuidadosamente todo. Seguro que aún te estás preguntando qué es “lo realmente necesario para la página principal”. Elementos como una barra de navegación en la página principal o en el blog, conteniendo vídeos, música, imágenes u otro tipo de contenido son innecesarios en algunos contextos pues nadie accede a la información que contienen. ¿Por qué no dejar lo esencial, y producir y mostrar estos elementos solamente si el usuario los pide? Hacerlo te permite reducir el peso de las páginas y ayuda al planeta. Por cierto, ¿sabías que el 90% de los datos digitales no se usan?
  • Prevenir repeticiones en los CSS. No es posible optimizar el rendimiento de un sitio web sin tocar los CSS ya que para un ordenador, todos los caracteres del código cuentan. 1 carácter es igual a 1 byte, por eso vale la pena tener en la caja de herramientas alguna herramienta que te permita eliminar de la página CSS no utilizados y evitar repeticiones en los CSS siempre que estés programando.
  • Controlar lo que quieres analizar. Para esta acción tendrás que “hacer pedagogía”,  negociar con el equipo de Marketing Digital y reflexionar si realmente tenéis que utilizar todos los servicios de analítica existentes en la red para conocer a tus clientes y hacer el seguimiento de los mismos. ¿Realmente necesitas Google Analytics, KISSmetrics, Piwik, Facebook Pixel, LinkedIn Insight Tag, Hotjar, CrazyEgg, etc, etc...? ¿Por qué? Estas herramientas si no son usadas dentro de un contexto correcto, ni con una estrategia adecuada, lo único que hacen es añadir más peso a tus páginas web. Además, que algunas sean gratuitas no significa que lo sean para tus usuarios, ni para tu negocio en el futuro, ni para el planeta Tierra.
  • No olvidar lo básico. Independientemente del framework, plataforma o CMS que utilices, sigue siendo importante optimizar. No te olvides de:
  • Minificar el HTML, CSS y JavaScript
  • Comprimir todas las imágenes
  • Usar los formatos correctos
  • Usar renderizado progresivo
  • Rendimiento en el lado del servidor. El lado del servidor (back-end, server-side) también necesita optimización. Habilita siempre la compresión gzip, y siempre que sea posible usa herramientas como Nginx, caché de FastCGI, WP Super Cache para Wordpress, o  HTTP2. Hay estudios que demuestran “una correlación negativa estadísticamente significativa entre las puntuaciones de rendimiento y el consumo de energía de las aplicaciones web móviles, lo que implica que un aumento de la puntuación de rendimiento tiende a conducir a una disminución del consumo de energía.”
  • Buscar servidores que funcionan con energías renovables.

“Si hace esto en HTML, consumirá 3 veces la energía, pero si lo hace en JavaScript, consumirá 10 veces.”-Gerry McGovern

Conclusión

Para concluir, debes pensar que diseñar un sitio web sostenible es pensar también en un sitio web con mejor rendimiento, más fácil de usar, más accesible, más amigable con el servidor y más optimizado para los buscadores.

Sin pensar en el medio ambiente, ¿no es esto lo que deseas para tu sitio web, siempre? Te animo a empezar a hacer de tus sitios web un poco más ecológicos, paliando el problema actual, reduciendo emisiones de carbono.

¿Te preocupa que tu sitio web sea responsable por el cambio climático? ¡Coméntalo abajo!

Foto:  Peter H en Pixabay

Fuentes: