<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on Re-Al Dev World</title><link>http://re-al-7.github.io/posts/</link><description>Recent content in Posts on Re-Al Dev World</description><generator>Hugo -- gohugo.io</generator><language>es</language><managingEditor>7.re.al.7@gmail.com (Alonzo Vera A.)</managingEditor><webMaster>7.re.al.7@gmail.com (Alonzo Vera A.)</webMaster><lastBuildDate>Thu, 07 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://re-al-7.github.io/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Construyendo una API .NET 10 con Spec-Driven Development, OpenSpec y Claude Code</title><link>http://re-al-7.github.io/2026/api-net-10-con-spec-driven-development/</link><pubDate>Thu, 07 May 2026 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2026/api-net-10-con-spec-driven-development/</guid><description>Stack: .NET 10 · C# 13 · SQLite · EF Core · xUnit · Swashbuckle · Claude Code · OpenSpec v1.3.1 · JetBrains Rider
Repositorio: re-al-7/SSI.SSD.TodoApi
Framework: openspec.dev
¿Por qué Spec-First? #El flujo default de desarrollo con IA es prompt-driven: describes lo que quieres, el agente genera código, iteras. Funciona para tareas aisladas. Se rompe para cualquier cosa con superficie real — múltiples endpoints, reglas de dominio, concerns transversales. El agente no tiene memoria de decisiones previas, no conoce las restricciones arquitectónicas, y no puede distinguir &amp;ldquo;lo que se decidió&amp;rdquo; de &amp;ldquo;lo que acabo de asumir&amp;rdquo;.</description></item><item><title>MD Converter: Tu bandeja de entrada y tus documentos como segunda mente</title><link>http://re-al-7.github.io/2026/md-converter-segunda-mente/</link><pubDate>Wed, 08 Apr 2026 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2026/md-converter-segunda-mente/</guid><description>Hay una brecha entre donde vive tu información y donde quisieras pensar con ella. Los correos de Outlook quedan atrapados en el cliente. Los PDFs son archivos planos que no se pueden enlazar. Las hojas Excel no conversan con tus notas. MD Converter cierra esa brecha: convierte cualquier documento —incluyendo hilos de correo completos— a Markdown limpio, estructurado y listo para herramientas como Obsidian.
El problema que resuelve #Si usas una herramienta de gestión de conocimiento personal (PKM) basada en Markdown, sabes el dolor: tus correos más importantes viven en Outlook, tus reportes en Word, tus datos en Excel.</description></item><item><title>De vuelta... y con nueva casa</title><link>http://re-al-7.github.io/2026/de-vuelta...-y-con-nueva-casa/</link><pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2026/de-vuelta...-y-con-nueva-casa/</guid><description>Ha pasado un buen tiempo desde el último post por aquí. La vida, los proyectos y el trabajo del día a día fueron relegando este espacio. Pero la intención de compartir lo aprendido nunca desapareció del todo.
Así que: volvemos.
Nueva casa, mismo espíritu #Como señal de que esto va en serio, el sitio ha pasado por una reestructuración completa. Lo que antes era un blog en Jekyll, ahora corre sobre Hugo con el tema Congo.</description></item><item><title>Tests con JMeter Recording Controller</title><link>http://re-al-7.github.io/2021/jmeter-recording-controller/</link><pubDate>Tue, 29 Jun 2021 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2021/jmeter-recording-controller/</guid><description>En el anterior post usabamos Selenium para grabar la funcionalidad de una pag;ína web y luego automatizar las pruebas. En esta ocasión vamos a usar JMeter Recording Controller para grabar las peticiones HTTP que se realizan a un sitio y con ello simular la navegación de un usuario.
Este tipo de escenarios nos puede servir para realizar pruebas de carga o estrés a nuestro servidor de aplicaciones. Al ejecutar peticiones HTTP, sin necesidad de una UI (como chromiun o gecko), podemos enviar varios ciclos de peticiones al mismo tiempo, sin necesidad de ver afectada la memoria de nuestro cliente.</description></item><item><title>Selenium, JUnit y JMeter</title><link>http://re-al-7.github.io/2021/selenium-junit-y-jmeter/</link><pubDate>Fri, 25 Jun 2021 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2021/selenium-junit-y-jmeter/</guid><description>En esta oportunidad vamos a ver como realizar tests con Selenium y exportarlos a JUnit. Y luego leeremos el archivo JAR generado por JUnit para incluirlo en JMeter.
Primero necesitamos instalar algunas cosas:
Selenium
JMeter
JMeter Plugin WebDriver
WebDrivers de Chrome, Firefox y/o Edge
WebDriver Language Bindings para Java
Intellij Idea o algun otro IDE para Java
Con todo esto podemos comenzar a grabar nuestras pruebas en Selenium. A continuación tenemos un ejemplo:</description></item><item><title>Guía rapida para scaffolding de aplicaciones web con NetCore y PostgreSql</title><link>http://re-al-7.github.io/2021/gu%C3%ADa-rapida-para-scaffolding-de-aplicaciones-web-con-netcore-y-postgresql/</link><pubDate>Tue, 22 Jun 2021 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2021/gu%C3%ADa-rapida-para-scaffolding-de-aplicaciones-web-con-netcore-y-postgresql/</guid><description>Este post es un poco diferente a los que habitualmente se tienen aqui. Ahora vamos a realizar una guia rápida para preparar el desarrollo de una aplicación web MVC en NetCore con Conexion a PostgresSql via EntityFramework.
Requisitos #Instalar o actualizar la herramientas de Entity Framework
dotnet tool install --global dotnet-ef dotnet tool update --global dotnet-ef Instalar o actualizar la herramienta de scaffolding:
dotnet tool install --global dotnet-aspnet-codegenerator dotnet tool update --global dotnet-aspnet-codegenerator Añadimos el certificado SSL en el PATH del proyecto</description></item><item><title>Documentar mi Base de Datos con SchemaSpy</title><link>http://re-al-7.github.io/2020/documentar-mi-base-de-datos-con-schemaspy/</link><pubDate>Sat, 18 Jul 2020 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2020/documentar-mi-base-de-datos-con-schemaspy/</guid><description>Recientemente conoci la herramienta SchemaSpy para documentar Bases de Datos, generando documentación visual, detallada, pero sobretodo, muy entendible.
Esta entrada servirá como introducción para ver lo que podemos hacer con SchemaSpy y su uso en nuestros proyectos. Lo primero, descargar e instalar SchemaSpy, para ellos seguimos los pasos descritos en su documentación oficial.
SchemaSpy funciona con la mayoría de los motores de Base de Datos, como ser Oracle, MS-SQL, DB2, PostgreSQL, MySQL, etc; y se conecta a ellos a través de JDBC.</description></item><item><title>Documentar mi Base de Datos con SchemaSpy</title><link>http://re-al-7.github.io/2020/documentar-mi-base-de-datos-con-schemaspy/</link><pubDate>Sat, 18 Jul 2020 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2020/documentar-mi-base-de-datos-con-schemaspy/</guid><description>Recientemente conoci la herramienta SchemaSpy para documentar Bases de Datos, generando documentación visual, detallada, pero sobretodo, muy entendible.
Esta entrada servirá como introducción para ver lo que podemos hacer con SchemaSpy y su uso en nuestros proyectos. Lo primero, descargar e instalar SchemaSpy, para ellos seguimos los pasos descritos en su documentación oficial.
SchemaSpy funciona con la mayoría de los motores de Base de Datos, como ser Oracle, MS-SQL, DB2, PostgreSQL, MySQL, etc; y se conecta a ellos a través de JDBC.</description></item><item><title>Integrar JIRA con los IDEs de Jetbrains</title><link>http://re-al-7.github.io/2020/integrar-jira-con-los-ides-de-jetbrains/</link><pubDate>Mon, 13 Apr 2020 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2020/integrar-jira-con-los-ides-de-jetbrains/</guid><description>Hoy vamos a ver como se puede configurar la integración de los Issues creados en JIRA para verlos como Tasks en los IDEs de Jetbrains (especificamente en Rider).
Primero se debe configurar los Servidores desde el IDE. Para ello ingresamos a Tools | Task &amp;amp; Contexts | Configure Servers&amp;hellip;.
Luego se agrega el Servidor de tipo Jira:
En el cuadro de información general se debe colocar la siguiente información:
Server URL: Es donde esta alojado nuestro servidor JIRA.</description></item><item><title>Comprimir CSS y JS con GULP</title><link>http://re-al-7.github.io/2020/comprimir-css-y-js-con-gulp/</link><pubDate>Tue, 31 Mar 2020 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2020/comprimir-css-y-js-con-gulp/</guid><description>En éste articulo vamos a ver como se puede usar GULP para automatizar la reducción de archivos JS y CSS.
Gulp # Gulp es un conjunto de herramientas JavaScript open-source, contruido en Node.js y NPM, que ayuda a automatizar tareas comunes en el desarrollo de una aplicación, como pueden ser: mover archivos de una carpeta a otra, eliminarlos, minificar código, etc.
Minimizar archivos usando Gulp # Se debe tener instalado Node.</description></item><item><title>Actualizar dependencias NPM y BOWER</title><link>http://re-al-7.github.io/2018/actualizar-dependencias-npm-y-bower/</link><pubDate>Fri, 05 Jan 2018 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2018/actualizar-dependencias-npm-y-bower/</guid><description>Hoy vamos a ver como actualizar las dependencias de un proyecto
Esto quiere decir que los archivos &amp;ldquo;package.json&amp;rdquo; y &amp;ldquo;bower.json&amp;rdquo; van a cambiar, por lo que si deseas, puedes sacar un backup de los mismos.
En el caso de &amp;ldquo;package.json&amp;rdquo;, es necesario tener el paquete NPM Check Updates instalado:
npm i -g npm-check-updates Luego se ejecuta las siguientes instrucciones:
npm-check-updates -u npm install Para el caso de &amp;ldquo;bower.json&amp;rdquo; necesitamos tener instalado el paquete Bower Check Updates.</description></item><item><title>Cobertura y Metricas en Jenkins para proyectos .Net</title><link>http://re-al-7.github.io/2017/cobertura-metricas-en-jenkins/</link><pubDate>Fri, 23 Jun 2017 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2017/cobertura-metricas-en-jenkins/</guid><description>Si ya tenemos nuestra solucion de VisualStudio en Jenkins, el siguiente paso es configurar los reportes de CObertura y Metricas
Para ello necesitamos las siguientes herramientas:
OpenCover
ReportGenerator
OpenToCoberturaConverter. Una vez descargado el paquete Nuget, procedemos a cambiar la extension del archivo de nupkg as zip. Al descomprimir el archivo zip, podremos encontrar un ejecutable en la carpeta Tools. Ese es el ejecutable que necesitamos.
Metics Power Tools. EN mi caso, la version para VisualStudio 2015.</description></item><item><title>Npm, Bower y Gulp en ASP NetCore</title><link>http://re-al-7.github.io/2017/npm-bower-y-gulp-en-asp-netcore/</link><pubDate>Fri, 23 Jun 2017 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2017/npm-bower-y-gulp-en-asp-netcore/</guid><description>Hola! El dia de ayer, 16 de Agosto, se liberó oficialmente la versión 2.0 de NetCore. Asi que por fin me animé a probarla.
Ya llevo avanzadas varias cosas en este nuevo mundo, pero ahora hablaré sobre cómo debería realizarse la gestión de paquetes con los gestores NPM, Bower y Gulp.
NPM - Node Package Manager #Si bien uno de los propósitos de NPM es el desarrollo de aplicaciones Node, no sólo se puede usar para ese fin.</description></item><item><title>SonarQube para metricas del Codigo en VisualStudio</title><link>http://re-al-7.github.io/2017/sonarqube-para-estadisticas-en-visualstudio/</link><pubDate>Thu, 22 Jun 2017 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2017/sonarqube-para-estadisticas-en-visualstudio/</guid><description>Ultimamente he estado viendo varias herramientas para ver las métricas y estadísticas del codigo fuente de algun proyecto; pero de entre todas estas herramientas destaca SonarQube, por una sencilla razon: es open source.
SonarQube es una plataforma de código abierto para el análisis de la calidad de nuestro código y para obtener métricas que pueden ayudar a mejorar la calidad del código de cualquiera de nuestros programas.
Es una herramienta que nos sirve para auditar el código dentro de nuestro ciclo de desarrollo de nuestra aplicación.</description></item><item><title>Integración Jenkins con MSBuild e IIS</title><link>http://re-al-7.github.io/2017/integracion-jenkins-iis/</link><pubDate>Tue, 20 Jun 2017 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2017/integracion-jenkins-iis/</guid><description>Estos dias me he planteado realizar la implementacion de CI (Integración Continua) en mis proyectos. Para ello he acudido a Jenkins.
Jenkins # Jenkins nos permite, de una manera facil e intuitiva, programar el despliegue de nuestras aplicaciones. Verán que instalarlo es muy simple. Aquí las instrucciones para instalarlo en cualquier S.O. En mi caso, voy a usarlo sobre Windows Server.
Por defecto, el puerto por el que escucha Jenkins es el 8080, pero podemos modificarlo para escuchar cualquier otro puerto.</description></item><item><title>Documentar tu proyecto ASP.Net y mostrarlo como un formulario mas</title><link>http://re-al-7.github.io/2017/documentar-tu-proyecto-asp.net-y-mostrarlo-como-un-formulario-mas/</link><pubDate>Sat, 17 Jun 2017 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2017/documentar-tu-proyecto-asp.net-y-mostrarlo-como-un-formulario-mas/</guid><description>Ahora mostraré como puedes hacer que tu proyecto WebForms ASP.Net genere cada vez su propia documentación en base a los comentarios del código fuente y además se muestre como un formulario.
Para empezar #Para ello utilizaremos dos recursos:
VsXMd de lijunle CommonMark.Net de Knagis Estos dos proyectos los podemos obtener a traves de su respectivo repositorio en GitHub o a traves de Nuget.
Para nuestro propósito, vamos a trabajar con el Codigo Fuente de VsXMd y con el paquete Nuget de CommonMark.</description></item><item><title>OpenLDAP con CSharp</title><link>http://re-al-7.github.io/2017/openldap-con-csharp/</link><pubDate>Wed, 04 Jan 2017 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2017/openldap-con-csharp/</guid><description>En mi empresa hemos empezado a trabajar con OpenLDAP, y esto implica cambiar todos los metodos de autenticacion de los sistemas desarrollados, a éste protocolo.
Al principio parecia dificil, pero no fue asi. Todo se hizo mas facil con la ayuda de algunos articulos de stackoverflow.
Al final pude armar una clase helper que me permitiera acceder a los elementos del LDAP:
public class LDAPHelper { private readonly LdapConnection ldapConnection; private readonly string searchBaseDN; private readonly int pageSize; public LDAPHelper( string searchBaseDN, string hostName, int portNumber, AuthType authType, string connectionAccountName, string connectionAccountPassword, int pageSize) { var ldapDirectoryIdentifier = new LdapDirectoryIdentifier( hostName, portNumber, true, false); var networkCredential = new NetworkCredential( connectionAccountName, connectionAccountPassword); ldapConnection = new LdapConnection( ldapDirectoryIdentifier, networkCredential) { AuthType = authType }; ldapConnection.</description></item><item><title>Aplicacion para descargar imagenes de una página web</title><link>http://re-al-7.github.io/2016/aplicacion-para-descargar-imagenes-de-una-p%C3%A1gina-web/</link><pubDate>Thu, 08 Dec 2016 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2016/aplicacion-para-descargar-imagenes-de-una-p%C3%A1gina-web/</guid><description>Hace algun tiempo tuve la necesidad de descargar las imágenes de una página web. Esto sería tarea sencilla de no ser porque existian mas de 50 imágenes en esa página. ASi que me propuse a realizar una aplicación de escritorio que se encargue de realizar ese trabajo por mi.
Pueden encontrar la aplicación y el codigo fuente aqui.
Me comentan que tal les va.</description></item><item><title>Mostrar archivo PDF alojado en un servidor FTP</title><link>http://re-al-7.github.io/2016/mostrar-archivo-pdf-alojado-en-un-servidor-ftp/</link><pubDate>Sat, 06 Aug 2016 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2016/mostrar-archivo-pdf-alojado-en-un-servidor-ftp/</guid><description>Tenemos un repositorio FTP donde varias oficinas en distintos lugares van alojando archivos PDF que generan con información de su respectivo trabajo. Basicamente todos pueden acceder al FTP y consultar los documentos subidos.
Sin embargo, un nuevo requerimiento necesitaba revisar y calificar el documento. Para ello, se necesitaba que el sistema web que se maneja, muestre los archivos PDF desde el FTP (sin necesidad de descargarlos todos al servidor web).</description></item><item><title>ClosedXML y el uso de plantillas</title><link>http://re-al-7.github.io/2016/closedxml-y-el-uso-de-plantillas/</link><pubDate>Tue, 26 Apr 2016 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2016/closedxml-y-el-uso-de-plantillas/</guid><description>Para facilitar la tarea de crear reportes o documentos en formato XLS o XLSX, se tiene el paquete ClosedXML. El mismo tiene soporte para el uso de templates.
Lo primero que tenemos que hacer es instalar el paquete Nuget en nuestro proyecto:
PM&amp;gt; Install-Package ClosedXML Después, el bloque de codigo necesario para mostrar un excel a partir de una plantilla es:
var strTitulo = &amp;#34;Titulo del reporte&amp;#34;; var dtReporte = ObtenerDatosReporte(); //Funcion que devolverá un DataTable //Definimos la plantilla y la utilizamos con la libreria ClosedXML var template = Server.</description></item><item><title>Integrando Trello + Bitbucket + AppHarbor</title><link>http://re-al-7.github.io/2015/integrando-trello--bitbucket--appharbor/</link><pubDate>Tue, 24 Feb 2015 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2015/integrando-trello--bitbucket--appharbor/</guid><description>En éste tutorial se va a mostrar cómo pueden enlazarse tres servicios para lograr una infraestructura que permita automatizar varias tareas en la cadena de desarrollo de software.
Primero necesitamos tener instalado Git, además de tener un repositorio localmente (en nuestro equipo) para alojarlo remotamente en BitBucket.
Una vez tengamos el repositorio en BitBucket, nos dirigimos a AppHarbor para crear nuestra aplicacion.
Una vez se haya creado la aplicación en AppHarbor, se debe elegir la opcion de despliegue desde BitBucket (&amp;ldquo;Configure BitBucket to deploy to AppHarbor&amp;rdquo;).</description></item><item><title>Generar colores hexadecimales aleatorios con Postgres</title><link>http://re-al-7.github.io/2014/generar-colores-hexadecimales-aleatorios-con-postgres/</link><pubDate>Thu, 13 Nov 2014 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2014/generar-colores-hexadecimales-aleatorios-con-postgres/</guid><description>Hoy me he visto en la necesidad de obtener Varias fechas de una tabla en PostgreSql y mostrar cada una con un color diferente en un Sistema Web.
Mi primera alternativa era buscar una funcion en PHP que me permitiera generar colores hexadecimales aleatorios, pero como tengo más experiencia en PLPgSql, decidí empezar por ahí.
Primero lo primero: todos sabemos que un color hexadecimal es la presentacion de 3 numeros en el rango de 0-255 convertidos a base 16.</description></item><item><title>GPS Visualizer</title><link>http://re-al-7.github.io/2014/gps-visualizer/</link><pubDate>Wed, 12 Nov 2014 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2014/gps-visualizer/</guid><description>Ahora les voy a hablar de un servicio GRATUITO por demás interesante. GPSVisualizer nos permite realizar conversiones entre diversos formatos de archivos de mapas (GPS, GPX, KML, KMZ, etc).
Además, permite la visualización de éstos archivos. Realmente es una herramienta muy util. Puedes revisarla aqui.</description></item><item><title>Exportar tabla con JQuery</title><link>http://re-al-7.github.io/2012/exportar-tabla-con-jquery/</link><pubDate>Mon, 12 Nov 2012 00:00:00 +0000</pubDate><author>7.re.al.7@gmail.com (Alonzo Vera A.)</author><guid>http://re-al-7.github.io/2012/exportar-tabla-con-jquery/</guid><description>¿Quién nunca ha tenido la necesidad de exportar un reporte tabulado a MS Excel?
En la red podemos encontrar muchas alternativas para lograr éste objetivo: librerías para PHP, módulos para .Net , etc.
Sin embargo, una solución para cualquier plataforma de desarrollo Web viene de la mano de jQuery. Gracias a un plugin que permite copiar el contenido de una tabla a partir de su ID.
Para acceder a éste plugin, podemos descargar los archivos necesarios desde aqui.</description></item></channel></rss>