Part of it might be that the fun of it for them is creating it. Additionally it might just be a fun way to learn a certain technology.
A small part of me is interested in making an nes game, and the first step for me to learn that code would be to work on a fan project and improve existing code.