Programming random small toy stuff that catches your interest is fun, as is making something you really believe is useful.
But when you design a project I a way that's not appropriate for your resources, and it becomes an overwhelming pile of bugs, because you tried to do something really complex and reinvent 20 different wheels, it's less fun, unless you can polish it up to be like what you imagined, but that could take years depending on how crazy your idea was.