<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Eliezer Jose Polidor Solano</title>
    <description>The latest articles on DEV Community by Eliezer Jose Polidor Solano (@eliezer_josepolidorsola).</description>
    <link>https://dev.to/eliezer_josepolidorsola</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3973243%2F6dd1d871-6b96-4e9e-a150-717c48b4761c.jpg</url>
      <title>DEV Community: Eliezer Jose Polidor Solano</title>
      <link>https://dev.to/eliezer_josepolidorsola</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/eliezer_josepolidorsola"/>
    <language>en</language>
    <item>
      <title>ArbNet Bug Smash: Fixing Cloud Expiration &amp; Database Connection Failures with Sentry &amp; Google AI</title>
      <dc:creator>Eliezer Jose Polidor Solano</dc:creator>
      <pubDate>Tue, 18 Aug 2026 04:46:08 +0000</pubDate>
      <link>https://dev.to/eliezer_josepolidorsola/arbnet-bug-smash-fixing-cloud-expiration-database-connection-failures-with-sentry-google-ai-401f</link>
      <guid>https://dev.to/eliezer_josepolidorsola/arbnet-bug-smash-fixing-cloud-expiration-database-connection-failures-with-sentry-google-ai-401f</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/bugsmash"&gt;DEV's Summer Bug Smash: Clear the Lineup&lt;/a&gt; powered by &lt;a href="https://sentry.io/" rel="noopener noreferrer"&gt;Sentry&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Overview
&lt;/h2&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;ArbNet&lt;/strong&gt; is an automated crypto arbitrage application designed to track P2P trading opportunities across exchange platforms like Binance. The stack consists of an &lt;strong&gt;ASP.NET Core (.NET 8)&lt;/strong&gt; Web API backend paired with a &lt;strong&gt;React (Vite)&lt;/strong&gt; frontend and a &lt;strong&gt;PostgreSQL&lt;/strong&gt; database.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Bug Fix or Performance Improvement
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Bug Description
During the transition of the ArbNet project to a local development environment, the system became completely inoperable due to the expiration of the trial subscription on Railway, which triggered a two-level failure:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Backend (.NET 8): API requests failed with a System.InvalidOperationException due to lost connectivity with the cloud-hosted PostgreSQL database (transient failure).&lt;br&gt;
Frontend (React): HTTP requests originating from the authentication component (Welcome.jsx) attempted to reach the inactive Railway URL (arbnet-production.up.railway.app), resulting in an immediate network error (TypeError: Failed to fetch).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sentry Telemetry &amp;amp; Capture
Thanks to the Sentry SDK integrated across both Backend and Frontend, the following real-time events were captured:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;🔹 Backend Event (.NET)&lt;br&gt;
Issue ID: DOTNET-ASPNETCORE-3 (Event ID: 8da4123b)&lt;br&gt;
Exception: System.InvalidOperationException&lt;br&gt;
Message: "An exception has been raised that is likely due to a transient failure."&lt;br&gt;
State: Unhandled&lt;br&gt;
Exact Location: Controllers\UsersController.cs inside asynchronous task Task&amp;gt;&lt;br&gt;
Affected Endpoint: /api/Users/register&lt;br&gt;
🔹 Frontend Event (React)&lt;br&gt;
Issue ID / Message: TypeError: Failed to fetch (arbnet-production.up.railway.app)&lt;br&gt;
User Action (Breadcrumb): Click on button.btn-register-submit &lt;br&gt;
→&lt;br&gt;
 Request POST &lt;a href="https://arbnet-production.up.railway.app/api/users/register" rel="noopener noreferrer"&gt;https://arbnet-production.up.railway.app/api/users/register&lt;/a&gt;&lt;br&gt;
🔹 Environment&lt;br&gt;
Runtime: .NET 8.0.29 &amp;amp; React (Vite)&lt;br&gt;
OS: Windows 11&lt;br&gt;
Environment: development&lt;br&gt;
Release: 1.0.0 (a6cd6355e101)&lt;br&gt;
Frontend Error Evidence (Sentry)&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fijagsfz3l1ulw4mc7mj8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fijagsfz3l1ulw4mc7mj8.jpg" alt=" " width="800" height="372"&gt;&lt;/a&gt;&lt;br&gt;
Direct Link in Sentry:&lt;br&gt;
View Issue ARBNETFRONTEND-1 on Sentry&lt;/p&gt;

