How to Think Like a Computer Scientist: Learning with Python 3

How to Think Like a Computer Scientist: Learning with Python 3

The goal of this book is to teach you to think like a computer scientist. The programming language you will be learning is Python.

Publication date: 17 Apr 2020

ISBN-10: n/a

ISBN-13: n/a

Paperback: 384 pages

Views: 17,190

Type: Book

Publisher: n/a

License: GNU Free Documentation License Version 1.3

Post time: 01 Mar 2021 01:00:00

How to Think Like a Computer Scientist: Learning with Python 3

How to Think Like a Computer Scientist: Learning with Python 3 The goal of this book is to teach you to think like a computer scientist. The programming language you will be learning is Python.
Tag(s): Introduction to Computer Science Python
Publication date: 17 Apr 2020
ISBN-10: n/a
ISBN-13: n/a
Paperback: 384 pages
Views: 17,190
Document Type: Book
Publisher: n/a
License: GNU Free Documentation License Version 1.3
Post time: 01 Mar 2021 01:00:00
Summary/Excerpts of (and not a substitute for) the GNU Free Documentation License Version 1.3:
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

Click here to read the full license.
Excerpts From Chapter 1:

Jeffrey Elkner wrote:
The goal of this book is to teach you to think like a computer scientist. This way of thinking combines some of the best features of mathematics, engineering, and natural science. Like mathematicians, computer scientists use formal languages to denote ideas (specifically computations). Like engineers, they design things, assembling components into systems and evaluating tradeoffs among alternatives. Like scientists, they observe the behavior of complex systems, form hypotheses, and test predictions. 

The single most important skill for a computer scientist is problem solving. Problem solving means the ability to formulate problems, think creatively about solutions, and express a solution clearly and accurately. As it turns out, the process of learning to program is an excellent opportunity to practice problem-solving skills. That’s why this chapter is called, The way of the program. 

On one level, you will be learning to program, a useful skill by itself. On another level, you will use programming as a means to an end. As we go along, that end will become clearer.  

Resources:




About The Author(s)


Allen B. Downey (born May 11, 1967) is an American computer scientist, Professor of Computer Science at the Franklin W. Olin College of Engineering and writer of free textbooks. Downey received in 1989 his BS and in 1990 his MA, both in Civil Engineering from the Massachusetts Institute of Technology, and his PhD in Computer Science from the University of California at Berkeley in 1997.
 

Allen B. Downey

Allen B. Downey (born May 11, 1967) is an American computer scientist, Professor of Computer Science at the Franklin W. Olin College of Engineering and writer of free textbooks. Downey received in 1989 his BS and in 1990 his MA, both in Civil Engineering from the Massachusetts Institute of Technology, and his PhD in Computer Science from the University of California at Berkeley in 1997.
 


Adjunct faculty member in information technology and computer science at Northern Virginia Community College with 20+ years experience teaching high school computer science, information technology, and mathematics using a constructivist approach. 

Jeffrey Elkner

Adjunct faculty member in information technology and computer science at Northern Virginia Community College with 20+ years experience teaching high school computer science, information technology, and mathematics using a constructivist approach. 


A retired programmer living in Germany, Meyers held the position of Assistant IT Director and Senior Programmer at The Register-Guard until 2012.

Chris Meyers

A retired programmer living in Germany, Meyers held the position of Assistant IT Director and Senior Programmer at The Register-Guard until 2012.


Professor at Rhodes University, South Africa.

Peter Wentworth

Professor at Rhodes University, South Africa.


Book Categories
Sponsors