3 ms·
The Coffee part of this article resonates with me. I have a stovetop espresso machine, and I'm constantly amazed at the new and ingenuous ways I come up with t
by jasonkester 7y ago
The Coffee part of this article resonates with me.
I have a stovetop espresso machine, and I'm constantly amazed at the new and ingenuous ways I come up with to mess it up. Making coffee before you've had your morning coffee is the great connundrum of our generation. Here's a short list of failure modes I've run up against:
- Machine on stove, no water
- Machine on stove, no coffee grounds
- Machine on stove, completely empty
- Coffee and water in machine, machine in refrigerator
- Coffee grounds in water reservoir
- Coffee grounds in brewed coffee reservoir
- Brewing correctly, brewed coffee reservoir still filled with water from washing
- Brewing correctly, head off to work
- Brewing correctly, coffee grounds returned to microwave
That's just a subset, and amazingly I still come up with a new one every few weeks.
- jdkee 7y agoSet theory is your friend. :)
- jmiskovic 7y agoThe coffee part also resonated stongly with me, for a completely different reason :) I spent last year thinking on how to implement a text-only simulation that could cope with just about any situation. Most of my models were mentally evaluated on this "simple" task of making coffee. The design I came up with (still to be implemented) is not code driven, but data driven. Instead of executing bunch of nested if-elses, I'd have a big list of tuples that contain <action, preconditions, reaction>. When action is performed upon object, this list is traversed. For each element, it's preconditions are compared to current world state. Based on this criteria the most suitable element is selected, and it's reaction is applied to modify world's state. Your list could be used as preconditions for action of brewing coffee; each would produce different results ranging from nice coffee to yucky mud or broken machine. I'd like to include a nice built-in editor that could be utilized to quickly modify or add reactions, objects, or world state variables. I have most of it figured out but it's a lot of work to put together all the pieces.
- Doxin 7y agoSounds like it could make for a fun variation on the text adventure, where having stuff go wrong is at least as amusing as actually solving puzzles.