Inspiration
We are Ayush and Abhishek. As avid programmers, we constantly participating in hackathons to hone our technical skills, challenge our innovative capabilities and of course, win prices. However, during one such experience, we found ourselves losing to a team who, we later found out, had repasted their ENTIRE project off Github. Other times we have found winners to have code that does not compile, or simply does not perform the function that they market off to everyone.
Quite simply put, we realized that many hackathons fail to ensure that the code upload by participants is validated. Whether it be faulty or plagiarized code, such instances attack the credibility of the Hackathon and its organizers, sponsors and associated parties. Additionally, we want to ensure that participants who are deserving of their capabilities receive the necessary recognition, and hackathons are run the way they are supposed to be run.
What it does
Presenting CodeLock, the all-inclusive tool to ensure that all projects are genuine. Our tool acts as a widget on Devpost, enabling organizers to validate the authenticity of the participant's code. The solution analyses the code submitted in the Github repository of a project. The features provided on the widget are:
1) Plagiarism Checker: This checks how much of the project code has been scrapped off of online platforms like Github. While we do recognize a fair amount of code is invariably copied given the nature of large-scale coding, the plagiarism checker enables the organizers to draw the thin line between referencing and outright plagiarism. It also provides the source of the plagiarized code, enabling the organizers to make their own decision when it comes to the authenticity of the code.
2) Compilation Checks: This ensures that the program submitted by the user is running and compiling successfully. Additionally, sponsors for large-scale hackathons look for projects that make use of their own APIs and tools, Google Cloud, Twillio and Snapchat being some examples. Our program scrapes the Github repository and finds the relevant APIs used, confirming whether the requests are truly being made. This ensures that sponsors are finding projects that make true good use of their own technology.
3) Commit Tracker: A very common strategy for plagiarizers is to have all their code written beforehand, so that they simply copy-paste all their prepared code into a fresh repository to be submitted. Our tracker will track push requests to a repository and compare the difference in the time between pushes to the amount of code added. This will enable organizers to ensure that participants are actively working on their project and are doing so ethically and genuinely.
How we built it
Our current idea has materialized in the form of a Figma Wireframe that provides a clear understanding of how the widget will operate. We began by studying existing designs of administrative dashboards, understanding the key components that make intuitive designs. Looking at the different components we had in mind for our solution, we mapped them out over a desktop screen, and created an entire workflow. Designing a color pallet, font set and other associated interface elements became our next course of action. Finally, we put it all together and designed the wireframe inhouse, using open source icons and our own understanding of UI/UX design.
Challenges we ran into
Given that we are programmers and not solely UI/UX developers, we are more attuned towards functionality as opposed to form. This project pushed us to focus more on the visual elements of our project, as we had to take into deep consideration color pallets, shapes, fonts and other interface elements that we normally would not give this much attention, thought and consideration.
Accomplishments that we're proud of
Given our existing skillset, we were proud of coming with an interface design that we were happy with. We spent countless reiterating, trying different fonts, colors and shapes and seeing what worked and what did not. Over time, we began to truly absorb a deeper understanding of the concept of a design style, where individual elements work together to complement each other.
Additionally, we were proud of conceiving a solution that has real world practicality and implementation. As we moved from identifying a problem we faced in hackathons, to coming up with potential solutions, we enjoyed the journey of ideation and found fulfillment in the process.
What we learned
We gained a deeper understanding of platforms like Figma, which are good skills to have when working in the realm of front-end development. Furthermore, we continued to improve our ability to ideate and problem-solve. Skills like these will be invaluable to use when we leave college and move into the outside world.
What's next for CodeLock
While we conceived this idea with the intent for Hack Devpost, we have become really passionate about this idea. Having realized the real-world potential and value of this solution, we are keen on taking the next steps to build this idea and hopefully revolutionize hackathons all around the world. We firmly believe that hackathons should be a showcase not of outsourcing work, but of skill, creativity and undisputed, veritable merit, and this project is the manifestation of that belief.
Built With
- figma
Log in or sign up for Devpost to join the conversation.