Programming for Information Professionals
UNC SILS, INLS 560, Spring 2024
January 22
First class meeting
Our first meeting of the semester is Monday, January 22 at 2:30PM in Manning 001.
January 22
Introduction to the course
Total amount of required reading for this meeting: 5,900 words
đź“– To read before this meeting:
-
Vinge, Vernor. “Software Archaeology.” In A Deepness in the Sky, 183–86. New York: Tor, 1999. PDF.
-
Quéru, Jean-Baptiste. “Dizzying but Invisible Depth,” October 15, 2011. https://web.archive.org/web/20150417195936/https://plus.google.com/+JeanBaptisteQueru/posts/dfydM2Cnepe.
-
Butterick, Matthew. “GitHub Copilot Investigation,” 2022. https://githubcopilotinvestigation.com.
-
Recurse Center. “Social Rules,” n.d. https://www.recurse.com/social-rules.
January 29
Introduction to programming
Total amount of required viewing for this meeting: 72 minutes
Total amount of required reading for this meeting: 30,100 words
đź“ş To view before this meeting:
-
Viewing tips
You can follow along at https://vscode.dev.
-
David Gotz, “Introduction to computers and programming.”
58 minutes
đź“– To read before this meeting:
-
Ford, Paul. “What Is Code?” Bloomberg Businessweek, June 11, 2015. https://www.bloomberg.com/graphics/2015-paul-ford-what-is-code/.
Reading tips
This is a very good but very long article, with a number of interesting interactive features. It is written in a style that is intended to be entertaining—and for many native English readers it will be entertaining—but that style may make it a difficult read for non-native readers. I recommend the whole thing, but if you are pressed for time, just read parts 2 (”Let’s Begin”) and 3 (“Why Are Programmers So Intense About Languages?”), and then look at the table of contents and read whatever other sections look interesting.
-
Recurse Center. “Pair Programming.” In User’s Manual, n.d. https://www.recurse.com/manual#sub-sec-pairing.
-
OptionalBöckeler, Birgitta, and Nina Siessegger. “On Pair Programming,” January 15, 2020. https://martinfowler.com/articles/on-pair-programming.html.
-
OptionalGaddis, Tony. “Introduction to Computers and Programming.” In Starting Out with Python, 4th global edition. New York: Pearson, 2019. PDF.
January 29
Hello, World handed out
January 31
Hello, World due
February 5
Types, variables, and operators
Total amount of required viewing for this meeting: 86 minutes
đź“ş To view before this meeting:
-
David Gotz, “Programming basics: types, variables, operators.”
86 minutesViewing tips
When watching these videos, try evaluating the example Python code in
bpython
. (If you don’t know how to runbpython
, ask a question on Zulip!)
đź“– To read before this meeting:
-
OptionalGaddis, Tony. “Input, Processing, and Output.” In Starting Out with Python, 4th global edition. New York: Pearson, 2019. PDF.
February 5
Compound Interest handed out
February 7
Compound Interest due
February 12
Well-being day
Due to the well-being day on February 12, we will not meet this week.
February 12
No meeting this week
February 15
Square Roots handed out
February 19
Decision structures and loops
Total amount of required viewing for this meeting: 154 minutes
đź“ş To view before this meeting:
-
David Gotz, “Repetition.”
120 minutes
đź“– To read before this meeting:
February 21
Square Roots due
February 26
Functions
Total amount of required viewing for this meeting: 131 minutes
đź“ş To view before this meeting:
-
David Gotz, “Functions.”
131 minutes
đź“– To read before this meeting:
-
OptionalGaddis, Tony. “Functions.” In Starting Out with Python, 4th global edition. New York: Pearson, 2019. PDF.
February 26
Blackjack handed out
March 4
Abstraction and decomposition
Total amount of required viewing for this meeting: 76 minutes
Total amount of required reading for this meeting: 8,600 words
đź“ş To view before this meeting:
-
David Gotz, “Practicing software design: abstraction and decomposition.”
76 minutes
đź“– To read before this meeting:
March 6
Blackjack due
March 11
Spring break
Due to spring break, we will not meet this week.
March 11
No meeting this week
March 18
Spring Break II (a.k.a. Ryan was sick)
Ryan was sick, so we did not meet this week.
March 18
No meeting this week
March 18
Assigning Grades handed out
March 25
Working with files and handling exceptions
Total amount of required viewing for this meeting: 113 minutes
đź“ş To view before this meeting:
đź“– To read before this meeting:
-
OptionalGaddis, Tony. “Files and Exceptions.” In Starting Out with Python, 4th global. New York: Pearson, 2019. PDF.
April 1
Lists
Total amount of required viewing for this meeting: 108 minutes
đź“ş To view before this meeting:
-
David Gotz, “Lists.”
108 minutes
đź“– To read before this meeting:
-
OptionalGaddis, Tony. “Lists and Tuples.” In Starting Out with Python, 4th global edition. New York: Pearson, 2019. PDF.
April 3
Assigning Grades due
April 7
Managing Collections handed out
April 8
Lists, tuples and strings
Total amount of required viewing for this meeting: 114 minutes
đź“ş To view before this meeting:
-
David Gotz, “Lists and tuples.”
67 minutes
đź“– To read before this meeting:
April 15
Sets and dictionaries
Total amount of required viewing for this meeting: 115 minutes
đź“ş To view before this meeting:
-
David Gotz, “Dictionaries (and sets).”
- View part 1.
- View part 2.
- View part 3.
- View part 4.
- View part 5.
- View part 6.
- View part 7.
- View part 8.
đź“– To read before this meeting:
-
OptionalGaddis, Tony. “Dictionaries and Sets.” In Starting Out with Python, 4th global edition. New York: Pearson, 2019. PDF.
April 17
Managing Collections due
April 18
Web Crawler handed out
April 22
Opening URLs and processing JSON
đź“– To read before this meeting:
-
Shaw, Ryan. Opening URLs on the Web, n.d. https://github.com/programming-for-info-pros/notebooks.
-
Shaw, Ryan. Processing JSON, n.d. https://github.com/programming-for-info-pros/notebooks.
April 29
Recursion
Total amount of required viewing for this meeting: 104 minutes
đź“ş To view before this meeting:
-
David Gotz, “Recursion.”
104 minutes
đź“– To read before this meeting:
-
OptionalGaddis, Tony. “Recursion.” In Starting Out with Python, 4th global edition. New York: Pearson, 2019. PDF.