REFUTE PRACTICE

Home Login

Software developers often dedicate more time to understanding and evaluating code
written by others than to writing code themselves.

This group of "others" now includes advanced tools that utilize Large Language Models (LLMs)
to translate natural language specifications into code.

While these tools can perform well on straightforward tasks and continue to improve,
they often generate incorrect or inefficient code, even for basic programming problems.

Consequently, aspiring software developers must build their skills in analyzing
and critiquing code designed to meet specific requirements.

REFUTE questions are designed to cultivate these skills, particularly in introductory programming courses.

These questions present students with code that fails to accomplish a given task,
challenging them to identify a counterexample where the code's behavior deviates from the intended outcome.

Click on the LOGIN button above to start practicing!

RESEARCH

This is based on a testing methodology developed by researchers at IIT Kanpur and IISc Bangalore.

A Bug's New Life: Creating Refute Questions from Filtered CS1 Student Code Snapshots
Nimisha Agarwal, Viraj Kumar, Arun Raman and Amey Karkare
CompEd 2023: Proceedings of the ACM Conference on Global Computing Education Vol 1, Pages 7-14