INSC 201: Foundations of Information Sciences


Description: This course is a survey course discussing a range of concepts in the information sciences, such as information behavior, literacy, ethics, and policy. My core goal for this course is not only to help you think about different directions for your information career, but also to make you a better information consumer, producer, and system builder. To achieve this goal, the course is focused on reading both historical and contemporary works across the information sciences (including academic papers, popular media articles, blogs, podcasts, etc.) and reflecting on those readings.

INSC 260 (Formerly 360): Programming for Information Applications


Description: This class is designed for students who have never programmed before. Hence, we will focus on the fundamentals of programming at a beginner's pace. The approach of the class is “Many Small Programs” - as opposed to the more classic approach of One Large Program. This means we will do many small example programs in class together, and you will do many on your own. This process will set you up with the foundations to jump into large program development. While the class will be taught in Python, I will put emphasis on computational thinking and solving data-oriented problems using programming where possible. Of course, we must ensure the foundation is strong before adding data to the mix. Nonetheless, this course will set you up for future data analysis and visualization courses, as well as your future career. I have written data-oriented programs in Python nearly every week of my life since college (except for those weeks where I was writing my dissertation), and I will show you the fundamentals that I have used repeatedly doing data analysis.

INSC 484: Database Applications


Description: This course is a hands-on course focused on building prototype client/server systems, where we design and apply database models on the server side and build modular systems that interact with the client (typically the user) and the server (the database management system). Specifically, we build client systems using Python and connect those systems to database systems like SQLite3 and PostgreSQL. Hence, this course builds directly on the skills you will have learned in INSC 384 and INSC 360 (Python and SQL).