Inspiration

We've realized that although most people now actually understand the code that AI automates for them, the vast majority of the next generation of programmers will definitely not understand the code AI generates for them. Because we need more capable programmers of managing AI and pushing frontiers in the future, we need to _ reduce _ dependence on AI and turn coding into less of a job and more of a hobby.

What it does

Our website creates a customizable environment in which new or intermediate programmers can learn how to answer debugging, logical, and technical programming problems while also competing against their peers.

How we built it

We used Palantir AIP to store the accounts of users and retrieve data, along with connected the Juypter notebook for our ML model to the backend. Then, we trained our ML model using the AMD GPU chips accessed through the crowd, and created a stack of coding questions that were complete unique from the dataset the model was trained on, but still has the basic concepts like hash maps and such. We also have an AIP agent that has access to previous problems that each user with an account had answered inefficiently or failed to answer; as such, each user can learn how to maximize efficiency when answering programming problems with an interactive chat.

Challenges we ran into

It was difficult incorporating a draggable IDE into a website, and especially the feature in which multiple teammates can work in the same IDE, occupying the same node, simultaneously. It was also exceedingly difficult to train the model, so much so that we had identified completely novel and fundamental bugs in the local-cloud connection for the AMD chips that had to be fixed by the programmers at AMD themselves.

Accomplishments that we're proud of

We are proud to have created an accurate machine learning model that creates reliable programming questions of a desirable difficulty level, while being quick to generate (~3 seconds latency on average). Test cases could be generated through an AI wrapper as a backstop if Palantir wasn't fast enough.

What we learned

We learned numerous concepts and external platforms. These include but are not limited to the following: Making agents in Palantir AIP, incorporating databases into AIP, hosting machine learning training on GPUs and transferring weights through the cloud, programming collaborative IDEs, and making a functioning video game as a whole.

What's next for Cosolve

We plan to add more support for people who just want to be able to use the ML model to generate novel questions. We also plan to add more features, such as more niche fields that can be selected in settings (data science, differential privacy, etc.); this way, we can reach more related sectors that may be more statistical or math focused but still incorporate CS in a major way.

Share this project:

Updates