Stanford CS Education Library (2001)
cslibrary.stanford.eduAh yes, when the only two languages that mattered were C and perl :-).
I find it helpful to maintain perspective with "CS" then and now. Many older engineering professions have a 'base class' (to abuse the phrase) and then many sub-classes. For example, there are the basics for Electrical Engineering, but then there are generally specialization areas where people can spend their entire careers (RF, Power, Digital Logic, Electromagnetics, etc).
And back at the turn of the century there was pretty much only one "CS" discipline, it was heavy on math, data structures, and language and systems design. The more informal sub-areas were probably OS programming (often called Systems programming), language design, and "Data processing" (which subsumes data base design and use). We have since added many more, networks, web applications, and embedded systems to name a few.
We also have "trade" programmers (some folks call them 'CRUD'[1] programmers but that seems a bit derogatory to me) that is more closely associated to Electricians than say Electrical Engineers. They play a vital role in businesses everywhere but realistically don't need all the Math and such that typical CS programs require to do a good job.
[1] CRUD - Create Read Update Delete type applications (https://en.wikipedia.org/wiki/Create,_read,_update_and_delet...)
Dead Link Checker:
whole site: http://cslibrary.stanford.edu/ 100% scanned - 116/116 URLs checked, 98 OK, 18 failed
root page: http://cslibrary.stanford.edu/ 100% scanned - 28/28 URLs checked, 24 OK, 4 failed
18 dead links on single-page site with 4 dead on the homepage. I'm curious what's the threshold of dead links for considering a site "abandoned."
FWIW the Binky Pointer videos are available on Youtube.
How do you automate link checking?
Why is this being posted? I suppose it's interesting from a historical perspective, for what is available. This is so far removed from modern CS Ed that it's an interesting little time capsule, I guess.
Pointers, linked lists, and trees are fundamental concepts. Even though many CS programs have moved away from C and C++ for their intro-level courses, there is still a need to teach how dynamically-allocated data structures are implemented in memory. Even if beginning CS students are not exposed to pointers in their first or second CS class, they will be exposed to pointers eventually in many CS programs, either when they take a course on basic computer organization and assembly, or when they take a course on systems programming.
Also, Stanford's guides are very well written. I remember learning pointers from these guides when I was learning C nearly 15 years ago as a high school senior. I still have the copy of K&R that I bought back then; it is very worn out now.
I mean, obviously. No one's going to seriously advocate removing systems programming from the core introductory sequence of undergraduate CS degrees. The learning objectives are still relevant, I meant the materials themselves are old.
I think modern CS could benefit from more claymation videos.
In what way? I learned about all this stuff a few years ago in school. Yeah there's more stuff to learn about now but the basics never change.
Yes, the learning objectives are all still relevant and will outlast me. I meant that the materials themselves are old and do not represent what's really going on in CS Education, from my perspective.
I upvoted it as it was interesting to me.
because it is interesting, and because the knowledge in it while old is still relevant.
There oughta be a visual/conceptual explanation textbook for Rust borrowing, traits and types because some of it is confusing and/or ambiguous.