News for hackers. Stuff that matters.

hanjiexi

Re:OSSU: A path to a free self-taught education in computer science on Wednesday September 25, 2019 @11:30AM (#21071705)
I like Teach Yourself CS too, and I used it as an important source (or at least an inspiration) for parts of the OSSU/CS curriculum. I also use some of its recommended materials in my own private studies.

But since this comparison gets made often, I feel I should point out that TYCS doesn't provide a full CS curriculum. It might be better described as giving the basics of a software engineering curriculum, although even in this sense it seems lacking.

Consider that it excludes theoretical computer science (automata theory, etc.), a major core discipline of a computer science education, as you can see by looking at, for instance, CMU's requirements [0] for a bachelor's in CS. If we regard it as a CS curriculum, it also falls somewhat short in the resources it does recommend. For instance, I consider "The Algorithm Design Manual" very useful for software engineers but, compared to what else is out there, not terribly relevant for a modern computer science education. It also recommends either "Language Implementation Patterns" or the Dragon Book for learning about compilers, the former of which is only of limited academic interest (as the author acknowledges) and the latter of which is good but missing a lot of important developments in the theory and practice of compiler design/implementation.

If we treat it instead as a software engineering curriculum, it fares slightly better, but the resources it recommends for learning about programming are severely lacking. SICP is a gem but it doesn't teach large-scale software architecture (nor does HtDP for that matter). If SWE is what TYCS is going for, then this subject either belongs under Programming or under its own category, but it's nowhere to be found.

Unfortunately, OSSU/CS suffers from similar flaws in its content choices. But that has been due to our decision so far to only select material available in MOOC format; TYCS doesn't appear to impose this limitation on itself. All that being said, I'm just nitpicking that it feels incomplete for either CS or SWE. Every one of TYCS's recommendations is excellent and anyone would be well advised to follow it.

> they provide both Book AND Video/MOOC resource for each topic

The format in which we currently present the material is the major limitation here, as it revolves more around courses rather than topics. We are working on fixing this (albeit slowly due to other commitments I have). I myself much prefer text resources as I retain the material better, and I can easily reference back to it. My goal is to re-orient the curriculum around topics, providing recommended resources for each topic in both text and video format.

[0]: https://csd.cmu.edu/academic/undergraduate/bachelors-curricu...

Re:OSSU: A path to a free self-taught education in computer science on Wednesday September 25, 2019 @10:33AM (#21071150)
Citation needed. It is a big stretch to go from "some percentage of enrollees are just browsing" to "MOOC drop out rates are a fiction". The research that's been done on this shows that even if we adopt a much more narrow definition of enrollee, the completion rate is still very low. For example, in one study[0], "enrollees" were defined as those who answered at least one question right on the first quiz, and only 1/4 of those people finished the whole course.

25% is better than 3%, but both are very low compared to estimates of on-campus completion rates, for which I've heard numbers ranging from ~50% to ~65%.

[0]: https://www.insidehighered.com/news/2013/03/08/researchers-e...

Very true! I think all educational material should be openly accessible without login, and that enrollment should be something entirely separate and optional.
I'm one of the core OSSU team members. Unfortunately I'm not aware of any such resource, but I'm really interested in finding someone who can build an OSSU/Math curriculum!
I'm one of the maintainers of the curriculum.

> I have kind of grown to dislike a lot of these "learn programming on your own!" things/bootcamps/courses.

I somewhat agree, though I don't really see the problem with "learn to code" style programs if learning to code is precisely your goal. What I don't like is the seemingly widespread belief that learning to code is equivalent to learning computer science, when computer science doesn't even have anything to do with computers (as specific pieces of hardware). OSSU/CS is not a "learn to code" program; it mixes coding with computer science, and it's expected that it would take years for someone to get through the whole list of resources.

The second thing I believe I agree with you about is that we reject "learn programming on your own". While many people are interesting in starting to learn something on their own, drop off rates are extremely high for MOOCs. Most people cannot learn things on their own, and most MOOCs fail to provide the support needed by students. That's why OSSU is a community of learners that support each other, not just a curriculum.

> a lot of the "extra" classes you're required to take actually do inform your perspective on a lot of career stuff. For example, I hated taking philosophy classes and thought they were "pointless", but I recently realized how much they have helped me with logical thinking, and being able to justify decisions I'm forced to make.

I totally agree with this, except for the fact that I loved my philosophy courses in college :-)

OSSU/CS, at least in its current state, is not a replacement for a well-rounded education. Since we are not an institution, we do not have any general education requirements. It would be better to think of OSSU/CS as a resource that someone with a bachelor's degree outside of CS might use before applying to grad school in CS, particularly to avoid taking expensive remedial classes. That is exactly how I'm using it myself. We also have people already enrolled in a CS program at a formal institution, but still using OSSU/CS to get a different perspective on the same topics.