Acabo de publicar una nueva versión de un plugin que desarrollé para ejecutar archivos hurl en Neovim, pensado para integrarse con la herramienta del sitio hurl.dev y con el repositorio de la versión v1.2.0 en GitHub. Me encanta trabajar en este proyecto porque está diseñado para mi propio flujo de trabajo, así que solo añado funciones que realmente voy a usar.
En esta entrega incorporé funciones para trabajar con variables temporales. Siempre he encontrado engorroso el manejo de variables en herramientas como Postman, donde terminas navegando demasiada interfaz para crear una variable que probablemente cambiará en la siguiente ejecución. Por eso nunca prioricé las variables y en la práctica solo uso las que rara vez cambian, como host y auth_token. Copiar y pegar el resto de valores suele ser más rápido y ergonómico cuando exploras una API. Solo recurro a variables si voy a ejecutar el archivo como prueba sin editarlo.
Aun así, las variables ayudan a resolver un problema típico en APIs HTTP. Por ejemplo, para crear un recurso a menudo necesitas primero obtener el ID de un recurso relacionado. Petición: POST {{url}}/orders. Cuerpo mínimo: { items: [ { id: ce039087-835a-4484-89dc-70c2ea123b40 } ] }. Para construir esta orden, primero debo recuperar el ID del ítem y pegarlo en la solicitud. Esto se vuelve tedioso si gestionas varios IDs o quieres probar múltiples combinaciones.
Sería más cómodo usar variables del tipo { items: [ { id: {{id}} } ] } para no editar el archivo y solo actualizar la variable. Pero volvemos al problema de siempre con ciertas herramientas, donde establecer la variable cuesta lo mismo que pegar el valor a mano. La pregunta es cómo reducir el esfuerzo.
Mi truco fue apoyarme en mi flujo actual. Sigo copiando, pero si copio un objeto JSON, el plugin puede mapear automáticamente sus campos a variables de plantilla de hurl. Por ejemplo, copio el objeto { id: 2ab2e8d4-ae06-44e6-9ae3-c0891185bfe2, sku: boo/US-/Gre/Bla, item_name: Grey Boots }, ejecuto el comando del plugin para importar desde el registro, y al instante {{id}}, {{sku}} y {{item_name}} quedan disponibles como variables hurl. Así puedo desplazarme por una lista de ítems y, cuando quiero cambiar variables, simplemente yanko el fragmento al registro correspondiente.
Aun mejor, suelo necesitar solo un par de variables. Por eso mapeé una combinación de teclas que copia la línea actual a un registro concreto y lanza el comando del plugin. Con ello puedo seleccionar una sola línea, por ejemplo id: 2ab2e8d4-ae06-44e6-9ae3-c0891185bfe2, y el plugin expone únicamente {{id}} para mi archivo hurl. Lo más importante es que lo hago en tres pulsaciones.
Quedaba un inconveniente frente al clásico copiar y pegar. Cuando pegas, sabes que el valor está ahí y cuál es. Para dar transparencia añadí autocompletado en el plugin, de modo que puedes ver qué variables hay disponibles y su contenido directamente desde las sugerencias de Neovim. Sin cambiar de interfaz, sabes qué puedes usar.
Algunas intuiciones de UX que confirmé con este cambio. Primero, buena UX implica menos acciones. Si puedes hacer lo mismo con menos clics o teclas, hazlo. Segundo, buena UX se ajusta al caso exacto del usuario. Convertir JSON parcial en variables hurl es específico, pero es justo lo que necesito. Podría soportar YAML o el formato key=var, pero yo no trabajo así y ese soporte extra solo complicaría la herramienta. Tercero, buena UX se integra en la interfaz existente, sin introducir nuevos elementos. Consideré un pop up para listar variables activas, pero el autocompletado fue suficiente y encaja con cómo ya uso Neovim.
Estas intuiciones se basan en mi uso particular. No optimizo aquí para curva de aprendizaje o casos muy distintos, porque este plugin es para mí, y eso lo hace un proyecto muy divertido.
En Q2BSTUDIO aplicamos esta misma filosofía para construir aplicaciones a medida y software a medida que optimizan flujos reales, reducen fricción y elevan la productividad. Integramos buenas prácticas de diseño UX con automatización pragmática y experiencia técnica en inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio y power bi. Si buscas un partner que traduzca tus necesidades en soluciones reales, descubre nuestro enfoque en desarrollo de software multiplataforma a medida.
Además, si te interesa llevar esta clase de mejoras a tu organización, desde atajos que ahorran tiempo hasta agentes IA que orquestan procesos, podemos ayudarte a diseñar y desplegar flujos robustos. Consulta nuestro servicio de automatización de procesos y cuéntanos tu caso. Combinamos ia para empresas con prácticas de ingeniería seguras y auditables, incluyendo ciberseguridad y pentesting, y analizamos datos de forma accionable con power bi y dashboards de negocio. Nuestro objetivo es crear soluciones con impacto real que crecen contigo en la nube, ya sea en AWS o Azure.
Palabras clave que definen nuestro alcance y experiencia en proyectos de alto valor: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi.
Si quieres hablar de cómo llevar estas ideas a tu equipo o producto, contáctanos en Q2BSTUDIO. Juntos podemos convertir tu flujo actual en una ventaja competitiva sostenible, con foco en simplicidad, velocidad y resultados medibles.