@conference {300606,
	title = {Rivet: Browser-agnostic Remote Debugging for Web Applications},
	booktitle = {USENIX ATC},
	year = {2012},
	address = {Boston, MA},
	abstract = {Rivet is the first fully-featured, browser-agnostic remote debugger for web applications. Using Rivet, developers can inspect and modify the state of live web\&nbsp;pages that are running inside unmodified end-user web\&nbsp;browsers. This allows developers to explore real application bugs in the context of the actual machines on which\&nbsp;those bugs occur. To make an application Rivet-aware,\&nbsp;developers simply add the Rivet JavaScript library to the\&nbsp;client-side portion of the application. Later, when a user\&nbsp;detects a problem with the application, the user informs\&nbsp;Rivet; in turn, Rivet pauses the application and notifies\&nbsp;a remote debug server that a debuggable session is available. The server can launch an interactive debugger front-end for a human developer, or use Rivet{\textquoteright}s live patching\&nbsp;mechanism to automatically install a fix on the client or\&nbsp;run diagnostics for offline analysis. Experiments show\&nbsp;that Rivet imposes negligible overhead during normal application operation. At debug time, Rivet{\textquoteright}s network footprint is small, and Rivet is computationally fast enough to\&nbsp;support non-trivial diagnostics and live patches.},
	url = {http://scholar.harvard.edu/files/mickens/files/rivet.pdf},
	author = {James Mickens}
}
