How Do Programming Students Use Generative AI? | Synapse