Productivity Tools 9 min de lectura 20 de mayo de 2026

Cómo construir un sistema de registro de actividad para ingenieros

Automatiza el registro de tu actividad técnica como ingeniero para construir una memoria profesional robusta y reducir la carga mental, sin sacrificar la agilidad.

Solución en "Dos Clics" (TL;DR)

Implementa un sistema de registro basado en Git y automatización para mejorar la trazabilidad de tus tareas y reducir la carga mental mediante el registro de eventos técnicos.

Como ingenieros de sistemas, a menudo nos encontramos inmersos en la resolución de problemas técnicos complejos, optimizando sistemas y desarrollando soluciones. Sin embargo, la parte administrativa de registrar nuestras actividades, documentar decisiones y justificar el trabajo realizado puede convertirse en una carga, una que a menudo subestimamos hasta que nos solicitan un informe detallado de meses o incluso años de trabajo. Recientemente, me enfrenté a esta situación al tener que listar todas las implementaciones y mejoras realizadas en un sistema local y en la infraestructura de DOSCLIC durante el año anterior. Fue entonces cuando me di cuenta de que, aunque trabajaba incansablemente, mi sistema de registro no me permitía demostrarlo con la trazabilidad necesaria.

1. El Desafío del Ingeniero: Entre la Resolución y la Trazabilidad

Lo que me ocurrió es una experiencia común en el ámbito de la informática. Nuestro cerebro técnico está diseñado para optimizar la resolución de problemas inmediatos, no para mantener un registro administrativo continuo. Esto lleva a una situación paradójica: trabajamos muchísimo, resolvemos problemas críticos, pero al final del día, carecemos de una trazabilidad formal que demuestre ese esfuerzo. En IT, lo que no está registrado, simplemente “no existe” a efectos de medición, auditoría o justificación.

Mi sistema previo, basado en una estructura de directorios por año, mes y día (2026/Mayo/18/) y un script básico de PowerShell para anotar actividades, tenía un problema fundamental: era manual, dependiente de mi memoria y carecía de automatización. Además, caía en la trampa de subestimar tareas pequeñas, como revisar logs, reiniciar servicios o investigar fallos, que en realidad son trabajo valioso.

Error detectado: Depender únicamente de la memoria para registrar actividades es una estrategia insostenible. El cerebro técnico tiende a optimizar para la resolución inmediata, no para la documentación continua, lo que lleva a la pérdida de trazabilidad y la subestimación del trabajo invisible.

Mi mente se había convertido en una especie de “RAM sin persistencia”, intentando mantener activos innumerables pendientes, ideas, riesgos y recordatorios. Esto generaba una ansiedad ligera constante, fatiga mental y la sensación de no estar haciendo lo suficiente, a pesar de mi dedicación. El verdadero problema no era la falta de disciplina, sino la excesiva fricción en el proceso de captura de información.

2. La Filosofía Detrás de un Registro Efectivo: Liberar Carga Cognitiva

La clave para superar este desafío no es buscar más disciplina, sino implementar un sistema que reduzca la fricción, capture automáticamente la información y funcione incluso cuando olvidamos registrar algo. El objetivo no es documentar “trabajo” en el sentido tradicional, sino capturar “evidencia operativa”. Esto implica un cambio de mentalidad: en lugar de intentar registrar actividades terminadas, debemos enfocarnos en registrar cualquier “evento técnico relevante”.

Esto incluye:

  • Investigación de errores
  • Revisión de logs
  • Validación de permisos
  • Pruebas de scripts
  • Comparación de backups
  • Análisis de rendimiento
  • Reuniones técnicas
  • Cualquier pensamiento o análisis que consuma energía mental

La meta principal de este sistema no es la documentación perfecta, sino la reducción de la carga mental. Mi script de PowerShell, aunque simple, ya estaba funcionando como una extensión de mi memoria externa, descargando contexto mental y convirtiendo pensamientos en evidencia. El objetivo final es liberar esa carga cognitiva que drena nuestra energía.

3. Componentes Clave para un Sistema de Trazabilidad Personal

Para construir un sistema robusto y de bajo costo, me centré en herramientas que ya conocía y que ofrecían una gran flexibilidad:

3.1. Git como tu Diario de Cambios

Ya utilizaba Git para el control de versiones de mi sistema local, ubicado en C:\inetpub\wwwroot. Al revisar mi historial, encontré entradas como estas:

Terminal (Git Bash)
git log
commit 3fb836932f60446bad6f8f9435403cc4960c7e87 (HEAD -> master)
Author: [Mi Nombre] <[usuario@empresa]>
Date:   Thu May 14 13:00:06 2026 -0600

    Auto-backup: jue. 14/05/2026 13:00:06.44

