Text this: Enhancing programming education: The impact of AI-based pedagogical agents on student self-efficacy, engagement, and learning outcomes