CS156, Spring 2021

Conrad Instructor

Phill Conrad is a Senior Lecturer in the CS department at UCSB. He is interested in ways of incorporating authentic software development experiences into undergraduate computer science courses. Outside of CS, his interests include piano, guitar, hiking and meditation.

num ready? description assigned MW lect due MW lect assigned TR lect due TR lect
jpa00 true Getting Started Mon 03/29 12:30PM Fri 04/02 11:59PM
jpa01 true Testing: test coverage and mutation testing Mon 03/29 12:30PM Fri 04/09 11:00PM
jpa02 true Spring Boot and Heroku Hello World Tue 03/30 05:00PM Tue 04/13 11:59PM
jpa03 true Deploying full stack app with Auth0 and Database Wed 04/21 05:00PM Tue 04/27 11:00PM
jpa04 true ArrayList, Sorting, Comparators, Lambdas Mon 04/26 05:00PM Wed 05/05 11:59PM
team01 true Team Project: Spring Boot Backend, part 1 (unauthenticated RESTFul APIs) Tue 04/13 05:00PM Wed 04/21 11:59PM
team02 true Team Project: Front End: Javascript, React, Jest, Stryker Mon 05/03 12:30PM Sat 05/15 11:59AM
team03 true Deploying Team Deployment of Legacy Code App (Course Search/LAs/Mapache) Thu 03/04 05:00PM Thu 03/11 11:59PM

New Version

num ready? description assigned MW lect due MW lect assigned TR lect due TR lect
h00 true HFJ Ch 1,2; JN7: Ch1; Student-ex01 Mon 03/29 12:00AM Wed 03/31 11:00PM
h01 true Listening to Developers Mon 03/29 12:00AM Sun 04/04 11:59PM
h02 true HFJ Ch 3, HFJ Ch 4 Wed 03/31 12:00AM Wed 04/07 11:00PM
h03 true HFJ Ch4, HFJ 5, JN7 pp 82-88 Mon 04/05 12:00AM Mon 04/12 11:00PM
h04 true HFJ Ch 7, 8, and JN7 Ch2 pp 33-50, Ch3, Ch4 up to Generics Mon 04/05 12:00AM Wed 04/14 11:00PM
h05 true HFJ Ch 9, 10, 11; JN7 Ch2 (from p. 71 forward) Mon 04/12 12:00AM Mon 04/19 11:00PM
h06 true HFJ 16 Mon 04/19 12:00AM Fri 04/23 11:00PM
p00 true First Day Team Activity Mon 03/29 12:30PM Mon 03/29 01:45PM
p01 true Setting up Team NOTES repo, dividing up LTD paper sections Tue 03/30 05:00PM Tue 03/30 07:50PM
p02 true Discussion of LTD paper sections (jigsaw) Tue 03/30 05:00PM Tue 03/30 07:50PM
p03 true organizing for team01 Tue 04/13 12:00AM
p04 true Online standup for team01 Wed 04/14 12:00AM

See also: LECTURE* repos from https://github.com/ucsb-cs156-s21

num date description
Lecture 00 Mon 03/29 Introduction to CS156
Lecture 01 Tue 03/30 Set up team NOTES repos, divide up LTD sections
Lecture 02 Tue 03/30 Code Coverage and Mutation Testing (jpa01)
Lecture 03 Mon 04/05 Mon Lecture: Extra Credit Opportunity (Survey), Informed Consent
Lecture 04 Tue 04/06 Tue Discussion: work on jpa01, jpa02
Lecture 05 Wed 04/07 Wed Lecture: follow up on H01, LTD paper
Lecture 06 Mon 04/12 Mon Lecture: introducing team01, feature branch workflow, pull requests
Lecture 07 Tue 04/13 Tue Discussion: started team01, participation activity P03
Lecture 08 Wed 04/14 Wed Lecture: testing aspect of team01, mocking/stubbing in Java (Mockito), code reviews and PRs
Lecture 09 Mon 04/19 Mon Lecture: Update on CI/CD pipeline for team01, plus intro to JS
Lecture 10 Tue 04/20 Tue Discussion: Team Standup for team01, work on team01
Lecture 11 Wed 04/21 Wed Lecture: Team Standup for team01, work on team01--if done, work on jpa03
Lecture 12 Mon 04/26 Mon Lecture: Background for jpa04: Sorting, Comparable, Comparator, Lambdas (Async ok, no team activity)
Lecture 13 Tue 04/27 Tue Discussion: Work session on jpa03/jpa04
Lecture 14 Wed 04/28 Wed Lecture: Intro to JavaScript/React, and the team02 project
Lecture 15 Mon 05/03 Mon Lecture: Start team02
Lecture 16 Tue 05/04 Tue Section: Start team03
Lecture 17 Wed 05/05 Wed Lecture: continue team03
Tue 09/13
Lecture 18 Mon 05/10 Mon Lecture:
Lecture 19 Tue 05/11 Tue Discussion: First Legacy Code Project Sprint
Lecture 20 Wed 05/12 Wed Lecture:
Lecture 21 Mon 05/17 Mon Lecture:
Lecture 22 Tue 05/18 Tue Discussion:
Lecture 23 Wed 05/19 Wed Lecture:
Lecture 24 Mon 05/24 Mon Lecture:
Lecture 25 Tue 05/25 Tue Discussion:
Lecture 26 Tue 05/25 Wed Lecture:
Lecture 28 Tue 06/01 Tue Discussion: Presentation Planning (or merging PRs)
Lecture 28 Thu 05/27 Wed Lecture (final lecture): Work on team video presentation
Lecture 29 Tue 06/08 Final Exam Slot (Jun 8, noon-3pm) Final Demos