So, what's TWM all about then, eh?

TWM attempts to provide the basis for highly configurable two-way matching websites where users control their match results.

What are TWM's main features?

  1. Matches are two-way. This means matching both what you are ("MyMe" data) to what someone else seeks ("YourYou"), and what you seek ("MyYou") to what someone else is ("YourMe"). Two examples where this might be useful are job and dating websites.
  2. The type of data TWM allows users to enter is highly configurable. TWM administrators create a hierarchy of categories (e.g., "Physical characteristics", items (e.g., "Eye color") and values ("e.g., "Blue", "Brown", "Hazel", etc.), and then TWM users may (always optionally) enter value(s) for these items - for both themselves and for those they seek.
  3. Because users specify how important each (YourYou) item value is to them, users control how their matches are calculated.
  4. TWM has features that support using each website multiple languages.

How could TWM do this?

  1. The hope is that a TWM community will form for each website and some of those people will be administrators.
  2. TWM provides web pages where administrators for a particular website can:
    1. Maintain the hierarchy of categories, items and values (the "metadata") for that website.
    2. Maintain locales (languages), administrator authorizations, item triggers, units (of measure) for numerical items, etc.
    3. Simply and quickly add and maintain additional languages. (Machine-generated translations can be used as a start, but better translations will result if a native speaker tweaks them.)
    See the online administrator help for further information.

Points to consider

  1. TWM is prototype, not a product.
  2. For now, please do not enter any personal data. Please enter only fictitious information.
  3. TWM was developed in the spare time of one person who is working full time doing unrelated things.
  4. TWM was not created by a website developer. But, rather than spend a lot of time learning to be an adequate website designer, TWM's approach is to display some basic functionality that's (hopefully) useful, and eventually engage a real website designer. Some known issues are:
    1. The web browser "back" button behaves differently - depending upon the choice of web browser.
    2. Appearance: layout, color choices, etc. should really be done by someone who knows about this stuff.
  5. Are there bugs? Of course - probably lots of them! There just aren't any known ones at the moment. Help in exterminating them is most welcome.
  6. TWM has not yet made any attempt to comply with any data protection/privacy legislation (e.g., GDPR). But that shouldn't matter at this stage, because only fictitious test information should be entered while TWM is a prototype.
  7. The technologies used for the TWM prototype are:
    • frontend: PHP
    • database: Apache Cassandra (for availability, performance and resilience)
    • backend: Java
    • backend analytics framework: Apache Flink (though this is likely to be replaced)
    • web server: Apache
    • OS: CentOS
    • hosting: AWS
  8. The TWM prototype websites implement some design choices that would - for a production website - be: poor, unwise or exceedingly dangerous. For example:
    1. The Cassandra cluster consists of only 2 nodes (with a RF of 2 and a CL of LOCAL_1).
    2. The frontend servers run both a Cassandra node and a web server.
    3. Flink requires a larger backend server, so it will only be run occasionally - for now.
    4. There is currently no load balancer. (So please choose the frontend server closest to you.)
    These choices were made to save (TWM) money.
  9. There is only one code base for all TWM websites. The nature of each TWM website will be entirely determined by the configuration of the "metadata" (i.e., categories, items, translations, etc.).
  10. Some of the features, ideas, design choices, etc. in the TWM prototype code will likely prove to be to be unfortunate, foolhardy or even downright dangerous. Hopefully, people will point these out in a calm and helpful way. Constructive feedback on the TWM code - including criticism - is, of course, welcome.
  11. It seems inescapably inevitable that robust differences of opinion will emerge about the configuration of particular TWM websites. TWM will assiduously avoid taking part in heated discussions about what configuration is appropriate.

YouTube Videos:

Check out some amateurish YouTube videos that show some TWM features. (Note: the TWM website can be used with a small screen, but the YouTube videos are best viewed on a larger screen.)

But, if you're OK with all of that:

The entire TWM prototype is currently running on 3 AWS instances. There is one frontend instance (a Cassandra node and a web server) in Sydney and another one in Ohio. There also a backend node.

There are currently two TWM prototype websites. The uptime of these systems will be linked to interest. If nobody is using then they'll be down. Contact tee.dubya.em@gmail.com they'll be started.

  1. Dating website:
  2. Jobs website:
Please use the server closest to you.