Course Information
[top]
Time and Location
[top]
Tuesday – Thursday, 2.40 – 4.05 pm
FedEx Institute of Technology Room 405 (FIT 405)
http://www.cs.memphis.edu/~sdmello/classes/psyc7503/
Instructor
[top]
Sidney D’Mello
FIT, 403 F
phone: 901-678-1690
fax: 901-678-1336
sdmello@memphis.edu
http://www.cs.memphis.edu/~sdmello
Office Hours
[top]
Wednesday (3-4 PM)
Thursday (4-5 PM)
Friday (3-4 PM)
By appointment
Description
[top]
The objective of this course if to introduce fundamental programming
concepts to psychology students. The focus of the material is on core data
processing techniques that will serve as a catalyst to speed up data
analysis. We will write programs for collecting data, presentation of
stimuli (text/images), recording of stimuli (flat files/databases), time
stamping, making database queries, flat file processing with regular
expressions, and computing statistics.
The course is divided into three phases: introductory concepts with
beginning programs, semi-advanced techniques for intermediate programs,
and student projects. Each student works on programming assignments
relevant to his or her research under close supervision from the
instructor.
There are a number of fundamental problem
solving and computer programming skills addressed in this course. These
include techniques for deriving problem solutions and use of basic
programming concepts such as variables, constants, data types, arrays,
loops, and conditionals. Intermediate concepts such as reading and writing
from files, functions and procedures, string manipulation, and data
structures will be covered in detail. Advanced topics will include an
introduction to SciPy (a scientific library in Python), Tkinter (GUI
development), and automated SPSS techniques. Additional topics based on
class interests will also be included.
We will use the Python programming language
in this course because it is very powerful, not cryptic (i.e. no strange
symbols), sufficiently verbose and hence easy to learn, integrates well
with other existing software (Java, etc), and is being widely used in
academia.
Downloadable Syllabus
[top]
You can download a copy of the syllabus
here.
But please note that I will not update this version.
Instead the most current updates can be found on this site.
Resources
[top]
Textbook
[top]
"How
to Think Like a (Python) Programmer" by Allen B. Downey.
References
[top]
"Python
Programming Language" - Official Website
"Python Documentation"
"Byte
of Python" – another online book as a wiki
Evaluation
[top]
Students will be evaluated on the basis of
homework, programming assignments, and class participation. The last two
programming assignments will be tailored to each student on the basis of
his or her research interests. Students have the option of combining the
last two programming assignments into a single large assignment. This
option is ideal for students who require a program to further some aspect
of their research agenda.
There will be periodic quizzes to monitor student progress. However, these
will not count towards the students grade in the class. Instead, students
making a C or lower on the quizzes will be expected to visit the
instructor during office hours for one-on-one tutoring.
Items
[top]
Homework [HW] - 6 (will drop lowest 1) - 40%
grade
Programming Assignments [PA] - 5 - 50% of grade
Class Participation - 10% of grade
Grading
[top]
If you show up to every class, see me when you
are falling behind, and put some effort into the programming assignments,
an A will not be a problem.
A+ (97-100), A (91-96), A- (89-90)
B+ (87-88), B (81-86), B- (79-80)
C+ (77-78), C (71-76) , C- (69-70)
D(60-68)
F(60-68)
Submitting Assignments
[top]
In order to submit homework and programming assignments please visit
https://umdrive.memphis.edu/sdmello/psyc7503/
Log in to your account using your postoffice credentials and upload your
files. You do not have permission to delete files so in case you need to
reupload a file please use a versioning scheme. For example
Sidney-hw1-v1.py for version 1 of hw1 and Sidney-hw1-v2.py for version 2.
You have a 1MB quota so email me if you need more room.
Schedule
[top]