Software developers get together and work to quickly develop a new software product and to identify new areas for innovation.
Nowadays companies and universities all over the world organize hackathons about a wide range of topics but usually with three main goals :
Recruiting of top talent
Build/develop new apps/products
Solve a business problem
A similar event where data scientists/developers work in teams on a data analysis and visualization challenge