NetMentor
Iniciar Sesión
📧 Contacto 💬 AMA 📖 Libros
IA con C#
LLM 101: alucinaciones, tokens y contexto explicado sencillo Cómo tener tu propia IA local con C# y modelos open source Construye un Sistema RAG en Local para potenciar tus LLMs Qué es el Model Context Protocol (MCP) y cómo usarlo con C#
Arquitecturas
Clean Architecture | Explicación y opinión Explicación MVC | qué es y cómo funciona? Análisis sobre Arquitectura vertical Arquitectura Hexagonal: Lo esencial Arquitectura Core-Driven: La mejor Explicación Arquitectura basada en eventos Patrón MVVM | Análisis en 10 minutos
Pagos con Stripe
Qué es Stripe Descipción del proyecto de Stripe Estrategias de pago en Stripe Vender productos a través de stripe Webhooks en Stripe API de stripe para automatizar Descuentos con Stripe Suscripciones en Stripe
Diseño de sistemas
Diseña un sistema acortador de URLs Diseña un sistema de notificaciones Diseña un sistema de ficheros en la nube
Programación Básica
Instalación del entorno de desarrollo Sentencias de toma de decisiones Variables y operadores Entrada salida por teclado y pantalla Modo Debug Live Coding Caracteres y cadenas de texto Trabajando con arrays y listas Trabajando con Fechas - DateTime Trabajando con Ficheros Programación orientada a objetos y clases Live Coding parte 2 Modificadores de acceso Manejo de excepciones Parámetros por valor y referencia Recursividad en programación Live coding serpiente La mejor forma de representar números en c#
Programación intermedia
Herencia en programación orientada a objetos Polimorfismo en programación orientada a objetos Encapsulamiento en programacion orientada a objetos Interfaces en programcion orientada a objetos Modificador sealed en C# Sobrecarga de métodos en programación Clase abstracta en C# Static en C# Extension methods en C# Tipos anónimos en C# Tipos nullables en C# Crear excepciones en C# Operador ternario en C# Tipo dinámico en C# Generics en C# Indexers en C# Test Unitarios en C# Mock en test unitarios C# - Trabajando con dependencias LINQ en C# Expresiones Regulares en C# Tuple y ValueTuple en C# | Devuelve múltiples tipos de un método Operador implícito en C# Tipos por VALOR y REFERENCIA en C# Cómo comprobar valores nulos en C# Las colas en C# El tipo Stack en C# Las listas en C# Diccionarios en C# PriorityQueue en C# Dobles en Test - Diferencia entre Stub, Fake y Mock El atributo Flag en C# Dilema con los primary constructors Asignador condicional nulo en C# Extension Members en C# Field keyword en C#: adiós a los backing fields manuales
Programación avanzada
Delegados en C# Eventos en C# Expresiones Lambda en C# Covariance & Contravariance en C# Rendimiento de una aplicación en C# Conectar base de datos MySql con Net Core y C# Programación asíncrona en C# Inmutabilidad del código Patrón Result en C# Tests de integración con C# y Docker Implementar IDisposable correctamente Cómo utilizar Yield en programación Implementar HttpClient de forma correcta en C# Localización e idiomas en .NET Aplicaciones en tiempo real con SignalR Cómo comparar objetos en C# El funcionamiento de los logs en C# Test de Integración: ¿Herramienta Clave o Pérdida de Tiempo? Explicación ValueTask en C# Channels en C#: la cola en memoria perfecta Qué es mejor, utilizar var o el tipo en C# Thread pool Starvation Un código mas eficiente en .NET gracias a Native AOT
Web API
API Rest en C# Diferencia entre Dto y entidad Estructura de una aplicación Inyección de dependencias Encriptar y desencriptar información sensible en C# Caché distribuida en .NET con Redis Middlewares y Filtros en .NET Minimal APIs en C# Importar configuración correctamente a nuestras aplicaciones .NET Options pattern en C# Hacer tests de una API con Testserver Implementar un JsonConverter Personalizado Cómo incluir headers en swagger Explicación API Key Qué es Rate Limiting? Implementacion en .NET Agilizando el Desarrollo con Ficheros .HTTP Implementar ProblemDetails para APIs HTTP GraphQL en C#: Una guía práctica con ejemplos gRPC y C#: Revoluciona la Comunicación entre servicios La importancia del token de cancelación Diseño de APIs REST: Las buenas prácticas y la consistencia son la clave
Sistemas distribuidos
Introducción a los sistemas distribuidos Patrón API Gateway Patrón productor consumidor RabbitMQ para la comunicación asíncrona Gestión de credenciales con Vault Registros de servicios con Consul Servicio de logs en .NET con Graylog Patrón CQRS explicado en 10 minutos Event Sourcing explicado facil Consistencia eventual en microservicios Unificar las respuestas de las API Patrón saga para transacciones distribuidas Health checks en ASP.NET Core Monitorización en los sistemas distribuidos Desarrollo de sistemas distribuidos con .NET Aspire en local La idempotencia en el Desarrollo de Software Garantizar consistencia de los eventos en los sistemas distribuidos
Entity Framework Core
Qué es Entity Framework Core? Qué es DBContext y DBSet Database First en Entity Framework Core Code First en Entity Framework Core Migraciones en Entity Framework Core de manera efectiva Cómo agregar datos iniciales a una base de datos con Entity Framework Core Conectarse a una base de datos con EF core Claves foráneas en Entity Framework Core La Magia del Patrón Repositorio en C# Patrón Unit of Work en C#: Un Enfoque Práctico Consultas y manipulación de datos con Entity Framework Core Soft Delete en Entity framework core Profundizando en IQueryable Entendiendo Lazy Loading, Eager Loading y Explicit Loading en Entity Framework Core Creación de un Repositorio Genérico con Entity Framework Core SQL Puro en Entity Framework core Aprendiendo a usar Interceptores en Entity Framework Core Caché de Datos en Entity Framework Core: Un Enfoque Práctico Abordando Conflictos de Concurrencia en Entity Framework Core Unit test con DbContext y Entity Framework Core Tipo de clave primaria - ID Autonumérico VS UUID Aplicaciones con múltiples clientes Stored Procedures en Entity Framework Core Entidades Owned en Entity Framework Core
Blazor
Introducción a Blazor Creación de componentes en blazor Enrutamiento en Blazor Ciclo de vida de los componentes en blazor Formularios en blazor Comunicación entre componentes blazor JavaScript interop Caracteres latinos en blazor | Problema para el SEO
Principios SOLID
Responsabilidad única Abierto Cerrado Sustitución de Liskov Segregación de interfaces Inversión de dependencias
Librerías populares en C#
Fluent Assertions en C# Mock en C# con Nsubstitute y FakeItEasy Mapear objetos en C# Tareas en segundo plano con C# El rendimiento de los mappers en C# Crear aplicaciones tolerantes a fallos con Polly Introducción a fluent validations en C# El Poder del Patrón de Mediador en .NET con MediatR Introducción a ASP.NET Core Identity Crea interfaces de usuario intuitivas en la consola con Spectre Panel admin en C# con EasyData Cómo crear una CLI en .NET ¿Dapper o Entity Framework? La eterna batalla del acceso a datos en C# Introducción a Playwright: Tests E2E en C# Uno Platform desde dentro
Curso de Git y Github
Introducción a Git y GitHub Trabajo en equipo con Git y GitHub Resuelve conflictos en GIT Cherry pick en git | Implementa los hotfixes Combina commits con Git Squash Crear diagramas en github GitHub Spark - primeras impresiones
Docker
Qué es Docker Introducción a Docker Compose introducción a Kubernetes para desarrolladores
NetCore en Linux
Elegir servidor y dominio Como crear un superusuario en CentOS Instalación de MySQL en CentOS Instalar servidor FTP en CentOS Instalacion de NGINX en CentOS Desplegar Aplicación ASP.NET Core en CentOS Certificado SSL en NGINX Desarrollo de aplicaciones .NET en Linux
Servidor casero
Crear un servidor casero con un PC antiguo Servidor multimedia casero Introducción a Portainer para administrar contenedores Dashboard para el servidor casero Conseguir contenido multimedia para el servidor Qué es transmission, para qué sirve y cómo funciona Introducción a Prowlarr Sonarr la biblioteca para administrar series Radarr la biblioteca para administrar Películas Bazarr la librería para administrar subtítulos Overseer la biblioteca que recomienda contenido Lidarr la biblioteca para administrar música Readarr la biblioteca para administrar libros
Entorno de trabajo
Trucos Visual Studio 2019 El lenguaje Markdown Análisis de código estático Qué es un ORM - introducción Dapper Qué son los microservicios Qué es JWT - Json web token Infraestructura como código Desplegar librerías en Nuget desde GitHub actions Notacion Big O Creación de plantillas de código | Agiliza tu desarrollo ¿Qué versión de .NET utilizar? Explicación al entorno de .NET Autenticación y autorización: Aprende los conceptos Qué son las feature flags? ¿Qué es un monolito modular? Comparación de arquitecturas Puede ChatGPT reemplazar a los desarrolladores? Son OData y GraphQL Comparables? Mi experiencia desarrollando aplicaciones .NET en un mac El setup de un YouTuber Mi opinión sobre el code freeze La dependencia de las empresas en open source Explicando la refactorización: Mejor código a menor coste Análisis Surface Pro 11 para Desarrollo Errores en Despliegues: El Precio de una Mala Preparación La importancia de programar bien Shadow Testing para realizar despliegues seguros Qué tener en cuenta al migrar sistemas? Crear aplicaciones en .NET desde la terminal con Warp CLI Todo el proceso de entrevistas de Microsoft contado sin filtros Patrones de Diseño Esenciales para Código Limpio y Escalable
Mundo laboral
Guia para crear un CV competitivo Primera entrevista laboral Trabajar desde casa Personalidades de los desarrolladores de software Técnicas para concentrarse en el trabajo Qué camino elegir como desarrollador web Análisis reMarkable 2 para uso profesional Cómo aprender más de un lenguaje de programación Qué es advent of code y por qué deberías hacerlo Ser desarrollador en irlanda, el coste de vida Pasa de nivel junior a SENIOR con estas 7 aplicaciones El engaño de la cobertura de código La historia de mi despido Merece la pena .NET en 2025 Serverless no existe, simplemente es el ordenador de otro Diseño y Desarrollo de Juegos de Navegador Los lenguajes de programación con más demanda ¿Qué lenguaje de programación estudiar? Benchmarks y reviews: Cuando todo parece bien... Pero NO lo está Los efectos de la Inteligencia Artificial en la creación de contenido Probamos CODEX la nueva Inteligencia artificial de OpenAI Entrevista técnica en profundidad | Deep dive interview Evaluación de las IAs más populares de programación: tiempos, iteraciones y calidad de PR El ingeniero 10x que sacude el mundo IT ¿Te sientes quemado? Quizá trabajas en una cultura tóxica Evaluando ChatGPT-5 en desarrollo de software XPPen Magic Note Pad: Análisis y experiencia real para uso profesional
Programación web
Qué es HTML y cómo funciona Etiquetas y atributos en HTML Imágenes en HTML Enlaces en HTML5 Tablas en HTML Listas en HTML Formularios en HTML Elementos de formularios en HTML
Ejercicios de Programacion
Ejercicios Programación Básica Programación Básica 2 Open source primer directo sobre ROP Open Source Segundo directo ROP
Noticias
Novedades Visual studio 2019 Novedades Net core 3 Novedades C# 8 Novedades C# 9 Resumen .NET Conf 2020 - Novedades NET 5 y más Novedades C# 10 Resumen .NET Conf 2021 | Novedades .NET 6 y mucho mas! Novedades C# 11 Novedades .NET 7 - Resumen NetConf 2022 Novedades C# 12 Novedades .NET 8 - Resumen NetConf 2023 Novedades C# 13 Novedades en .NET 9 y el resumen de la .NET Conf 2024 Microsoft crea el compilador de TypeScript con Go Automapper, MediatR y MassTransit pasan a ser de pago C# Se pasa al scripting Nuevo Visual Studio 2026: agentes, Coloretes y menos fricción Novedades C# 14

