20
$\begingroup$

What is a good beginner computer science book for a young adult, say, a 15 year old? I want to get started in CS, but have no idea where to start. I have limited experience in programming.

$\endgroup$

migrated from cstheory.stackexchange.com Mar 30 '12 at 2:42

This question came from our site for theoretical computer scientists and researchers in related fields.

14
$\begingroup$

Even this might be too basic for teenager, I nicely shows how to abstract problems, and is applicable for kids :

I highly recommend all CS people to take a look at: Computer Science Unplugged , just to see how CS can look different :).

For young CS minded people I recommend to develop intuition by solving programming tasks from problem solving contests, like programming contests: ACM ICPC, Olympiads in Informatics etc.

It's nice way to go into "Practical Algorithmic" , which gives you best from both worlds: programming and algorithms. Thanks to that you will be prepared to go in future in both directions: CS oriented industry (Google, Yahoo etc), and University CS.

Nice places to start:

$\endgroup$
11
$\begingroup$

Several favorite references which would be accessable to a highly motivated or advanced teenager.

[1] New Turing Omnibus by AK Dewdney. Has a grab bag of some of the more interesting key concepts of CS. A very visual approach. AK Dewdney has experience writing the mathematical games and puzzles column for Scientific American.

[2] Godel, Escher, Bach, the eternal golden braid by Douglas Hofstadter. Considered a classic by many. Focuses on Godel's theorem and incompleteness from a computational angle. Cited by many computer scientists as a favorite. See also Wikipedia reference

[3] Out of their minds: lives of 15 great computer scientists by Shasha and Lazere. Bios and interviews with many of the greats & some legends such as Cook, Knuth etc.

$\endgroup$
5
$\begingroup$

If you like, take one of the online courses following these links:

MIT OpenCourseWare

Coursera 2012

$\endgroup$
  • 3
    $\begingroup$ Are those suited for teens? $\endgroup$ – Raphael Mar 31 '12 at 7:18
5
$\begingroup$

The Pattern On The Stone: The Simple Ideas That Make Computers, by Daniel Hillis, is a very good introduction, starting from the logic building blocks up to programming, algorithms and computer architecture.

$\endgroup$
4
$\begingroup$

A good introductory book for Computer Science is Brookshear - Computer Science: An Overview.

David Harel's Algorithmics is a classic.

$\endgroup$
1
$\begingroup$

I think Problem-Solving Strategy is an interesting book for teens. It does not need a deep mathematical background. However, if its math is too hard you can find an interesting and small book about discrete mathematics¹ to read first and then switch back to this book. I read it when I was in high school and this book motivated me to do stuff in CS.


  1. I think what constitutes a discrete mathematics book for teens depends on native culture and language. I know a good one in my language, but I do not know any good ones in other languages. These are related Persian books: Alphabet of Mathematics and Computer Olympiad. Mathematics for teens by Yahya Tabesh. I couldn't find its link in the web, may be is too old. Also I'm not sure I said the name correctly, I remember it because of interesting images and its beautiful cover.
$\endgroup$
  • $\begingroup$ Can you name the discrete maths book you liked? I am sure Persian speaking visitors will appreciate the reference. $\endgroup$ – Raphael Apr 10 '12 at 17:32
  • $\begingroup$ @Raphael, I added my references, but seems they are old, I'm sure Persian students can find very better than this books for math, currently I'm not aware about changes. $\endgroup$ – user742 Apr 10 '12 at 19:16
0
$\begingroup$

Algorithmic Puzzles, by Anany Levitin & Maria Levitin.

Houses puzzles for all skill levels from readers with only middle school mathematics to seasoned puzzle solvers.

Starts with some Mathematical and Algorithmic background, sorts problems though Easy, Medium and Hard, gives both Hints and Solutions so it's great for self study.

$\endgroup$