-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCS Book for Teens.page
33 lines (21 loc) · 4.59 KB
/
CS Book for Teens.page
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
See also: The work of _why, especially Hackety Hack
A Harvard CS professor wants to make a book targeted to high school sophomores with this goal:
> We want to hear people say: I decided to try computer science because of this book.
That was my attempt with the computer club, but I unfortunately never really reached through to anyone. I have learned a lot of what doesn’t work and have picked up a few ideas I could possibly implement with more resources.
I find that his sample chapter (error-correcting codes… MAO Hawaii, anyone?) is also unlikely to live up to his goal. Even an article of that length is a commitment for a sophomore, so we want something that’s both easily digestible and beyond merely intellectually stimulating.
Here are a few of my suggestions:
* He mentions pictures but take it to a greater extreme: the comic. Ok — a pure comic book brings us the extra problem of convincing the average sophomore that comic books aren’t lame, but perhaps a thinly veiled comic. I remember (believing I was) learning physics really well from the Cartoon Guide to Physics in something like 4th grade. I was reminded and further convinced of comics as a teaching medium after reading Understanding Comics a few weeks ago, a graphic novel explaning some of the artistic merit and method behind the long history of comics.
* The disciples of CS wield great power by manipulating not only computational capabilities but also a primary medium of communication. We want to demonstrate that. I think each chapter in the book should link to an online, easy to use, guided demo that lets the user have meaningful results. More on this later.
* Mitzenmacher suggests talking about the open problems of CS. That might appeal to a know-it-all CS whiz, but I think wouldn’t be down-to-earth enough for the average student. I’d say to allow that for one section of the book.
What sections do we include?
* 99% of people who have just picked up an interest in “computer science” are really interested in “making games”. We want most people to move beyond that, but it’s certainly a fine gateway topic, and there’s tons of non-trivial CS involved. I would say to have an entire “CS of Games” section: basics of 3D, collision detection, programming events, etc. There’s already been a lot of work on the front of attracting interest through games. Alice has done really well attracting girls, and one day it might actually look non-disgusting (though they announced v3 in 2006 and Sims 2 is old news). There’s also a billion game programming for teens books, but it’s been a while since I checked that scene out.
* The web, particularly content sharing and creation sites like YouTube, blogs, social networks, etc. is the center of computer attention for most teens and also sports very active development and lots of money.
* Modeling for finance, science, sociology, etc.
* I don’t know if hacking is as cool as it used to be, but we can try to get away with talking about some basics of computer security. I know I bought Hacking Exposed (and never read it) back in the day.
* Robotics and AI. Everything from cars to electric razors has software on it nowadays. [via Dr. Gray]
* There’s such a wide range of people that can be impacted by CS, so we should take advantage of that. Musician? Computer generated music. Artist? 3D modeling programs, photography editing, illustration. Mathematician? Umm… everything. Mathematician/artist? Fractals and other code-generated art. It goes on and on.
The general theme (discussion in book -> activity introduced in book/carried out through website -> result on website) is
big abstract idea (demonstrating something cool) -> simplified specialized hands-on activity (demonstrating real CS) -> personalized big results (demonstrating both cool and CS)
For example, plugging a simple search algorithm into a sophisticated AI program, developing your own model of something with existing tools and data.
Commenters on Hacker News pointed out that an accessible overview of CS already exists: the Turing Omnibus. In fact, I have the book. It helped enhance my interest in the field, but without that interest well-seeded I certainly wouldn’t have bothered to pick it up. If Mitzenmacher wants to continue down the error-correcting codes path, I doubt he’ll do much to exceed the work of the Omnibus, but if he can manage to pull a fun and widely appealing but still substantial guide, his goal is within reach.
I think I might actually approach the prof as a volunteer with perhaps not as much experience as, say, another professor, but as someone who can keep the interests of the lazy high schooler in mind.