O'Reilly logo
  • You Wang thinks this is interesting:

We start the development of the algorithm by clearly specifying the input data (i.e., the information we start with) and the output data (i.e., the information we desire to obtain)

From

Cover of Introduction to Computing Using Python: An Application Development Focus

Note

step 1: specify the input and output

this gives clue on how the function should be designed internally