Classic Computer Science Puzzles

I firmly believe there is four fields of programming.

  1. Data capturing, processing it and then output. 80% goes to validating user input, 5% to processing and 15% to output. You can always re-process valid data and the output, but never bad input.
  2. Solving “math” or puzzles. (You can get to 1000 by 1+1+1… or the better way) The “better way” is the solution. But 1+1+1 still gets you there.
  3. Better ways to do output. Better graphics/graphs, more flexible reports, etc.
  4. Guessing user intentions. When a user search for “world cup” does he really means “Soccer World Cup” etc. [ 1) would ensure valid input, 2) would resolve the fastest search method and 3) the output quality] But listing the output “alpha numeric” would be wrong, as 45% of the users were looking for the “Soccer world Cup” and not the “Athletic World” cup.

1…3) Is pure program logic but 4) is linked to listening to your customers and learning their needs. You can be a master at 1…3 but if you failed at 4) you are doomed.

PS. I still hunt and peck on the keyboard and I write programs with a user interface that is not in my mother language. But I did not loose any clients in 4 years, because I listen to them. Saving 0.001 milliseconds in processing time, does NOT make you a better programmer!

THERE IS NO PUZZLE TO LEARN YOU HOW TO LISTEN TO YOUR CUSTOMER!