Hi all! I tried to brought up the issue of unsustainability of maintaining a repository-based User-Agent parser/analyzer subject in the mailing list before[1], but got no response at all. At bol.com, we tried to do this maintenance for DeviceMap and it inevitably failed. The reason is simple: no development work-force can keep up with the speed of new User-Agent agents introduced into the mobile device market.
Niels Basjes <https://github.com/nielsbasjes> (a bol.com architect) had independently started developing a rule-based User-Agent analyzer around 2015: YAUAA (Yet Another User-Agent Analyzer) <https://github.com/nielsbasjes/yauaa/>. Due to the semantic parsing of the User-Agent string rather than blindly trying to match it against a repository of User-Agents as in DeviceMap, YAUAA performs slightly slower than DeviceMap. But given the fact that it is still at a couple of milliseconds margin, we saw no need for increasing the code complexity for diminishing returns. According to our observations, YAUAA is superior in terms of accuracy compared to DeviceMap, thanks to the semantic parser. Since DeviceMap is going to be moved to attic and there is still an ongoing demand in the F/OSS market towards User-Agent analyzers, my two cents for the next generations is to give YAUAA a look. Cheers! [1] http://mail-archives.apache.org/mod_mbox/devicemap-dev/201505.mbox/browser
