PREREQUISITES:
MAS students: Completion of the MAS Core courses, plus permission of the instructor.
MLIS and Dual students: Some electives can be taken in conjunction with the MLIS Core courses; consult with the MLIS Program Chair for recommendations.
GOAL: The goal of this course is to teach programming concepts using the Python programming language. The course is designed to be self-standing and proceeds from basic to medium- and advanced concepts and assumes no prior programming experience. For an IT professional, programming skills are almost indispensable: General understanding of programming and programming experience both improve students’ overall understanding of information systems and help develop their general problem solving skills. Programming skills are also essential for analysis and mining of information users’ behaviors and communities. Good programming skills significantly boost work productivity and students usually utilize them during their program of study and throughout their professional lives.
Potential audiences for this course are:
- People with little or no programming and IT experience who want to acquire a medium-to-advanced level understanding of programming generally and Python specifically.
- People planning to take (or have taken) courses on text analytics, social media mining, information retrieval, information visualization, human-information
interaction, natural language processing, machine learning, web and database design, or similar courses, who want to prepare for, or significantly advance, carrying out work and research in these areas.
OBJECTIVES:
Upon completion of this course students will:
- Identify, analyze, assess, and solve a problem or need using Python programming.
- Apply Python programing knowledge to practical information access, extraction, retrieval, and data (e.g., text) mining tasks.
- Enhance interpersonal and written communication skills through assignments and discussions with classmates and instructor.
- Collaborate effectively with peers through course assignments, including demonstrating the ability to work as part of a team, including initiative taking, integrity, dependability and co-operation.
- Understand, develop, and apply relevant library and information science tools to address information needs, questions and issues.
CONTENT:
- Overview of (Python) programming;
- Unix:
- Directory navigation & control
- File maintenance commands
- Display commands
- Text processing
- Data types (numbers. Strings, lists, tuples, and dictionaries/hashes);
- Control flow & functions;
- File input and output;
- Exception handling;
- Iterators and generators;
- Object-oriented programming;
- Regular expressions
- Applications:
- Web crawling and parsing
- Text processing
- Statistics & data visualization