Readit News logoReadit News
debanjan16 commented on Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding    · Posted by u/ggr2342
debanjan16 · 2 years ago
Different things workout for different people. I was overwhelmed by so many ways to do things in Python and everybody teaching their own favourite way of doing things. Similarly, all I was learning was the syntax and no problem solving skills.

Then I cam across the book How to Design Programs aka HTDP. I was skeptical at first. But I eventually started and worked through the second edition of the book available freely at https://www.htdp.org .

It was so beautiful. The teaching languages and writing examples before writing code. It made me really understand programming.

Now I can pick up any language (not that I become a language expert overnight) in a short time. I only need to map the concepts to this new language. And that's that. I can even pattern match my ideas from higher order functions to imperative looping constructs.

I have another book in to TDR list. It is Norvig's Paradigms of Artificial Intelligence Programming.

debanjan16 commented on Data-Oriented Design (2018)   dataorienteddesign.com/do... · Posted by u/DeathArrow
morelisp · 2 years ago
Those are not this.
debanjan16 · 2 years ago
Can you elaborate a bit more on the reason?
debanjan16 commented on Data-Oriented Design (2018)   dataorienteddesign.com/do... · Posted by u/DeathArrow
debanjan16 · 2 years ago
Even beginners can learn to program in a data oriented way from the beginning.

Two books that teach this style of programming to beginners are:

1. How to Design Programs - https://htdp.org/

2. A Data-Centric Introduction to Computing - https://dcic-world.org/

debanjan16 commented on Semantic compression (2014)   caseymuratori.com/blog_00... · Posted by u/noob_eng
ddellacosta · 2 years ago
> I was actually in the school of thought that this article describes until I read and worked through the book How to Design Programs

What distinguishes the approach from what is presented in this blog post, can you provide a summary for those of us who haven't read the book? I am sincerely interested.

debanjan16 · 2 years ago
The book utilises a series of Scheme based teaching languages to teach about how to write functions for increasingly complicated data types. The language levels produce meaningful error messages for programmers of that particular level and goes on adding language features as you progress through the book.

The book furthermore teaches a design recipe which comes in handy when you are stuck with a problem. Basically it teaches you to write examples first so that you understand the problem instead of jumping onto the editor to write code first. The examples help you structure your data. The rest of the code follows from it.

debanjan16 commented on Semantic compression (2014)   caseymuratori.com/blog_00... · Posted by u/noob_eng
debanjan16 · 2 years ago
I was actually in the school of thought that this article describes until I read and worked through the book How to Design Programs [0]. The rest is upto you to judge.

[0] https://htdp.org/

Edit: I would love others, who have read the above mentioned book, to weigh in with your anecdotes.

debanjan16 commented on Ask HN: What are the best MOOCs you've taken (2023)?    · Posted by u/ggr2342
fithisux · 2 years ago
Statistical Mechanics: Algorithms and Computations (Coursera)

u/debanjan16

KarmaCake day1877February 26, 2022View Original