designing ... implementing ... compiling ...