Steve Richardson: Dr. Richardson joined the BYU Computer
Science faculty in fall 2021 and has been teaching a new course (CS 401R) he
created on Machine Translation (MT). He just completed serving for four
years as the president of the Association for Machine Translation in the
Americas (AMTA) and has been involved in MT R&D for over four decades.
Before coming to BYU, he worked for 10 years as the Manager of Machine
Translation and Translation Systems at the Church of Jesus Christ of
Latter-day Saints. Prior experiences include presiding over the Brazil SΓ£o
Paulo South mission, 17 years at Microsoft Research as a Principal
Researcher and manager of the Machine Translation Group, and 11 years at IBM
working on NLP and MT. His lab at BYU is now creating a large corpus of
Church translations in over 90 languages to do research in low-resource
neural MT. He and his wife Marianna live in Alpine, Utah and have 12
children and 30 grandchildren.
Tom Stephens: Dr. Stephens graduated with B.S. in Physics
from BYU in 1996 and then went on to receive a M.S and Ph.D. in Astronomy
from New Mexico State University in 1999 & 2003. He also holds a Masters of
Library Science degree from the University of North Texas which he received
in 2016. After receiving his Ph.D, Dr. Stephens went to work at NASA's
Goddard Spaceflight Center doing software development for the Fermi
Gamma-ray Space Telescope mission, a project he still works on. He has
served as a developer, the Testing and Release Manager, Software Manager,
and as a Senior Scientific Software Developer over the years. He also served
for a year as the Information Systems Development Manager at the Science
Support Center of NASA's Stratospheric Observatory for Infra-red Astronomy
(SOFIA). For three years (2014-2017) Dr. Stephens was the Physical and
Mathematical Sciences Librarian at the Harold B. Lee Library here at BYU
before NASA lured him back. He started as professor in the Computer Science
Department in December of 2020.
We have an awesome group of TAs π. See the course website for information about them.
We have borrowed and adapted this course from UC Berkeley's CS61A course --- with their permission and help
Big thanks to UC Berkeley and their CS61A staff!
Deep understanding of programming concepts (using Python)
This course is challenging and often mind-blowing! π€―
This is not an introductory programming class.
You should have prior coding experience with branching, loops, and functions.
If you do not think you have enough programming experience, consider taking CS 110 and joining us next semester.
Everything is linked from https://cs111.cs.byu.edu
| Monday | Tuesday | Wednesday | Thursday | Friday | |
|---|---|---|---|---|---|
| Lecture | Lecture | Lecture | |||
| Section: Lab/Discussion | Section: Lab/Discussion |
You'll have the same TAs for both lab and discussion. Community! β€οΈ
Homeworks typically due Tuesday, projects typically due Friday. Start early, code often!
You can discuss the assignments at a high-level, but don't copy anyone else's code (unless it's your project partner).
UC Berkeley has all past exams available on the UCB CS61A resources page. Study early, study often!
All exams are scheduled to be held in the Testing Center.
Both midterms are open for three days, with the last day having a $5 late fee after 3:00pm.
The TAs are regularly available five days per week in the help lab at TMCB 1121. Check the schedule at cs111.cs.byu.edu/staff/#ta-lab.
Post questions on Discord. If you're debugging assignment code, follow the debugging template.
Check out our contact page for how to get in touch.
Read the syllabus. You are responsible for knowing the information there.
Learning
Community
Course Staff
Asking questions is highly encouraged
The limits of collaboration