Welcome to CS17
Facility Location: given client locations, select locations for facilities so that each client is close to some facility
Vehicle Routing: Given delivery locations, find most efficient routes to deliver all packages
Algorithms for political redistricting (anti-Gerrymander)
CS17 first taught twenty years ago
CS17 first taught twenty years ago
Leslie Kaelbling
John Hughes
Amy Greenwald
Claire Mathieu
1998
1999
2000
2009
CS17-18: What is it?
Previous experience required:
None
Previous experience preferred:
None
(define (eliza-respond rules phrase) …. )
(okay, Racket)
(in particular OCaml)
(because we have to)
(like Java but done right)
Purely functional
okay, languages support object-oriented
Purely object-oriented
Support for functional and object-oriented
But what is this functional programming stuff?
We’ll come back to that.
Labs: pair programming
Projects: done with a partner
Homework: collaboration encouraged (but your writeup must be done alone).
Find details of collaboration policy in the course policy document.
The craft of programming,� the intrinsic beauty of computer science
Short programs, no magic
The programs you write are entirely your own.�We don’t rely on mysterious support code or libraries.
Becoming a computer scientist: learning the dance between
applying the Rulz
making your own Rulz
Alternative to CS17
16
For Concentrators & Non-concentrators:
Andries van Dam © 2017 09/07/17
CS17 Mottos
No magic.
There is no user.
Beyond syntax.
More mottos to come….
What it takes to succeed in CS17
Prior experience in programming is a barrier �that can be overcome
It helps if you like puzzling things out.
There’s one more thing …
Michaela Kirsch, climbing the Golden Ticket (5.14C)
(Fox & Wickstrom Media, January 2017)
Commitment
How will you accomplish these amazing feats?
We have the world’s best belaying team: your TAs.
We will support you on your path to mastery.
Professor
Group office hours will be arranged; you can sign up via a link that will be emailed to you.
TAs
Getting Help
We are here to help you. The commitment part is up to you.
Getting Help
Professor
Group office hours will be arranged; you can sign up via a link that will be emailed to you.
TAs
We are here to help you. The commitment part is up to you.
Is it really that hard?
Forms of work in this course
Projects
https://xkcd.com/1935/
https://www.xkcd.com/632/
https://xkcd.com/303/
https://xkcd.com/1875/
Announcements
Popsicle Party: Sunday 1pm @ Green by MacMillan Hall
Come see us in CIT209
WiCS
Women In Computer Science
Dedicated to improving diversity and inclusion across gender identity in CS.
Join our listserv to get updates and hear opportunities!
Email wics@lists.cs.brown.edu
Ask us about:
Our mentorship program
Industry events
Community building and support
Department diversity efforts
12-3pm Sunday, ERC
Email:
designatbrown@gmail.com
designatbrown.wixsite.com/home
Design@Brown
Do you want to study design but don’t know how?