SLIDE 1
Lecture 30: Conclusion Brian Hou August 11, 2016 Announcements - - PowerPoint PPT Presentation
Lecture 30: Conclusion Brian Hou August 11, 2016 Announcements - - PowerPoint PPT Presentation
Lecture 30: Conclusion Brian Hou August 11, 2016 Announcements Announcements Final Exam tomorrow (8/12) from 5-8pm in 155 Dwinelle Announcements Final Exam tomorrow (8/12) from 5-8pm in 155 Dwinelle Last part of AutoStyle EC study
SLIDE 2
SLIDE 3
Announcements
- Final Exam tomorrow (8/12) from 5-8pm in 155 Dwinelle
SLIDE 4
Announcements
- Final Exam tomorrow (8/12) from 5-8pm in 155 Dwinelle
- Last part of AutoStyle EC study is due today
SLIDE 5
Announcements
- Final Exam tomorrow (8/12) from 5-8pm in 155 Dwinelle
- Last part of AutoStyle EC study is due today
- Homework 12 out later today, due Saturday 8/13
SLIDE 6
Announcements
- Final Exam tomorrow (8/12) from 5-8pm in 155 Dwinelle
- Last part of AutoStyle EC study is due today
- Homework 12 out later today, due Saturday 8/13
- End-of-semester survey, one more extra credit point!
SLIDE 7
Scheme Recursive Art Contest
http://art.cs61a.org/
SLIDE 8
Scheme Recursive Art Contest
SLIDE 9
- Congratulations to everyone who participated in this
semester's Scheme Recursive Art Contest!
Scheme Recursive Art Contest
SLIDE 10
- Congratulations to everyone who participated in this
semester's Scheme Recursive Art Contest!
- Thank you to everyone who helped us decide the winners!
Scheme Recursive Art Contest
SLIDE 11
Featherweight (Third Place)
SLIDE 12
Featherweight (Third Place)
SLIDE 13
Featherweight (Third Place)
Mandelbrot Frrrrraction!! Peilin Lu 13.1% of votes
SLIDE 14
Featherweight (Second Place)
SLIDE 15
Featherweight (Second Place)
SLIDE 16
Featherweight (Second Place)
Tail-recursive Gyarados Leo Adberg and Amir Shahatit 13.4% of votes
SLIDE 17
Featherweight (First Place)
SLIDE 18
Featherweight (First Place)
SLIDE 19
Featherweight (First Place)
Staring Eye Renhua Liu 14.4% of votes
SLIDE 20
Heavyweight (Third Place)
SLIDE 21
Heavyweight (Third Place)
SLIDE 22
Heavyweight (Third Place)
Vigil for The Person Who Got -5 Points in CS61A Xiaocheng Yang and Zeyana Musthafa 14.1% of votes
SLIDE 23
Heavyweight (Second Place)
SLIDE 24
Heavyweight (Second Place)
SLIDE 25
Heavyweight (Second Place)
EE/CS Master Trainers Alex Bondarenko 28.4% of votes
SLIDE 26
Heavyweight (First Place)
SLIDE 27
Heavyweight (First Place)
SLIDE 28
Heavyweight (First Place)
Origin of Life Yi Xu and Jianhui Li 30.0% of votes
SLIDE 29
Congratulations!
SLIDE 30
What is CS 61A?
SLIDE 31
CS 61A in one slide
SLIDE 32
CS 61A in one slide
- High-level ideas in computer science:
SLIDE 33
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
SLIDE 34
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
SLIDE 35
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
SLIDE 36
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
SLIDE 37
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
- Master these ideas through implementation:
SLIDE 38
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
- Master these ideas through implementation:
- Learn the Python programming language (& others)
SLIDE 39
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
- Master these ideas through implementation:
- Learn the Python programming language (& others)
- Complete large programming assignments
SLIDE 40
CS 61A in one slide
- High-level ideas in computer science:
- Abstraction: manage complexity
by hiding the details
- Paradigms: utilize different
approaches to programming
- Master these ideas through implementation:
- Learn the Python programming language (& others)
- Complete large programming assignments
- A challenging course that will demand a lot from you
SLIDE 41
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 42
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Introduction), the goals are:
SLIDE 43
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Introduction), the goals are:
- To learn the fundamentals of
programming
SLIDE 44
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Introduction), the goals are:
- To learn the fundamentals of
programming
- To become comfortable with Python
SLIDE 45
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 46
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Functions), the goals are:
SLIDE 47
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Functions), the goals are:
- To understand the idea of
functional abstraction
SLIDE 48
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Functions), the goals are:
- To understand the idea of
functional abstraction
- To study this idea through:
SLIDE 49
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Functions), the goals are:
- To understand the idea of
functional abstraction
- To study this idea through:
- higher-order functions
SLIDE 50
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Functions), the goals are:
- To understand the idea of
functional abstraction
- To study this idea through:
- higher-order functions
- recursion
SLIDE 51
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Functions), the goals are:
- To understand the idea of
functional abstraction
- To study this idea through:
- higher-order functions
- recursion
- rders of growth
SLIDE 52
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 53
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Data), the goals are:
SLIDE 54
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Data), the goals are:
- To continue our journey through
abstraction with data abstraction
SLIDE 55
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Data), the goals are:
- To continue our journey through
abstraction with data abstraction
- To study useful data types we can
construct with data abstraction
SLIDE 56
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 57
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This short week (Mutability), the
goals are:
SLIDE 58
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This short week (Mutability), the
goals are:
- To explore the power of values
that can mutate, or change
SLIDE 59
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 60
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Objects), the goals are:
SLIDE 61
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Objects), the goals are:
- To learn the paradigm of
- bject-oriented programming
SLIDE 62
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Objects), the goals are:
- To learn the paradigm of
- bject-oriented programming
- To study applications of, and
problems that be solved using, OOP
SLIDE 63
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 64
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Interpretation), the
goals are:
SLIDE 65
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Interpretation), the
goals are:
- To learn a new language, Scheme,
in two days!
SLIDE 66
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Interpretation), the
goals are:
- To learn a new language, Scheme,
in two days!
- To understand how interpreters
work, using Scheme as an example
SLIDE 67
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 68
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Paradigms), the goals are:
SLIDE 69
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Paradigms), the goals are:
- To study examples of paradigms
that are very different from what we have seen so far
SLIDE 70
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Paradigms), the goals are:
- To study examples of paradigms
that are very different from what we have seen so far
- To expand our definition of what
counts as programming
SLIDE 71
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
SLIDE 72
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Applications), the goals are:
SLIDE 73
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Applications), the goals are:
- To go beyond CS 61A and see examples
- f what comes next
SLIDE 74
Roadmap Introduction Functions Data Mutability Objects Interpretation Paradigms Applications
- This week (Applications), the goals are:
- To go beyond CS 61A and see examples
- f what comes next
- To wrap up CS 61A!
SLIDE 75
Life After CS 61A
SLIDE 76
Classes at Berkeley
SLIDE 77
- What you learn is much more important than your grade!
Classes at Berkeley
SLIDE 78
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
Classes at Berkeley
SLIDE 79
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
Classes at Berkeley
SLIDE 80
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
Classes at Berkeley
SLIDE 81
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
- Taught by Professor Ani Adhikari in Fall 2016
Classes at Berkeley
SLIDE 82
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
- Taught by Professor Ani Adhikari in Fall 2016
- Other EECS lower division courses:
Classes at Berkeley
SLIDE 83
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
- Taught by Professor Ani Adhikari in Fall 2016
- Other EECS lower division courses:
- CS 70 (Discrete Mathematics and Probability Theory)
Classes at Berkeley
SLIDE 84
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
- Taught by Professor Ani Adhikari in Fall 2016
- Other EECS lower division courses:
- CS 70 (Discrete Mathematics and Probability Theory)
- CS 61C (Machine Structures)
Classes at Berkeley
SLIDE 85
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
- Taught by Professor Ani Adhikari in Fall 2016
- Other EECS lower division courses:
- CS 70 (Discrete Mathematics and Probability Theory)
- CS 61C (Machine Structures)
- EE 16A/16B (Designing Information Devices and Systems)
Classes at Berkeley
SLIDE 86
- What you learn is much more important than your grade!
- CS 61B (Data Structures and Algorithms)
- Taught by Professor Paul Hilfinger in Fall 2016
- Data Science 8 (Foundations of Data Science)
- Taught by Professor Ani Adhikari in Fall 2016
- Other EECS lower division courses:
- CS 70 (Discrete Mathematics and Probability Theory)
- CS 61C (Machine Structures)
- EE 16A/16B (Designing Information Devices and Systems)
- EECS upper division courses
Classes at Berkeley
SLIDE 87
Life Outside the Classroom
SLIDE 88
- Program for fun! Build things that you think are cool
Life Outside the Classroom
SLIDE 89
- Program for fun! Build things that you think are cool
- Hackathons are a great place for this to happen
Life Outside the Classroom
SLIDE 90
- Program for fun! Build things that you think are cool
- Hackathons are a great place for this to happen
- Try an internship or join a research project
Life Outside the Classroom
SLIDE 91
- Program for fun! Build things that you think are cool
- Hackathons are a great place for this to happen
- Try an internship or join a research project
- Don't forget to do things that aren't CS-related!
Life Outside the Classroom
SLIDE 92
Lab Assisting
SLIDE 93
- The best way to give back to the CS community
Lab Assisting
SLIDE 94
- The best way to give back to the CS community
- Anyone who passes the course can be a lab assistant
Lab Assisting
SLIDE 95
- The best way to give back to the CS community
- Anyone who passes the course can be a lab assistant
- Develop greater mastery of course concepts
Lab Assisting
SLIDE 96
- The best way to give back to the CS community
- Anyone who passes the course can be a lab assistant
- Develop greater mastery of course concepts
- Learn to describe technical concepts (great preparation
for technical interviews!)
Lab Assisting
SLIDE 97
- The best way to give back to the CS community
- Anyone who passes the course can be a lab assistant
- Develop greater mastery of course concepts
- Learn to describe technical concepts (great preparation
for technical interviews!)
- The first step to joining the course staff as a tutor or
teaching assistant
Lab Assisting
SLIDE 98
- The best way to give back to the CS community
- Anyone who passes the course can be a lab assistant
- Develop greater mastery of course concepts
- Learn to describe technical concepts (great preparation
for technical interviews!)
- The first step to joining the course staff as a tutor or
teaching assistant
Lab Assisting
https://piazza.com/class/ipkfex1ne3p56y?cid=1682
SLIDE 99
Thank you!
SLIDE 100