CMSC330

Intro

Intro

Course Info
Course Overview
Unwanted Advice

Course Info

Course Info

Class Times

Time: TTh 12:30-1:45, 2:00-3:15, 3:30-4:45

Discussion: Fridays

Notes will be released along with slides

Assignments
  • Exams (in-person)
  • Projects
  • Discussions
  • Quizzes (in discussion)
  • Lecture Quizzes (online)
Assignments
  • Exams (in-person)
    • March 14th
    • April 20th
    • Final TBD
  • Projects
  • Discussions
  • Quizzes (in discussion)
  • Lecture Quizzes (online)
Assignments
  • Exams (in-person)
  • Projects
    • 5 of them
    • 1,2,4 are Broken into 2 parts
    • Submit on Gradescope
  • Discussions
  • Quizzes (in discussion)
  • Lecture Quizzes (online)
Assignments
  • Exams (in-person)
  • Projects
  • Discussions
    • Coding exercises
    • Project implementation
  • Quizzes (in discussion)
  • Lecture Quizzes (online)
Assignments
  • Exams (in-person)
  • Projects
  • Discussions
  • Quizzes (in discussion)
    • 5 Quizzes
    • Dates: 2/10,2/24,3/17,4/14,5/5
  • Lecture Quizzes (online)
Office Hours
  • Cliff: in person (IRB2238)
  • TA: IRB1108 (Next door)
  • TA: Online
Extensions and Absences
  • Can submit 24 hours late for a 10% penalty
  • You have five (5) 12-hour tokens to use on any project
  • Late penalty will not apply if tokens used
  • Any university sick excuse is exempt from this: contact me
  • Communication is key: reach out, be reasonable

Course Info

Syllabus

Common things people miss on syllabus

  • Token use
  • Good Faith Attempt
  • email: [CMSC330]
  • Office Hour Debugging
  • Excused Absences

Course Overview

Programming languages are like spoken languages

  • What is a Language?
  • How do we use Language?
  • Why do so many languages exist?

Why do so many languages exist?

  • Language Features help us express ourselves
  • Semantics and Syntax

End Goal

  • Make your own programming language
  • Combine elements from one language to another

Unwanted Advice

Ask Questions

Make Friends

Start Projects Early

Feel Emotions

Expect to get things wrong