Senior Design Team sdmay24-34 • Code Critiquer System for the C Language
Project Overview
Learning to code can be quite difficult for novice programmers. Specifically, the debugging process can be overwhelming and confusing. Compilers can provide feedback, but often times error messages are cryptic and difficult for novices to understand. Additionally, runtime errors and many beginner coding antipatterns cannot be caught by a compiler. As such, it can be difficult to learn to program without the direct aid of a mentor.
The goal of Code Critiquer for the C Language is to make the learning process easier by providing helpful feedback geared towards programming novices. We aim to identify compiler errors, runtime errors, and common coding antipatterns and provide feedback in a helpful and meaningful way. We will do this by creating an application that students can upload their code to. The application will be connected to a database, which stores test cases and examples of common programming antipatterns, or common faulty programming patterns. Students will have the option to configure their application for certain types of antipatterns, and teachers will have the ability to add antipatterns to a database. Not only will this help students become better programmers, but it will help take the burden of debugging off of teachers and mentors.
Team Members
Nicholas Carber
Regex SupportSenior in Software Engineering
Conner Cook
AST SupportSenior in Software Engineering
Brandon Ford
Database AdministratorSenior in Software Engineering
Emily Huisinga
FrontendSenior in Software Engineering
Sage Matt
FrontendSenior in Software Engineering
Cade Robison
Test Suite SupportSenior in Software Engineering
Weekly Reports
Weekly Report 1Weekly Report 2
Weekly Report 3
Weekly Report 4
Weekly Report 5
Design Documents
Design Doc 1Design Doc 2
Semester Presentations
491 - Faculty Panel Presentation492 - Industry Panel Presentation
Midterm Peer Review Presentation
492 - Midterm Peer Review PresentationFinal Deliverables
Final ReportFinal Poster
Final Presentation
Final Demo Video