{"id":1796,"date":"2025-06-23T09:39:17","date_gmt":"2025-06-23T13:39:17","guid":{"rendered":"https:\/\/ozer.gt\/log\/?p=1796"},"modified":"2025-06-23T10:05:19","modified_gmt":"2025-06-23T14:05:19","slug":"how-to-use-llms-as-coding-assistants","status":"publish","type":"post","link":"https:\/\/ozer.gt\/log\/2025\/06\/23\/how-to-use-llms-as-coding-assistants\/","title":{"rendered":"How to use LLMs as coding assistants"},"content":{"rendered":"<p>[Click title for image]<\/p>\n<p>One way is hitting that accept button until the code works. This is like gambling: it works until it doesn&#8217;t, and you never know why in either case.<\/p>\n<p>Another way is intentional use. Intentional use is:<\/p>\n<ul>\n<li>Telling LLMs exactly what to do.<\/li>\n<li>Inspecting their code, line by line, before accepting.<\/li>\n<li>Unit testing the solution before it ever sees production.<\/li>\n<\/ul>\n<p>This means treating LLMs as over-confident, lightning-fast assistants. They are incredibly helpful in boosting productivity, quickly looking things up and delivering operational code. They can search a 100-page API documentation and find a solution to your problem in seconds.<\/p>\n<p>Unless we see a structural breakthrough in how language models are built, this is also the best we can have: an over-confident assistant. LLMs don&#8217;t think or reason; they achieve (shallow) deductive closure at best. While the debate over whether LLMs &#8220;think&#8221; can be unproductive, there is a practical implication: LLMs make profoundly inhuman coding mistakes.<\/p>\n<p>The errors LLMs make aren&#8217;t the errors a human assistant would make, so working with LLMs takes another perspective shift. Understanding this distinction is key to effectively using them: our coding assistant is deeply inhuman.<\/p>\n<p>Otherwise, LLM-driven coding will inevitably lead to more failures in data science. Expect to hear more stories about models breaking unexpectedly.<\/p>\n<p>This post was inspired by the write-up &#8220;<a href=\"https:\/\/simonwillison.net\/2025\/Mar\/11\/using-llms-for-code\/\">Here\u2019s how I use LLMs to help me write code<\/a>,&#8221; which nails many other crucial points. It&#8217;s worth checking out.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[Click title for image] One way is hitting that accept button until the code works. This is like gambling: it works until it doesn&#8217;t, and you never know why in either case. Another way is intentional use. Intentional use is: Telling LLMs exactly what to do. Inspecting their code, line by line, before accepting. Unit [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1800,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"cybocfi_hide_featured_image":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-1796","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/posts\/1796","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/comments?post=1796"}],"version-history":[{"count":85,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/posts\/1796\/revisions"}],"predecessor-version":[{"id":1882,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/posts\/1796\/revisions\/1882"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/media\/1800"}],"wp:attachment":[{"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/media?parent=1796"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/categories?post=1796"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ozer.gt\/log\/wp-json\/wp\/v2\/tags?post=1796"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}