Taming AI Code Bloat: Adding Line Counts to Nvim-Tree Tools like GitHub Copilot and modern LLMs have dramatically accelerated development velocity. With tab completions, automated boilerplate generation, and rapid prototyping, writing code has never been faster. However, this velocity introduces a subtle software architecture anti-pattern: silent file bloat. Before AI assistance, writing 2,000 lines of code in a single file took deliberate effort and plenty of typing fatigue, giving developers time to pause and say, "This file is getting out of hand; I need to split this into smaller modules." Today, an AI can generate hundreds of lines in seconds. Without visual feedback in our project navigation, a once-compact module can swell to 1,500 or 2,000 lines before anyone notices during a pull request review. To tackle this architectural drift directly at the source, I added a custom decorator to nvim-tree.lua that displays the line count directl...
Switching from Gemini API to Vertex AI Integration I have a Node.js application that formerly used the pure Gemini API. I switched to using the Vertex AI integration. In order to achieve this, you need to set up your environment to use Application Default Credentials (ADC) and specify your Google Cloud project ID. #!/bin/bash export GOOGLE_CLOUD_PROJECT=<my-project-id> bash <(curl -s SL \ https://storage.googleapis.com/cloud-samples-data/adc/setup_adc.sh) Then it stores the service credentials in a file: ${HOME} /.config/g cloud /application_default_credentials.json Which contains: { "account" : "" , "client_id" : "....apps.googleusercontent.com" , "client_secret" : "..." , "quota_project_id" : "gen-lang-client-0123456" , "refresh_token" : "1//OlP1frQqGdZVykkPbFRWzVUBo1s" , "type" : "authorized_user" , "universe_domain" : ...