Background
Originally funded by a grant from the Bill and Melinda Gates Foundation to Emory University's Rollins School of Public Health, the project's goals are to offer free tools for health professionals everywhere:
Needless to say, this is a great project that benefits the epidemiology and medical community around the world. I am happy to get to contribute to it.
OpenEpi provides statistics for counts and measurements in descriptive and analytic studies, stratified analysis with exact confidence limits, matched pair and person-time analysis, sample size and power calculations, random numbers, sensitivity, specificity and other evaluation statistics, R x C tables, chi-square for dose-response, and links to other useful sites.
OpenEpi is free and open source software for epidemiologic statistics. It can be run from a web server or downloaded and run without a web connection. A server is not required. The programs are written in JavaScript and HTML, and should be compatible with recent Linux, Mac, and PC browsers, regardless of operating system. (If you are seeing this, your browser settings are allowing JavaScript.) A new tabbed interface avoids popup windows except for help files.
As mentioned above, the software is implemented in JavaScript and HTML and is thus extremely cross-platform. Sometimes it is hard to debug these kinds of applications, however. Since offering to help Andy and his team, I've tracked down and eliminated two defects related to dynamic content generation. It took me under and hour combined to remove those defects and relay the solution back to Andy. There are a number of tips and tricks for becoming proficient in JavaScript debugging I'll now share.
Tips for Tracking Down Defects in JavaScript & Browser Based Applications
Internet Explorer: FireBug Lite and IE Developer Tools
I will cover FireBug in just a moment for Firefox, but be aware there is a "Firebug Lite" available for IE too. Find out about it here: https://getfirebug.com/firebuglite
Since the IE Developer Tools are built in, let's cover those here.
How to Find
What You Get
- HTML Element DOM Inspection
- CSS in-line editing
- Console window (Like an immediate window in an IDE)
- JavaScript debugger with interactive breakpoints, and
- Watch
- Locals
- Callstack
- Profiler
- Network Request capture and playback
Screen Shot
Internet Explorer Developer Tools debugging OpenEpi.com Std.Mort.Ratio module |
FireFox: FireBug and the Web Developer Toolbar
How to Install
You should watch a "pyroentomologist" give this introduction too:
Screen Shot
Using FireBug to inspect the table cell properties of an EStratum table in OpenEpi.com |
You should also install and become familiar with the Web Developer Toolbar: https://addons.mozilla.org/en-US/firefox/addon/web-developer/
This allows you to do things like show ALL of the CSS or ALL of the JavaScript aggregated into a single output page. It can highlight box models or tables, block-level elements, etc. Many of these features exist in Firebug now, but the Web Developer Toolbar is still very helpful. See http://chrispederick.com/work/web-developer/features/ for more info too.
Google Chrome: Developer Tools or Firebug Lite
How to Find
What you Get
Screen Shot
Chrome's developer tools with box model metrics |
More Information
This covered the basic tools, but there is some more information here: http://javascript.open-libraries.com/development/debugging/9-great-javascript-debugging-tools
No comments:
Post a Comment