All the members of our group had a tough time in CSE 214, not because of the difficulty of the concepts but because it was hard to listen and follow along with the code presented in class.
What it does
Our project enables students to concentrate on the concepts being taught rather than frantically trying to write every piece of code presented to them. It allows professors to share their code with students in real-time. The students are not able to edit the professor's code but can copy and paste it into there own compiler that will be provided on a split-screen with the professor's code on the left and the student's text editor and compiler on the right.
How I built it
We used node.js and express for the RESTful API. React and Ace Editor for the front end components (Ace Editor for the syntax highlighting)
Challenges I ran into
One of the hardest parts to implement was the code execution engine. At first we tried writing it in Java but it proved very difficult with command-line argument parsing but in the end, through lots of trial and error we were able to get a custom code execution engine working in node.
Accomplishments that I'm proud of
We are really proud of how practical we believe our application can be for cs classrooms.
What I learned
We learned how to develop a React web application capable of displaying code in real-time. We also learned about the google cloud platform and the deployment process.
What's next for CodeSnips
We want to include more language options to the code editor. We hope to implement this idea in our CS classes at Stony Brook and continue expanding if it's a success.