Fundamentals of Computing and Programming