What we're looking for
The code should be organized and easy to follow. You should try following style guides for your programming language - for example Pep8 for Python.
Is the code original?You've seen this one many times. What does it actually mean? It means we do not want you copy-pasting entire sections of code from the internet. We can easily figure out when you do this. However, it is OK to copy-paste a line or two if you really cannot figure the problem. Please make sure you read the documentation before searching Google for answers :) If you end up copying some lines, please give credit to that person. Credit can be shown by adding a comment block with the link of where you got the code from, followed by the copied code itself.
Are there sufficient comments in the code to explain what's going on?We're not asking for every line of your code to be commented. We want to know if you understand what your code is actually doing. Include comments for how major components work. A piece of code that isn't easily understandable deserves a comment too.
Is your solution well documented?After the hackathon, you may want other contributors to add features to your code. For that, they need to know what the code is for, how to run it and the main idea behind it. In your GitHub repository, include a README.md file. This document is specifically for the reasons mentioned above. An awesome example of a README can be found here. In general, every time you write code, it's a good idea to include a README.
Is it new and innovative?It's okay if your code doesn't address all aspects of a problem. However, we would like a well-thought out solution that we cannot find anywhere else. If your problem is already addressed to some scale, your solution must either add a significant feature to that work or propose a better idea to solve the problem.
Do you have unnecessary dependencies?If you ever become a software engineer, you'll know that performance is important for production grade code. If you can make do without an API or a dependency, then don't use it. While dependencies make it easier to code, they also degrade performance.
If you are using an API, show us you understand how the API works.An API is an interface you use to obtain access to services that are too big to code yourself. A common example is using machine learning API's such as text-to-speech and OpenAI's GPT API. However, integrating these API's into your project shouldn't be your main focus. They are to be used to enhance your solution, not to become your solution. If you do use an API, please do a little digging to understand the underlying principles inside the API. For example, in the case of text-to-speech, gain an elementary understanding of how text-to-speech models actually work. Please include your understanding in your README file.
We don't mind if your end product isn't the most visually appealing. That can be fixed later. Have fun and enjoy the code you write :)