Designing a Chatbot to Support Problem-Solving in a Programming Course | Synapse