Two Sum, solving a programming challenge
Solving programming challenges is something I'm passionate about: on one hand, it requires understanding the basics of programming, having a deep knowledge of how computers work, knowing about complexity orders and the "Big O" notation, and on the other hand, having some ingenuity and creativity.