5/1/2020 15:22

Breakfast Minotaur

Yesterday morning the weather was still dark, wet, windy, and cold. My mood was down. I pulled out the sugar coated corn flakes for a cold breakfast. After pouring a full bowl, I looked at the back of the cereal box. A maze was printed there for the diversion of young minds. It reminded me of work.

When I was still an employee my employer would assign programming projects. The goals of the project were seldom stated explicitly but there were always unspoken expectations and assumptions which applied. Somehow the projects always seemed to look something like this:


The officially unstated goal of such a project is clear enough. You are supposed to trace a path from nabla to delta which does not intersect any of the blue lines. (What would happen if your pencil should touch the pre-defined background pattern? My best guess is that the company's standards police would come looking for you. I've heard of such things but never saw it myself.)

Most people I've worked with were well trained in high school to accept such a puzzle without much question. That's the assigned task so take up your pencil, put down your head, and trace out a path.

My colleagues, faced with such a project, would be quite pleased with their own efforts if the result they found looked like this:


Obviously that is not the best and most efficient solution to the problem as posed. I immodestly pride myself on finding the real solution. In this example, the simplest path from nabla to delta without intersecting any predefined barriers is this:


What is the best flight plan from Green Bay to Escanaba if you are flying your own plane? It is to fly from GRB to ESC. You can fly from Green Bay to Chicago and then to Beaver Island and then to Escanaba, but why would you? If the goal of the puzzle is to get from nabla to delta, if that is the correct statement of the project, then the correct answer is the one shown.

In a fair attempt at humility, I will admit that in some cases I've returned to an old project and discovered that my solution was not as elegant as I had thought. Keeping with the same maze analogy, I might have found a solution such as this:


But there is yet another consideration here. I've hinted at it in the preceeding. In the case of the cereal box, is the goal to get from nabla to delta? In actual reality the goal of the cereal box puzzle to exercise young minds, to challenge their perceptual abilities and encourage exploration of possible solutions. In actual reality nobody cares about the path from nabla to delta.

Something similar is true for the programming projects of the employer organizations. In most cases the real goal was not to get from nabla to delta but to get to epsilon or even kappa. You can start from any place you can find that will let you get there. Why, then, is the problem posed the way it is? I'm sure I don't know.