To my linguistics homepage

LING/C SC/PSYC 408/508
Computational Techniques for Linguists
Fall 2026

This is a introductory course to computers and general programming useful for linguists (and non-engineers). No background is assumed. Taught from the ground up with historical context, which will help to de-mystify many things, by a computer scientist who also thinks like a linguist, you will develop an understanding of why things are the way they are (spoiler: sometimes for backwards compatibility with things that have long disappeared from relevance, sometimes entirely by accident).

Topics include the useful fundamentals of Linux, the Terminal (Shell usage and programming), Python with NLTK (Natural Language Toolkit) and matplotlib (for charts/graphs), the dot language (for networks) and web technologies such as HTML, CSS, Javascript and Apache2.

In addition to homework exercises, a simple term project incorporating some technology introduced from the class is required. Students are encouraged to create a deliverable that incorporate material/data that they are interested in, e.g. for their graduate research, hobbies or other interests.

New! for this semester, we will discuss how to incorporate and leverage ChatGPT's ability (in the free version, without the Code Interpreter) to help rough out Python code.

Examples:

Textbook and Software

No textbook, no purchase of AI tokens is required. All reading material will be made available online. All software used in this class will be freely available.

Software

Students will be expected to have their own laptops and have administrator permissions to install apps for use.

Instructor: Sandiway Fong sandiway@arizona.edu
Office: Douglass 308 (send email for an appointment or take a chance and drop by before/after class)

Administrivia

Location Douglass, Rm 216
Time Tuesdays/Thursdays 2:00PM - 3:15PM (NOTE: new time!)

Syllabus

See lecture1 slides.

Lecture Notes

Available in Adobe PDF and Microsoft Powerpoint .pptx formats.

Lectures will be recorded using Panopto.

Preview! 1st lecture below.

August

Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint
8/25 lecture1.pdf lecture1.pptx 24 Viewer Administrivia (Syllabus) and Introduction:
Natural Language processing tools: SMT parser, Google n-grams, and the Natural Language Toolkit (NLTK).
The fundamental nature of computation: the Turing Machine, Busy Beavers example.
8/27 lecture2.pdf lecture2.pptx 27 Viewer Two kinds of computer language.
Binary and hexadecimal. Computer vs. Human Brain. Machine Language. Parallelism and supercomputers. Integers and 2's complement arithmetic. Binary Coded Decimal (BCD). Floating point numbers.
Homework 1 postponed until next time.

September

tr>
Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint
9/1 lecture3.pdf lecture3.pptx 31 Part 1: Viewer Part 2: Viewer Binary numbers contd. Homework 1.
Character representation: ASCII and Unicode. HTML5 and Unicode.
9/4 lecture4.pdf lecture4.pptx 24 Viewer Homework 1 review. Python len() and sys.maxsize.
Character representation contd.: HTML5 and Unicode.
Homework 2. Installing Ubuntu as a guest operating system on your Windows 11 machine.
Recommend installing Microsoft's Windows Sub-system for Linux 2 (WSL2).
Navigating around the hierarchical file system: pwd, cd, ~, .., .
Text editor: nano.
sudo prefix, rm
Checking the Ubuntu version, Tk graphics with Python, and Pip (package manager).
pokemon.html / pokemon2.html / pokemon3.html

October

Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint
9/9 lecture5.pdf lecture5.pptx 18 Viewer Terminal commands. The Bash shell.
Control-D, what it means. Control-G, ringing the bell.
The bc calculator.
Shell variables. Shell commands. Directories and files. Shell arithmetic using expr and ((...)).
PS1 prompt customization.
.bashrc editing using nano.
Terminal log: terminal5.txt

November

w
Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint

December

Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint


To my linguistics homepage
Last modified: Mon Sep 7 20:45:26 MST 2026