Imagine for a minute, you’re doing laundry. Everything is dry, in a basket and ready to put away. Where do you start? In my case, following the Pareto Principle, I dump the basket on the bed and head for the towels first. Once the towels are finished, I typically start with pants, then shirts, finally folding up small things such as socks, underwear, or other accessories.
It sounds like I have a pretty good workflow right? Now, let me ask you. What happens if an alien lands in my backyard and asks me how to do laundry? Because we are talking aliens here, we will operate with the assumption that the being in question is not telepathic, and is visually different from us in the fact that they have no arms, feet, or legs.
How do you explain to pick up the towel first? Where do you pick the towel up? What is a towel even? And here in lies the problem with automation. Before connecting any systems, or writing a line of code, you must be able to logically express how to fold the laundry, or link up sheets, name walls, or any of the other things your problem statement is searching to solve.
Our laundry problem is a tangible issue, and one that STEM professionals are only now solving. A simple task like folding laundry seems simple, but when you get down to it, writing those rules is a complicated challenge. First everyone does their laundry differently, are the clothes on a drying rack, or coming out all jumbled up out of a dryer? I would logically express this as an if -> then bit of logic. If the laundry comes out of the dryer, then put it on the bed. If not, begin folding.
Next, where do you start? Simply saying “grab the corner of the towel” is not specific. Sure, you and I can spatially visualize the towels in the crazy pile. Our alien buddy however is not so fortunate. Having never visited a beach or taken a shower, we need to be much more specific: “Find the rectangular cloth” and pick it up at 2 adjacent corners would be a much better logical way to write this out.
And therein lies your answer. If you are stuck after writing your problem statement, simply write it out. Your statement has determined your end goal, you know where you are now, what are the logical steps you need to take to get there?
If you want to learn more about translating your problem statements into logic, join our next weekly software workshop where we will work hands on with your problem to help you create logic from problems!