Inspiration
As computer science students, our inspiration behind StudPals is deeply rooted in our own experiences navigating the complex world of technology and programming. We've faced the challenges of solitary coding, debugging, and studying, and we understand the value of a supportive community.
Our own experiences have shown us that the best solutions often emerge from brainstorming, discussions, and peer feedback. StudPals is designed to be a place where students can find study partners with our smart Study Buddy matching technology and keep each other motivated by overcoming academic challenges together.
StudPals is more than just a study buddy matching app; it also provides a customizable environment to stay focussed and productive. This project is a reflection of our passion for technology and our belief in the strength of collaborative learning. As computer science students ourselves, we're excited to empower others in their academic and professional pursuits by building a supportive and inspiring friendships.
What it does
The central objective of this project is Study Buddy Matching, a process in which students are carefully matched with like-minded peers who share their academic interests, stress levels, and time availability leading up to important deadlines. We've developed a sophisticated algorithm that takes these factors into account, ensuring the best possible study buddy matches from our user pool.
In addition to our matching feature, we offer a customizable study environment equipped with tools such as a to-do list, Pomodoro timer, and background music. These resources are designed to create a holistic and highly productive study session, enhancing the overall learning experience.
How we built it
In the development of our study buddy matching algorithm, we embarked on a thorough research journey to identify the key constraints that would be most relevant and effective in creating meaningful study pairings. One of our primary considerations was ensuring that the study partner shared the same class, as this is a fundamental factor for productive collaboration.
Our research also revealed that stress levels and the time available to dedicate to a specific assignment significantly contribute to the success of the study buddy matching system. Subsequently, we formulated a linear algorithm that assigns weights to these factors, allowing us to calculate a ranking score for potential study partners, which in turn facilitates appropriate matchings for the user.
The algorithm evaluates the similarity between users in terms of their availability for study sessions, stress levels, and time remaining before a deadline. This comparison process results in well-matched study pairs, enhancing the overall quality of collaboration.
To implement this algorithm, we initially developed a basic version in Python. Subsequently, we integrated it into the Flask framework, combining it with frontend elements to create the Study Buddy matching application. This application is now hosted on GoDaddy, providing students with an efficient and user-friendly platform for finding their ideal study partners.
Challenges we ran into
This marked the inaugural hackathon experience for the majority of our team members, and it was our first collaborative effort to develop a complete application. We faced several challenges along the way, such as the initial struggle to establish a framework and determine the most suitable tech stack for our project.
Early in the process, we made some suboptimal decisions, including choosing Java for our backend and crafting an entire website on GoDaddy. These choices later posed difficulties when we needed to integrate them seamlessly. Furthermore, our attempt to incorporate AI for enhanced user matching proved challenging, particularly when we discovered that using the ChatGPT API incurred costs that were unforeseen. This realization led to a considerable amount of time being invested, leaving us feeling somewhat disheartened.
During these trying moments, we found ourselves with individual project components that didn't cohesively function as a whole. At times, we also encountered internal challenges within the team, including conflicting ideas and moments of disappointment, as we navigated the complexities of our project, all part of the learning experience in our first hackathon.
Accomplishments that we're proud of
Despite the challenges and initial setbacks, we as a team rallied together to resolve our internal issues and remained committed to advancing our project. We sought assistance and delved into learning a new framework, Flask, which ultimately became the cornerstone of our application. Through creative collaboration and problem-solving, we successfully overcame numerous obstacles, despite facing significant disappointment along the way.
Our journey was also marked by a valuable exploration of APIs and their potential for AI integration, even if we didn't ultimately implement it in our project. This learning process significantly bolstered our confidence, instilling in us the belief that we could bring our project to successful fruition.
Initially, we had reservations about competing alongside other teams, but we were delighted to find that our participation in the hackathon was a positive and enriching experience.
What we learned
Our journey in this hackathon was a transformative one, marked by significant growth in both our technical and soft skills. We honed our proficiency in various areas, notably mastering Flask and frontend web development through HTML, CSS, and Bootstrap. Equally important, we acquired an array of invaluable soft skills that included effective teamwork, dealing with conflicting ideas, and making unified decisions as we collectively pursued our shared objective of building a successful project.
Our experience extended beyond the realm of technology, delving into the world of APIs and AI integration. These insights have opened new horizons for us, and we're excited to continue nurturing the skills we've cultivated on this incredible journey.
What's next for StudPals - Study better together!
Looking forward to the evolution of StudPals, we're committed to a multifaceted growth strategy. Our primary objective is to reinforce the backend infrastructure and establish a robust database, enabling seamless user registration and participation in our program. This development ensures a user-friendly experience, making StudPals accessible to a broader user base.
To enhance the study environment, we have exciting plans in store. We will introduce a range of features to elevate productivity, including the integration of background music for a conducive study atmosphere, to-do lists for effective task management, and a Pomodoro timer to optimize study intervals. Customization options will also be made available, ensuring users can tailor their study experience to their individual preferences.
Taking a bold step into the future, our ultimate ambition is to leverage the capabilities of AI. By harnessing the power of artificial intelligence, our aim is to revolutionize our study buddy matching system, meticulously pairing users based on their unique profiles, study habits, and preferences. This dynamic approach is pivotal to our overarching mission of fostering meaningful connections and creating a platform that champions collaborative productivity.
In essence, the future of StudPals is a journey marked by innovation, user-centric enhancements, and a commitment to making educational collaboration more effective and enriching for all.
Log in or sign up for Devpost to join the conversation.