Learning to code by referring to existing projects