notes-computer-programming-development