1 pointby brokerandy256 hours ago1 comment
  • brokerandy256 hours ago
    Hi HN,

    In my many years of engineering leadership and consulting, I got tired of loosing the “refactoring fight”, and I came to realize that it was because “Technical Debt” was a feeling, and not quantifiable. The business sees refactoring as an activity that adds no value, while I (and other engineers) see it as a necessity to maintain velocity, stability, and quality of life, TOMORROW.

    So I built Vestigo to help quantify technical debt, and help with the sprint planning process. Vestigo is able to quantify technical debt and risk using Git forensics. It takes advantage of your Git ledger to calculate:

    * Velocity Tax: Help you identify hot spots where modules are most in flux * Blast Radius: Helps you identify that changing X has a Y% chance of also changing Z. * Burnout Tax: Identifying the modules / areas that are really owned by one SME

    Also, as an engineer, I was tired of shipping my IP to 3rd parties. So I built Vestigo to be LOCAL. Not “local, but offloads to the cloud”, but runs 100% on your own box.

    * No data exfiltration * No sharing of PATs * Built using Alpine Linux with builds for both amd64 and arm64 * No sign-ups, no email addresses, no license key required to run locally, against your own repo.

    I would love it if you would try it on your own project (or even VS Code!). I ran it against VS Code myself, and did a full fetch depth. On my middle of the road laptop, it took about 90 minutes to complete, but it did work.

    (Make sure your working directory is where your .git folder is, or mount that specific directory)

    Linux / Mac: docker run --rm -it -p 8080:8080 -v "$(pwd):/app/work" 3squaredcircles/vestigo:latest interactive

    PowerShell: docker run --rm -it -p 8080:8080 -v ${PWD}:/app/work 3squaredcircles/vestigo:latest interactive

    Windows Command Prompt: docker run --rm -it -p 8080:8080 -v %cd%:/app/work 3squaredcircles/vestigo:latest interactive

    I’m particularly interested in your feedback on the UI and my “change correlation” methodology. How do you distinguish between files that are always in flux, and those that are truly “related”?

    Website: https://www.3squaredcircles.com Product Page: https://www.3squaredcircles.com/Platform/vestigo/ Docs: https://docs.3squaredcircles.com/Vestigo/v1.0.0