|
UC Berkeley EECS
|
UC-WISE (labs) | Piazza | bSpace |
Google+ (#cs10news) | BYOB | Webcasts |
CS10 , The Beauty and Joy of Computing , is an exciting new course offered by the UC Berkeley EECS Dept . Computing has changed the world in profound ways. It has opened up wonderful new ways for people to connect, design, research, play, create, and express themselves. However, just using a computer is only a small part of the picture. The real transformative and empowering experience comes when one learns how to program the computer, to translate ideas into code. This course will teach students how to do exactly that, using BYOB (based on Scratch ), one of the friendliest programming languages ever invented. It's purely graphical, which means programming involves simply dragging blocks around, and building bigger blocks out of smaller blocks.
But this course is far more than just learning to program. We'll focus on some of the "Big Ideas" of computing, such as abstraction, design, recursion, concurrency, simulations, and the limits of computation. We'll show some beautiful applications of computing that have changed the world, talk about the history of computing, and where it will go in the future. Throughout the course, relevance will be emphasized: relevance to the student and to society. As an example, the final project will be completely of the students' choosing, on a topic most interesting to them. The overarching theme is to expose students to the beauty and joy of computing. This course is designed for computing non-majors, although interested majors are certainly welcome to take the class as well! We are especially excited about bringing computing (through this course) to traditionally under-represented groups in computing, i.e., women and ethnic minorities.
Some context: in the Fall of 2009, we piloted a 2-unit version of this course as the freshman/sophomore seminar CS39N: The Beauty and Joy of Computing to 20 students. It was such a success that we decided to move ahead to make this course our new computing course for non-majors, replacing the venerable CS3L and CS3S . Last fall (2010) was a 90-person pilot and we're continuing to grow the course as word spreads to more students. We're continually replacing the weakest parts of the curriculum and hope you'll enjoy!
We will be using Pair Programming, described best by Laurie Williams, a computer science professor at North Carolina State University: "Two programmers working side-by-side, collaborating on the same design, algorithm, code or test. One programmer, the driver, has control of the keyboard/mouse and actively implements the program. The other programmer, the observer, continuously observes the work of the driver to identify tactical (syntactic, spelling, etc.) defects and also thinks strategically about the direction of the work. On demand, the two programmers can brainstorm any challenging problem. Because the two programmers periodically switch roles, they work together as equals to develop software."
03-08 |
Midterm Project Progress Report Submission Form
Now available Here. Only submit ONE per group. |
02-29 |
Midterm Project Proposal Submission Form
Now available Here. Only submit ONE per group. |
01-29 |
bSpace set up
You should now have access to the bSpace course: "CS10 Sp12." If you don't see it, please let us know right away! |
01-24 |
Section #8 - it's official!
Please see the weekly schedule below for the finalized days and times. |
01-23 |
Enrollment key restriction removed for UC-WISE / sage.cs / The labs
The Spring 2012 (online) lab site was set up with an enrollment key (as many of you found out when trying to "enrol" [sic] in the course). The key has been removed, so be sure to click the "enrol [sic] me in this course" link on the laft-hand side of the page (after you log in). |
01-19 |
New section, first lab tomorrow (Friday the 19th at 9am)
As the new section's (8's) first lab has already passed (Wednesday morning), it's important to go to tomorrow's (Friday's) lab at 9am if you want to attend the 8th section and/or haven't been to lab yet this week. |
01-18 |
Welcome to CS10, everyone!
Those of us on staff are really excited about sharing the Beauty and Joy of Computing with you all, and are looking forward to a great semester! -The Staff |
Webcasts
Webcasts of our lectures are freely available online!
Hour | Monday | Tuesday | Wednesday | Thursday | Friday | ||
---|---|---|---|---|---|---|---|
9:00am |
|
Lab 014
(Navin Eluthesen) 200 Sutardja Dai |
Lab 018 (Samir Makhani) 200 Sutardja Dai |
Lab 014
(Navin Eluthesen) 200 Sutardja Dai |
Lab 018 (Samir Makhani) 200 Sutardja Dai |
||
10:00am |
|
|
|||||
11:00am |
|
Lab 015
(Luke Segars) 200 Sutardja Dai |
|
Lab 015
(Luke Segars) 200 Sutardja Dai |
Discussion 102
(Yaniv (Rabbit)) 320 SODA |
||
12:00pm |
|
|
Discussion 103
(Yaniv (Rabbit)) 320 SODA |
||||
1:00pm |
|
Lab 016
(Pierce Vollucci) 200 Sutardja Dai |
|
Lab 016
(Pierce Vollucci) 200 Sutardja Dai |
|
||
2:00pm |
|
|
Discussion 105
(Luke Segars) 320 SODA |
||||
3:00pm |
Lecture
10 Evans |
Lab 017
(Navin Eluthesen) 200 Sutardja Dai |
Lecture
10 Evans |
Lab 017
(Navin Eluthesen) 200 Sutardja Dai |
Discussion 106
(Pierce Vollucci) 320 SODA |
||
4:00pm |
Lab 011
(Aijia Yan) 200 Sutardja Dai |
Lab 011
(Aijia Yan) 200 Sutardja Dai |
Discussion 107
(Navin Eluthesen) 320 SODA |
||||
5:00pm |
|
|
|
||||
6:00pm |
Lab 012
(Yaniv (Rabbit)) 200 Sutardja Dai |
|
Lab 012
(Yaniv (Rabbit)) 200 Sutardja Dai |
|
|
||
7:00pm |
|
|
|
||||
8:00pm |
Lab 013
(Yaniv (Rabbit)) 200 Sutardja Dai |
|
Lab 013
(Yaniv (Rabbit)) 200 Sutardja Dai |
|
|
||
9:00pm |
|
|
|
For the most part, we would prefer to teach this course without grades. What a wonderful concept, learning for learning sake! However, even though we can't change the "system" overnight, we can create grading policies that support learning as much as possible. The various course activities will contribute to your grade as follows:
Activity | Course Points | Percentage of Total Grade |
---|---|---|
Weekly Quizzes and Homework | 60 | 15% |
Paper | 60 | 15% |
Midterm Project | 60 | 15% |
Final Project | 60 | 15% |
Quest | 20 | 5% |
Midterm | 60 | 15% |
Final Exam | 80 | 20% |
Your letter grade will be determined by total course points, as shown in the table below. There is no curve; your grade will depend only on how well you do, not on how well everyone else does. Incomplete grades will be granted only for dire medical or personal emergencies that cause you to miss the final exam, and only if your work up to that point is satisfactory.
Points | Grade |
---|---|
390-400 | A+ |
370-389 | A |
360-369 | A- |
350-359 | B+ |
330-349 | B |
320-329 | B- |
310-319 | C+ |
290-309 | C |
280-289 | C- |
240-279 | D |
< 240 | F |
λ
BYOB : Build Your Own Blocks
λ
Scratch Forums
λ
Blown to Bits
λ
Debugging Rules!
λ
UC Berkeley
λ
College of Engineering
λ
Department of Electrical Engineering & Computer Sciences
λ
Webcast archive of 2010Fa lectures
λ
Solutions to Lab Exercises
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License