Los mejores libros de programación

Recursos seleccionados para llevar tus habilidades al siguiente nivel

Construyendo sistemas distribuidos

Construyendo sistemas distribuidos

Ivan Abad

Llegar a construir una arqutiectura eficiente no es tán sencillo como seguir un proceso o un patrón mágico es un aprendizaje cons...
📖 286 páginas Ver más →
Guía completa de desarrollo full stack con .NET

Guía completa de desarrollo full stack con .NET

Ivan Abad

Este libro es una guía exhaustiva para desarrolladores y programadores que buscan profundizar en el ecosistema de .NET y C#. Desde los fundamen...
📖 198 páginas Ver más →

© copyright 2025 NetMentor | Todos los derechos reservados | RSS Feed

Aviso legal | Politica privacidad | Politica cookies

¡Hazte miembro de la comunidad!

Como miembro de la web podrás disponer de ventajas únicas, como seleccionar cursos a seguir o incluir marcadores en posts individuales.

Estoy en progreso de crear más funcionalidades como mensajes para dudas y quizá en un futuro foros de discusión.

Los usuarios registrados premium podrán disponer de todas las ventajas de la web sin publicidad.

Login Crear cuenta

¡Apoya a la comunidad!

Guía completa de desarrollo full stack con .NET

Guía Full Stack