&lt;p&gt;Backend Error Evidence (Sentry)&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk6c9kf5wzzo6oqlu5msb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk6c9kf5wzzo6oqlu5msb.png" alt=" " width="800" height="331"&gt;&lt;/a&gt;&lt;br&gt;
Direct Link in Sentry:&lt;br&gt;
View Issue ARBNETBACKEND on Sentry&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Diagnosis &amp;amp; Fix
🔍 Diagnosis with Google AI / Sentry Insights
By analyzing network traces, Breadcrumbs, and exception logs captured by Sentry:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Confirmed the remote PostgreSQL database lockup caused by cloud provider trial expiration.&lt;br&gt;
Detected that fetch requests in Welcome.jsx were still targeting the obsolete Railway production URL, interrupting both registration and login flows.&lt;br&gt;
🛠️ Applied Fix (Step by Step)&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Local Database Migration and Setup
PostgreSQL was installed locally, the ArbNet database schema was created, and the connection string in the backend's appsettings.json was updated:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;"ConnectionStrings": {&lt;br&gt;
  "DefaultConnection": "Host=localhost; Database=ArbNet; Username=postgres; Password=your_password"&lt;/p&gt;

&lt;h2&gt;
  
  
  }
&lt;/h2&gt;

&lt;h3&gt;
  
  
  2. Reconfiguring Fetch in Frontend (React)
&lt;/h3&gt;

&lt;p&gt;Re-routed the React client to the local server by updating the environment variable in .env.local:&lt;/p&gt;

