A hackathon is an event in which computer programmers and others like graphic designers, interface designers, collaborate intensively on software projects.

Hackathons typically last between a day and a week. Some hackathons are intended simply for educational or social purposes, although in many cases the goal is to create usable software.

Hackathons tend to have a specific focus, which can include the programming language used, the operating system, an application, an API, or the subject and the demographic group of the programmers.