
MindWeb – A Computer Science Bachelor Curriculum - foob
https://mindweb.network/board/computer-science-a-full-bachelor-curriculum
======
opportune
The problem with a website such as this one is that they just compile a list
of content, each of which is quite large/involved, and throw it at you. Not
only is this kind of overwhelming, but I wonder how many people _actually_ use
a page like this to construct a curriculum for themselves. I doubt it's very
many at all. There's too much friction: you have to continue revisiting the
page after you complete all of these multi-week courses. And each course will
probably have its own suggested next steps, which might be different from
those in the original resource, which you might have already forgotten about
by now.

I've had a different idea for a while. What I've always wanted to do, and
would do if I had unlimited time, is create a kind of tech-tree of various
computer science concepts, organized into subjects/tracks/courses, with each
vertex in the tree being a clear and concise 4-7 minute youtube video (with
accompanying downloadable code if applicable). Note this wouldn't necessarily
need to be a real tree as things such as e.g. machine learning would need
backgrounds in both linear algebra and statistics.

Then you could learn from scratch by simply traversing down the tree. If you
wanted to learn something, you could search it and determine where in the tree
to start watching about it by where you feel like your knowledge ends. So if
you're looking up np-completeness, but feel you don't understand the concepts
of p and np, you can watch those videos first.

It would take a long time, though.

~~~
jmstfv
Have you seen Metacademy? Here is a "tech-tree" for _recurrent neural
networks_ [0]. In the top-left corner you can switch between "graph" and
"list" mode. Unfortunately, site hasn't been updated for some time. However,
they have open sourced their code and I was thinking maybe we (volunteers)
could pick up where they left off and continue this initiative. Previous
discussion [2].

Edit: added previous discussion to the list.