commit a9d2a8d4b682ac7e0293180b5fdf9cdcb3c5b61a
Author: [Mi Nombre] <[usuario@empresa]>
Date:   Wed May 13 09:30:02 2026 -0600

    Auto-backup: mié. 13/05/2026  9:30:01.86

commit d969050904b92c633b7a87921f79d06c24a4087c
Author: [Mi Nombre] <[usuario@empresa]>
Date:   Tue Apr 14 10:11:28 2026 -0600

    se agrego los identificadores de los internados a la validacion en la planificacion, para visualizar los campos de edicion de hospital, subdirector y el boton de editar

commit e0935c7239517ae79e484f8a3da49688449581db
Author: [Mi Nombre] <[usuario@empresa]>
Date:   Tue Apr 7 09:45:16 2026 -0600

    Mejora en el subprocedimiento compartido "SecurityException"

Aunque algunos commits eran automáticos ("Auto-backup"), otros ya contenían descripciones valiosas de implementaciones y mejoras. Esto me demostró que Git ya era una fuente de evidencia profesional, con historial, timestamps, diffs y autoría. La mejora clave aquí fue:

  • Separar backups de trazabilidad: Los commits automáticos son útiles para backups, pero no para el historial laboral. La solución es mantener commits manuales y descriptivos para cambios importantes en la rama principal, y relegar los snapshots automáticos a una rama o repositorio separado.
  • Mensajes de commit más descriptivos: En lugar de "cambios varios", optar por mensajes como "Planificación: validación internados y edición hospital". Esto convierte un simple registro en una entrada valiosa para informes, auditorías y hasta para mi CV (Curriculum Vitae).

3.2. PowerShell: Tu Aliado en la Captura de Eventos

Mi script original de PowerShell para registrar actividades era simple y efectivo, lo cual era su mayor fortaleza. Sin embargo, requería detener el flujo de trabajo para seleccionar una categoría y escribir una descripción. Para reducir la fricción, lo optimicé:

Script Original:

Archivo actividades.ps1
$archivo = "C:\utilidades\actividades.txt"

$categorias = @(
"PORTAL",
"SISTEMA",
"DB",
"SOPORTE",
"ESTADISTICA",
"ACADEMICO",
"CAJA",
"REGISTRO",
"REPORTES"
)

