• Construir, desplegar y observar aplicaciones de forma uniforme con Waypoint

    gnu-linux planeta-codigo software programacion

    Cuando se tienen muchas aplicaciones si no se tienen unos procesos definidos seguramente cada una requerirá su propio proceso, herramientas de construcción y despliegue. Estas diferencias añaden complejidad y no es deseable para tener un flujo de trabajo ágil. La herramienta Waypoint de HashiCorp permite construir una aplicación independientemente del lenguaje en el que esté implementada, desplegar en diferentes proveedores de computación en la nube y observar las aplicaciones una vez desplegadas, todo con la misma herramienta y de forma uniforme que simplifica en gran medida el flujo de desarrollo.
    Continuar leyendo...

  • Construir la imagen del contenedor de la aplicación usando Buildpacks

    java planeta-codigo programacion

    Los sistemas y servicios son significativamente complejos por sí mismos, además en sistemas que se componen de varios de ellos cada uno con sus diferencias añade más complejidad al sistema. Eliminar toda la complejidad posible y simplificar el sistema es algo deseable. La herramienta Buildpacks aplica a la construcción de las aplicaciones lo que los contenedores aplican en tiempo de ejecución de las mismas, uniformizando las aplicaciones independientemente del lenguaje y plataforma que usen.
    Continuar leyendo...

  • Obtener valores de configuración antes iniciar una aplicación con Spring Boot

    java planeta-codigo

    El mecanismo de configuración de Spring Boot es muy flexible y por otro lado Spring Boot proporciona varias formas de extensión. En el proceso de inicialización de la aplicación Spring Boot permite recibir eventos y realizar las acciones que se deseen. Uno de estos eventos es ApplicationEnvironmentPreparedEvent antes de inicializar el contexto y crear los beans del contenedor de dependencias, cyando se lanza este evento es posible acceder a las propiedades de configuración.
    Continuar leyendo...

  • Hemeroteca #22

    blog planeta-codigo

    Este 2023 he escrito menos artículos que años anteriores, «solo» 52 artículos. Más allá del número de artículos pocas novedades más. Después de 13 años con un blog sigo con ganas de continuar escribiendo artículos y compartiendo lo que aprendo, a pesar de la gran cantidad de tiempo que me requiere.
    Continuar leyendo...

  • Crear un bean según el contexto donde se inyecte con Spring

    java planeta-codigo

    Spring permite inyectar un bean construido utilizando información del contexto o clase donde se inyecte. Una caso de uso para esta funcionalidad es eliminar la habitual forma estática de inyectar las referencias a un Logger de una librería de logging, la inyección según el contexto permite proporciona el colaborador del Logger no como una variable estática sino en el constructor igual que otros colaboradores. Los beneficios son dos, se elimina una referencia estática que facilita los teses unitarios y se elimina un poco de código repetido en cada clase donde se use un Logger.
    Continuar leyendo...

  • Radar tecnológico y otras fuentes de información sobre programación

    planeta-codigo programacion

    Conocer que herramientas hay disponibles permite elegir aquellas que más apropiadas sean para resolver un problema, las herramientas no son el fin pero si un medio determinante. Las herramientas usadas diariamente en el trabajo no permiten experimentar y conocer otras nuevas herramientas que en algún momento puedan pasar a considerarse una mejor opción. El radar tecnológico de Thoughtworks hace un resumen al menos dos veces al año a tener en cuenta con los cambios en las herramientas, además permite conocer nuevas herramientas.
    Continuar leyendo...

  • La PlayStation 4, otras consolas más antiguas y sus juegos unos años después desde la siguiente generación

    juegos

    La PlayStation 4 o la anterior generación ¿está ya obsoleta en el 2022?, yo creo que sigue siendo una consola perfectamente válida mientras Sony siga permitiendo comprar juegos digitales en su tienda. Aún con la salida de la PS5 es posible comprar juegos digitales y parece que será posible durante gran parte o má aún del tiempo de vida de la PS5.
    Continuar leyendo...

  • Base de datos de países, regiones, ciudades, códigos postales y otra información geográfica

    programacion planeta-codigo

    Entre las funcionalidades habituales en una aplicación está un formulario para introducir una dirección. El formulario de dirección consta de varios campos en el que suele ser recomendable realizar unas mínimas validaciones como que el código postal o ciudad sea correcto para evitar errores inadvertidos del usuario o intencionados con información incorrecta. La base de datos de GeoNames proporciona información geográfica muy útil y de forma gratuita que incluye países, ciudades, subdivisiones administrativas, códigos postales, nombres en diferentes idiomas y mucha otra información de todos los paises del mundo.
    Continuar leyendo...

  • Obtener el ancho y alto, escalar y convertir a otro formato imágenes con Java

    java planeta-codigo

    Las aplicaciones que tratan con imágenes es posible que necesiten conocer algunos datos de la imagen como anchura y altura, realizar algunas operaciones de manipulación básicas como escalado y conversión entre formatos. El propio JDK de Java ofrece algunas clases y soporta varios de los formatos más comunes de imagen. Para usos más avanzados hay que recurrir a librerías y si no fueran suficientes a comandos del sistema más avanzados.
    Continuar leyendo...

  • Programas para crear máquinas virtuales y virtualizar sistemas

    gnu-linux planeta-codigo

    La virtualización es la herramienta con la que probar un sistema operativo sin tener que utilizar una máquina física. Con la cantidad de núcleos de los sistemas actuales y la cantidad de memoria RAM que tienen, la virtualización es una opción disponible para los usuarios. Una alternativa a la virtualización son los contenedores pero estos son más para servicios sin interfaz gráfica. Hay aplicaciones que permiten tener una máquina virtual de Windows en un sistema operativo GNU/Linux o probar una distribución de GNU/Linux en un sistema Windows antes de migrar definitivamente a GNU/Linux.
    Continuar leyendo...

  • El entorno de escritorio GNOME, simple, elegante y completo

    gnu-linux planeta-codigo

    GNOME es uno de los entornos de escritorio con interfaz gráfica en GNU/Linux. Se caracteriza por ser simple en su guía de interfaz de usuario y ofreciendo simplemente las opciones de configuración que más utilizan todos los usuarios, dejando para la aplicación de retoques y las extensiones para añadir las funcionalidades que sólo algunos usuarios necesitan. Es simple pero completo incorporando un conjunto amplio de aplicaciones integradas desarrolladas junto al entorno de escritorio todas siguiendo la misma guía de estilos de usuario que permiten realizar las tareas básicas desde archivos hasta fotos, música, vídeos, visor de documentos e incluso juegos de pasatiempo entre muchas otras aplicaciones integradas.
    Continuar leyendo...

  • Realizar peticiones a APIs con herramientas de línea comandos e interfaz gráfica

    planeta-codigo programacion software

    El comando curl es la herramienta de línea de comandos para realizar cualquier petición que requiera probar un endpoint de una API o web que utilice el protocolo HTTP, tiene opciones para cualquier petición que sea requerida. Aunque curl es muy versátil y completa es una herramienta de línea de comandos sin algunas otras funcionalidades que las aplicaciones con interfaz gráfica son capaces de proporcionar. Postman es una aplicación con interfaz gráfica que cubre parte de las funcionalidades de curl y la mayoría que habitualmente un desarrollador necesita para probar una API, permite guardar colecciones y compartirlas con otros miembros de equipo de desarrollo asi como entornos y otras funcionalidades. Postman es la herramienta más conocida en su categoría y tiene una licencia comercial en base al numero de miembros de equipo que no es barata. Finalmente, Hoppscotch es una herramienta alternativa y equivalente a Postman de código abierto que no tiene coste de licencia y ofrece la mayoría de funcionalidades importantes como para sustituir a Postman.
    Continuar leyendo...

  • Funcionamiento y precauciones a seguir en los servicios de compraventa de productos de segunda mano como Wallapop

    opinion planeta-codigo

    Los servicios de compraventa de productos de segunda mano son una forma de deshacerse de los productos que ya no se usan, sacarles una compensación económica y darles otra nueva vida a productos que tal vez fuesen a acabar en la basura de otro modo. Incluso productos que no están en buen estado hay gente capaz de preguntar por ellos. Hasta ahora no he tenido ningún problema grave vendiendo productos de segunda mano que ya no necesito pero en algún momento si he tenido duda de una posible estafa aún tomando las precauciones aconsejadas al usar un servicio de intercambio de segunda mano, en productos de poco valor no es muy importante pero a partir de una cierta cantidad requiere más precaución y en todo momento tener cuidado de no caer en otro tipo de estafas en la que estos servicios se utilizan como una forma de ponerse en contacto con las víctimas.
    Continuar leyendo...

  • Las funcionalidades de un service mesh en una arquitectura de microservicios

    programacion planeta-codigo

    Los monolitos son la opción más sencilla y mejor en la mayoría de casos, los microservicios solo son recomendables cuando los problemas que resuelven compensan los problemas asociados que generan, entre ellos una mayor complejidad en la infraestructura y de comunicación entre servicios que utilizan un medio con fallos, la red de comunicaciones entre diferentes computadoras. Esta mayor complejidad, mayor número de servicios y mayor probabilidad de que alguna falle requiere utilizar herramientas para en el sistema tener seguridad, observabilidad, resiliencia y control de tráfico. Estas son funcionalidades que como una capa de red para los servicios proporciona un service mesh.
    Continuar leyendo...

  • Formas de monetizar una página web o blog y alternativas a AdSense

    blog planeta-codigo

    Si tenemos un blog o una página web probablemente requiera algún gasto como el dominio o el hosting. Pasado un tiempo si los artículos del blog son interesantes empezaremos a tener visitas que podemos monetizar para costear los gastos y seguramente algo más. En este artículo comento varias formas sencillas de monetizar una página web o blog que algunas no requieren mucho trabajo.
    Continuar leyendo...