Computer Science 150 Online: Summer 2017 Syllabus

Syllabus Index
Objectives Exams
Texts and Software Work Load
Sakai Usage Homework
Adobe Connect Academic Dishonesty
Piazza Programming Environment
Class Attendance and Activities Course Outline
Semester Grades Questions
Journal

Objectives

Computers are everywhere today. The amount of information that can be creatively used is exploding. The ideas in this course should be useful both to modern citizens of the world with main interests in other areas and also to people who are going on to further Computer Science study.

Microsoft Office programs like Word and Excel are NOT covered in this course. Information Services has free Short Courses on such applications.

Texts and Software

All required material is free on the web in written form, which can be printed, and most of the material is also covered as videos that you can download from Google or luc.box.com (Loyola's cloud storage). The cover page for the Hands-on Python Tutorial lists various resources:

Videos for most all of the course content are discussed, with a download link and instructions in http://anh.cs.luc.edu/python/hands-on/3.1/handsonHtml/context.html#using-the-tutorial-text-and-video.

Students have different learning styles. Some absorb thing well by reading and doing. They can mostly just look at the written tutorial, and ignore the videos except in a few places where I mention that the videos include major things missing in the text, and where the videos are demonstrating something naturally visual.

Other students really like to hear and see at the same time as with a more traditional presence of a professor introducing material. For this class the professor's traditional presentations are provided by lots of videos. You can replay bits of videos as many times as you need to, and you can stop the video and think when I pose a question (and likely give the answer shortly after that in the video).

I repeat: In any case for Python you need to download and unzip my Python tutorial example zip file.

If you would like alternate explanations, some of the many Python resources are listed and briefly described on the course home page and many more are at the home site for Python: http://python.org.

Further materials, not centered on Python, are in the course notes at http://anh.cs.luc.edu/150/notes/notes.html, with main parts on video, at the Google and Box URLs, above.

Other references will be linked directly into the course schedule http://anh.cs.luc.edu/150/hw. Look to the schedule for what is happening next and what is due next.

Professor: Dr Andrew Harrington

university ID for email: aharrin

Email, or preferably communications through Piazza (see below) are always appreciated, and with our online software, we can set up separate synchronous times to work individually.

Office Hours

Initially I will plan to be online, with the classroom open, not only during the regular classes, but also

Monday, Wednesday, Thursday: 10:15-10:45AM

if I get an email by 8:00 AM the same morning, saying that you want to meet in that office hour period.

If that is not a good time to complete our discussion, we can hopefully connect long enough to agree on a different time.

Note that the days do not match class days completely: Wednesday rather than Tuesday.

These initial times may well get modified.

Sakai Usage

Private information between professor and individual students will be handled through the University Sakai system. It will mostly be used for grades, homework submissions, and grader comments. The public course materials will all be posted directly on the web under http://anh.cs.luc.edu/150.

Online environments

For programming we will be using Python, but both the python installations and the operating systems keep changing. Be sure to read extra Windows notes or extra Mac notes. These supersede the system instructions in the tutorial.

Note the special hardware you are likely to need for online exams: a web-cam as well as the microphone used in each class. See Exams

Adobe Connect - Synchronous

We will be using Adobe Connect software for regular synchronous meetings, at http://connect.luc.edu/comp150/. You might also use the software for separate collaborations in pairs. Promptly see Using Adobe Connect before we first meet. Also look for communications about times to get together and test the software, so we can minimize time spent futzing with the environment when we want to be together getting on with the coursework.

Piazza - Asynchronous

Go to the Piazza sign-up page, select Student, and put in your Loyola email address when asked. This is important - class communications will be through this site.

Later, after signing up, return to the site with the URL https://piazza.com/luc/summer2017/comp150/home.

Piazza is an online learning community - sort of social media for a course. I have been using it for a number of semesters.

You encouraged to pose conceptual or technical questions publicly and offer answers to others there. Pose questions about your specific work on exercises to me privately.

Your first entry (after signing up) should be a response to my request to introduce yourself to the class. I started with the first response. Add your own in the text box under Start a new follow-up discussion. The more students who fill this in promptly, even before the first class, the easier it will be to arrange a partner for programming assignments.

We will also use Piazza for private Journal entries between individual students and me (discussed more below).

Entries in Piazza come in several forms: general comments, questions, answers, discussion on an issue with a problem, and edits to previous entries (this is a wiki). Entries can be directed privately to instructors.

It is a wiki which means it as a shared, editable space: If you think you can improve something posted publicly by anyone, change/edit it.

Be careful with questions and comments that would help with a homework problem: If you post for everyone to see, the entry needs to be general or conceptual enough not to give away solution details. Do look early at the homework, think, and post such questions, to get early help! If you have a question that is directly related to a solution you are thinking of, it should be a private communication for instructors.

Here are suggestions on using the individual types of Piazza contribution:

General Comments

Here are some ideas:

  • If they are not giving away a part of a homework/lab problem, they can be anything useful to the general community.
  • Requests for special emphasis in the next class make sense to go out to the whole class, too. After an initial request, "me, too!" additions are very helpful for me to plan how to make class time best support you!
  • If you found a good web site that addresses a course topic in a way that you like, post the URL with a comment.
  • Of course you can always give your own direct comments!
Questions
Other than the restrictions around specific assigned problems, use this community for help. We will discover more ways as we go along! Do organize your materials so you know where to look first for resources. Be aware of the recent course reading and topics. Go to the community second.
Answers
This is a wiki. One latest version appears directly, though the earlier wiki history can be viewed. Be helpful. It is particularly important in your learning to read critically. If you can improve an answer, edit it!
Discussion on a question
There is a provision for discussion of issues separate from answers. If the issue is resolved, the issue can be marked closed (but it is a wiki - it could be reopened by someone else).

Suggestions to me for optimizing Piazza use in our learning community are highly encouraged.

Initially, make sure you respond to my invitation to join, and add a response to the "Introduce Yourself" note.

Communication

Communication is encouraged through Piazza, particularly for content that might resonate with others in the course. Make sure you log in and give it your preferred email address. I will generally send announcements through Piazza, so I strongly suggest you set up Piazza for frequent updates via email. I may occasionally send a very important note and override your email preferences, so you get notified immediately.

Class Attendance and Activities

We meet online at http://connect.luc.edu/comp150/. Be sure to promptly read Using Adobe Connect and to test out your computer, internet, and microphone hardware.

I will try to have the meeting space opened 10-15 minutes before class time. Class is a good place to get a sense of others in the class, to give and to discuss suggestions for this online class, and you to voice general questions and comments, and let us respond.

I plan to record our synchronous sessions. Remind me to set that up at the beginning of each class! (I can forget!) Please try to log in to class consistently. It is the only real group contact we have in this online course.

In face-to-face classes with a long established class period, I spend most of my time helping individuals with individual problems. With the online setup, I can meet with people about individual questions at a wide range of times, so I have not set the synchronous class times to be long. It may be that people want to arrange individual meetings directly before or after class, or at some separate times. Directly after class has been the most common time.

Also, in my short publicized office hours, we can go over things right then, or make agreement to meet some other time that is mutually convenient.

I am very happy to give extensive help outside class to people who log into class. If my first pass on an idea was not enough for you, we can do better together in pass 2, and maybe pass 3 if needed, .... Learning is a spiral process, and the rate varies by person and individual topic. Everyone can get it, particularly with help. Do NOT be shy about asking for help, including repeated help.

The most important thing associated with this form of course is the willingness to get help and to ask questions when needed: Most of the help is individual, so you need to say when you need help.

Semester Grades

Grading weights:
programs/homework/classwork (30%), exam 1 (15%), exam 2 (25%), final exam (30%).

Points are comparable only within an individual category, where I will take an average. Averages in different categories are combined using the weights above.

For example a student who ends up with 95% in programs/homework/classwork, exams scaled to 75 and 85, and a final exam scaled to 92, would have a final numerical grade of (.30)(95) + (.15)(75) + .25(85) + (.3)(92) = 88.6, a B+.

Only raw grades will appear in Sakai, not scaled or weighted grades. The raw grades in Sakai allow for easy checking of my accuracy in recording. Please check periodically and correct us if necessary. With these conventions, any cumulative totals you see in Sakai are meaningless. (Sorry I cannot seem to block you seeing them.)

I convert to course letter grades with the following minimum requirements:

A 93.0 A- 90.0 B+ 87.0 B 83.0 B- 80.0 C+ 77.0 C 73.0 C- 70.0 D+ 67.0 D 63.0.

If you have consistently displayed more knowledge and ability in class discussions than you show in your exams, I may raise this grade. Note that one way to display your effort and thought is to ask/answer questions in class/Piazza about your reading/viewing!

Exams

The tentative exam due dates are

  1. Wednesday June 7
  2. Wednesday, June 21
  3. Final Exam: Friday, June 30

Online Proctoring

The university is starting the use of an online proctoring service, which will help reinforce the value of your grade, when you show others your record.

You will take your exams while being proctored remotely by a service called Examity. Examity proctoring adheres to the University’s policies on the safety and security of personally identifying information, and is helpful in ensuring the academic integrity of our online courses.

Detailed instructions on how to use Examity will be provided to you when the course begins; please log in as soon as possible after receiving these instructions to set up your profile.

To use Examity, you will need to make sure you meet the following technical requirements:

  • You must take your exam on a computer with a web-cam and a microphone (both built-in and external are fine); you can check this at www.testmycam.com
  • You must use a desktop computer or laptop (not a tablet or mobile device)
  • You must take your exam from a location with sufficient internet speed: at least 2 MPS upload and download speed. You can test your internet speed at http://www.speedtest.net.

If you have any questions or concerns, you can contact Examity’s technical support team 24/7 via email at support@examity.com or phone at (855)-392-6489.

The exact time constraints have not been set up, but you will likely have a generous three hours to take each exam, likely in the evenings on the exam days. We will discuss this.

Exam coverage

Exams will cover material discussed in class, reading material on the web, and assignments. Exams will always be cumulative, but they will NOT include new material from the class immediately before the exam. This way there will always be time for questions after digesting a class. You will always be allowed at least two 8.5 x 11 inch sides of notes for exams.

Exam Grading

Do not write down things on exams that you can see are incomplete or incorrect without making some comment acknowledging this -- it is better to know you are wrong than to be wrong and think you are right.

Missed Exams

If you must miss an exam, let me know well in advance. Then if you have a good reason we can possibly make other arrangements. I have little sympathy for people who inform me after the fact for no good reason. I may completely excuse you from an exam if you were sick or unable to participate for long enough. Most often if you cannot take an exam at the usual time, I will want you to take it a little later.

*No second try*: If you have an excuse for not being prepared to take an exam, but decide to take it anyway, you don't get to change your mind after you see a poor grade. Being sick is not a way to get one more chance than everyone else. I may allow you to delay an exam due to illness, but I will not let you be reexamined due to a poor grade.

Work Load

Time flies when you are having fun. I hope you do have fun as many have before you in this course, but you will only feel pressure if you do not commit to enough time as the course flies by in 6 weeks, rather than the usual 15 week semester. Plan on this being an intense and fun experience. If you figure 2-3 hours per week per credit in a normal semester, or 6-9 for a 3-credit course, and we are moving 2.5 times as fast, let it sink in that you need to plan on 15-22 hours a week, or 5-7 hours for each of our synchronous classes. We do not have time to waste the first day. You have a major reading assignment to discuss and ask questions about on the first day.

There is a further issue even if you have 15-22 hours available, but only at very restricted times: You are encouraged to program with a partner, and that will not work out if you do not have enough flexibility in your schedule to arrange many hours that also suit a partner. Not having a partner could make the course harder for you.

The class days are not spaced evenly. Having videos that you can watch on your own schedule means you can even out the workload if you get ahead between Thursday and Monday. It is even more important than in a 15 week semester to keep ahead as much as possible, because a lot of people finally "get" a topic when they get to "sleep on it". You do not have a lot of nights to sleep on things.

Part of keeping up is being sure you get help very promptly at the first sign of trouble. Contact me. Then at the next sign of trouble, contact me.... Your journal, discussed below, is another way for me to get a feeling for how you are doing. You still need to actively suggest how we connect when you need help in this online environment.

Students used to a face to face class with material presented at a fixed pace must make a major adjustment to a commitment to keep up with this largely self-directed course. Help is always available, but you have to put in the work regularly to see what help you need, and be proactive about getting the help!

Assignments

Journal

We will use Piazza for your private journal entries three times a week. Your journal entries will be successive follow-up discussions to an initial private note that I will write for you before the first class. For Maria, for instance, I would use the note title "Maria's Journaling".

My note will remind you of the things to include in a journal entry:

  1. Where you are in watching/reading/absorbing the material (by a section name and maybe number). The current point may not be clear cut. If you have moved ahead but have major questions on earlier material, say so.
  2. How far you are on the individual exercises in the next written assignment.
  3. How it is going. Indicate any major issues. Note major insights.
  4. Make any suggestions or questions you have for me, and if I asked a question in my previous reply, please respond.

At the bottom of the thread for my note (like any Piazza note) is a place labeled Start a new follow-up discussion. Make your next journal entry there.

Timing: Make three journal entries per week:

  • After class Monday, or on Tuesday
  • After class Wednesday, or on Thursday
  • Friday, Saturday, or Sunday

I will plan to make a Piazza reply by the day after each entry is due.

Homework

Initially there will be ongoing assignments to work on the Python Tutorial. You should keep all your work from the tutorials, and you will asked to turn it in a chapter at a time. You are given names for the files you are instructed to create. I will be expecting these particular names.

There will be reading/viewing assignments for all class days, shown in the course schedule along with written graded assignments, generally submitted through the Sakai assignment submission system.

Assignments are due at 11:55PM at the end of the date specified unless otherwise stated. Programming assignments should be turned in on time, running correctly. If your program is not running correctly, get help before you turn it in, even if it is late! It should not be hard to see that your code is not working! Graded assignments are either listed as programs (which you may work on in pairs) or homework, which is generally an individual assignment. Working on programs and homework problems is essential to your understanding of the course material and giving it insufficient attention will almost surely affect your exam performance.

As you see from the exam description above, what is important is being able to apply concepts. When you do something, always be able to think why you chose that process. The same process, not the same final answer will be important later. Getting the right final answer, so it works, is a test of the results of your thought process, but the specific result is not what you want to stay with you.

You must give credit BY NAME to any person who assists you in completing an assignment. Be sure to make clear the nature and the amount of help you received. Failure to acknowledge such help is PLAGIARISM and will be dealt with accordingly. If you give help, you should also state in your own assignment, who and how you helped. See further restrictions below under Academic Dishonesty.

Late Assignments

Late work can be penalized 5% per day including weekends. If there is some special reason for an assignment being turned in late, preferably speak to me directly first. I will consider reducing/removing the penalties. If I accept your reason, ALSO make a comment at the top of your source code in the main program. (This reminder helps!) In this short semester, keeping up is extra important! Start early, and get help, if you need it, early. Preferably do assignments as you come to them as you view/read through the material.

The penalty for being late is way less than for turning in a program that does not work. Preferably start early enough to get all the help you need by the due date, but if something does not work, get it working before submission, even if that is late.

Pair Programming

It has been demonstrated that Pair Programming, two people collaborating on one problem with one person coding while the other looks on (either directly or with our modern technology from afar), whether beginner students or seasoned professionals, allows projects been done better and faster with more confidence, and also that students learn at least as well and have more enjoyment in the process. You have the option to do pair programming in this course for assignments. (Your exams will NOT be in pairs however!) Read the page on how to make pair programming work and also the page of administrative guidelines for pair programming (mostly for when it does not work out as planned!).

General Rules for Giving/Getting Help

An outside person, below, refers to someone other than a pair partner if you have one. On their joint assignment, there are no limits on the communication between pair partners, and a pair partner does not need to be listed under those helping you.

If you are seeking help: I may read your code and comment on it for you. You must acknowledge my help, clearly explaining its extent. You may not read an outside person's code but it is permissible to talk about the solution of the problem (not the actual code). Anyone with whom you discuss the problem, must be listed in your documentation.

If you are giving help:You may not allow an outside person to read your code "to get the idea". It is permissible to talk about your solution but be judicious about the hints you give. Again, the other student is responsible for listing your help in the documentation, and you should also list in your assignment how you helped, and your take on the help you gave.

Academic Dishonesty

The penalty for cheating may be anywhere from a 0 on an assignment to a grade of "F" in this course. The appropriate dean will be informed in writing of any cheating incident.

Cheating consists of, but is not limited to:

If you are working on a pair or group project, an "outside person" only refers to people other than your assigned partner or team.

Note that cheating goes both ways: both giving and receiving.

Consultation is allowed with me. If you consult with me, still make a comment at the top of your work about the substance and depth of the help.

Help from any source is fine concerning

Programming Environment

We will be programming in Python, available in the University labs, and as a download to your own computer. There are several choices based on program version and operating system. You should get Python version 3.6.1 or greater for your operating system from the central site http://www.python.org/download. It comes with the graphical interface, Idle, which we will use. There are many alternate free Python development environments, like PyCharm, Community Edition, while Idle is particularly simple, and is discussed in the tutorial.

Before you install anything, be sure to look at the extra Windows notes or extra Mac notes.

Campus Network, Rights and Responsibilities

As a user of the campus network, you should be aware of your rights and responsibilities in http://www.luc.edu/its/itspoliciesguidelines/policy_acceptableuse.shtml.

Course Outline

The Course Schedule and Assignments page shows the progression of topics, reading, exams, and written assignments. The time schedule of class topics is tentative.

This page will be the main administrative reference during the course. Bookmark it.

Questions

Please contact me if you have questions about these ground rules or about anything else in the course. Before/in/after class or a note in Piazza work for me. While the text and video is out there for everyone, you are paying for a Loyola course with me: take advantage of that; I am here particularly to help guide you in the rough spots.


Back to Comp 150 Home