I see using ChatGPT as alternating between providing instructions – describing the desired end goal, the constraints, giving examples – and providing the ‘content’ for its task. For more complex things, you need to spend more effort on the instructions.