CS400: Programming III

Spring 2019 Lectures 001, 002 and 004

   Refresh page to see latest announcements. [Readings]


  • We have released scores for all assignments.
  • We hope to complete review of all grades on Tuesday and to submit final grades on Wednesday.
  • Piazza
    Getting Started with Linux (pdf)


    Deb Deppeler Lecture 001 Meetings Lecture 002 Meetings
    • Email: deppeler at cs.wisc.edu server
    • Office: 5376 Computer Sciences
    • Office Hours:
      Mondays: typically available between noon and 1pm (Not available on Monday 4/29)
      Wednesdays: 9:30-11:30AM
      Thursdays: 11:00-12:30PM, and 3:45-4:15pm in 113 Psychology
      and by appt
    • Days: Tuesdays and Thursdays
    • Time: 9:30 AM - 10:45 AM
    • Room: 113 Psychology
    • Days: Tuesdays and Thursdays
    • Time: 2:30 PM - 3:45 PM
    • Room: 113 Psychology
    Andy Kuemmel Lecture 004 Meetings  
    • Email: kuemmel at cs.wisc.edu server
    • Office: 5395 Computer Sciences
    • Office Hours:
      Tuesdays 1:00PM-3:00PM 5395CS
      Wednesdays: 2:15-3:00PM 132 Noland (or nearby)
      Thursdays: 1:00-2:00PM 5395CS
      Fridays: 2:15-3:00PM 132 Noland (or nearby)
      and by appt
    • Days: Mondays, Wednesdays, and Fridays
    • Time: 1:20 PM - 2:10 PM
    • Room: 132 Noland Hall

    Teaching Assistants

    Name Email Lab Hours xteam coach for
    Gautham Sunjay gautham at cs.wisc.edu Tuesday 3-5p, Wednesday 5-8p 001-015
    Katie Zutter zutter at cs.wisc.edu Thursday 3-8p 030-045
    Madan Raj hmadanraj at cs.wisc.edu Monday 3-5p, Tuesday 5-8p 114-127
    Nivi Hariharan nhariharan at cs.wisc.edu Thursday 3-8p, 016-029
    Roshan Lal groshanlal at cs.wisc.edu Tuesday 5-8p, Thursday 5-7p079-091
    Sapan Gupta sapan at cs.wisc.edu Monday 4-9p 100-113
    Varun Thumbe thumbe at cs.wisc.edu Monday 3-5p, Tuesday 5-8p 051-064
    Vibhor Goel vgoelsj at cs.wisc.edu Wednesday 6-8p, Thursday 5-8p 128-141
    Yash Trivedi ytrivedi at cs.wisc.edu Monday, Wednesday 7-9p 065-078

    Madan Raj

    Learning Outcomes

    Students will be able to ...

    1. describe, use, and implement efficient data structures including balanced search trees, hash tables, and graphs.
    2. work effectively in project teams by establishing goals, rules of conduct, and effective communication strategies
    3. analyze the complexity and performance of different algorithm and data structure choices
    4. prepare and present program design choices to stakeholders
    5. able to define custom data structures and implement desired operations as needed
    6. design and implement an effective dashboard graphic user interface
    7. find, install, configure, and use language and project development tools

    Let's Get Started

    To master the all of the required knowledge and skills for each of our learning outcomes, it can take months to years. To introduce each topic, we will cover fundamental concepts, algorithms, design patterns, and specific examples. We will expect students to apply what they have learned to new problems. Students will use online readings, third-party tutorials, lecture presentations, teamwork exercises, individual quizzes, programming assignments to learn and practice skills.

    Report broken links and accessibility issues to deppeler at server cs.wisc.edu
    Copyright ©2018 Debra Deppeler, All rights reserved.