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. This is the first time I've tried Piazza, but it has been used in dozens of other courses at UNC. I hope that it will prove useful to all of us. 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/fall2014/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://www.macwright.org/simple-statistics/

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 Eclipse as my editor. I also sometimes use vim (though it has a steep learning curve). A list of powerful alternatives (some free, some not) can be found in this article. For example, a simple-to-use yet surprisingly powerful editor on that list is Sublime Text, a widely used editor that has some very nice features. To quote the website, "Sublime Text 2 may be downloaded and evaluated for free, however a license must be purchased for continued use. There is currently no enforced time limit for the evaluation." Sublime Text is a great option if you don't need a full IDE like Eclipse. I've used it myself and have been very happy.

All assignments will be graded based on how they work in the 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!