2015」の13日目のものです。今回はUIST20015からWeb系の論文でいいのがあったので紹介します。Detection」です。この論文は、UnravelというWebページのリバースエンジニアリングを支援するツールについての論文です。Chromeのデベロッパーツールにタブを追加し、そこに変更回数や呼び出し回数でソートして情報を表示します。これにより、Webページ上での動きが、どのようなJSとDOMの変化によって実現されているのかを簡単に調べることができます。動画はこちらになります。このツールは任意のサイトに適応可能で、巨大なサイトでも遅くならないと述べられています。実装方法documentへの書き込みを全てフックして情報を保存してるらしいです。そのため、他の研究に比べて取れる情報が限定的になりますが、任意のサイトに適応可能になっているとのことです。後述するようにソースが公開されているので、詳しく知りたい方はコードを読むのがいいと思います。実験このツールのありなしで、TumblerやApple等のサイトのアニメーションを再現するタスクを行い、途中のチェックポイントごとに比較をしたそうです。結果として、システムアリの方が関連するソースの最初に見つけるまでの時間が50%短縮され、全体としても30%短縮されたそうです。ソースコードが理解しやすくなっているわけではなさそうです。上級者と初級者で特に差は無かったそうです。残念なことに、論文ではこのツールのありなしでしか比較しておらず、先行研究との比較がされていませんでした。一つの巨大なサイトでも遅くならないという速度に関しては比較できそうなので、そっちは既存のやつとの差を調べてほしかったと思いました。その他このツールは公開されているので普通に使う事が出来ます。https://github.com/NUDelta/Unravelただし、minifyされているとJSのコール情報部分がとてもわかりにくいので、事前にunminifyしておく必要があります。もの凄く便利そうでした。自動minifyとかが出来ると、普通に実用的なツールになると思います。ota42yC++/Ruby/RoR/golang/rust/flutter。