You need to agree to share your contact information to access this dataset

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

Please obtain the usage permission from the Faculty of Computer Science and Engineering, VNU-HCM University of Technology before submitting the request.

Log in or Sign Up to review the conditions and access this dataset content.

A Dataset for Modeling Iterative Problem-Solving

Dataset access is available upon request only. The dataset is not released for unrestricted public download. For each access request, the research team can release the dataset only after obtaining the necessary permission from the Faculty. Approved requesters receive access under the applicable departmental license, which restricts use to educational purposes. The dataset remains the copyrighted intellectual property of the Department of Computer Science, Faculty of Computer Science and Engineering at VNU-HCM University of Technology.

Dataset Overview

CodeInsight is a large-scale dataset of iterative programming problem-solving trajectories collected from undergraduate students in the Department of Computer Science at VNU-HCM University of Technology (Vietnam). It contains 3,074,795 code submissions from 3,286 students across 394 programming problems and 3,888 test cases, covering four offerings of two introductory C++ courses in the 2022 and 2023 academic years.

The dataset is designed to support research on sequential and iterative problem solving, including student modeling, knowledge tracing, next-attempt prediction, error analysis, and the modeling of how solutions evolve in response to automated feedback.

Courses

  • Programming Fundamentals (PF) — a first-year programming course.
  • Data Structures & Algorithms (DSA) — a second-year course for which PF is a prerequisite.

Each course runs for six weeks. Students work through programming exercises, may submit multiple attempts for the same problem, and receive automated feedback from test cases after each attempt.

Dataset Statistics

Course offering Students Problems Test cases Submissions
DSA HK231 (Fall 2023) 966 227 2,194 865,912
DSA HK221 (Fall 2022) 513 175 1,661 456,916
PF HK232 (Spring 2023) 1,485 129 1,307 854,104
PF HK222 (Spring 2022) 1,413 119 1,201 897,863
Unique total 3,286 394 3,888 3,074,795

Students and problems may occur in more than one course offering, so the per-course counts do not sum to the unique totals.

Data Access and License

CodeInsight contains student programming submissions and is therefore distributed under controlled access.

Access procedure:

  1. An academic researcher contact the Faulty of CSE to seeks the necessary permission.
  2. When permission is granted, an academic researcher submit the request to get access to this data with approval letter from the Faculty.
  3. The requester may receive the dataset under the applicable departmental license.
  4. The departmental license permits use strictly for educational purposes and does not constitute an unrestricted public-data license.

Approved requesters may receive the materials described in the paper, including:

  • the raw source code of student submissions;
  • full problem statements and code templates;
  • public and private test cases;
  • per-test-case pass/fail outcomes for submissions;
  • grading scripts used to compile and evaluate submissions; and
  • train/test split indices used in the benchmark experiments.

Privacy and Ethical Considerations

Student privacy is protected through systematic anonymization. Student identities are represented using numeric indices, and names and other unique personal identifiers are removed. The submissions were additionally screened to check that embedded email addresses and student identification numbers were not retained in the source code.

The dataset was curated after the relevant courses had concluded and with institutional permission. Controlled release and the departmental license are intended to reduce privacy and misuse risks associated with distributing student-generated source code.

Course Structure and Topics

The six-week curriculum includes topics such as:

  • object-oriented programming;
  • recursion;
  • array lists and linked lists;
  • stacks and queues;
  • sorting and searching algorithms;
  • binary trees and AVL trees;
  • hash functions; and
  • graph theory.

Students solve multiple programming exercises each week and may iteratively revise their submissions in response to feedback.

Interaction Logs and Student Actions

The programming platform records timestamped student actions in an interactive coding environment, including:

  • start_attempt;
  • precheck;
  • save;
  • check; and
  • finish_attempt.

A precheck evaluates code against public test cases and provides feedback that can be used to revise the solution. Formal submissions are evaluated against private test cases. The resulting trajectories capture repeated attempts, code revisions, and test-case-level outcomes over time.

Admission-Pathway / Section Labels

Within a course offering, students may be grouped by admission pathway:

  • L: regular admission;
  • CC: a higher-tuition track with lower entrance scores; and
  • DT: students retaking the course.

These labels are course-section metadata and should not be interpreted as measures of student ability.

Files and Schema

course_infos.csv

Column Description
course_id Course/offering identifier, e.g. pf_hk232
course_name Human-readable course name
year Academic year / course offering year

section_infos.csv

Column Description
course_id Course to which the section belongs
section_id Section identifier
section_name Section/admission-pathway label

student_infos.csv

Column Description
student_id Anonymized numeric student identifier
student_uid Additional anonymized numeric identifier for the same student

main_data.csv

The main interaction file uses the following fields:

student_id, course_id, section_id, question_unittest_id, attempt_id,
timestamp, is_exam, response_type, response, pass
Column Description
student_id Anonymized student identifier
course_id Course/offering identifier
section_id Student section identifier
question_unittest_id Identifier associated with a programming question/test case
attempt_id Attempt identifier
timestamp Timestamp of the recorded interaction
is_exam Indicator for whether the interaction belongs to an exam
response_type Type of platform action, such as precheck or submission/check
response Student response/source-code content associated with the interaction
pass Recorded test outcome information

Intended Uses

CodeInsight is intended for academic and educational research on iterative problem solving. Example research directions include:

  • modeling programming problem-solving trajectories;
  • knowledge tracing and student modeling;
  • next-attempt and test-case outcome prediction;
  • analysis of persistent errors and revision strategies;
  • evaluation of sequential probabilistic and neural models; and
  • studying whether generative models capture realistic student behavior.

Because the dataset contains real student work, users should follow the approved license terms and institutional requirements and should avoid attempts to re-identify students.

Reference

If you use CodeInsight in your research, please cite:

Fagun Patel, Sang T. Truong, Duc Q. Nguyen, Kazunori Fukuhara, Benjamin W. Domingue, Sanmi Koyejo, and Nick Haber. A Dataset for Modeling Iterative Problem-Solving. In Proceedings of the 2026 Conference on Empirical Methods in Natural Language Processing, 2026.

or use below BibTex:

@inproceedings{patel-etal-2025-a,
    title = "A Dataset for Modeling Iterative Problem-Solving",
    author = "Patel, Fagun  and
      Truong, Sang T.  and
      Nguyen, Duc Q.  and
      Fukuhara, Kazunori and
      Domingue, Benjamin W. and
      Koyejo, Sanmi and
      Haber, Nick",
    booktitle = "Proceedings of the 2026 Conference on Empirical Methods in Natural Language Processing",
    month = nov,
    year = "2026",
    address = "Budapest, Hungary",
    publisher = "Association for Computational Linguistics",
}

The associated paper describes the dataset construction, privacy safeguards, benchmark protocol, and controlled-access policy in detail.

Downloads last month
5