A hackathon, also known as a codefest, is a social coding event that brings computer programmers and other interested people together to improve upon or build a new software program.
The word hackathon is a portmanteau of the words hacker, which means clever programmer, and marathon, an event marked by endurance.
The concept of the hackathon, also called a hack day or hack fest, was born out of the open source community. The first event labeled a hackathon was the OpenBSD Hackathon in Calgary, Canada, on June 4, 1999.
Today, engineering departments, especially those at web-based companies, adopt the practice as a way of introducing intrapreneurship into the enterprise. Hackathons are sometimes undertaken to achieve a specific goal, but often they are a chance for businesses to pursue employee-driven, out-of-the-box ideas in a low-risk environment. Employees are given the freedom and support to collaborate with colleagues in other departments within a given timeframe and without the pressure of having to produce a viable product.
Types of hackathons
Hackathons vary in objectives and themes. Hackathons organized as a platform for creating applications such as mobile apps, operating system variations, web and video game upgrading are branded as niche hackathons. Altruistic hackathons are those where participants work to find solutions for problems such as public transport systems, education and disaster response.
Corporate hackathons organized by companies like Amazon, Google, and Microsoft are developed to encourage employees to participate in new product development. Language or programming hackathons are dedicated to creating specific programming language or framework applications such as C++ or .NET.
Some hackathons are only open to a specific demographic group such as students or women, while others are offered to developers with specific proficiency levels and experience.
Organizing a hackathon
The first step when organizing a hackathon is to determine the goals of the hackathon. Having a clear set of rules for the hackathon is another crucial step. The participants should be aware of the mission, the time allotted and the sources they can refer to when creating their products.
It is also important that organizers create a positive, collaborative ambiance at the hackathon venue. The gatherings should encourage informal brainstorming ideas for new products, services and projects.
At the end of a hackathon, a panel of judges usually hands out prizes to the winning team or projects.
Pros and cons of hackathons
Hackathons bring people with technical backgrounds together to form teams to solve a problem or develop new ideas.
Hackathons can help participants hone their IT skills, meet people and work with others in their field. Corporate hackathons encourage employees to innovate, foster team building and provide opportunities to cross-collaborate across departments.
Hackathons can potentially create more stress for employees. The ideas typically generated through a hackathon can prove complicated as well, because there is often no formal way to sift through or evaluate the ideas. Hackathons also involve time, cost and other resources to produce, with no guaranteed return on investment.
Famous products and apps born at hackathons
Hackathons have proven to be an excellent medium to generate ideas for new tech products and services.
For example, many of Facebook's popular features were developed during hackathon projects. The social media company's like button, Facebook Chat, video and even Timeline were all conceived at hackathons.
Another noteworthy example of a hackathon success is GroupMe, a group messaging app first conceived at the TechCrunch Disrupt 2010 hackathon. Shortly after its development, GroupMe was acquired by Skype for more than $40 million.