&lt;p&gt;VITE_API_URL=&lt;a href="https://localhost:7039" rel="noopener noreferrer"&gt;https://localhost:7039&lt;/a&gt;&lt;br&gt;
const response = await fetch(&lt;code&gt;${import.meta.env.VITE_API_URL}/api/users/register&lt;/code&gt;, { ... });&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;CORS Policy Configuration in .NET
builder.Services.AddCors(options =&amp;gt;
{
options.AddPolicy("AllowLocalhost", policy =&amp;gt;
{
    policy.WithOrigins("&lt;a href="http://localhost:5173" rel="noopener noreferrer"&gt;http://localhost:5173&lt;/a&gt;", "&lt;a href="http://localhost:3000%22" rel="noopener noreferrer"&gt;http://localhost:3000"&lt;/a&gt;)
          .AllowAnyHeader()
          .AllowAnyMethod();
});
});
app.UseCors("AllowLocalhost");
📌 Version Control
All updates and bug fixes were integrated and pushed to the branch: bugfix
---
## Code
All code changes, database migrations, and CORS reconfigurations have been merged and submitted via Pull Request to the project repository.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Repository Branch:&lt;/strong&gt; &lt;code&gt;bugfix&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  * &lt;strong&gt;Pull Request:&lt;/strong&gt; &lt;a href="https://github.com/eliezerpolidor/ArbNet/pull/1#issue-5174772302" rel="noopener noreferrer"&gt;View Pull Request #1 on GitHub&lt;/a&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  My Improvements
&lt;/h2&gt;

&lt;h2&gt;
  
  
  To restore ArbNet's operational status without breaking project maintainability, I took a systematic, telemetry-driven approach powered by &lt;strong&gt;Sentry Insights&lt;/strong&gt; and &lt;strong&gt;Google AI (Gemini)&lt;/strong&gt;:
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Key Technical Decisions:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Root Cause Analysis via Telemetry &amp;amp; AI:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Instead of manual log hunting, I analyzed Sentry breadcrumbs and stack traces alongside Google AI to pinpoint the exact failure points: the expired PostgreSQL instance on Railway and the hardcoded production API endpoint in React.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Full-Stack Local Migration:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Database:&lt;/strong&gt; Provisioned a local PostgreSQL instance and restored the complete ArbNet schema, updating the connection string in ASP.NET Core (&lt;code&gt;appsettings.json&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Environment Variable Decoupling:&lt;/strong&gt; Replaced hardcoded fetch URLs in React with Vite's &lt;code&gt;import.meta.env.VITE_API_URL&lt;/code&gt; pointing to &lt;code&gt;localhost:7039&lt;/code&gt;, ensuring clean separation between local development and production configs.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Secure Cross-Origin Policy:&lt;/strong&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  * Configured explicit CORS rules in .NET 8 (&lt;code&gt;Program.cs&lt;/code&gt;) allowing local development origins (&lt;code&gt;localhost:5173&lt;/code&gt; and &lt;code&gt;localhost:3000&lt;/code&gt;) while restricting unauthorized origins.
&lt;/h2&gt;
&lt;h2&gt;
  
  
  Best Use of Sentry
&lt;/h2&gt;

&lt;p&gt;Yes, this project relies heavily on &lt;strong&gt;Sentry Error Monitoring&lt;/strong&gt; and &lt;strong&gt;Breadcrumb Tracing&lt;/strong&gt; across both the frontend (React) and backend (.NET 8):&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Full-Stack Error Monitoring:&lt;/strong&gt; Configured Sentry SDKs on both client and server sides to capture unhandled exceptions during API route requests (&lt;code&gt;/api/users/register&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Breadcrumb Analysis:&lt;/strong&gt; Used Sentry's event breadcrumbs to trace the sequence of user actions—specifically capturing the submit event on &lt;code&gt;button.btn-register-submit&lt;/code&gt; up to the failed network request against the expired Railway host.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  * &lt;strong&gt;Stack Trace Insights:&lt;/strong&gt; Analyzed full backend stack traces (identifying &lt;code&gt;System.InvalidOperationException&lt;/code&gt; in &lt;code&gt;UsersController.cs&lt;/code&gt;) to differentiate between network-level CORS issues and database connection failure.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Best Use of Google AI
&lt;/h2&gt;

&lt;p&gt;Yes! &lt;strong&gt;Google AI (Gemini)&lt;/strong&gt; served as a core AI debugging collaborator during the resolution of this issue:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sentry Log Analysis:&lt;/strong&gt; Leveraged Google AI to analyze complex Sentry stack traces (&lt;code&gt;System.InvalidOperationException&lt;/code&gt; and CORS preflight failures), quickly isolating the root cause between cloud provider expiration and frontend endpoint misconfiguration.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Architecture &amp;amp; Migration Design:&lt;/strong&gt; Used Google AI to structure the local database migration workflow, update &lt;code&gt;.env.local&lt;/code&gt; variable decoupling in React (Vite), and implement robust CORS policy definitions in ASP.NET Core (.NET 8).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Documentation &amp;amp; Telemetry Integration:&lt;/strong&gt; Assisted in formatting clear telemetry reports and structuring the Pull Request documentation to align with industry best practices.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>bugsmash</category>
      <category>dotnet</category>
      <category>react</category>
    </item>
    <item>
      <title>FutboLeyendas - El Olimpo del Fútbol con Gemini AI</title>
      <dc:creator>Eliezer Jose Polidor Solano</dc:creator>
      <pubDate>Mon, 13 Jul 2026 05:27:39 +0000</pubDate>
      <link>https://dev.to/eliezer_josepolidorsola/futboleyendas-el-olimpo-del-futbol-con-gemini-ai-3phn</link>
      <guid>https://dev.to/eliezer_josepolidorsola/futboleyendas-el-olimpo-del-futbol-con-gemini-ai-3phn</guid>
      <description>&lt;h1&gt;
  
  
  FootLegends⚽🤖
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Our Passion Project
&lt;/h2&gt;

&lt;p&gt;Football is pure passion. The debate over who is the true GOAT (Greatest of All Time) drives endless, heated discussions in every corner of the world. &lt;strong&gt;FutboLeyendas&lt;/strong&gt; transforms this emotional debate into a live interactive experience where statistical data and historical glory face the neutral judgment of Artificial Intelligence.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built a web application using React and Vite that allows football fans to configure dynamic sliders based on what &lt;em&gt;they&lt;/em&gt; value most in a player: &lt;strong&gt;Scoring Power&lt;/strong&gt;, &lt;strong&gt;World Cups&lt;/strong&gt;, &lt;strong&gt;Fast Play / Discipline&lt;/strong&gt;, or &lt;strong&gt;Effectiveness Under Pressure&lt;/strong&gt;. The platform features 21 football legends, crosses their real historical stats with the user's custom weights, and feeds this structured context to &lt;strong&gt;Google AI (Gemini)&lt;/strong&gt; to deliver an objective, deeply detailed final verdict on who wins the ultimate duel.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Real-Time Attribute Tweaking:&lt;/strong&gt; Dynamic range sliders that instantly recalculate the weight of each metric.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Smart AI Verdict:&lt;/strong&gt; Direct integration with Google's Gemini model to act as an unbiased, expert sports judge.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Modern &amp;amp; Fluid UI:&lt;/strong&gt; A dark-themed, responsive, and highly aesthetic interface built for an immersive experience.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🚀 Experience the GOAT Debate Live!&lt;/p&gt;

&lt;p&gt;The wait is over! FutboLeyendas is officially live in production. You can now test your ultimate football matchups, adjust real-time player attributes, and let Google Gemini’s artificial intelligence deliver the definitive verdict on who truly dominates the football Olympus. Give it a spin, challenge the stats, and see who comes out on top here: 👉 &lt;a href="https://futbo-leyendas.vercel.app" rel="noopener noreferrer"&gt;futbo-leyendas.vercel.app&lt;/a&gt; ⚽🤖&lt;/p&gt;

&lt;h2&gt;
  
  
  Link to Code
&lt;/h2&gt;

&lt;p&gt;You can check out the full repository, detailed architecture, and screenshots here:&lt;br&gt;
👉 &lt;a href="https://github.com/eliezerpolidor/FutboLeyendas" rel="noopener noreferrer"&gt;https://github.com/eliezerpolidor/FutboLeyendas&lt;/a&gt;&lt;/p&gt;

</description>
      <category>weekendchallenge</category>
      <category>googleaichallenge</category>
      <category>react</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Reviving ArbNet: The Automated P2P Arbitrage Tracker I Built for My Son (and How I Defied Regional Blocks)</title>
      <dc:creator>Eliezer Jose Polidor Solano</dc:creator>
      <pubDate>Mon, 08 Jun 2026 04:01:41 +0000</pubDate>
      <link>https://dev.to/eliezer_josepolidorsola/reviving-arbnet-the-automated-p2p-arbitrage-tracker-i-built-for-my-son-and-how-i-defied-regional-3eae</link>
      <guid>https://dev.to/eliezer_josepolidorsola/reviving-arbnet-the-automated-p2p-arbitrage-tracker-i-built-for-my-son-and-how-i-defied-regional-3eae</guid>
      <description>&lt;h2&gt;
  
  
  Live Production Application
&lt;/h2&gt;

&lt;p&gt;The ArbNet application is fully deployed and ready for testing!&lt;br&gt;
You can access the live environment, interact with the user interface, and review the working integration between the React frontend and the .NET Core backend here:&lt;br&gt;
🔗 &lt;a href="https://empowering-gentleness-production-33bc.up.railway.app/" rel="noopener noreferrer"&gt;https://empowering-gentleness-production-33bc.up.railway.app/&lt;/a&gt;&lt;br&gt;
🔐 Demo Credentials for Testing:&lt;br&gt;
Email: &lt;a href="mailto:user@arbnet.com"&gt;user@arbnet.com&lt;/a&gt;&lt;br&gt;
Password: 123456&lt;br&gt;
&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-05-21"&gt;GitHub Finish-Up-A-Thon Challenge&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
It all started with a very close and real family need. My son and I recently entered the cryptocurrency and P2P arbitrage market on platforms like Binance. One day, he told me he was losing a massive amount of time manually recording every single operation and that he frequently made errors when typing his buys and sells into an Excel spreadsheet. Those discrepancies and human errors were creating real headaches for managing his finances.&lt;/p&gt;

&lt;p&gt;As a developer, I took it upon myself to help him. That’s how the idea for &lt;strong&gt;ArbNet&lt;/strong&gt; was born: an automated platform designed to monitor arbitrage spreads in real time, connecting a robust &lt;strong&gt;.NET 8 (C#)&lt;/strong&gt; backend with an agile &lt;strong&gt;React&lt;/strong&gt; frontend, completely eliminating conventional spreadsheets.&lt;/p&gt;

&lt;p&gt;I want to highlight that what I am presenting today for this challenge is a fully functional &lt;strong&gt;Demo version (Proof of Concept)&lt;/strong&gt; that simulates and structures the main core flows of the system. However, this is only the first step. &lt;strong&gt;I plan to fully develop the ArbNet application, strengthen its API integrations, and launch the entire ecosystem into the market&lt;/strong&gt; as an official SaaS solution to optimize operations for thousands of P2P arbitrage traders.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Our complete code ecosystem, setup scripts, and visual documentation can be found here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/eliezerpolidor/ArbNet.git" rel="noopener noreferrer"&gt;https://github.com/eliezerpolidor/ArbNet.git&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Te invito a conocer el proyecto viendo este video en youtube: 🔗 Demo de ArbNet en video: [&lt;a href="https://youtu.be/hGiBRZr5xEs" rel="noopener noreferrer"&gt;https://youtu.be/hGiBRZr5xEs&lt;/a&gt;]&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjvoz55ickhta9plk9scx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjvoz55ickhta9plk9scx.png" alt=" " width="545" height="493"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Pantalla Principal del Programa Arbnet&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvs7vcdxgttuj84rujlz9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvs7vcdxgttuj84rujlz9.png" alt=" " width="800" height="368"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Arquitectura de la Base de Datos ArbNet Modelo Entidad-Relación.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1934lk2q28e1b6f1zay4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1934lk2q28e1b6f1zay4.png" alt=" " width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Diagrama Asincrónico&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjooyjlsfs4elj8v8ii34.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjooyjlsfs4elj8v8ii34.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Comeback Story
&lt;/h2&gt;

&lt;p&gt;Developing this project under pressure and against the clock left the local repository in absolute chaos just hours before the challenge deadline: duplicated UI screenshots, local cache files (&lt;code&gt;.vs&lt;/code&gt;) leaking into Git, and a &lt;code&gt;README.md&lt;/code&gt; file with a completely illegible directory tree. The project was stuck in limbo.&lt;/p&gt;

&lt;p&gt;For this challenge, I set out to completely clean the repository and elevate &lt;strong&gt;ArbNet&lt;/strong&gt; to a professional production standard. I forced Git to drop ghost traces of temporary files using advanced terminal commands, parameterized a strict &lt;code&gt;.gitignore&lt;/code&gt; to protect private credentials, centralized the SQL Server script (&lt;code&gt;arbnet_setup.sql&lt;/code&gt;) to make it portable, and redesigned the &lt;code&gt;README.md&lt;/code&gt; documentation by integrating a clean folder structure mapped line-by-line (&lt;code&gt;├──&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;Finishing a project isn’t just about making it compile; it’s about delivering clean code that solves a real-world problem for the community to adopt.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience with GitHub Copilot
&lt;/h2&gt;

&lt;p&gt;To achieve this final sprint in record time, my initial plan was to rely heavily on &lt;strong&gt;GitHub Copilot&lt;/strong&gt;. However, as many developers know, &lt;strong&gt;this AI is not available in my region due to geographic blocking in Venezuela&lt;/strong&gt;. This is where the challenge doubled, and I had to get creative.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Bypassing the Block:&lt;/strong&gt; To use Copilot, I had to use a VPN, specifically &lt;strong&gt;TunnelBear&lt;/strong&gt;. I managed to bypass the restriction several times, but the system runs strict and permanent checks. There were moments when the block became unbreakable, forcing me to temporarily turn to &lt;strong&gt;Gemini&lt;/strong&gt; and &lt;strong&gt;Blackbox&lt;/strong&gt; to keep the momentum going. Even so, I managed to do most of the heavy lifting with Copilot.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vital Advice for the DEV Community (Performance &amp;amp; Security Tip):&lt;/strong&gt; Fellow developers, if you are going to use a VPN to test restricted tools, &lt;strong&gt;do not use browser extensions&lt;/strong&gt;. The algorithms detect them almost instantly. It is much better to activate the VPN at the OS level (from the outside).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Performance Trick:&lt;/strong&gt; Having SQL Server, Visual Studio, Visual Studio Code open, and a VPN running in the background simultaneously slows down your machine significantly. The strategy I applied and highly recommend is: &lt;em&gt;activate the VPN only at the exact moment you need to consult or generate something with Copilot, and once you start your hard coding work, close Copilot and deactivate the VPN&lt;/em&gt;. This kept my development environment running smoothly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It would be awesome if these types of geographic blocks were removed, as it would save developers a lot of time and effort spent dodging restrictions instead of just coding. But in the end, we made it happen! The AI helped me structure complex Git commands to resolve TortoiseGit conflicts and format the Markdown documentation tree in seconds.&lt;/p&gt;

&lt;p&gt;Thank you so much to GitHub and the DEV Community for this challenge that pushes us to break through borders and technical barriers to reach the finish line!&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>githubcopilot</category>
    </item>
  </channel>
</rss>
