Managing Claude

Never has close attention to Software Delivery Life Cycle (“SDLC”) practice been more vital for the delivery of the expected.

In a recent evaluation exercise, “Claude Code” was used for the generation of program source code in two refactoring cases at the ANU.

  1. A set of python scripts used for the modelling of the behaviour of cybernetic processes was upgraded to include setpoint seeking behaviour.
  2. Source from two Flutter/Dart applications was integrated to deliver a combination of functionality in a single App.

“Claude Code” provides a dissembling emulation of Oraclesque infallibility in its sessions, amplified by the dweebish persona to which it seems attached. The vexing insistence of its use, necessary or not of technical jargon does little to dispel the notion of “black magic”, its promise to investors. We know by the nature of the engine that this must a conscious choice of the owner.

However, its competence is formidable.

In case 1, a set of nine algorithms was proposed by Claude Code, to meet the requirement, each described and then cast against the existing source at the behest of the prompt. On confirmation, these algorithms were refactored into the appropriate function within the python source, on the instruction of the prompt. Breathtaking. However, an existing bug was reported within the source, a bug that did not exist.

In case 2, what would have been a straightforward task of functionality integration if the original applications had been built to tried and tested software engineering principles was a challenging exercise for the uninitiated. The task of modification without Claude Code was frankly incomprehensible. Nevertheless, the functionality required was cast with a single prompt but with a bug that was addressed with a second prompt. So far so fantastic. Slightly disturbing? The complexity of Claudian outputs, that frankly perhaps only Claude can interpret. You’re locked in.

In conclusion, Claude delivers. What is clear though is that modularity and iterative prototyping have never been more valuable both for the swift delivery of the right functionality and the accuracy of the delivered object performance. The specification of a module is its test specification.

To avoid the unexpected and the ruin of assumptions, keep it simple and plug it together around the information flow.

Giant blob prompts are out.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *