What to make

Topics/Tools to look at

The best things to look at depend on your skill level. No point trying to do something either really below your skill level or something way beyond it.

You'll get the best experience with a Hackathon if you try and learn something new!

Beginner

If you are just learning programming for the first time, making a simple website is a great thing to try. If there is a challenge that interest you or a themed challenge, do go in and give it a try. 😊 Some hackathons do have challenges dedicated for first-time hackers or newcomers as well.

Otherwise, there are tools like Processing and it's Javascript counterpart p5.js which are great for making visual projects.

Python has many good libraries available if you are trying to process some data from a website. Data sources will tend to provide JSON data which Python can handle very well! Otherwise Javascript with Node is also very suitable for this task.

Mashing up two APIs creatively is one of the best projects you can do. For example, displaying crime data from data.police.uk over a map.

Getting started with hardware you may want to look at using arduino and use sensors alongside this to read inputs such as movement from an accelerometer or light levels with an LDR. Arduinos can also drive outputs such as LEDs or relays.

MLH provides starter packs for both Python and NodeJS.

Intermediate

Machine Learning projects are common for a good reason! Building your own from scratch using tools like scikit-learn or TensorFlow is a lot of fun, but there's also a ton of pre-built models that are worth a look, as well as Google Cloud Platform's Cloud AI that has all sorts of fantastic tools.

Mobile development is popular, with many good tool options available. You can either use the Standard Android Studio or XCode if you plan on using Java/Kotlin/Swift or try something like React-Native if you prefer JavaScript, or Flutter if you want to try something new!

Making a game is always a good project, especially if you are in a team as it makes it simple to split up the work and even better if you have a non-technical team member as they can help make assets.

Common environments used include:

  • Godot - A free and open source game engine.
  • Unity - Free for non commerical use and very popular with indie developers and industry.
  • Unreal Engine - Very big in industry and free for small studios.
  • Game Maker - Common with Indie developers but does cost money.

Raspberry pi's are very useful for more complex hardware projects, raspberry pi's have much more processing power than arduinos/microprocessors. Try using a camera with opencv or some TensorFlow CNNs. For inputs and output control try using the wiringPi library.

Advanced

You probably already have some idea of what you are interested in doing, but looking at things you aren't familiar with is probably the best use of a Hackathon for you!