Clear-Host
Write-Host ""
Write-Host "Seleccione categoria:`n"
`
for ($i=0; $i -lt $categorias.Count; $i++) {
    Write-Host "$($i+1)) $($categorias[$i])"
}

$opcion = Read-Host "`nNumero"
`$categoria = $categorias[$opcion-1]

Write-Host ""
$descripcion = Read-Host "Descripcion"

$fecha = Get-Date -Format "yyyy-MM-dd"

$linea = "$fecha | $categoria | $descripcion"

Add-Content $archivo $linea

Write-Host ""
Write-Host "Actividad registrada." -ForegroundColor Green

Mejora #1: Registro ultrarrápido con un alias global

Creé una función simple en mi perfil de PowerShell ($PROFILE) para registrar actividades con un solo comando:

PowerShell Profile
function act {
    param([string]$texto)
    $fecha = Get-Date -Format "yyyy-MM-dd HH:mm"
    Add-Content "C:\utilidades\actividades.txt" "$fecha | $texto"
}

Ahora, registrar una actividad toma solo 3 segundos:

PowerShell
act "correccion validacion internados"

Mejora #2: Categorías automáticas (futura implementación)

En lugar de seleccionar categorías manualmente, puedo inferirlas automáticamente basándome en palabras clave en la descripción. Por ejemplo, si la descripción contiene "SQL", se clasifica como "DB"; si contiene "IIS", como "INFRA". Esto reduce aún más la fricción, aceptando que una "captura imperfecta" es mejor que no capturar nada.

Mejora #3: Reconstrucción desde el historial

La verdadera magia reside en la capacidad de reconstruir actividades incluso si olvidé registrarlas manualmente. Un script diario puede recolectar automáticamente:

  • Historial de PowerShell: Activando el historial persistente con Set-PSReadLineOption -HistorySaveStyle SaveIncrementally.
  • Cambios en archivos: Monitoreando fechas de modificación con Get-ChildItem -Recurse | Where LastWriteTime -gt (Get-Date).AddDays(-1).
  • Commits de Git: Utilizando git log --since="1 day ago" --oneline.

Este script generaría un borrador diario en Markdown (ej. daily_log_2026-05-18.md) que, aunque incompleto, serviría como un potente recordatorio.

3.3. Obsidian y la IA Local: El Cerebro de tu Asistente

Una vez que tengo los datos capturados, la inteligencia artificial entra en juego para procesarlos. Mi stack recomendado, de bajo costo y alta privacidad, incluye:

  • Obsidian: Para organizar mis notas en Markdown, aprovechando su ecosistema de plugins (Dataview, Smart Connections, Omnisearch).
  • Ollama: Para ejecutar modelos LLM (como Qwen3 8B o Mistral Small) localmente, incluso sin una GPU potente.
  • Open WebUI: Una interfaz tipo ChatGPT que permite interactuar con los modelos, subir PDFs y, crucialmente, implementar RAG (Retrieval Augmented Generation).

La verdadera potencia no está solo en el modelo LLM, sino en la combinación de LLM + mi propio conocimiento. Esto permite que el asistente:

  • Resuma semanas de actividad.
  • Detecte patrones.
  • Genere informes sobre implementaciones o mejoras.
  • Responda preguntas complejas como "¿Qué implementaciones hice en 2025 sobre infraestructura?", proporcionando listas, fechas, archivos y scripts relacionados.

4. Implementación Práctica: Un Enfoque por Fases

Para evitar caer en la trampa de construir un "proyecto de software" adicional, la implementación debe ser gradual y enfocada en la simplicidad:

Fase 1: Configuración Mínima Viable

  1. Crear un repositorio "worklog": Un repositorio Git local (ej. C:\worklog\) para almacenar diarios, scripts, notas de infraestructura e incidentes.
  2. Script automático diario: Un script de PowerShell programado con el Programador de Tareas de Windows que exporte el historial de comandos, liste los archivos modificados y genere un archivo Markdown diario.
  3. Formato Markdown: Utilizar un formato simple como:
daily_log_2026-05-18.md
# 2026-05-18
## Infraestructura
- Ajuste DNS interno
- Reinicio IIS
## Desarrollo
- Corrección pedidos
- Validación inventario
## Soporte
- Problema impresora caja

La clave es no buscar la perfección. El enemigo es la fricción y el perfeccionismo. Una captura imperfecta es siempre mejor que no capturar nada.

Fase 2: Integración con IA

Una vez que se acumulan suficientes datos estructurados en Markdown, se puede integrar el stack de IA (Obsidian, Ollama, Open WebUI) para:

  • Indexar el vault de Obsidian, PDFs, repositorios Git y otros documentos.
  • Utilizar la IA para resumir actividades, detectar patrones y generar informes a medida.

5. El Verdadero Valor: Más Allá de la Documentación

Este sistema no solo resuelve el problema de la trazabilidad, sino que también ofrece beneficios significativos a largo plazo:

  • Valor para el CV: Mis registros bien descritos se convierten en una fuente inestimable para recordar proyectos, mejoras, migraciones e incidentes, facilitando la actualización de mi Curriculum Vitae con logros concretos y medibles.
  • Defensa laboral: Permite justificar el tiempo invertido y el impacto de mi trabajo, incluso en tareas que parecen "invisibles".
  • Reducción del estrés: Al externalizar la memoria de mis pendientes y actividades, libero una enorme carga cognitiva, permitiendo que mi mente se enfoque en la resolución de problemas en lugar de recordar constantemente lo que "no puedo olvidar".
Consejo Práctico: Cambia tu definición mental de "actividad". No es solo una tarea finalizada, sino cualquier evento técnico relevante, incluyendo investigación, análisis, pruebas y coordinación. Pensar también es trabajo.

6. Lo que Aprendí: La Sostenibilidad es Clave

La lección más importante ha sido que el mejor sistema es el que realmente utilizas, incluso cuando estás cansado, ocupado o has olvidado cosas. No se trata de construir un Notion empresarial o un dashboard complejo, sino de tener suficiente evidencia sin interrumpir el trabajo. Mi sistema actual, aunque "feo" en su simplicidad, funciona porque es rápido, de baja fricción y manual en su esencia.

Mi problema no era técnico, sino de observabilidad personal, trazabilidad y auditoría operativa, los mismos desafíos que resolvemos en sistemas distribuidos. Y la solución es la misma: logs, eventos, automatización y agregación, aplicados a mi vida laboral.

La historia detrás de la nota

Esta experiencia me recordó que, a veces, la solución más efectiva no es la más compleja. Priorizar la baja fricción y la automatización inteligente sobre la perfección en la documentación ha sido un cambio de juego para mi productividad y bienestar mental como ingeniero.