Inspiration

As students in CUNY, a collegiate system that can occasionally be daunting (hybrid courses, cramped campuses, short classes and changing infrastructure), we recognize the struggle of piecing together an understanding of a course from syllabi that can be almost too dense to read.

What Syllabuster does

Syllabuster parses important data from syllabi, and breaks it down to students in digestable chunks. By calculating the percentage impact a class can have on your grade, estimated grades, and managing your academic schedule, Syllabuster removes some tedious bureaucracy that can weigh down a student's academic career.

How we built it

We designed Syllabuster in Python, using the PyCharm IDE. We tackled the code in several distinct groups- the parsing of a pre-structured syllabi, the Grade Calculator, the management of calendars, and sharing links to students through email. Special focus was given to the syllabi, with Ilya, our most senior member, working to make sure the extraction of data was as smooth and accurate as possible.

Challenges we ran into

As we progressed in our respective areas, we realized we had been initially ambitious for a three day project. We converged with our code, and took some time to communicate with one another about exactly what we wanted from the program. After scrapping some of our fringe ideas(such as a forum where students could communicate with one another/their professor), we hit a second wall in bringing our codes together. Differences in experience and style had made it difficult to smoothly combine our code. As we worked to understand one anothers' scripts, we were able to highlight hidden areas of miscommunication or inefficiency, and purge them from our final product.

Accomplishments that we're proud of

For a small group, consisting primarily of novice coders, we were able to come together and learn from another in a way that outshone our expectations. Not one member has attended a hack-a-thon before this weekend, yet we successfully communicated and worked until we delivered a product we could all be proud of. On the technical side, we also found new patterns and tools within Python that have greatly furthered our understanding of the language.

What we learned

Each of us increased our Python literacy through the project- for the novices, even simple structures such as dictionaries were new, and Ilya was able to effectively educate us quickly and accurately, helping us to understand his code even as he taught us the tools needed to write our own. Perhaps more importantly, we all gained valuable experience in effective communication and understanding each other's skills- experience that will help us immensely in future projects both academic and professional. Mentors were a valuable asset as well, helping bridge gaps in understanding and consistently providing encouragement.

What's next for Syllabuster

With more time and knowledge, we think Syllabuster could be greatly improved by the reintroduction of some of our scrapped ideas. The first and most important step would be a more robust tool for parsing syllabi. Implementing machine learning and a larger data set would lead to a tool that would work on almost any syllabi, instead of only the limiting structure we use in the current iteration. We additionally would like to provide students with outside research opportunities, by providing links to further readings based upon key words in both the syllabi and assigned book for each class. Integration with BlackBoard would help Syllabuster reach a larger audience, as well as provide a version of the forum tool we cut in this version.

Built With

Share this project:

Updates