Assignment 1

INLS 641 is a project-oriented course. All students are expected to complete programming assignments (both homework and a semester project) during which web-based visualization software will be developed. This is reflected in the prerequisite for this course that enrolled students be competent programmers. At a minimum, you'll need to develop software using both HTML and Javascript. You'll need to both (a) post your assignment solutions to the web, and (b) submit them via Sakai.

Your first assignment, therefore, is to set up your own personal development and web hosting environment. This will ensure that you are ready to go when the programming work is assigned later in the semester.

What You Need to Do

Step 1

Set up your website account to host your projects for this semester. While you can use any RELIABLE web server that you wish to use, I recommend that you use the services provide by UNC SILS IT as described in the the "Development Environment" page on the class website. This server is the officially supported option for this course. Any other option you choose is at your own risk. SILS students should have an account already. For non-SILS students, we try to have accounts created automatically for people who are officially registered. However, it is a a somewhat manual process and things can go wrong. Be sure to confirm you account on the web server early so that SILS IT has time to troubleshoot if you discover a problem.

Step 2
The next step is to create a folder in your web server account for your assignment submissions. You can call the new folder whatever you wish, but be aware that the folder will be part of the URL you use to access your projects. For those of you using opal, you should find that a directory has been created in your account called public_html. Change into that directory using the cd command. Inside that directly, create a new folder to hold all of your future assignment solutions for the semester. Use the mkdir command to create the new folder.
Step 3

Download this file to your computer and save it as index.html. Then transfer the file to the new assignment submission folder that you just created in Step 2. Please see the instructions on this page if you need help with transferring the file from your computer to opal. Check that you can see the file as a web page by visiting http://opal.ils.unc.edu/~<your_onyen>/<your_submission_folder_name>/index.html.

Step 4

If you don't already have Google's Chrome web browser installed on your computer, install it now. It is available for free from Google. Once it is installed, use the Chrome browser to revisit http://www.unc.edu/~<your_onyen>/<your_submission_folder_name>/index.html. Once there, open the Developer Tools and click the "Console" tab within the tools section of the browser window. Do you see any errors?

Step 5

Use a text editor to fix all of the JavaScript errors contained in the file. Yes, there are multiple errors! Use the Developer Tools to find and fix them, one at a time. You can either (1) fix it directly on opal.ils.unc.edu using an editor available on that server, or (2) fix the error using a text editor (e.g., see the "Coding Environment" section on the course website) on your personal computer and re-transfer the corrected index.html file over to the server.

Step 6
Make sure your code is working as expected. The console in Chrome's Developer Tools should not show any errors. In addition, your fixed index.html should look like the following in your browser (without the black border):
Congratulations!

Don't forget to submit your solution! See below for instructions.

Meanwhile, you now have all you need to develop the software required for your course assignments. I suggest you take a look at Chrome's Debugging JavaScript documentation to familiarize yourself with all of the powerful tools that come built in to the browser. Whatever time you spend now learning about the tools will more than pay for itself over the course of the semester.

Resources

Need help? Use our Piazza discussion forum to ask your questions. This way others in the class can benefit from the answers. You may also find that one of your classmates may have already asked your question and that the answer is just a click away. If you don't get a speedy response, feel free to send me an email to say "Please look on Piazza and answer my question!" I'll do my best to respond within 24 hours. However, don't wait until the last day before the assignment is due! You may not get an answer in time! You can, of course, also stop by my office hours.

The original (complete with JavaScript errors) index.html file for this assignment is available here: index.html.

Please Note: The specific steps required to save this file to your computer depend on which web browser you are using. For example, in Chrome you would right click on the link and select "Save Link As..."

Submitting Your Solution

Please post your assignment to your web server as instructed above. It should be accessible via a web browser using a standard URL without passwords. For example, http://opal.ils.unc.edu/~<your_onyen>/<your_submission_folder_name>/index.html if you used opal as your web server.

In addition, you should submit your solution (the corrected index.html file) to the corresponding assignment in Sakai. You will need to submit both (a) the URL of your online assignment solution, and (b) a copy of the revised index.html that has had the error corrected.

The due date for this assignment can be found on the course schedule.

Please Note: The HTML file you submit through Sakai should match the version on the web server EXACTLY. No modification should be made to the online version after your make your final submission of the assignment. If there are any differences, only the version submitted through Sakai will be considered for grading purposes.

Grading

As with all programming assignments in this course, your grade for this assignment will be determined using a scale of 0 to 10, with 10 the best possible score. Please note, however, that not all assignments are weighted equally when determining your final grade for the semester.



The content on this page has been developed by David Gotz at the University of North Carolina at Chapel Hill. Copyright © 2015, 2016. All Rights Reserved.