As a scientific conference system, Ponzu requires multi-device support and internationalization (translation). Commonly, websites use different URLs for each of the devices they support, and also for different languages.
For example, a desktop page in Japanese might have the following URL,
whereas the mobile version in English might have the following;
However, this scheme means that we have different URLs for the same content. Since Ponzu will support at least 3 devices and 2 languages, in total, we have 6 URLs for the same presentation. This becomes a problem when we use social sharing.
If for example, a user browses a conference system on his desktop machine and shares a link to a presentation on Twitter, that link will be a desktop URL. If another user does the same on his iPhone, then the like will be a smartphone URL. There will be two different URLs.
Now suppose we decide to put a “share” button on each presentation. The speech balloon on the button refers to the number of times the link has been shared on Twitter. If we have different URLs for each device/language combination, the count will only be for the current device/language combination of the user. It will not combine all the URLs. Hence, if we want the “share button” to reflect the real count, we have to use a single URL with device/language information residing in a cookie.
A cookie approach will be sufficient for regular websites. However, with Ponzu, we use a hash-based URL structure so that we can use the site offline. On the other hand, we use regular URLs for iMode feature phones and unsupported browsers. As far as I can think of, there is no way to unify regular URLs with hash-based URLs. We will have to have at least two URLs; a hash-based one and a regular one. Still, 2 is much better than 6.