Inspiration
This project was born out of an interest in the social dynamics of Internet phenomenon like r/place. Events like this have the capacity to speak to the power of collaboration and the goodwill of individuals who may have never met and may never meet again, but work to create and share across the Internet. We have a dream of seeing problem solvers and interested, good-willed individuals contributing to CrowdControlled to push data collection, machine learning education, and problem solving to the next level by creating projects and running experiments to their own custom and tailored needs.
What it does
Crowd Controlled is a web application that empowers users to collaboratively share data and create machine learning models. It facilitates open collaboration between data seekers and data providers, making it a valuable resource for businesses, researchers, and data enthusiasts. With this in mind, we envisioned and achieved the following with CrowdControlled.
- Democratize access to data and machine learning models.
- Accelerate innovation and knowledge sharing.
- Create a global community of data contributors and machine learning practitioners.
How we built it
Design Process
After settling and unifying our vision for CrowdControlled (originally called DataxSociety), we collaboratively ideated and constructed a design document which served as a great reference when implementing the backend. After settling on the system design and relational SQL mapping of CrowdControlled, we divided work based on our strengths to maximize efficiency (frontend, machine learning pipeline, database schema, and backend integration)
Tech Stack
Our tech stack was built entirely in Python using Reflex on a SQLite based database.
Challenges we ran into
Integration was a major challenge of ours, even with a comprehensive database schema. Because of our focus and commitment to performance and customizability, we had to manage the flow of information throughout our entire application. Taking a deeper dive into the project to data creation to model data flow, we knew the ideal solution would necessitate dynamically creating data and model tables that would be linked to the project. Thus, for this iteration, we have only created one data table, but we have the logic to dynamically create tables and look forward to implementing it.
Accomplishments that we're proud of
We are very proud of our collaborative workflow and ideation process, building out the system from the ground up. With performance and customizability being strong values, we created comprehensive, efficient pipelines to create frameworks for LSTM and Dense Neural Networks.
What we learned
The time constraints on this hackathon forced all of us to learn on the fly, push ourselves out of our comfort zone, and problem solve consistently on the fly. Beyond the new frameworks we learned including Reflex and PyTorch, we honed our system design skills and ability to work as a team. By implementing consistent rules for CI/CD, our use of Git and GitHub to create meaningful, detailed pull requests and commit messages allowed us to work much more efficiently. We also learned what it takes to design a system from database to user interface, and we gained a strong command of frontend design and backend dataflow.
What's next for CrowdControlled
We are looking forward to building onto the existing framework we have created for CrowdControlled, eventually coming up with a minimum viable product (MVP) that works at scale with users creating projects, data points, and models while communicating with each other.
Additional features include the ability to chat, view featured or trending projects, and have weekly competitions with leaderboards showing the best models.
Beyond the peer-to-peer experience of sharing data and customizing models, we see great value for enterprise use. Businesses seeking to gather data and consumer insights have the ability to pitch their own problems and crowdsource data in an easy, efficient and transparent manner. In return, consumers can receive incentives or rewards from companies in posting projects.
Log in or sign up for Devpost to join the conversation.