Ask HN: As a self-taught programmer where can I learn some CS?

42 points by eberfreitas ↗ HN
I've seem some resources scattered around but I was looking for something more "definitive". Any ideas? Thanks!

12 comments

[ 5.4 ms ] story [ 28.7 ms ] thread
MIT Introduction to Computer Science
MIT Structure and Interpretation of Computer Programs :-)

The opening statement:

“I'd like to welcome you to this course on computer science. Actually, that's a terrible way to start. Computer science is a terrible name for this business. First of all, it's not a science. It might be engineering or it might be art, but we'll actually see that computer so-called science actually has a lot in common with magic, and we'll see that in this course.

So it's not a science. It's also not really very much about computers. And it's not about computers in the same sense that physics is not really about particle accelerators, and biology is not really about microscopes and petri dishes. And it's not about computers in the same sense that geometry is not really about using surveying instruments

...

Now, the reason that we think computer science is about computers is pretty much the same reason that the Egyptians thought geometry was about surveying instruments. And that is, when some field is just getting started and you don't really understand it very well, it's very easy to confuse the essence of what you're doing with the tools that you use. And indeed, on some absolute scale of things, we probably know less about the essence of computer science than the ancient Egyptians really knew about geometry.”

Still prescient 30 years later...

https://ocw.mit.edu/courses/electrical-engineering-and-compu...

This is the reason why i kinda like, I didn't study Computer Science. I studied Theoretical Informatics :)
I highly recommend Gregor Kiczales‘s CS classes from UBCx as a starting point [0]

Gregor’s courses are based on the “How to Design Programs” book that Matthias Felleisen at Northeastern, Shriram Krishnamurthi at Brown, and others wrote.

They have a great paper discussing the pedagogical philosophy called The Structure and Interpretation of the Computer Science Curriculum [1]

[0] https://www.edx.org/course/how-code-simple-data-ubcx-htc1x

[0] https://www.edx.org/course/how-code-complex-data-ubcx-

[1] https://www2.ccs.neu.edu/racket/pubs/jfp2004-fffk.pdf

How to set up my own private Free no cost internet connection on Laptop and Mobile device(s)? Is This possible?
I built https://algodaily.com to serve as a gentle intro to CS fundamentals for non-traditional students. Check it out and see if it's what you're looking for.