--- tags: mstu5003, lab, computational thinking --- --- # Dating Application: How does LOVE work? Different applications have taken this simple premise and expressed it in very different ways. For example, think of different dating applications e.g. Match.com, Tinder.com, Bumble.com, OKCupid.com etc. Each has broken down their hypothesis of how love works (or ought to work) and expressed the phenomenon of FINDING love based on their hypotheses. You might even have your own competing twist on how you think love or finding love should work. ## SUB-Challenge Everyone deserves to be loved. Pick a more specific population and their needs. E.g. elderly folk, introverts, lonely professors, etc. Using this specific population - think computationally on how love would work. ### Decomposition: Break down problems and phenomena into smaller multi-step parts. Getting geographic data and matching them based on that data Dating app for expats in the US: - Location (radius) - Background (nationality and why you're here) Profile creation Filtering Matching Chatting ### Pattern Recognition: Analyze similar objects, phenomenon, and identify commonalities. 1) Creating user profile (2 data points) 2) filters (location/background) > filtering candidates 3) Swiping (right = yes, left = no) 4) Both swipe right > match > chat ### Abstraction: Focus on relevant and important info / features. Separate core info from superfluous details. Abstracted the user as 2 data points (matching 2 customizable data points) ### Algorithms: Design sequential rules, ordered actions to solve the problem. Think about how each action results in a specific effect. (What the system does step by step) (User applying filter) - If the distance between locationA (x,y) and location B is < x: - check if background ["nationality"] matches - if match = display - else = don't display (User swiping) - If swipe right: - like - else = ignore - If both like: - chat enabled - else = no chat