[{"data":1,"prerenderedAt":121},["ShallowReactive",2],{"\u002Fthoughts\u002Fdont-lie":3},{"id":4,"title":5,"body":6,"date":112,"description":113,"extension":114,"meta":115,"navigation":116,"path":117,"published":116,"seo":118,"stem":119,"__hash__":120},"thoughts\u002Fthoughts\u002Fdont-lie.md","Don't lie",{"type":7,"value":8,"toc":110},"minimark",[9,18,21,23,25,33,35,38,41,44,47,50,53,106],[10,11,13],"h1",{"id":12},"dont-lie",[14,15,5],"span",{"className":16},[17],"text-h1",[19,20],"br",{},[19,22],{},[19,24],{},[26,27,29],"v-alert",{"type":28},"info",[30,31,32],"p",{},"TLDR: Lying in software writing is worse because I can see the lie and all I have to do is 'look'.",[19,34],{},[30,36,37],{},"Few things are more humbling than spending an hour debugging unexpected behaviour in a routine, only to realize you were\ndeceived by a function name. Half the time someone else wrote it; the other half, it was Past Me setting a trap for\nFuture Me.",[30,39,40],{},"The usual approach for me here is to start reading the documentation, if there is any, followed by me double-checking\nparameters to make sure I'm using it right.",[30,42,43],{},"The next usual step is to get the most basic example working to confirm I'm not going crazy.",[30,45,46],{},"Eventually, I'd give up and actually have a look at what's going on behind the curtain.",[30,48,49],{},"It's not often that I find the parameters\u002Fmethods\u002Fobjects were simply lying. Lying about their intent,\nusage, and behaviour.",[30,51,52],{},"The last example I have of this was an untyped method in a service similar to the below sample:",[54,55,60],"pre",{"className":56,"code":57,"language":58,"meta":59,"style":59},"language-php shiki shiki-themes github-light github-dark","public function getFile($foo, $bar,$baz)\n{\n    \u002F\u002F ...do stuff\n    \u002F\u002F ...sometimes it created a file on a different filesystem that had nothing to do with the parameters\n    \u002F\u002F ...create an entry in the database using one of the parameters as potential identifiers\n    \u002F\u002F ...never return anything\n}\n","php","",[61,62,63,70,76,82,88,94,100],"code",{"__ignoreMap":59},[14,64,67],{"class":65,"line":66},"line",1,[14,68,69],{},"public function getFile($foo, $bar,$baz)\n",[14,71,73],{"class":65,"line":72},2,[14,74,75],{},"{\n",[14,77,79],{"class":65,"line":78},3,[14,80,81],{},"    \u002F\u002F ...do stuff\n",[14,83,85],{"class":65,"line":84},4,[14,86,87],{},"    \u002F\u002F ...sometimes it created a file on a different filesystem that had nothing to do with the parameters\n",[14,89,91],{"class":65,"line":90},5,[14,92,93],{},"    \u002F\u002F ...create an entry in the database using one of the parameters as potential identifiers\n",[14,95,97],{"class":65,"line":96},6,[14,98,99],{},"    \u002F\u002F ...never return anything\n",[14,101,103],{"class":65,"line":102},7,[14,104,105],{},"}\n",[107,108,109],"style",{},"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":59,"searchDepth":72,"depth":72,"links":111},[],"2026-11-09","Lying is generally frowned upon. In software this makes it so much worse because I can actually see it. Why do we do it?","md",{},true,"\u002Fthoughts\u002Fdont-lie",{"title":5,"description":113},"thoughts\u002Fdont-lie","TnVPuA4hVxrhxICuql9xHuO2JRKP8bdd0moHnBA-jek",1794384094975]