Syllabus for CSci 1251, Spring 2012
This is the course syllabus for Nic McPhee's Spring 2012 Computational Data Management and Manipulation (CSci 1251) course at the University of Minnesota, Morris
. For additional information (e.g., events and assignments) see the course Moodle site
This is a 4 credit course which meets MWF 10:30-11:35am, in Sci 1020. There are no pre-requisites for this course.
The catalog description for this course is:
Introduction to principles and practices of computational data management such as using advanced spreadsheet operations, designing and implementing algorithms to summarize and transform data sets, understanding organization of databases, writing and executing simple database queries, and creating effective data visualizations. Topics include basic issues of information security and introduction to modern technologies that support collaboration.
Technology is making more and more data available in all walks of life, including huge data warehouses of sales data for major retailers, vast oceans of genomic data in biology and medicine, social networking links and content, and social science data such as census information on-line. Most of us will need to deal with varying data sets both in our personal and professional lives, and the key goal of this course is to help us all learn to do that more efficiently and effectively. Central to this is the automation of as much of the work as possible, letting the computer do the tedious calculations for us. While this sort of automation certainly has the potential to reduce our long-term work load, perhaps more importantly automation ensures consistency and accuracy in our data processing.
This course, then, is primarily aimed at non-CSci students who want to learn more about how to manage and process medium-sized and large data sets such as experimental data, survey data, financial data, and census data. It is required by some majors, and recommended by some others, so we have a broad audience to serve.
Course goals and learning objectives
We'll primarily focus on spreadsheets and scripting, along with a number of other tools as appropriate. We'll start with coverage of intermediate to advanced use of spreadsheets, which are probably the most widely used data management tool out there. At various points, however, spreadsheets stop being the Right Tool for the Job. Most commonly the logic of what you're doing to your data just doesn't work well using spreadsheet functions, and you really want to step out and write a script, and scripting will be the other major component of the course. Alternatively, sometimes you have too much data to manage in a spreadsheet, in which case you probably want a database. Designing and managing databases is a fairly complex task often managed by dedicated, expert staff, so we'll not spend a lot of time on that. There are, however, a remarkable array of databases that are available on-line via web and scripting interfaces, and we'll look at how we can access some of those from both spreadsheets and scripts. We'll also explore data collection, data visualization, information security, and collaboration as appropriate.
The main goals are:
- Be able to use a spreadsheet to perform simple calculations
- Be able to use a spreadsheet as a "what if?" tool
- Be able to use a spreadsheet to perform basic data analysis
- Be able to use a spreadsheet to transform and clean data
- Be able to visualize data using several common visualization formats
- Be able to use scripting to transform and clean data
- Be able to use scripting to perform more complex data analysis
- Be able to access on-line databases from scripts
- Understand some of the key security risks involved in storing data on computers
- Be able to collaborate in teams in the design and implementation of data collection and analysis
My office hours for Spring, 2014, are:
- Monday, 10:30-11:30am
- Tuesday, 1-2pm
- Thursday, 3-4pm
- Friday, 2:05-3pm
I'll typically start my office hours in my office (Sci 1315), but I may well move to a lab if, for example, a group has a question about a project they're working on. The lab I'd be most likely to go to is:
- The Computer Science labs (Sci 2610, 2630, and 2650)
If I leave the office during office hours I'll try to leave a note on my door telling you where I am, but you should always feel free to check the labs if you're looking for me.
Those times almost certainly won't work for everyone. You're always welcome to just drop by (see my complete schedule
), and I'm happy to make appointments anytime I'm free. You may also find my contact info
If these times work very badly for you (e.g., you have class conflicts all of these hours) then please let me know. If it turns out that a lot of folks have major conflicts then I'll want to reconsider my choices.
| Nic McPhee's contact info
|| mcphee AT morris DOT umn DOT edu
|| This is the preferred method of contact, but be warned that I get a lot of e-mail and bits get dropped now and then. Phone or IM is often better if it's critical or you need immediate feedback.
|| This is my "official" University web page, which consists primarily of links to my course web pages.
|| Same address as my e-mail above.
|| My name as a WikiWord, i.e., "Nic McPhee" without the space
|| Make sure you identify yourself if your Twitter username doesn't obviously relate to the name on my course list
|| Sci 1315
|| Downstairs at the east end of the Science office wing
| Office phone
|| I don't have voice mail set up, so it'll just ring forever if I'm not there.
| Division office
|| They'll be happy to take a message, but phone, IM, or e-mail is better.
|| I don't get faxes very often, so you should probably warn me (e.g., via e-mail) so I'll make a point to check for a fax.
Division of Science and Mathematics
University of Minnesota, Morris
600 E. 4th Street
Morris, MN 56267-2132
I use the U's Google calendar
to manage my calendar. Google may be the Evil Empire of the next decade, but they make a fine on-line calendar tool. If you're using Google calendar, feel free to use that to invite me to events/appointments.
Texts and other materials
There aren't any books out there that really fit what we're doing in this course, and if we went with traditional books we'd end up combining material from several books, making the textbook price tag really high. There are, however, a wide variety of good, free on-line resources and books that will cover the key topics for the course, so we'll use those instead. If you're aware of or find a book or other resource that you this is particularly helpful for this course, please let me know so I can share. See the course resources
page for links to a number of on-line resources.
See the course Moodle site
for the calendar and outline of the course.
Course work and grading
Most of the course will be homework and projects, with two exams and a final (some or all of which might be take-home). The breakdown will be:
- Homework and projects: 30%
- What-do-you-knows: 10%
- Exams: 20% each (40% total)
- Friday, 24 Feb (17-24 Feb if take-home)
- Friday, 6 Apr (30 Mar-6 Apr if take-home)
- Final: 20%
- The scheduled finals period for this course is 4-6pm, Thursday, 10 May. If we have a take-home final, it will be due at the end of that period, and will be handed out by the Wednesday of the last week of classes.
I will use ungraded "What-do-you-knows" (both in-class and on-line) to get a sense of where people are in the course; you'll get points for being there and participating, but you won't be penalized for wrong answers.
There will also be optional evening sessions with me and/or the TA. Some of these will just be open time to ask for help with projects, but others will be more structured practice sessions. These are entirely
optional and ungraded, but students have often found them to be very useful in the past.
We'll likely go to a computer lab every week or two to practice skills and work on projects.
Some of our projects will be group projects. Groups will typically consist of 2-4 students, and will often be randomly generated. I may choose to solicit peer evaluations of group work.
The primary products and factors used in grading will be:
- Project write-ups (with an emphasis on focus, organization, clarity and completeness)
- Class presentations (with an emphasis on focus, organization, clarity and completeness)
- Quality of your spreadsheet design or scripts
Grades will be entered on the course Moodle site
and can be checked there throughout the semester. If you have any questions or concerns, please bring them up right away when it's much easier to address them.
Late work will in general not be graded until the end of the semester and, depending on how busy things are, may not be graded at all. So you're welcome to turn in work late, but there's no guarantee that it will get graded.
(If you're visiting this syllabus after the semester has ended, the link to the course Moodle site may no longer work. They archive old courses almost immediately, which puts them at a new URL; try this URL
instead. Failing that, please contact me
if you need access to any of that information.)
Grading standards (definition of grades)
- A: Represents achievement that is outstanding relative to the level necessary to meet course requirements.
- B: Represents achievement that is significantly above the level necessary to meet course requirements.
- C: Represents achievement that meets the course requirements in every respect.
- D: Represents achievement that is worthy of credit even though it fails to meet fully the course requirements.
- S: Represents achievement that is satisfactory, which is equivalent to a C- or better.
- F (or N): Represents failure (or no credit) and signifies that the work was either (1) completed but at a level of achievement that is not worthy of credit or (2) was not completed and there was no agreement between the instructor and the student that the student would be awarded an I (see also I).
- I (Incomplete): Assigned at the discretion of the instructor when, due to extraordinary circumstances, e.g., hospitalization, a student who is otherwise doing well in the course is prevented from completing the work of the course on time. Requires a written agreement between instructor and student.
Senate academic workload policy
For undergraduate courses, one credit is defined as equivalent to an average of three hours of learning effort per week (over a full semester) necessary for an average student to achieve an average grade (a C) in the course. For example, an average student taking a four credit course that meets for four hours a week should expect to spend an additional eight hours a week on course work outside the classroom in order to get a C in that course.
protects your right as a student to keep your work and identifying information confidential. Public discourse, however, is crucial to the intellectual and academic process, whether it be within the course or in the broader world. Information such as grades will be protected and confidential, but our our use of technologies such as Moodle, wikis, and Google Docs will sometimes make students' names and U of M Internet IDs visible to other people in the course and, potentially, to the wider Internet. If you have concerns about the visibility of your Internet ID, please contact me for further information.
The Academic Assistance office
on campus provides free tutoring for a variety of introductory courses, and well as general assistance in a host of areas (e.g., study skills, careful reading, and time management). The Writing Room
can be an excellent source of assistance with writing assignments.
Accessibility and institutional support
The University of Minnesota is committed to providing all students equal access to learning opportunities. Disability Services is the campus office that works with students who have disabilities to provide and/or arrange reasonable accommodations. Students registered with Disability Services who have a letter requesting accommodations, are encouraged to contact the instructor early in the semester. Students who have, or think they may have, a disability (e.g. psychiatric, attentional, learning, vision, hearing, physical, or systemic), are invited to contact Disability Services for a confidential discussion at 320-589-6163 or
freyc AT umn DOT edu
. Additional information is available at the DS web site at http://www.morris.umn.edu/services/dsoaac/dso
The University of Minnesota is committed to providing all students equal access to learning opportunities. Disability Services is the campus office that works with students who have disabilities to provide and/or arrange reasonable accommodations. Students registered with Disability Services, who have a letter requesting accommodations, are encouraged to contact the instructor early in the semester. Students who have, or think they may have, a disability (e.g. psychiatric, attentional, learning, vision, hearing, physical, or systemic), are invited to contact Disability Services for a confidential discussion at 320-589-6163 (320-589-6178 V/TTY) or firstname.lastname@example.org
. Additional information is available at the DS website http://www.morris.umn.edu/services/dsoaac/dso
As a student you may experience a range of issues that can cause barriers to learning, such as strained relationships, increased anxiety, alcohol/drug problems, feeling down, difficulty concentrating and/or lack of motivation. These mental health concerns or stressful events may lead to diminished academic performance or reduce your ability to participate in daily activities. University of Minnesota services are available to assist you with addressing these and other concerns you may be experiencing. You can learn more about the broad range of confidential mental health services available on campus via http://www.mentalhealth.umn.edu
University policy prohibits sexual harassment as defined by the University of Minnesota Regents' policy: http://www1.umn.edu/regents/policies/humanresources/SexHarassment.pdf
. In general, harassment or intimidation of others in the class for whatever reason is unacceptable (and hardly conducive to a successful learning environment).
Regarding academic integrity
Scholastic honesty is of fundamental importance to the functioning of any community of scholars. Although the pursuit of knowledge is always a communal project, individual academic achievement must be the result of a person's own efforts and abilities. Members of an academic community are responsible for their own personal and academic development and for fostering an academic climate in which all members draw from and give back to the community. The University is charged with implementing those policies which will help bring about such an academic climate. However, the ultimate responsibility for creating a community of scholars, in which mutual self-respect flourishes, lies with the individual members of the community. Each member must, therefore, act according to the highest standards of academic honesty.
-- from the preface of UMM's Student Academic Integrity Policy
Academic integrity is essential to a positive teaching and learning environment. All students enrolled in University courses are expected to complete coursework responsibilities with fairness and honesty. Failure to do so by seeking unfair advantage over others or misrepresenting someone else?s work as your own, can result in disciplinary action. The University Student Conduct Code defines scholastic dishonesty as follows:
Scholastic Dishonesty: submission of false records of academic achievement; cheating on assignments or examinations; plagiarizing; altering, forging, or misusing a University academic record; taking, acquiring, or using test materials without faculty permission; acting alone or in cooperation with another to falsify records or to obtain dishonestly grades, honors, awards, or professional endorsement.
Within this course, a student responsible for scholastic dishonesty can be assigned a penalty up to and including an "F" or "N" for the course. If you have any questions regarding the expectations for a specific assignment or exam, ask.
For more information see:
Regarding classroom conduct
Students are expected to interact with the instructor and other students with respect and courtesy. Students should attend every class session prepared to learn and work. Participation in class is expected, which includes both speaking up and listening. Give class your full attention while here. Complete all assignments, including the reading, in a timely fashion. Turn off cell phones and other electronic distractions during class so we may all better focus on the material. Students whose behavior is disruptive either to the instructor or to other students will be asked to leave. Students whose behavior suggests the need for counseling or other assistance may be referred to counseling services. Students whose behavior violates the University Student Conduct Code will be subject to disciplinary action.
Computers and smart phones can be tremendously useful assets in class, as well as huge distractions. You're welcome to use both in class as long as you're not distracting others
. I don't really care a lot if you're ignoring me - it's your money and time after all. Having you surf, mail, network, or game during class can be incredibly distracting to people near (and behind) you, however, so please be considerate of your neighbors. Just as you'd be embarrassed to have your cell phone go off loudly in the middle of class because of the distraction it would cause, please be aware of how distracting your computer usage can be.
Computer workshops: We will occasionally meet in a computer lab to practice skills or work on projects. You should use this time to work your projects and not use it as an opportunity to surf around and check your mail. If it looks like people aren't staying focused, I'll just take that as a sign that the assignments aren't hard enough and add more work
Some relevant University Senate statements and policies
- 17 Jan 2012