[0]
[https://metacademy.org/graphs/concepts/recurrent_neural_netw...](https://metacademy.org/graphs/concepts/recurrent_neural_networks#focus=wgrnuluh&mode=explore)

[1] [https://github.com/metacademy/metacademy-
application](https://github.com/metacademy/metacademy-application)

[2]
[https://news.ycombinator.com/item?id=7617683](https://news.ycombinator.com/item?id=7617683)

~~~
lypextin
This seems like an amazing concept and I have been thinking of it ever since I
saw KhanAcademy knowledge tree.

I can see this being combined with Arbital's Lens (Same thing explained in
multiple ways - from a simple explanation for a 10-year-old to a rigorous
explanation for a mathematician)

I always considered this the best way to actually progress in my learning and
I still see it as the next big thing after Wikipedia, once it's done
correctly.

------
znpy
As a cs-savvy person, I'd really love to see similar pages but for other
fields.

Computer science is probably one of the most over-documented fields. Everyone
seems to have compiled a list of resources at least once in their life, like a
rite of passage.

I'd love to see open source curricula for Economics/Business, Physics, Music,
Literature and other stuff.

~~~
msla
I'd love to see one for philosophy.

Yes, part of the point of studying philosophy is getting feedback from
discussing ideas with others. But there's still a basic vocabulary and set of
ideas everyone should learn simply so they realize their revolutionary ideas
about reality and truth and beauty and so on have occurred to others, and have
been discussed, probably for centuries if not millennia, and that the results
of those discussions have been preserved.

It would be contentious, but some of the lists of core resources for CS are
contentious, too.

~~~
matthewwiese
I would recommend SEP
([https://plato.stanford.edu/](https://plato.stanford.edu/)) for your exact
purpose. Although not entirely structured as a guide on philosophy, it is very
much akin to Wikipedia in that you can get lost for hours. I highly recommend
stretching out on the patio with your laptop and a cigarette and make like
Camus for an afternoon. As a philosophy major, it is an invaluable resource.

------
Thrasolt
Hi guys. MindWeb is the project of a friend and me. I just wanted to apologize
for the loading time. We just launched our beta and we were not prepared for
this much traffic!

~~~
carapace
Your site doesn't work with JS disabled.

------
little_data
This is a pretty poor platform to point you to edx/coursera courses.

Try this one...much better.

[https://github.com/ossu/computer-science](https://github.com/ossu/computer-
science)

~~~
Traumau
As far as I can see all the courses are free. So there is no damage or profit
in pointing people there, is it?

~~~
rhizome
Why does it have to be about "damage?" The poor design of a disorganized
resource wastes time and hides value.

~~~
pc86
Imagine a world where not everyone likes or responds the same to design, where
people have different opinions about what is good or "poor" design, and not
every interaction needs to be optimized for "value."

~~~
tux3
In that world, I imagine people would be free to criticize designs they don't
like and provide alternatives.

~~~
ddingus
As would those who make the critiziced design a be secure in their ethos,
advancing them with advocacy.

My favorite response is, "ok, thanks" and move on.

------
Blackthorn
These are the sort of resources I wish I had available when I was in high
school. What a tremendous bounty we now have.

Has anyone put together a list like this for a subject like chemistry?

~~~
little_data
[https://www.khanacademy.org/science/chemistry](https://www.khanacademy.org/science/chemistry)

~~~
Blackthorn
Khan Academy is great, but not what I was asking.

~~~
bpicolo
It's a pretty good attempt at what you're asking (it's college level chemistry
with fantastic instructors, for free, online)

CS is pretty unique in the realm of things that typically require a 4 year
degree to work in that are accomplishable without. The required capital is
sitting on most desks in the country. Chloroform less so

I imagine it would be almost entirely impossible to work in bioscience without
a relevant degree.

~~~
Blackthorn
I mean, I'm not really looking to work in the biosciences. I have a PhD in
computer engineering and am happy with my job. I'm looking to take classes
past the organic chemistry classes I took in college.

~~~
sn9
The Chemistry subreddit has a list of recommended books.

You can just look up some undergraduate chemistry course listings and follow
the prerequisites to construct an order in which to work through them.

------
coygui
Then my favorite essay of programming is this ;)
[http://norvig.com/21-days.html](http://norvig.com/21-days.html)

A list of courses is not enough, haha

~~~
mekanicalsyncop
>A list of courses is not enough, haha

Norvig's essay is an all time classic, but I'm not sure how it applies here.
There's a difference between thinking a single book is going to teach one to
be a professional developer and thinking a BS-equivalent set of online courses
and the hundreds if not thousands of hours of work it would take to complete
them might teach someone something about computer science.

Many great developers are self-taught. Having resources like recordings of
university lectures from some of the best schools in the country just makes
the long, difficult journey a bit easier.

------
trucktires
Speaking of CS, apparently now it's important to know something about high
dimensional spaces and their volumes. I have linked a PDF below. What part of
math does it belong to? I am not sure pure Linear Algebra and Real Analysis
deal with such problems? Could it be Measure Theory or Convex Geometry? I am
looking for literature or at least the names of subsets of math that deal with
such problems starting from the very beginning.

[https://www.cs.cmu.edu/~venkatg/teaching/CStheory-
infoage/ch...](https://www.cs.cmu.edu/~venkatg/teaching/CStheory-
infoage/chap1-high-dim-space.pdf)

~~~
sn9
You can find a link to the whole book here:
[https://www.cs.cmu.edu/~venkatg/teaching/CStheory-
infoage/](https://www.cs.cmu.edu/~venkatg/teaching/CStheory-infoage/)

The appendix has the material the book depends on.

The course description includes this: "The course is cross-listed as a joint
undergraduate/graduate course. The course will be fast paced and theoretical,
so mathematical maturity and comfort with material in 15-251 and basic
algorithms is required. The suggested prerequisites are 15-251 [0] and 15-451
[1]. (In exceptional cases, if you haven't taken these courses at CMU but feel
that you have the required mathematical background and would like to try this
course, you may sign-up for the course after the obtaining the instructors'
permission.) Students who have taken 15-359 and enjoyed it are particularly
encouraged to consider taking this course. The overlap with 15-359 will be
small, so doing both courses in parallel is also encouraged."

[0] [https://www.cs.cmu.edu/~./15251/course-
info.html](https://www.cs.cmu.edu/~./15251/course-info.html)

[1] [https://www.cs.cmu.edu/~15451/](https://www.cs.cmu.edu/~15451/)

------
hsikka
I'm actually building something that's like reddit meets learning resources.
Kudos on your release, best of luck!

------
rehemiau
The page doesn't load for me

~~~
compton_effect
Try waiting a minute. I have a decent Internet connection and page eventually
loaded after a minute.

~~~
Cut_N_Paste
I'm not waiting more than 5 seconds for something to load sorry...

------
kbutler
They seem to be missing a UI design/Human Factors/Usability course.

(I had closed the page because of the UI, but opened it again to do some
keyword searches. I was glad to close it again. My stomach is still somewhat
nauseated.)

~~~
Turing_Machine
Some other common undergrad topics that appear to be missing (although perhaps
I'm just not seeing them):

Operating systems Graphics Programming languages (the subject as a whole, as
opposed to a specific language) Compilers

Also, some of the descriptions are a bit misleading. "iPhone Development
Environment Install" actually leads to an entire course for iOS development,
but that's not really clear from the description on the page.

------
binarytransform
What...is with that UI? Between the cut-off titles and the mouseover image
spinning, I left in less than 10 seconds. Here's a better, non-seizure
inducing list: [https://github.com/mvillaloboz/open-source-cs-
degree](https://github.com/mvillaloboz/open-source-cs-degree)

~~~
sotojuan
My favorite of these kind of sites:
[https://teachyourselfcs.com/](https://teachyourselfcs.com/)

