ABSTRACT VIEW
SECT - A SMART TEACHER FOR A SMARTER CODING EXPERIENCE
B. Doersam
Stuttgart Media University (GERMANY)
SECT stands for Software Engineering Coding Teacher and is an AI-based tool that supports students in learning programming languages. It is used primarily in the “Software Development” course in the Industrial Engineering Media course. The participants should learn programming with JavaScript primarily focusing on practical exercises; the course places great emphasis on practical learning.

Generative AI models such as ChatGPT are ideal for writing code in common programming languages. This can tempt students to rely on AI-generated solutions in courses instead of developing their own. However, such use of AI can have several negative effects:
- Lack of deep understanding: Developing your own problem-solving approaches promotes a deep understanding of concepts and logic, which can be negatively affected by the use of AI.
- Limited practical experience: Programming skills only improve with practice. The use of AI reduces practical experience.
- Poor problem-solving skills: Programming involves problem-solving and requirements analysis skills, which are weakened when AI solves the problems.

Despite these concerns, AI can effectively solve typical programming tasks that also occur in professional environments. Therefore, a balanced approach that includes both AI and independent problem solving is crucial for learning programming.

This article describes a new solution that ensures that:
1. Students can solve problems using self-developed software.
2. At the same time, students are taught how to use AI effectively as a tool.

In order to integrate generative AI support into the learning process, a proprietary tool (SECT - Software Engineering Coding Teacher) was developed based on OpenAI that students can use in their own programming environment. SECT allows students to ask questions about their self-written software code without receiving direct solutions. Instead, they only receive textual answers that describe a possible solution or give some hints on the solution path. Based on these answers, students still have to solve their problem themselves.

SECT supports students with typical problems:
1. Self-help: A student has developed a program that does not work as intended. He can mark his solution directly in the programming environment and ask: "What is wrong with my solution?".
2. Understanding: A student tries out given code examples. He is not sure how the examples work exactly. He can then mark sections of code and ask: "What does this code do?"
3. Independent quality assurance: Students can mark their code and ask: "How can I test this code?"

SECT has been used in programming exercises for a year now and its use is continuously monitored. The evaluation of the use of SECT is intended to assess its effectiveness and identify possible improvements.

The aim of this presentation is to present SECT and the evaluation results at the EDULEARN25. The presentation focuses on the following aspects:
- Quality of the source code: How do the solutions of the students that were created with the support of SECT differ from those that were created with direct AI help?
- Success rate: How does the rate of correctly solved exercises differ from the previous rate when SECT did not yet exist?
- Time to complete the tasks: Do the students reach their goal faster by using SECT than without the tool?
- Exam grades: Do the students' exam performance change as a result of using SECT?
- Feedback from students on the advantages and disadvantages of using SECT.

Keywords: Programming, Education, Evaluation, AI.

Event: EDULEARN25
Session: Emerging Technologies in Education
Session time: Tuesday, 1st of July from 08:30 to 13:45
Session type: POSTER