Lecture 1A | MIT 6.001 Structure and Interpretation, 1986
MIT OpenCourseWare11 HN recommenders · recommended in 9 months, 2012–2024
lecture · intro · evergreen · 2012–2024 on HN
The first lecture of MIT's 1986 6.001 Structure and Interpretation of Computer Programs, given by Harold Abelson, introducing Lisp and the idea of computer science as the study of process.
Seen as a classic and often the moment programming 'clicks'; commenters praise Abelson's opening that computer science is not about computers.
Up next
2 mo on HNThe Rivian Electric Amazon Delivery Van Is Highly Innovative and Incredibly Cool
Doug DeMuro
3 HN recommender · 2023–2024
1 mo on HNCrypto CEO Accidentally Describes Ponzi Scheme
Coffeezilla
1 HN recommend · 2022–2023
7 mo on HN27C3: Adventures in analyzing Stuxnet (Bruce Dang from Microsoft)
basti0007
8 HN recommender · 2011–2024
4 mo on HNMouse Cursor History (and why I made my own)
Posy
4 HN recommender · 2022–2026
9 mo on HNThe Solar Gravitational Lens will Map Exoplanets. Seriously.
Launch Pad Astronomy
10 HN recommender · 2020–2025
2 mo on HNWhy the Muon g-2 Results Are So Exciting!
PBS Space Time
2 HN recommender · 2021–2022
5 mo on HNThe Truth about Hydrogen
Real Engineering
5 HN recommender · 2018–2021
2 mo on HNLarnell Lewis Hears "Enter Sandman" For The First Time
Drumeo
2 HN recommender · 2021–2023
16 mo on HNHow to Speak
MIT OpenCourseWare
17 HN recommender · 2020–2025
15 mo on HN1. Introduction to Human Behavioral Biology
Stanford
15 HN recommender · 2012–2026
14 mo on HNLEADERSHIP LAB: The Craft of Writing Effectively
UChicago Social Sciences
15 HN recommender · 2019–2026
13 mo on HNMIT's Pathway to Fusion Energy (IAP 2017) - Zach Hartwig
MIT Plasma Science and Fusion Center
16 HN recommender · 2017–2023
12 comments from Hacker News
Wow, what a MASSIVE missed opportunity to quote the best variation of this idea by far, done by Hal Abelson in the legendary "6001-Introduction to Computer Science" class on MIT in the 80s. You can check it here: ▶ this video Abelson in the first minute crosses both computer AND science, and references the also legendary SICP with "computer so-called science actually has a lot in common with magic". Honestly, this alone already made the article that empty.
The Mother Of All Demos is an absolute classic: link link I also very much enjoy Feynman’s talks. Here’s one on imagining physics: link For computer science in particular, I highly recommend the first lecture in the SICP series, especially on the naming of so called “computer science”: ▶ this video
First 10 mins of the first Structure and Interpretation lecture (by Harold Abelson) [1] Famous first words ... "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." ... and this is where it all clicked to me .... "Well, similarly, I think in the future people will look back and say, yes, those primitives in the 20th century were fiddling around with these gadgets called computers, but really what they were doing is starting to learn how to formalize intuitions about process " [1] ▶ this video
Reminds me of the MIT SICP lecture videos from the 80s. The concepts of black box abstraction and the simplicity of using LISP like lego building blocks blew my mind and made me switch from being a UX designer dabbling in Rails to a full blown programmer. It was still entirely relevant to today even though it was a few decades old as the fundamentals of computer science are still fundamental. ▶ this video Hearing that intro music still brings a smile to my face. I just happen to be relearning math right now as I dive deeper into data science and this is perfect timing. Going to watch this series once I get through my math proofs book ("Book of Proof" by Richard Hammack which I recommend to people getting into math link ).
One section of original lectures are freely available via MITs OpenCourseWare youtube channel: ▶ this video It would be quite difficult to beat these lectures, while they appear a bit dated, the content is great. SICP is a great way to learn about programming, although I am very surprised they got through the whole book in an introductory course. Chapters 4 and 5 cover some topics I was barely aware of nearing the end of my formal CS education.
Heh that's interesting, I just watched 106A yesterday to get an idea of how the programming introduction course is compared to my university (utwente.nl). I actually was a bit disappointed to see that it is very much like our introduction course, except that this teacher is a bit more enthousiastic, and perhaps the course starts at an even more basic level I think. I think for real CS enthousiasts 6.001 at MIT is much more interesting (and fun) to watch: ▶ this video (it teaches scheme and the lecturer has an awesome way of explaining it)
Little schemer is good, some people hate it some people love it. But it is a fairly light read the slowly teaches some syntax at a time, questions you about assumptions then revels the information as it goes on. It would be the least dry read. There is also sketchy scheme for a more thorough text, or even the rs7s standard, which are both pretty dry but short. What made me appreciate scheme was watching some of the SICP lectures ( ▶ this video ) and the little schemer to learn more. I also read some of the SICP along with it, though I put it down due to not having the time to work through it. Scheme is interesting and toying with recursion is fun, but the path a mentioned above is only really enjoyable if you are looking to toy around with CS concepts and recursion. You can do a lot more in modern scheme as well, and you can build anything out of CL. But learning the basics of scheme/lisp is can be pretty dry if you are just looking to build something right away like you already can in a traditional imperative language. But it is interesting if you are interested in a different perspective. But even RS7S scheme is still far from the batteries included you get with CL. I personal found the most enjoyment using Kawa scheme, which is jvm based and using it for scripting with java programs as it has great interop. I used it some for a game back end in the event system to be able to emit events while developing and script behaviors, I've also used it for configurations as well with a g
Some Good Parts: - Professor Richard Buckland has CS playlists on youtube (UNSW eLearning). In one of his lectures he starts writing a sudoku solver (I think) starting with high level abstractions. - Also, at least, the first video of SICP ▶ this video
Such a timeless quote. I believe this is the source: ▶ this video While there, SICP is not a bad way to augment a CS degree :-)
For anyone who wants to feel what this might have felt like (and you've yet to watch them), MIT posted videos of Abelson and Sussman presenting the course on YouTube [0]. I felt a similar sense of magic the first time I saw the derivative section. [0] ▶ this video
I took 6.001 in 1999 (I think). Hal Abelson taught it along with a professor who took off his sweatshirt to reveal a Microsoft tee at his final lecture (he went to Microsoft). What was great about Scheme (Lisp) is that most programs are basically words from your vocabulary, parentheses, and cars and cdrs. With procedural languages, there is always a sense that the language provides all the tools, and the magic happens somewhere underneath the hood. But with Scheme it feels as if it's happening right before you. It makes you feel like a wizard, and not a monkey. And it requires knowing all the spells. It requires knowing how to make magic happen. Or not. Once you know none of it's magic. But that's the point! Python is arguably easier and more practical for both science and work. It's already popular on the web server, and is used everywhere else -- unlike Scheme. But the recent resurgence of functional programming is super exciting with Elixir and Elm and the like. I'm looking forward to building my next project using Elixir. Here is the classic course: link Original video lecture on YouTube (linked from above): ▶ this video
>A pithy quote attributed to the pioneering researcher Edsger Dijkstra helps me explain: “Computer science is no more about computers than astronomy is about telescopes.” Reminds me of the MIT lecture "Lecture 1A | MIT 6.001 Structure and Interpretation, 1986"[1]. And I still remind myself of that. If you fundamentally understand your problem and solve it, then writing a few characters in your favorite text editor that do the task is easy - [1] ▶ this video