Na-Rae Han's home page
Took the course in the past? Click here for 2019, for 2018, 2017, 2016, 2014, and 2013. (E-mail Na-Rae for password.)

LING 1330/2330 Introduction to Computational Linguistics

Fall 2020, University of Pittsburgh

Meetings: Tue & Thu 4:30 - 5:45pm   Classroom: 11 Thaw Hall


This is a course designed to introduce students who have been exposed to linguistics to real-world applications of computational linguistics. The students will first learn the fundamentals of how computers are used to represent and process textual and spoken information. They will then be introduced to the challenges of real-world language engineering problems and learn how they are handled with the latest language technologies. The topics include: spell-checking, machine translation, part-of-speech tagging, parsing, document classification, and corpus building and exploration. Students will be given hands-on training on the basics of text processing using Python and will have a chance to work with NLTK, a popular natural language processing application suite. This course is designed specifically for students in the humanities; computer science majors (who are not linguists) are encouraged to take CS 1671 or CS 1571 instead.


Intro-level linguistics and Python knowledge are required: LING 1000 "Introduction to Linguistics" and CS 0008 "Introduction to Computer Programming with Python" (grade B or above). Having Python programming as a prerequisite will allow us to explore more computational linguistic topics and in a less rushed manner. Linguistics majors and grad students will very much remain as the target audience of this course: as a matter of fact, not having to learn Python will free up valuable class time to focus more on linguistic motivations.

Students are required to bring their own laptop to class. It should be running one of the following operating systems: Windows 10 (7 & 8 are also fine), Mac OS-X, and Linux (any distribution). Mobile or cloud-based machines such as Android/Apple tablets or Chromebooks are not suited.


WhoPitt emailOffice hours (We are also available to meet by appointment.)Location
Na-Rae HannaraehanMon 2:30-4p, Wed 1-2:30pmIn-person: G17 CL (Language Media Center)
Virtual: MS Teams chat & video calls
Kiara Larocca (TA)kal211Tue & Thu 12-1pmVirtual: MS Teams chat & video calls
Anthony Verardi (TA)arv20Mon & Wed 5-6pmVirtual: MS Teams chat & video calls


[1] Language and Computers. Markus Dickinson et al. Wiley-Blackwell. 2012.
[2] Speech and Language Processing 2nd Edition, 3rd Edition. Jurafsky & Martin.
[3] Natural Language Processing with Python. (updated edition based on Python 3 and NLTK 3) Steven Bird et al. O'Reilly Media.
[4] Python tutorial: Python 3 Notes

Course Organization

Each meeting will have lecture and lab components. Topics presented in the textbooks will be covered in a lecture-and-discussion format. In lab, students will get hands-on training using Python and Natural Language Toolkit (NLTK). "Learning by doing" is the core design principle of this class!

We will be using four (!!) platforms: this course home page (everything that's public: syllabus, policies, course schedule, class materials such as lecture slides, homework and exercise assignments), Canvas (private things: course announcements, assignment submission, grades), Zoom (administered through Canvas, recordings will be made available), and MS Teams (chat-based communication, holding office hours, one-on-one video calls).

Assignments, Requirements, Grading and Policies

As a rule, there will always be a form of assignment between classes. There are two types: homework assignments and programming exercises, which are administered via Canvas and due before the beginning of the next class. Assignment schedule is posted on the Class Schedule page. Details on all requirements, grading and other policies can be found on the Policies page.

Flex@Pitt and This Course

Just like all classes at Pitt this semester, this course will be following Pitt's Flex@Pitt model. This means the delivery mode of this class may change based on Pitt's operating posture at the moment. Under "HIGH RISK", all courses are remote; under "ELEVATED RISK", most courses are remote, likely including this one. In "GUARDED RISK" requiring in-person components, I have two plans:
  • Plan A: I will be teaching in-person in the designated classroom, using the "Flex@pitt" devices outfitted in the room. Students can join in-person or remotely via Zoom. This is Pitt's default for the posture and Scenario 1 explained in this University Times article.
  • Plan B: There is a good chance the hybrid-audience nature of Plan A will prove suboptimal (see this article). As the semester progresses, if I determine this to be the case, and depending on logistics and feasibility, I will shift regular class meetings to remote only, where everyone including myself meet via Zoom. In-person experience will instead be moved to small-group "recitation" sessions that we schedule for an hour/week outside our usual class time, which I will lead in-person. These recitations are optional, and comparable remote-only sessions will also be made available so that no one is missing out.
And, in the event when personal circumstances keep me from coming to campus at all, we will adopt Plan B along with fully remote optional recitation (if any).

With the exception of the mode of delivery, I expect all other aspects of this course will remain unchanged throughout different operational postures, including dissemination of course materials, course requirements, and grading policies. They are detailed in the Course Policies page.

COVID-19 Statement (Pitt Official)

In the midst of this pandemic, it is extremely important that you abide by public health regulations and University of Pittsburgh health standards and guidelines. While in class, at a minimum, this means you must wear a face covering and comply with physical distancing requirements; other requirements may be added by the University during the semester. These rules have been developed to protect the health and safety of all community members. Failure to comply with these requirements will result in you not being permitted to attend class in person and could result in a Student Conduct violation. For the most up-to-date information and guidance, please visit and check your Pitt email for updates before each class.