[{"data":1,"prerenderedAt":236},["ShallowReactive",2],{"term-h\u002Fhack":3,"related-h\u002Fhack":218},{"id":4,"title":5,"acronym":6,"body":7,"category":199,"description":200,"difficulty":201,"extension":202,"letter":203,"meta":204,"navigation":101,"path":205,"related":206,"seo":212,"sitemap":213,"stem":216,"subcategory":6,"__hash__":217},"terms\u002Fterms\u002Fh\u002Fhack.md","Hack",null,{"type":8,"value":9,"toc":193},"minimark",[10,15,19,23,26,30,182,186,189],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"In coding, a hack is a clever but ugly solution that works without being pretty or proper. It is duct tape on a leaky pipe. It solves the problem right now but everyone is a little embarrassed about it. The word 'hacker' originally meant someone who makes clever hacks — not someone breaking into systems.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"In software development, a hack is an expedient solution that works but violates good design principles, relies on undocumented behavior, or is fragile. Hacks are characterized by comments like '\u002F\u002F TODO: clean this up' or '\u002F\u002F don't ask'. They contribute to technical debt. The term 'hacker' in its original MIT sense means a skilled programmer who builds clever solutions.",[11,27,29],{"id":28},"show-me-the-code","Show Me The Code",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Classic hack: hardcoded magic number with a guilty comment\nfunction getMaxUsers() {\n  return 42; \u002F\u002F HACK: hardcoded limit until billing system is done\n              \u002F\u002F See ticket #892 — do not ship this forever!\n}\n\n\u002F\u002F Another hack: CSS nuclear option\n.broken-component {\n  position: absolute !important; \u002F* HACK: overrides third-party CSS *\u002F\n  z-index: 9999 !important;      \u002F* TODO: fix properly *\u002F\n}\n","javascript","",[38,39,40,49,67,84,90,96,103,109,128,152,177],"code",{"__ignoreMap":36},[41,42,45],"span",{"class":43,"line":44},"line",1,[41,46,48],{"class":47},"sHwdD","\u002F\u002F Classic hack: hardcoded magic number with a guilty comment\n",[41,50,52,56,60,64],{"class":43,"line":51},2,[41,53,55],{"class":54},"spNyl","function",[41,57,59],{"class":58},"s2Zo4"," getMaxUsers",[41,61,63],{"class":62},"sMK4o","()",[41,65,66],{"class":62}," {\n",[41,68,70,74,78,81],{"class":43,"line":69},3,[41,71,73],{"class":72},"s7zQu","  return",[41,75,77],{"class":76},"sbssI"," 42",[41,79,80],{"class":62},";",[41,82,83],{"class":47}," \u002F\u002F HACK: hardcoded limit until billing system is done\n",[41,85,87],{"class":43,"line":86},4,[41,88,89],{"class":47},"              \u002F\u002F See ticket #892 — do not ship this forever!\n",[41,91,93],{"class":43,"line":92},5,[41,94,95],{"class":62},"}\n",[41,97,99],{"class":43,"line":98},6,[41,100,102],{"emptyLinePlaceholder":101},true,"\n",[41,104,106],{"class":43,"line":105},7,[41,107,108],{"class":47},"\u002F\u002F Another hack: CSS nuclear option\n",[41,110,112,115,119,122,125],{"class":43,"line":111},8,[41,113,114],{"class":62},".",[41,116,118],{"class":117},"sTEyZ","broken",[41,120,121],{"class":62},"-",[41,123,124],{"class":117},"component ",[41,126,127],{"class":62},"{\n",[41,129,131,135,138,141,144,147,149],{"class":43,"line":130},9,[41,132,134],{"class":133},"sBMFI","  position",[41,136,137],{"class":62},":",[41,139,140],{"class":117}," absolute",[41,142,143],{"class":62}," !",[41,145,146],{"class":117},"important",[41,148,80],{"class":62},[41,150,151],{"class":47}," \u002F* HACK: overrides third-party CSS *\u002F\n",[41,153,155,158,160,163,165,168,170,172,174],{"class":43,"line":154},10,[41,156,157],{"class":117},"  z",[41,159,121],{"class":62},[41,161,162],{"class":133},"index",[41,164,137],{"class":62},[41,166,167],{"class":76}," 9999",[41,169,143],{"class":62},[41,171,146],{"class":117},[41,173,80],{"class":62},[41,175,176],{"class":47},"      \u002F* TODO: fix properly *\u002F\n",[41,178,180],{"class":43,"line":179},11,[41,181,95],{"class":62},[11,183,185],{"id":184},"when-youll-hear-this","When You'll Hear This",[16,187,188],{},"\"It's a hack but it unblocks us for the demo.\" \u002F \"There are too many hacks in this codebase — time to refactor.\"",[190,191,192],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":51,"depth":51,"links":194},[195,196,197,198],{"id":13,"depth":51,"text":14},{"id":21,"depth":51,"text":22},{"id":28,"depth":51,"text":29},{"id":184,"depth":51,"text":185},"general","In coding, a hack is a clever but ugly solution that works without being pretty or proper. It is duct tape on a leaky pipe.","beginner","md","h",{},"\u002Fterms\u002Fh\u002Fhack",[207,208,209,210,211],"Workaround","Technical Debt","Refactor","Bug","Code Review",{"title":5,"description":200},{"changefreq":214,"priority":215},"weekly",0.7,"terms\u002Fh\u002Fhack","GCXS7pI8o6BbCcr3h5iOgVABGrUku1M2W6Qf-lhmmKo",[219,222,225,229,233],{"title":210,"path":220,"acronym":6,"category":199,"difficulty":201,"description":221},"\u002Fterms\u002Fb\u002Fbug","A bug is anything in your code that makes it behave wrong.",{"title":211,"path":223,"acronym":6,"category":199,"difficulty":201,"description":224},"\u002Fterms\u002Fc\u002Fcode-review","A code review is when another developer reads your code before it gets merged, looking for bugs, bad practices, or anything confusing.",{"title":209,"path":226,"acronym":6,"category":199,"difficulty":227,"description":228},"\u002Fterms\u002Fr\u002Frefactor","intermediate","Refactoring is cleaning and reorganizing your code without changing what it does — like tidying your room without throwing anything away.",{"title":208,"path":230,"acronym":6,"category":231,"difficulty":201,"description":232},"\u002Fterms\u002Ft\u002Ftechnical-debt","vibecoding","Technical debt is the coding equivalent of putting things on a credit card.",{"title":207,"path":234,"acronym":6,"category":199,"difficulty":201,"description":235},"\u002Fterms\u002Fw\u002Fworkaround","A workaround is a way to avoid a problem without actually fixing it. The door is broken so you use the window.",1776518286105]