Ipakita ang HN: Rev-dep - 20x nga mas paspas nga knip.dev nga alternatibo nga pagtukod sa Go
Mga komento
Mewayz Team
Editorial Team
Ang Tinago nga Buhis sa Matag Nagtubo nga Software Team
Ang matag software nga proyekto nga molungtad ug dugay sa kadugayan nag-atubang sa parehas nga hilum nga krisis: ang codebase nagsugod sa pagtubo nga mas paspas kaysa masabtan sa team. Mga function nga wala’y tawagan, pag-eksport nga gihimo alang sa usa ka bahin nga gipadala kaniadtong 2022 ug hilom nga wala gigamit, mga sangkap nga naa sa disk apan wala makaabut sa usa ka browser. Dili kini kabuang — kini pisika. Ang mga team paspas nga molihok, ang mga kinahanglanon nagbag-o, ug ang entropy walay hunong. Ang pangutana dili kung ang imong codebase adunay patay nga code. Ang pangutana kung pila ang imong gasto karon.
Sumala sa panukiduki gikan sa Google's engineering productivity team, ang mga developers mogasto ug aberids nga 42% sa ilang coding time sa pagbasa ug pagsabot sa kasamtangan nga code kaysa pagsulat og bag-ong gamit. Kung kana nga naglungtad nga code naglakip sa libu-libo nga mga linya nga wala na magamit sa bisan unsang katuyoan, kana nga porsyento mas taas pa. Para sa usa ka grupo sa napulo ka mga inhenyero, epektibo kana nga upat ka mga full-time nga mga empleyado nga walay nahimo nga produktibo — dili tungod kay sila tapolan, kondili tungod kay ang ilang mga himan dili motakdo sa katulin sa pagkatigulang sa software.
Mao kini ang hinungdan ngano nga ang usa ka bag-ong balud sa mga tool sa developer nga gitukod sa mga sistema nga mga pinulongan sama sa Go ug Rust nakamugna og tinuod nga kahinam sa mga sirkulo sa engineering. Ang mga himan sama sa Rev-dep — usa ka reverse dependency analyzer nga nag-angkon nga modagan 20x mas paspaskaysa sa sikat nga JavaScript-based knip.dev — nagrepresentar ug labaw pa sa incremental improvement. Nagsenyales sila sa usa ka sukaranan nga paghunahuna pag-usab kung giunsa naton gigamit ang proseso sa pag-uswag mismo.
Unsa ang Gibuhat sa Reverse Dependency Analysis
Sa dili pa masabtan kung nganong importante kaayo ang katulin, makatabang kini nga masabtan kung unsa ang aktuwal nga gibuhat sa mga himan sa pagtuki sa dependency. Sa usa ka proyekto sa JavaScript o TypeScript, ang matag file nag-import gikan sa ubang mga file. Ang matag function, klase, o kanunay nga ma-export gikan sa usa ka module nagmugna usa ka potensyal nga pagsalig - usa ka butang nga mahimong masaligan sa ubang mga bahin sa codebase. Ang "reverse" dependency analysis nagbaliskad niini nga panglantaw: imbes nga mangutana "unsa ang gisaligan niini nga module," kini nangutana "unsay nagdepende niini nga module?"
Kung ang tubag sa ikaduhang pangutana kay "wala," nakit-an nimo ang dead code. Usa ka eksport nga walay importasyon kay basura. Usa ka function nga wala’y tawag mao ang teknikal nga utang nga adunay binulan nga rate sa interes. Ang mga galamiton sa reverse dependency systematic nga maglakaw sa imong tibuok project graph, mapa ang matag relasyon tali sa mga modules, ug ipahungaw ang mga node nga walay inbound nga koneksyon. Ang resulta mao ang tukma nga pag-audit sa tanan sa imong codebase nga luwas nga matangtang.
Ang Knip.dev maayo ang pagbuhat niini alang sa JavaScript ug TypeScript nga mga proyekto, ug kini kaylap nga gitahud sa komunidad. Apan kini nahisulat sa JavaScript, nga nagpasabot nga kini midagan sa Node.js, nga nagpasabot nga kini nakapanunod sa tanan nga Node nga single-threaded performance constraints sa diha nga ang pagbuhat sa dako nga-scale file system traversal ug simbolo pagtuki. Alang sa usa ka proyekto nga adunay 500 ka mga file, maayo kini. Alang sa usa ka proyekto nga adunay 50,000 nga mga file - ang klase sa monorepo nga nagpalihok sa tinuod nga negosyo nga mga produkto sa SaaS - ang pag-analisar mahimo’g pila ka minuto. Ug ang mga minuto, sa cadence sa modernong CI/CD pipelines nga naglihok sa, usa ka dealbreaker.
Nganong Giusab ni Go ang Pagkalkula
Go gidesinyo gikan sa sinugdanan para sa eksakto nga matang sa workload nga gikinahanglan sa pag-analisa sa dependency: paspas nga file I/O, maayo kaayo nga concurrency primitives, ug gamay nga runtime overhead. Kung diin ang Node.js nagproseso sa usa ka buluhaton sa usa ka higayon sa usa ka hilo ug nagsalig sa mga callback ug nagsaad sa peke nga paralelismo, si Go makapatunghag liboan ka mga goroutine nga tinuud nga nagpatuman nga managsama sa tanan nga magamit nga mga cores sa CPU. Alang sa usa ka buluhaton nga naglakip sa pagbasa sa gatusan ka mga file, pag-parse sa ilang mga AST, ug paghimo og graph sa mga relasyon sa simbolo, kining kalainan sa arkitektura direktang gihubad ngadto sa performance sa wall-clock.
Ang 20x nga speedup nga giangkon sa Rev-dep dili magic — kini ang mahitabo kung imong ipares ang saktong lengguwahe sa saktong problema. Ang nahipos nga kinaiyahan ni Go nagpasabot usab nga walay silot sa pagpainit sa JIT. Gikan sa bugnaw nga pagsugod hangtod sa kompleto nga pag-analisar, ang usa ka binary nga Go naglihok sa hapit nga peak nga pasundayag. Ang praktikal nga implikasyon mao nga ang pagtuki nga mikuha ug 90 segundos sa usa ka himan nga nakabase sa Node mahimong makompleto sa ubos sa 5 segundos sa usa ka maayo nga gipatuman nga katumbas sa Go. Kana ang kalainan tali sa usa ka tseke nga gilaktawan sa mga developer tungod kay kini "kinahanglan hangtod sa kahangturan" ug usa nga nagdagan sa matag commit nga wala’y bisan kinsa nga nakamatikod sa overhead.
"Ang labing maayo nga himan sa developer mao ang usa nga makawala. Kon ang imong analysis suite magdugang ug tulo ka minuto sa matag CI pipeline, ang mga developers mangitag mga paagi sa paglaktaw niini. Ang katulin dili nindot - kini ang gikinahanglan alang sa pagsagop."
Ang Kaso sa Negosyo para sa Codebase Hygiene
Ang dead code dili lang usa ka developer aesthetics nga problema — kini adunay konkreto nga mga sangputanan sa negosyo nga nagsagol sa paglabay sa panahon. Hunahunaa kung unsa gyud ang gasto sa mga bloated codebase sa mga organisasyon:
- Mas taas nga panahon sa pagtukod nga nagpahinay sa pag-deploy sa mga pipeline ug nagpamenos sa gidaghanon sa mga release nga luwas nga ipadala sa usa ka team kada semana
- Mas taas nga cognitive load para sa mga onboarding engineer, kinsa kinahanglang mogugol ug mga semana sa pag-ila sa aktibong mga pattern gikan sa mga giabandonar
- Nadugangan nga mga gidak-on sa bundle nga makadaot sa performance sa aplikasyon, ilabina sa mga web app diin ang matag kilobyte makaapekto sa mga oras sa pagkarga ug mga rate sa pagkakabig
- Pagpalapad sa nawong sa seguridad — patay nga kodigo nga aduna gihapoy mga dependency usa gihapon ka vector sa mga kahuyangan sa maong mga pakete
- Test suite bloat diin ang mga pagsulay alang sa gitangtang nga functionality nagpadayon sa pagdagan, paggamit sa CI nga mga minuto, ug usahay mapakyas sa makalibog nga mga paagi
- Mga bakak nga mga signal sa pagkakomplikadonga naghimo sa mga desisyon sa arkitektura nga mas lisud tungod kay dili klaro kung unsa ang nagdala sa karga ug unsa ang wala'y labot
Usa ka 2023 nga pagtuon sa DevOps Research and Assessment (DORA) nga grupo nakit-an nga ang mga team nga adunay lig-on nga kalidad nga mga gawi sa code — lakip ang regular nga pagtangtang sa dead code — gipadala 2.4x nga mas kanunayug adunay 7x nga mas ubos nga mga rate sa kapakyasan sa pagbag-okaysa sa mga team nga nagtugot sa teknikal nga utang nga matipon. Ang correlation dili sulagma. Ang limpyo nga mga codebase mas sayon nga pangatarungan, mas sayon nga sulayan, ug mas sayon nga ilisan nga luwas.
Alang sa mga negosyo nga nagtukod sa mga plataporma sama sa Mewayz — nga nagpalihok sa 138,000 ka tiggamit sa tibuok 207 ka managlahing mga module sa negosyo gikan sa CRM ug payroll ngadto sa pagdumala sa fleet ug link-in-bio nga mga himan — ang codebase health midaghan ang stake. Kung ang imong plataporma nagsangkad sa daghang mga functional domain, ang panagsama nga nawong sa taliwala sa mga module dako kaayo. Ang wala magamit nga mga eksport sa usa ka kinauyokan nga module makamugna og sayop nga mga pagdahom alang sa nagsalig nga mga modulo, makapahinabo sa dili kinahanglan nga pag-re-render sa UI layer, ug makapakomplikado sa dependency graph sa mga paagi nga makapameligro sa umaabot nga mga kausaban.
Paghiusa sa Pag-analisa sa Dependency Ngadto sa Mga Modernong Pag-uswag sa Trabaho
Ang tinuod nga gahum sa paspas nga himan sama sa Rev-dep dili ang usa ka higayon nga paglimpyo nga mahimo niini - kini ang abilidad sa pagpadagan sa padayon nga pagtuki isip bahin sa imong normal nga siklo sa pag-uswag. Kung ang usa ka patay nga pag-scan sa code nagkinahanglan og 4 segundos imbes 4 ka minuto, mahimo nimo kini idugang sa imong pre-commit hooks. Kung moabot ug 4 ka segundos imbes 4 ka minuto, ang imong CI pipeline mahimong mapakyas sa usa ka pull request nga magpaila sa bag-ong wala magamit nga mga eksport imbes nga pasagdan kini nga matigom sa hilom.
💡 DID YOU KNOW?
Mewayz replaces 8+ business tools in one platform
CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.
Start Free →Kini nga pagbalhin gikan sa "quarterly cleanup event" ngadto sa "continuous quality gate" susama sa nahitabo sa dihang ang mga linter nahimong paspas nga modagan sa matag keystroke sa usa ka IDE. Sa wala pa ang ESLint midagan sa tinuod nga panahon, ang estilo sa code gipatuman pinaagi sa periodic code reviews. Pagkahuman, nahimo kini nga ambient - bahin sa feedback loop nga nasinati sa mga developer samtang nagsulat og code, dili pagkahuman. Ang paspas nga pag-analisa sa dependency makahimo sa parehas nga presyur sa kalidad sa palibot sa patay nga code.
Ang pag-set up niini nga workflow kasagarang naglakip sa tulo ka component:
- Baseline analysis: Pagdalagan ang himan batok sa imong kasamtangan nga codebase aron masabtan ang sukod sa kasamtangan nga dead code. Ayaw pagsulay sa pag-ayo sa tanan sa usa ka higayon — triage sa module ug unahon pinaagi sa risgo.
- Pagpatuman sa CI: Idugang ang pagtuki sa imong pipeline nga adunay threshold — mapakyas sa bisan unsang bag-ong gipaila nga wala magamit nga mga eksport, apan ayaw pakyasa sa mga anaa na hangtod nga imong malimpyohan kini.
- Naka-iskedyul nga mga sprint sa pagpanglimpyo: Gamita ang output sa himan aron sa paggiya sa regular nga trabaho sa pagpanglimpyo, pagsubay sa ihap sa dead code isip usa ka sukdanan sa panglawas sa team sa paglabay sa panahon.
Unsa ang Go Tooling Renaissance Signals para sa SaaS Builders
Ang Rev-dep kabahin sa mas lapad nga pattern sa developer tooling: high-performance nga mga alternatibo sa establisado nga JavaScript nga mga himan, gitukod sa Go o Rust, makita sa matag kategorya. Gipulihan sa Biome ang ESLint ug Prettier alang sa daghang mga koponan. Ang Turbopack ug Rspack nagkaon sa paniudto sa Webpack. Gihagit ni Bun ang Node.js mismo. Ang kasagarang hilo mao nga kini nga mga himan dili lang nagtanyag ug dugang nga kauswagan — kini nagtanyag ug mga lakang sa pag-andar nga nagbag-o sa praktikal.
Alang sa mga kompanya sa SaaS nga nagtukod og mga komplikado, multi-module nga mga produkto, kini nga tooling renaissance adunay direktang implikasyon sa katulin sa engineering. Ang 207-module nga arkitektura ni Mewayz - nga naglangkob sa tanan gikan sa HR ug payroll hangtod sa mga sistema sa pag-book ug mga dashboard sa analytics - nagrepresentar sa eksakto nga klase sa dako, nagdugtong nga codebase kung diin ang paspas, tukma nga pagtuki sa pagsalig mahimong kritikal sa operasyon. Kung ang usa ka pagbag-o sa usa ka gipaambit nga module sa utility mahimo’g mabag-o sa teorya sa daghang mga module sa bahin, ang pagbaton og hapit dayon nga pagtan-aw sa aktwal nga graph sa dependency dili lang kombenyente — kini ang klase sa imprastraktura nga nagpugong sa mga insidente sa mahal nga produksiyon.
Ang abilidad sa pagtubag sa "unsa ang aktuwal nga naggamit niini nga function" sa ubos sa lima ka segundos kay sa lima ka minuto nagbag-o kung giunsa paghimo sa mga inhenyero ang mga desisyon. Gipaubos niini ang gasto sa imbestigasyon, nga nagpasabut nga ang mga inhenyero kanunay nga nag-imbestiga, nga nagpasabut nga naghimo sila og mas maayo nga mga desisyon. Mao kini ang nagsagol nga pagbalik sa puhunan sa paspas nga himan nga kasagarang mataligam-an kung ang mga organisasyon maghunahuna bahin sa paggasto sa produktibo sa developer.
Paghimo sa Patay nga Pagwagtang sa Code nga Bahin sa Imong Kultura sa Inhenyero
Ang teknolohiya lang dili makamugna ug limpyo nga codebase — ang kultura. Ang mga himan sama sa Rev-dep naghatag sa kapabilidad, apan ang paghimo niana nga kapabilidad ngadto sa makanunayon nga praktis nagkinahanglan sa organisasyonal nga pasalig. Ang labing epektibo nga mga team nagtratar sa patay nga code metrics sa samang paagi nga ilang gitagad ang test coverage: isip usa ka makita, gisubay nga timailhan sa codebase nga kahimsog nga girepaso sa mga miting sa engineering ug gilakip sa sprint planning.
Usa ka piho nga kultural nga mga buhat nga maayo nga mosaler naglakip sa pagtudlo sa "mga adlaw sa pagtangtang sa code" — mga panagsa nga panghitabo diin ang klaro nga tumong mao ang pagtangtang sa code imbes nga idugang kini. Ang Netlify bantog nga nagpasundayag niini pinaagi sa pagpadagan sa mga leaderboard nga nagsubay sa mga linya sa pukot nga natangtang. Nagsulat si Stripe sa publiko bahin sa ilang batasan sa pagtratar sa pagtangtang sa code isip usa ka una nga klase nga kontribusyon sa inhenyero, parehas sa kantidad sa feature nga trabaho. Ang gikinahanglan nga pagbag-o sa panghunahuna mao ang pag-ila nga ang labing maayong code mao ang code nga wala: matag linya nga dili nimo isulat usa ka linya nga dili nimo kinahanglan nga ipadayon, sulayan, i-debug, o ipasabot sa usa ka bag-ong suhol.
Para sa mga kompanya sa produkto nga nagdumala sa komplikadong mga operasyon sa negosyo, ang parallel sa gawas sa engineering parehas nga makatudlo. Ang parehas nga disiplina nga naghimo sa mga codebase nga labi ka himsog - regular nga pag-audit, tin-aw nga pagpanag-iya, pagtangtang sa mga butang nga wala gigamit bisan kinsa - naghimo usab nga labi ka himsog ang mga proseso sa negosyo. Ang mga plataporma sama sa Mewayzgitukod nga tukma aron mahatagan ang mga negosyo sa ingon nga katin-awan sa operasyon: usa ka hiniusa nga pagtan-aw kung unsang mga himan ang gigamit, kung unsang mga agianan sa trabaho ang nagpatunghag bili, ug kung diin ang patay nga gibug-aton sa organisasyon nag-ipon. Kung nag-audit ka sa wala magamit nga mga pag-eksport sa software o wala magamit nga mga proseso sa negosyo, parehas ang sukaranan nga disiplina.
Ang mga galamiton nagkakusog, ang feedback loops nagkahigpit, ug ang mga team nga namuhunan sa codebase hygiene infrastructure karon nagtukod ug usa ka compounding advantage nga mobayad sa mga dibidendo sulod sa mga katuigan. Ang Rev-dep ug ang grupo niini sa Go-powered nga mga himan sa developer dili lang makapaikag nga mga benchmark - kini ang layer sa imprastraktura nga nagpaposible sa malungtarong katulin sa software. Ug sa usa ka kalibutan diin ang katulin sa pag-uli mao ang panguna nga bentaha sa kompetisyon alang sa mga negosyo sa software, dili kana usa ka peripheral nga kabalaka. Kini ang tibuok dula.
Mga Pangutana nga Kanunayng Gipangutana
Unsay nakapapaspas sa Rev-dep kay sa knip.dev?
Ang Rev-dep gitukod sa Go, usa ka gihugpong nga pinulongan sa mga sistema nga gi-optimize alang sa concurrency ug hilaw nga katulin sa pagpatuman, samtang ang knip.dev nagdagan sa Node.js. Kini nga kalainan sa arkitektura nagtugot sa Rev-dep sa pag-analisar sa mga dependency graph ug pag-detect sa patay nga code hangtod sa 20x nga mas paspas. Para sa dagkong monorepos o komplikadong mga codebase — sama sa 207-module nga arkitektura nga nagpalihok sa negosyo nga OS ni Mewayz sa app.mewayz.com — kana nga gintang sa performance gihubad ngadto sa tinuod nga oras nga gitipigan sa matag CI run.
Pila ka daghang patay nga kodigo ang natigom sa kasagarang nagtubo nga proyekto?
Ang mga pagtuon ug anecdotal nga mga taho gikan sa mga team sa engineering nagsugyot nga ang mga hamtong nga codebase mahimong magdala bisan asa gikan sa 10% ngadto sa 35% nga wala magamit o dili maabot nga code. Ang problema nagsagol sama sa sukdanan sa mga team - ang mga feature wala na magamit, ang mga API nag-usab, ug ang mga module gibiyaan nga walay paglimpyo. Ang mga plataporma sama sa Mewayz, nga naghiusa sa kapin sa 207 ka mga module sa negosyo ngadto sa usa ka $19/mo nga operating system, nagsalig pag-ayo sa sistematikong dead code detection aron magpabilin ang codebase nga nipis ug mamentinar.
Ang Rev-dep ba angay alang sa mga team nga wala mogamit sa JavaScript o TypeScript?
Ang Rev-dep sa pagkakaron naka-focus sa JavaScript ug TypeScript ecosystem, nga naghimo niini nga direktang alternatibo sa knip.dev para sa maong mga palibot. Ang suporta alang sa dugang nga mga pinulongan mahimong molapad samtang ang proyekto mohamtong. Kung ang imong team nagtukod og web-based nga mga produkto o SaaS nga mga himan — susama sa paagi sa Mewayz sa paghatag sa iyang tibuok negosyo nga OS sa app.mewayz.com — ug ang imong stack kay JS/TS-bug-at, ang Rev-dep angayan nga susihon isip kabahin sa imong developer toolchain karon.
Mahimo ba nako i-integrate ang Rev-dep sa akong kasamtangan nga CI/CD pipeline?
Oo. Ang Rev-dep gidisenyo isip usa ka CLI nga himan, nga naghimo niini nga diretso nga ihulog sa bisan unsang CI/CD pipeline kauban sa imong kasamtangan nga linting ug mga lakang sa pagsulay. Ang katulin nga bentaha niini labi ka bililhon sa mga automated pipelines diin ang mas paspas nga feedback loops makapakunhod sa mga oras sa paghulat sa developer. Kung nagdagan ka ug usa ka lig-on nga pagsugod o nagdumala sa usa ka bug-os nga gipakita nga plataporma sama sa Mewayz nga $19/mo nga OS sa negosyo, ang pag-integrate sa dead code analysis sa imong pipeline makatabang sa pagpatuman sa codebase hygiene sa matag paghiusa.
Try Mewayz Free
All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.
Get more articles like this
Weekly business tips and product updates. Free forever.
You're subscribed!
Start managing your business smarter today
Join 30,000+ businesses. Free forever plan · No credit card required.
Ready to put this into practice?
Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.
Start Free Trial →Related articles
Hacker News
Darkbloom – Private inference on idle Macs
Apr 16, 2026
Hacker News
Show HN: Hiraeth – AWS Emulator
Apr 16, 2026
Hacker News
Stealth signals are bypassing Iran’s internet blackout
Apr 16, 2026
Hacker News
A Better Ludum Dare; Or, How to Ruin a Legacy
Apr 16, 2026
Hacker News
Agent - Native Mac OS X coding ide/harness
Apr 16, 2026
Hacker News
YouTube users get option to set their Shorts time limit to zero minutes
Apr 15, 2026
Ready to take action?
Start your free Mewayz trial today
All-in-one business platform. No credit card required.
Start Free →14-day free trial · No credit card · Cancel anytime