• 0 Posts
  • 7 Comments
Joined 2 years ago
cake
Cake day: June 11th, 2023

help-circle
  • It regurgitates old code, it cannot come up with new stuff.

    The trick is, most of what you write is basically old code in new wrapping. In most projects, I’d say the new and novel part is maybe 10% of the code. The rest is things like setting up db models, connecting them to base logic, set up views, api endpoints, decoding the message on the ui part, displaying it to user, handling input back, threading things so UI doesn’t hang, error handling, input data verification, basic unit tests, set up settings, support reading them from a file or env vars, making UI look not horrible, add translatable text, and so on and on and on. All that has been written in some variation a million times before. All can be written (and verified) by a half-asleep competent coder.

    The actual new interesting part is gonna be a small small percentage of the total code.




  • I’ve used Claude code to fix some bugs and add some new features to some of my old, small programs and websites. Not things I can’t do myself, but things I can’t be arsed to sit down and actually do.

    It’s actually gone really well, with clean and solid code. easily readable, correct, with error handling and even comments explaining things. It even took a gui stream processing program I had and wrote a server / webapp with the same functionality, and was able to extend it with a few new features I’ve been thinking to add.

    These are not complex things, but a few of them were 20+ files big, and it manage to not only navigate the code, but understand it well enough to add features with the changes touching multiple files (model, logic, view layer for example, or refactor a too big class and update all references to use the new classes).

    So it’s absolutely useful and capable of writing good code.



  • I’ve found it useful to write test units once you’we written one or two, write specific functions and small scripts. For example some time ago I needed a script that found a machine’s public ip, then post that to an mqtt topic along with timestamp, with config abstracted out in a file.

    Now there’s nothing difficult with this, but just looking up what libraries to use and their syntax takes some time, along with actually writing the code. Also, since it’s so straight forward, it’s pretty boring. ChatGPT wrote it in under two minutes, working perfectly on first try.

    It’s also been helpful with bash scripts, powershell scripts and ansible playbooks. Things I don’t really remember the syntax on between use, and which are a bit arcane / exotic. It’s just a nice helper to have for the boring and simple things that still need to be done.