Descarga la guía completa de desarrollo full stack con .NET y apoya a la comunidad.

Este libro es una guía completa de desarrollo full stack con .NET, en el que se explica paso a paso cómo crear una aplicación web con .NET Core. Todo por un precio muy reducido que apoya a la comunidad y la creación de más contenido.

Tienes disponibles tanto ediciones digitales (PDF, Epub y Mobi) como ediciones físicas a través de Amazon.

Más información sobre el libro aquí
Los miembros premium reciben un descuento del 25%.
Login Crear cuenta Info libro

¡Apoya a la comunidad!

Construyendo SISTEMAS DISTRIBUIDOS

Sistemas Distribuidos

Descarga el libro Construyendo sistemas distribuidos y apoya a la comunidad.

  • 📖 280+ páginas de contenido
  • 📊 150+ diagramas explicativos
  • 🛠️ Patrones, estrategias y buenas prácticas para sistemas escalables
  • 🎯 3 Simulaciones de entrevistas de diseño

Tienes disponibles tanto ediciones digitales (PDF, Epub y Mobi) como ediciones físicas a través de Amazon.

Más información sobre el libro aquí
Los miembros premium reciben un descuento del 25%.
Login Crear cuenta Info libro

⚠️ Versión en Progreso

Estás usando la nueva interfaz

Esta es una versión en desarrollo y algunos elementos pueden no funcionar perfectamente aún o no estar implementados.

Si experimentas cualquier error, no dudes en ponert en contacto conmigo.

¿Cómo volver a la versión estable?

Añade ?useNewUI=false al final de cualquier URL

Ejemplo: https://netmentor.es?useNewUI=false

💡 Tip: Puedes cambiar entre versiones en cualquier momento usando estos parámetros en la URL.

Volver a Versión Estable