EXTERNAL RESOURCES

We'll use a range of online resources during this course. These include:

  • Discussion Form: A class discussion forum has been created at Piazza. We'll use this to discuss assignments, ask and answer questions, and post announcements. But don't just read and post questions! Please help answer your peers' questions, and I will attempt to provide help via the same forum so that we can all learn from each other. Our forum is available via the following link: https://piazza.com/unc/fall2015/inls690/home
  • D3 Visualization Library: The D3 javascript library's website is http://d3js.org/
  • D3 Examples: The author of D3, Mike Bostock, has a huge collection of examples that are a valuable learning resource. Visit his example collection at http://bl.ocks.org/mbostock
  • D3 Tips and Tricks: There are many online tutorials, examples, and discussion forums dedicated to D3. However, if you prefer an e-book format resource, try out D3 Tips and Tricks by Malcolm Maclean, available online for free (though donations are accepted by the author).
  • Simple Statistics Library: The Simple Statistics javascript library includes some easy-to-use functions to calculate descriptive statistics, as well as perform basic regression or classification. Read more at http://simplestatistics.org/

For students comfortable developing web applications with rich server-side functionality, a variety of more sophisticated software packages are available. Perhaps most valuable are the Python packages NumPy, SciPy, and scikit-learn.

A somewhat eclectic, collection of visual analytics material can be found on the Visual Analytics Digital Library hosted by Georgia Tech. Note that some of this site is not actively maintained, so while much of the content is informative it is also a little out of date. This is especially true in terms of specific technologies and software packages.

 

DEVELOPMENT ENVIRONMENT

Some of your assignments and your semester project will be take the form of interactive web sites. As part of turning in your assignments, you will need to post your work to the web at a URL that is accessible by the instructor. You can use any web server to which you have access to post your work.

However, I suggest using UNC's services provided by ITS. They are maintained by staff who can help answer questions and fix problems. In particular, you can use your onyen to access the University's isis.unc.edu server. However, you must first subscribe (for free!) to this service via the onyen website as follows:


Once your account is activated, you'll be ready to create your own web pages. They'll be visible to the world at http://www.unc.edu/~ (where is your UNC onyen login). Documentation describing how to access and edit your files are described on this help page from ITS.

Many assignments will require (at a minimum) some HTML and JavaScript coding. You are free to be more ambitious when appropriate, pulling in additional technologies where you think it will help.

For HTML and JavaScript, source code can be written in any text editor you choose (Notepad, vi, emacs, etc.). However, there are specialized software programs available for free that provide more advanced capabilities like syntax highlighting, validation, and more.

I personally use a full-fledged IDE for most of my work: either Eclipse or PyCharm because I used other programming languages at the same time. The makers of PyCharm make a version of their software just for JavaScript called WebStorm. Though I've never used WebStorm, I'm sure it is quite powerful given my experience with PyCharm.

A simple text editor with syntax highlighting is another alternative. I often use the free vim editor, but it has a steep learning curve. Another option is the free and more modern Atom, a powerful text editor developed by the folks at GitHub. More options (some free, some not) can be found in this article.

All assignments will be graded based on how they work in Google's Chrome Web Browser (available free on all major operating systems). You should use this browser for all of your work related to this class. Chrome includes a powerful set of Developer Tools, including a console and debugger, which will be incredibly valuable. Other browsers have similar tools, but only Google Chrome's Developer Tools will be supported in this class. Using any other browser and tool suite is fine, but beware that grading and help will be limited to Google Chrome.

Have questions? Ask me!