CQRS O CRUD TRADICIONAL: ¿CUÁNDO CONVIENE SEPARAR LECTURA Y ESCRITURA?
En el diseño de software, una de las decisiones de arquitectura más recurrentes es elegir entre el enfoque clásico CRUD, Create, Read, Update, ...
En el diseño de software, una de las decisiones de arquitectura más recurrentes es elegir entre el enfoque clásico CRUD, Create, Read, Update, ...
¿Qué es Domain-Driven Design (DDD)? El Domain-Driven Design es un enfoque de diseño propuesto por Eric Evans. Objetico: "Poner el dominio del ...
La arquitectura Domain-Driven Design, o DDD, es un enfoque de diseño de software creado por Eric Evans que pone el dominio del negocio en el centro ...
MongoDB Compass es la herramienta gráfica oficial de MongoDB. Está diseñada para que se pueda explorar, analizar y gestionar las bases de datos de ...
MongoDB se ha convertido en una de las bases de datos más populares del mundo, especialmente entre quienes buscan flexibilidad, escalabilidad y ...
Kubernetes es una plataforma de código abierto diseñada para automatizar el despliegue, el escalado y la gestión de aplicaciones en contenedores. ...
Docker es una plataforma de código abierto que permite a los desarrolladores crear, desplegar y ejecutar aplicaciones dentro de contenedores de ...
Los servidores son piezas fundamentales. No todos cumplen la misma función: cada uno está diseñado para una tarea concreta. A continuación se ...
Una base de datos distribuida es un conjunto de bases de datos interconectadas almacenadas en múltiples ubicaciones físicas distintas, unidas por ...
NewSQL es una categoría de sistemas de gestión de bases de datos relacionales diseñados para ofrecer la escalabilidad horizontal típica de las ...
Databricks es una plataforma unificada de datos e inteligencia artificial en la nube.Es una empresa y un servicio de software fundada en 2013 por los ...
El almacenamiento y el procesamiento de datos empresariales se estructuran habitualmente en tres enfoques principales: data lake lakehouse data ...
Un Data Warehouse es un sistema de almacenamiento diseñado para unificar, limpiar y organizar grandes volúmenes de datos provenientes de múltiples ...
Syslog es un estándar, y también un protocolo, muy utilizado para el registro, logging, de mensajes en sistemas informáticos.¿Qué es exactamente?...
En el desarrollo web moderno, crear interfaces atractivas no es suficiente. También es fundamental que sean accesibles para todas las personas, ...
El HTML semántico es una forma de escribir código HTML que utiliza etiquetas con significado claro sobre el contenido que contienen. En lugar de ...
GitHub Copilot es un asistente de programación con IA. Sugiere código en tiempo real, responde preguntas, genera tests, refactoriza, crea pull ...
Nginx Proxy Manager, o NPM, es una herramienta de código abierto que ofrece una interfaz web sencilla y visual para gestionar Nginx como un proxy ...
En este post se muestran varios ejemplos de TypeScript Variables con tipos let nombre: string = "María"; let edad: number = 28; let activo: ...
En el desarrollo de software, dos arquitecturas han ganado gran popularidad por su capacidad de mantener el dominio, ola lógica de negocio, ...
En el desarrollo de software, mantener un código limpio, mantenible y escalable es uno de los mayores desafíos. Clean Architecture, propuesta por ...
MongoDB Atlas es el servicio de base de datos en la nube administrado por MongoDB. Se ha convertido en una de las soluciones más populares para ...
Las relaciones en bases de datos es uno de los conceptos fundamentales del modelo relacional. Se trata de las conexiones que se establecen entre dos o...
La normalización de base de datos es uno de los conceptos fundamentales en el diseño de bases de datos relacionales. Se trata de un proceso de ...
LDAP, abreviatura de Lightweight Directory Access Protocol, es un protocolo estándar de red que permite el acceso y la gestión de información ...
¿Qué es la Deep Web? La Deep Web, o Web Profunda, es la parte de internet que no está indexada por los motores de búsqueda convencionales. Se ...
EDA, o Exploratory Data Analysis, es una de las fases más importantes en cualquier proyecto de datos. Antes de limpiar, transformar o modelar, es ...
Los datos son uno de los activos más valiosos de cualquier organización. Sin embargo, no todas los profesionales que trabajan con datos hacen lo ...
Un proxy es básicamente un tipo de servidor que hace de intermediario entre el usuario de Internet y los sitios web a los que accede. El proxy ...
Markdown es un lenguaje de marcado ligero que permite dar formato a textos de forma sencilla y rápida, utilizando símbolos en lugar de complejas etiquetas HTML
Una expresión regular es una secuencia de caracteres que define un patrón de búsqueda. Este patrón se utiliza para encontrar coincidencias dentro ...
El fichero robots.txt es un archivo de texto plano creado por los administradores de un sitio web para indicar a los motores de búsqueda, como ...
El fichero sitemap.xml es un archivo de texto en formato XML que enumera las páginas más importantes de un sitio web. Su objetivo principal es guiar...
NGINX se ha consolidado como uno de los servidores web y proxies más potentes y versátiles del mercado. Su excelente rendimiento, bajo consumo de ...
Memcached y Redis son dos de las soluciones de caché en memoria más populares del mundo. Ambos aceleran aplicaciones web al almacenar datos en RAM y...
¿Qué es FTP? FTP, File Transfer Protocol, es uno de los protocolos más antiguos para transferir archivos entre un cliente y un servidor. Su ...
OAuth, Open Authorization, es un protocolo de autorización abierto que permite a una aplicación o sitio web acceder a recursos de un usuario en otro...
El patrón Memento es un patrón de comportamiento que permite capturar y guardar el estado interno de un objeto en un momento determinado, sin ...
TLS, o Transport Layer Security, es un protocolo de cifrado que permite establecer comunicaciones seguras entre dos sistemas a través de internet. Es...
Rate Limiting es una técnica de seguridad y control que limita la cantidad de solicitudes que un usuario, IP o token puede hacer a la aplicación o ...
Una de las decisiones más recurrentes cuando se va a desaarollar una aplicación, es elegir entre usar un ORM, Object Relational Mapping o escribir ...
Un slug es la parte final de una URL que identifica de forma clara y amigable una página o contenido. https://misitio.com/post?id=123 ...
Hasta ahora, los desarrolladores se enfrentaban a un dilema constante: Usar GET: Ideal para consultas, pero no permite enviar un body, o no está ...
En el desarrollo de APIs RESTful, uno de los errores más comunes es confundir los verbos HTTP PUT y PATCH. Aunque ambos se utilizan para actualizar ...
En el mundo de la gestión empresarial es muy común escuchar los términos CRM y ERP.. Aunque ambos son sistemas fundamentales para las empresas, ...
ERP son las siglas de Enterprise Resource Planning, que se traduce como Planificación de Recursos Empresariales. Un ERP es un sistema de software ...
CRM son las siglas de Customer Relationship Management, que en español se traduce como Gestión de Relaciones con los Clientes. Un CRM es un sistema ...
Linux es un sistema operativo libre y de código abierto, creado por Linus Torvalds. Se basa en el kernel Linux y es conocido por su gran estabilidad,...
zlib es una biblioteca de software escrita en lenguaje C que implementa el algoritmo de compresión DEFLATE. Permite comprimir y descomprimir datos en...
En aplicaciones como Instagram, Facebook, Twitter o Amazon, los usuarios pueden navegar por miles o millones de publicaciones sin que la aplicación ...
ZIP es un formato de compresión y archivado que reduce el tamaño de los archivos agrupando y codificando información redundante. Esto permite ...
Firebird es un sistema de gestión de bases de datos relacional de código abierto, multiplataforma y completamente gratuito. Se originó a partir del...
La sanitización de datos es el proceso de validar, filtrar y limpiar toda la información que entra en tu sistema para garantizar que sea segura, ...
Los datos duplicados son un problema muy común en bases de datos. Saber cómo detectarlos, validarlos y eliminarlos de forma eficiente es una ...
Los datos duplicados son uno de los problemas más comunes y costosos en cualquier sistema. Generan reportes incorrectos, desperdicio de espacio, ...
En el mundo del desarrollo web actual, una de las mayores barreras para programadores, freelancers y startups es el costo de la infraestructura. ...
Jamstack es una arquitectura moderna para desarrollar sitios y aplicaciones web. Jamstack pre-genera las páginas estáticas durante la ...
LiteSpeed es un servidor web desarrollado por LiteSpeed Technologies. Funciona como un reemplazo directo de Apache, pero con una arquitectura ...
Cuando una base de datos empieza a crecer, llega el momento de escalar. Pero no todas las estrategias son iguales. Replicación ¿Qué hace?: ...
Un gestor documental, o Document Management System, (DMS), es un software especializado o una infraestructura de código diseñada para almacenar, ...
JSON es un formato ligero de texto para intercambiar datos entre aplicaciones, sistemas y servicios. Es fácil de leer tanto para humanos como para ...
Un proxy, o servidor proxy, es un servidor intermedio que actúa como puente entre un dispositivo como el ordenador, móvil, tablet, etc. y el resto ...
Una VPC, Virtual Private Cloud, es una red privada virtual que se crea dentro de una plataforma de nube pública como AWS, Google Cloud, Azure, ...
Cuando una conexión a bases de datos no está debidamente protegida, los atacantes pueden: Intercepción de datos: Capturar información sensible ...
ACL, Access Control Listo Lista de Control de Acceso, es una forma de control de permisos. En lugar de solo tener roles como Admin, Editor, Usuario, ...
Un contenedor es una unidad ligera y portable de software que empaqueta todo lo necesario para que una aplicación funcione correctamente: El ...
Un Application Load Balancer, o ALB, es un balanceador de carga de capa 7, capa de aplicación, que distribuye el tráfico entrante entre múltiples ...
Docker y Kubernetes no son competidores directos. Son tecnologías complementarias que resuelven problemas diferentes en el ecosistema de ...
Registration Data Access Protocol, o RDAP, es un protocolo moderno para acceder a los datos de registro de recursos de Internet, como nombres de ...
Web3 es la próxima evolución de internet, basada en tecnologías descentralizadas como blockchain. A diferencia de la Web actual, donde los gigantes...
La programación reactiva es un paradigma de programación orientado a flujos de datos asíncronos y a la propagación automática de cambios. En ...
Dentro del diseño web y la conversión digital una Home Page y una Landing Page tienen objetivos muy diferentes, aunque muchas empresas las ...
Un Firewall de Aplicaciones Web, o WAF es un sistema de seguridad que se coloca entre los usuarios de internet y una aplicación web. Su función ...
El Shadow DOM es un mecanismo de encapsulación que permite aislar el HTML, CSS y JavaScript de un componente del resto del documento. Esto significa ...
Un Custom Element es una de las tecnologías principales de las Web Components. Es la capacidad nativa del navegador que te permite crear etiquetas ...
XAMPP es un paquete de software más utilizado por desarrolladores web, estudiantes y programadores principiantes. Se trata de una solución ...
localhost es el nombre que un ordenador usa para referirse a sí mismo. Es una forma de decir: “Quiero conectarme con un servidor que está ...
Swagger es un conjunto de herramientas open-source que se utiliza para diseñar, documentar y consumir API REST de forma moderna y profesional. ...
Elegir la base de datos mças adecuada al proyecto es una de las decisiones más importantes MySQL, PostgreSQL y Oracle dominan el mercado ...
Montar un backend completo (servidores, bases de datos, autenticación, notificaciones, etc.) puede llevar basrante tiempo pero Firebase llega como ...
El Patrón Repository actúa como una capa de abstracción entre la lógica de negocio, o dominio, y la capa de acceso a datos (base de datos, API, ...
Un perfilador jerárquico es una herramienta de análisis de rendimiento que muestra cómo se distribuye el tiempo de ejecución de un programa ...
Las variables de entorno son datos de configuración que usa la aplicación, pero no están en el código directamente. Ejemplos comunes: claves API, ...
La complejidad algorítmica, más conocida como Big O, es uno de los conceptos fundamentales en informática y desarrollo de software. No se trata ...
Es un protocolo que permite comunicación bidireccional en tiempo real entre cliente y servidor. Una vez establecida la conexión, ambos pueden ...
VNC, Virtual Network Computing, es un protocolo de escritorio remoto de código abierto que permite controlar un ordenador de forma remota a través ...
El cloud computing, o computación en la nube, consiste en utilizar servidores remotos conectados a internet en lugar de depender de la potencia y el ...
Jenkins es una de las plataformas más populares y utilizadas en el mundo para la integración continua (CI) y la entrega continua (CD). Se trata de ...
Cuando se consulta Google Maps para llegar de un punto A a un punto B de la forma más rápida posible, es gracias: el algoritmo de Dijkstra. ...
WebAssembly es un formato binario de bajo nivel que permite ejecutar código a un rendimiento casi nativo directamente en el navegador. Fue diseñado ...
En el mundo digital, cada vez que escribimos una dirección web como “www.ejemplo.com” en nuestro navegador, se pone en marcha la resolución DNS....
El escalado de bases de datos consiste en mejorar la capacidad de un sistema para manejar un mayor volumen de datos, usuarios concurrentes y consultas...
El hosting web o alojamiento web es un servicio que proporciona el espacio en un servidor para almacenar todos los archivos de una página web. ...
Nginx de código abierto que funciona como servidor web, proxy inverso y balanceador de carga. Actúa como intermediario entre los usuarios finales y ...
Un intérprete de programación es un programa informático que ejecuta el código fuente línea por línea, traduciéndolo y ejecutándolo al mismo ...
En cualquier programa que se ejecuta, se reserva memoria para almacenar variables, objetos y datos. Con el tiempo, mucha de esa memoria deja de ser ...
Un Middleware es una función que se ejecuta entre la petición del cliente y la respuesta del servidor,es decir, es el código que se ejecuta antes ...
En el desarrollo de software, una aplicación que funciona perfectamente con 100 usuarios puede colapsar cuando llega a 10.000 o 100.000. La clave ...
Elasticsearch es un motor de búsqueda distribuido de código abierto, basado en Apache Lucene.Está diseñado para ofrecer búsquedas de texto ...
Para configurar Nginx como balanceador de carga, hay que crear el fichero "/nginx/sites-available/load-balancer.cnf", se puede llamar ...
Un Proxy Inverso actúa como un intermediario que recibe las peticiones de internet y las reenvía a un servidor interno. Pasos para crear el proxy ...
Una imagen JFIF es un tipo de archivo de imagen basado en JPEG. Las siglas significan JPEG File Interchange Format. JFIF es básicamente una versión ...
gRPC es un framework de comunicación remota de código abierto, desarrollado por Google, que permite a los servicios interactuar de forma rápida, ...
Aunque muchas veces se usan estos términos como si fueran lo mismo, en realidad tienen diferencias importantes. Aquí se explico de forma sencilla:...
El caché es un almacenamiento intermedio de datos que guarda copias de información que se consulta con frecuencia. Su objetivo principal es evitar ...
Redis, Remote Dictionary Server, es una base de datos en memoria, de código abierto. A diferencia de las bases de datos tradicionales como MySQL o ...
La caché DNS local es una base de datos temporal en tu dispositivo que guarda las direcciones IP de los sitios web visitados. Su función es evitar ...
La mayoría de la gente solo piensa en SQL o NoSQL. Pero hay mucho más. Aquí se muestran los tipos principales de base de datos que dominan el ...
DynamoDB es una base de datos NoSQL completamente serverless y totalmente gestionada por AWS, Amazon Web Services. Se trata de una base de datos de ...
El data fetching,obtención de datos, es el proceso de solicitar y cargar información desde una fuente externa, como una API o base de datos, hacia ...
Las funciones como Servicio o FaaS es un modelo de cloud computing que permite a los desarrolladores ejecutar pequeños fragmentos de código sin ...
¿Qué es Serverless? La forma más moderna de desarrollar sin complicarse con servidores Cada vez más empresas están adoptando arquitecturas ...
Resumen claro y práctico de los más importantes: HTTP → Carga páginas web desde servidores. HTTPS → La versión segura (imprescindible para...
El DNS (Domain Name System) es el sistema que traduce nombres de dominio legibles por humanos en direcciones IP que las máquinas pueden entender. ...
En el desarrollo web moderno, la forma en que se genera y entrega el HTML al usuario es clave para el rendimiento, el SEO, la experiencia de usuario y...
reCAPTCHA: es un sistema de seguridad creado por Google para distinguir si quien interactúa en una web es una persona real o un programa ...
En el desarrollo web actual, entender la diferencia entre HTTP y HTTPS no es opcional: es una necesidad básica de seguridad. Aunque solo cambia una ...
6 estrategias que mejoran drásticamente la velocidad y la experiencia de usuario: Lazy Loading: Carga los componentes solo cuando el usuario los...
Un GreenOps es un profesional de operaciones en la nube que se encarga de hacer que las infraestructuras tecnológicas sean más sostenibles desde el ...
Entender cómo funciona el protocolo HTTP es fundamental para cualquier programador. Cada vez que se accede a una página web, se envía un formulario...
Listado histórico completo de las principales familias y generaciones de procesadores Intel, desde el primero en 1971 hasta lo conocido en marzo de ...
Tipo de Servidor Qué hace Ejemplos más usados Uso común Servidor Web ...
puertos críticos red, puertos tcp udp peligrosos, puertos inseguros, seguridad redes, puertos abiertos vulnerables, firewall puertos, puertos tcp comunes, puertos udp críticos, ciberseguridad puertos,
Un Lakehouse (o Data Lakehouse) es una arquitectura moderna de gestión de datos que combina lo mejor de dos mundos tradicionales en bases de datos y ...
Delta Lake es una capa de almacenamiento open-source (de código abierto) que se coloca encima de un data lake tradicional para convertirlo en algo ...
En el mundo de las bases de datos y la gestión de bigdata, cuando la gente habla de lakes, se refiere principalmente a conceptos modernos de ...
SMB significa Server Message Block, Bloque de Mensajes del Servidor. Es un protocolo de red muy usado para compartir archivos, impresoras y otros ...
Un data lake es un repositorio centralizado diseñado para almacenar grandes volúmenes de datos en su formato original o nativo, sin necesidad de ...
rsync es una de las herramientas más potentes y utilizadas en sistemas Linux/Unix (y también disponible en Windows vía WSL o Cygwin) para copiar, ...
WebDAV (siglas de Web-based Distributed Authoring and Versioning, o en español: Autoría y Versionado Distribuido en la Web) es un protocolo que ...
Object Cache, o caché de objetos, en programación es una técnica de almacenamiento en caché que guarda objetos completos, resultados de cálculos ...
El árbol de Patricia es una estructura de datos muy eficiente, conocida también como Patricia Trie o árbol de radix compacto. Se trata de una ...
Un árbol radix, también llamado radix tree, compact prefix tree o trie comprimido. Es una estructura de datos muy usada en programación, ...
La diferencia entre árbol Radix y árbol Patricia es un tema que genera bastante confusión porque los términos que se usan de forma ...
Oracle APEX, o Oracle Application Express, es una plataforma de desarrollo de bajo código creada por Oracle. Permite crear aplicaciones web y ...
Un árbol de Merkle es una estructura de datos en forma de árbol que se utiliza principalmente en criptografía y blockchain para verificar de forma ...
Un reverse proxy, o proxy inverso, es un servidor que se coloca delante de uno o más servidores web/aplicaciones y hace de intermediario inteligente ...
Programación Dirigida por Eventos, o event-driven programming, es un paradigma de programación en el que el flujo del programa no sigue una ...
El patrón Composite es un patrón de diseño estructural que permite componer objetos en estructuras de árbol y tratar tanto a los objetos ...
El problema N+1 es uno de los anti-patrones de rendimiento más comunes en programación cuando se trabaja con bases de datos relacionales y consiste ...
Un lenguaje interpretado es aquel en el que el código fuente no se traduce completamente a lenguaje máquina antes de ejecutarse. En cambio, existe ...
La arquitectura de datos es el diseño y la organización de cómo una empresa recoge, almacena, procesa, transforma, gobierna y distribuye todos sus datos.
Un enlace simbólico (también llamado symlink o soft link) es un tipo especial de archivo que actúa como un "apuntador" o "acceso directo" a otro ...
Una API (del inglés Application Programming Interface, o Interfaz de Programación de Aplicaciones) es un conjunto de reglas y herramientas que ...
Un DDNS, acrónimo de Dynamic DNS o DNS Dinámico, es un sistema que permite asociar un nombre de dominio fijo, como "mistioweb.ddns.net" a una ...
Una convención de nomenclatura es un conjunto de reglas y estándares para nombrar elementos (variables, archivos, campañas, recursos) de forma ...
Terraform es una herramienta de Infraestructura como Código (IaC - Infrastructure as Code) desarrollada por HashiCorp. Permite definir, provisionar y...
RPA, o automatización robótica de procesos es un robot de software que hace exactamente lo mismo que hace una persona delante del ordenador. Dicho ...
La primera página web de Internet fue creada por Tim Berners-Lee (el inventor de la World Wide Web) y se publicó el 6 de agosto de 1991. La URL era ...
TOON (Token-Oriented Object Notation) es un formato para serializar datos estructurados (objetos, arrays, valores primitivos) de forma más compacta ...
OLAP significa Online Analytical Processing. En palabras simples, es una forma de organizar y consultar datos para analizarlos fácilmente desde ...
Una URL canónica, o canonical URL es la versión preferida de una página web cuando existen múltiples URLs que apuntan al mismo contenido. Se ...
El patrón de diseño DTO es utilizado para transferir datos entre diferentes capas de una aplicación (por ejemplo, entre el backend y el frontend, o...
En mi post anterior sobre servidores CDN, se explica qué son, cómo funcionan y sus beneficios. Ahora, en este artículo, se explica como construir ...
Un servidor CDN (Content Delivery Network) es un sistema de servidores distribuidos geográficamente que almacenan copias (caché) de contenido web ...
El prompting es el proceso de comunicación con la IA (Inteligencia Artificial) y es la técnica de formular instrucciones efectivas para obtener los...
WebRTC (acrónimo de Web Real-Time Communication) es un proyecto de código abierto que permite la comunicación en tiempo real directamente entre ...
SaaS, o Software as a Service (Software como Servicio), es un modelo de distribución de software en el que una aplicación es alojada en la nube y se...
Aplicación de Página Única o SPA es un tipo de aplicación web que carga una sola página HTML y actualiza dinámicamente el contenido a medida que...
RADIUS es un protocolo de red estándar utilizado para la autenticación, autorización y contabilidad (AAA) de usuarios que acceden a una red. En el...
Un portal cautivo es una página web que se muestra automáticamente a los usuarios cuando intentan conectarse a una red Wi-Fi pública, como en ...
El self-hosting (o autoalojamiento) es la práctica de alojar y gestionar servicios, aplicaciones o sitios web en tus propios servidores o ...
Una Progressive Web App (PWA) es una aplicación web que combina las ventajas de las páginas web tradicionales con funcionalidades propias de las ...
Un side project (o proyecto paralelo) es un proyecto personal o profesional que una persona desarrolla fuera de sus responsabilidades principales, ...
SQL y NoSQL son tipos de bases de datos que se adaptan a diferentes necesidades según la estructura de los datos, la escalabilidad y los casos de ...
La arquitectura hexagonal organiza el código en tres capas principales: Dominio, Aplicación e Infraestructura. Estas capas se conectan mediante ...
CQRS es un patrón de que separa las operaciones de lectura (queries) de las operaciones de escritura (commands) en un sistema, asignándolas a modelos diferentes. Este enfoque mejora la escalabilidad,
El principio yagni (you aren’t gonna need it o "no lo vas a necesitar") de los principios clean code se basa en la siguiente idea:Un desarrollador ...
Hace tiempo hablé de como crear un entorno lamp en docker y hor quiero hablaros de como acceder a la máquina virtual de docker y es bastante ...
Hace un tiempo escribi sobre los principios KISS y ahora quiero hablaros sobre el principio dry que significa Don`t Repeat Yourself que básicamente significa, y que es obvio, que no tengas ...
ACID es un acrónimo que proviene del inglés y se refiere a un conjunto de propiedades que garantizan que las transacciones en una base de datos sean procesadas de manera confiable
Los principios solid son una 5 reglas establecidas por Robert C. Martin (Uncle Bob), que escribió el libro de clean code, donde se habla de como escribir algoritmos fáciles de entender y ...
Hace un tiempo escribía sobre los principios SOLID y hoy voy a hablar de los principios kiss. En este caso kiss significa Keep It Simple, Stupid (Mantenlo sencillo, estúpido).El principio KISS ...