HN user

debanjan16

1,877 karma
Posts91
Comments81
View on HN
news.ycombinator.com 3y ago

Ask HN: Which are the best self study materials for learning mathematics?

debanjan16
1pts1
cs.uwaterloo.ca 3y ago

A Functional Introduction To Computer Science

debanjan16
188pts34
news.ycombinator.com 3y ago

Ask HN: Materials to learn machine learning and deep learning in 2023?

debanjan16
7pts1
jsomers.net 3y ago

More People Should Write

debanjan16
3pts0
news.ycombinator.com 3y ago

Ask HN: What are some of the most elegant codebases in your favorite language?

debanjan16
223pts177
news.ycombinator.com 3y ago

Ask HN: What makes game developers such programmers?

debanjan16
2pts3
forallx.openlogicproject.org 3y ago

Forall x: An Introduction to formal logic

debanjan16
2pts0
news.ycombinator.com 3y ago

Ask HN: How are engineering minds like Jeff Dean, Torvalds, Wozniak created?

debanjan16
8pts14
news.ycombinator.com 3y ago

Ask HN: Has anyone implemented Derek Siver's approach of no speed limit?

debanjan16
2pts3
www.cs.cmu.edu 3y ago

Purely Functional Data Structures (1996) [pdf]

debanjan16
364pts96
www.cs.princeton.edu 3y ago

Cos 333: Advanced Programming Techniques Spring 2019

debanjan16
3pts0
news.ycombinator.com 3y ago

Ask HN: What is the best concept in CS/Math you've ever learnt and why?

debanjan16
7pts2
news.ycombinator.com 3y ago

Ask HN: What are the most valuable things you got out of college education?

debanjan16
1pts3
news.ycombinator.com 3y ago

Ask HN: What are the most eye-opening textbooks you have ever read?

debanjan16
250pts169
news.ycombinator.com 3y ago

Ask HN: Which is the best course with video lectures you have ever taken?

debanjan16
3pts2
news.ycombinator.com 3y ago

Ask HN: What kind of math has made your programming ability level up and how?

debanjan16
2pts0
news.ycombinator.com 3y ago

Ask HN: Why do most fresh CS grads write such awful code?

debanjan16
3pts5
legacy.cs.indiana.edu 3y ago

C211/H211: Introduction to Computer Science

debanjan16
2pts0
news.ycombinator.com 3y ago

Ask HN: Resources to learn how GUI libraries were/are made?

debanjan16
7pts5
news.ycombinator.com 3y ago

Ask HN: What projects did you build to get better as a programmer?

debanjan16
60pts46
news.ycombinator.com 3y ago

Ask HN: Projects that generate good enough income for you?

debanjan16
55pts11
news.ycombinator.com 3y ago

Ask HN: What are the greatest computer science courses you have done online?

debanjan16
8pts3
news.ycombinator.com 3y ago

Ask HN: Those who are not in a regular job what is your source of income?

debanjan16
6pts0
news.ycombinator.com 3y ago

Which resources helped you the most while getting into coding the non-CS way?

debanjan16
2pts0
news.ycombinator.com 3y ago

Ask HN: Coming from a non-CS field into machine learning research?

debanjan16
6pts0
inst.eecs.berkeley.edu 3y ago

CS 61A: Structure and Interpretation of Computer Programs [Python]

debanjan16
6pts0
news.ycombinator.com 3y ago

Ask HN: People who learnt to program during the pandemic what are you doing now?

debanjan16
4pts0
news.ycombinator.com 3y ago

Ask HN: Which are the best MOOCs on CS or related subjects you've taken?

debanjan16
4pts1
news.ycombinator.com 3y ago

Ask HN: What were you doing wrong in the pursuit of love and how did you fix it?

debanjan16
10pts4
news.ycombinator.com 3y ago

Ask HN: Which courses (online or not) have had the greatest impact on you?

debanjan16
54pts42

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.

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.

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.

Keep us posted about the lectures. I don't find a personal website of you. Then I would have bookmarked it.

There are so many awesome lectures from other CMU courses like Andy Pavlo's Database, Keenan Crane's Graphics courses.

I so hope CMU records their intro courses and put them out in public.

Btw, Brandon, I hope you archive your version of the course materials somewhere as they are really as good as the notes, someplaces, even better. All previous versions of 15-150 are basically non-existent.

Ah! Thanks for the detailed reply. It is so good to hear from someone who have passionately benefitted from their undergraduate courses and gets to use knowledge from that in real life.

Btw with 15-150 notes and slides do you have any book suggestion in mind that self learners can read alongside?

Note:- There are some leaked lectures from Brown's CS019, if you want to look, here: https://learnaifromscratch.github.io/software.html#org464eb9...

Since, you are the instructor for 15-150 this semester and have graduated from CMU as per the slides. I would like to know what you think about similar intro course sequences elsewhere.

Like BrownU's CS019 course using Pyret. It also teaches a functional approach to programming.

Also Berkeley's CS61A,B,C trilogy.

Do intro level courses matter in the long run? Or is it the higher level courses that set apart universities in undergrad CS education?

Students learning Algorithms for the first time should never touch CLRS. It is the worst thing that a beginner can pick up. It is good as a reference text.

Beginners should start with this. This book "actually" teaches you how algorithms are designed and how to break down problems into chunks and solve them using induction/recursion.

Your mind will just be blown.

You are quite right. You can also find the book PLAI by one of the authors of HtDP, Shriram Krishnamurthi. The way he teaches programming languages is eye opening too.

I looked at CMU's curriculum once. The first course they take is based on a language called C0 which is a safe version of C. But the amount of syntax and memory handling you had to learn in a first course was intimidating. The main concepts remained in the background. Although I am not sure how it happens in the actual class. But the number 1 contender amongst CS schools shouldn't let their freshmen go through such hellhole.