Live data from Hacker News

How to Think Like a Computer Scientist: Interactive Edition

levjj.github.io

11–20 of 29 posts

Re: How to Think Like a Computer Scientist: Interactive Edition

#12
post #10

Slightly off topic, but does anyone have experience using the book this is based on to teach or learn programming? If so what was your experience like? What was good or bad about it for example?

Its really more of an entry level Python book than really teaching you how to think like a computer scientist imo.

Re: How to Think Like a Computer Scientist: Interactive Edition

#13
post #10

Slightly off topic, but does anyone have experience using the book this is based on to teach or learn programming? If so what was your experience like? What was good or bad about it for example?

Yes.

I have read the book in at least two programming languages.

I'm a huge fan of Downey for lowering the entry bar to solid logic and reason around computer science, particularly when introducing Python to novice learners outside traditional collegiate computer science programs.

For this reason, I've recommended the book to friends who teach or have kids.

What's great about Downey is that he brings together concise and clear writing with unimpeachable correctness, a quality that was missing from my computer science education, where the curriculum was set in stone and was decades old and written by someone without Downey's gifts.

The fact that this jupyter stack runs on a five year old android phone without issue is a bonus!

Re: How to Think Like a Computer Scientist: Interactive Edition

#14
post #10

Slightly off topic, but does anyone have experience using the book this is based on to teach or learn programming? If so what was your experience like? What was good or bad about it for example?

I used the Runestone book How To Think Like A Computer Scientist (I don't see any difference between the linked book and the Runestone one); completed the full book front to back, and have a deep appreciation for it.

I didn't have any interest at all in programming or computers until my mid-30s, when a colleague in grad school showed me some Python tricks that completely replaced a set of absolutely hideous Excel spreadsheets. My interest was sparked, but I struggled - there was some kind of mental barrier I just couldn't hop over in order to make sense of programming language syntax. This book got me over that hump and sent me on my way. Several years later, I've switched careers and work with Python professionally, and in my spare/hobby time I work on a variety of C, Rust, and Zig projects.

What I liked: there is no barrier to entry. For a person with only the most basic/cursory understanding of, and no real interest in, computers, this was huge: no need to install, get an editor set up, no need to understand anything about the shell, PATH issues, or how to run a script or work with environments or anything like that. All of that came later. I liked the CodeLens diagrams a lot, the visualization was critical to that 'aha!' moment. I think the book is well organized; the flow from chapter to chapter, concept to concept, made a lot of sense to me. Overall, the book gave me a sense of 'making progress', challenging me while keeping things light and fun and interesting.

I don't have any complaints. This book got me to the point where I was just skilled enough to automate basic and useful things, and interested enough to start diving in properly and learn how computers really work. Since completing it, I've been learning pretty much nonstop.

Re: How to Think Like a Computer Scientist: Interactive Edition

#15
post #2

The table of contents makes me feel like the book title should be "How to use a computer like a scientist" - computer science already has a meaning which is quite different.

And science also has a meaning which has nothing to do with programming. What makes you think that most scientists use computers in this way?

[dead]

Re: How to Think Like a Computer Scientist: Interactive Edition

#19

Totally unrelated but did anyone check the author's CV? He has had multiple intern dev roles even though he had at least 5 years of previous dev experience

Per his CV he was getting a masters and a PhD at the time. Graduate students often take internships, it's a way of getting funding, extra experience, or just to earn some money while not committing to a full-time position.

Also, I don't think he's the author of this, his name is not in the list of authors. This seems to be a mirror, perhaps with some customization for his class. Probably from his time teaching the intro to Python course (also on his CV) at UCSC.

Re: How to Think Like a Computer Scientist: Interactive Edition

#20

The site: levjj.github.io is trying to scan open ports in system. (Blocked by Port Authority add-on in Firefox) That is not thinking like a Computer Scientist.

Looks like it's trying to use Runestone[0] (a textbook authoring tool) to get the number of online students but the server url is improperly configured to point at localhost (hence the port scan trigger).

[0] https://runestoneserverascholer.readthedocs.io/en/latest/ind...

Post reply on HN