6 ms·
I have tried in vain to get this implemented at our uni. I can say a few things I find interesting: - Students used to get this stuff but no longer do, for e
by readingnews 4y ago
I have tried in vain to get this implemented at our uni. I can say a few things I find interesting:
- Students used to get this stuff but no longer do, for example all workstations used to be unix, so when you left, you "knew" "unix" (shell, vim, etc)
- Due to things like ABET, classes are crammed with need-to-know-for-accreditation info so, well, some items need to go by the wayside (many are in the MIT list)
- There is a huge push, even by ABET, for security and crypto to be somehow integrated into nearly every class.
- Professors seem aware that we need this "missing class", but it is hard for administrators to implement, because: Universities were pressured into lowering credits to grad, so some courses were removed, so there is no room left for another course.
I am not pushing one way or another, and I only have the vision of working at two universities, but I think unis need to take a real hard look at their courses from a holistic point of view. I recall stumbling across that MIT course at least 5 years ago. I do not know many others who implemented something like that.
- devwastaken 4y ago"Universities were pressured into lowering credits to grad" Uni's are requiring more generals, especially humanities. The problem isn't credit requirements, it's accreditation, marketing, and politics.
- ModernMech 4y agoWe're trying to implement exactly this. I assign the MIT missing semester materials in my sophomore systems programming course, and we do all of our assignments using a CLI, C, GCC, and Git. Prior to my course, the students know only Java and IDE programming. One problem we have is that the prereq chain for our courses is very long, so adding another course as a pre-req to all others lengthens that chain. The MIT course offers probably too much info for our purposes, or at least info students don't need preloaded. Just basic CLI and basic Git clone/fork/pull/push are enough for up to probably Junior year. The problem is that the intro courses are so sanitized that students aren't even getting basic CLI until Sophomore year, which means by the time they graduate, they're behind where they should be imo.
- lallysingh 4y agoWe had this class, Unix, in freshman year (VT). This isn't normal?
- ghaff 4y agoNote that this is not part of the CS curriculum at MIT. It's a series of classes during Independent Activities Period in January which is mostly unstructured time when students can do or not do any activities that catch their fancy. It works well for this sort of thing but students also do a ton of stuff that isn't especially academically-related.
- readingnews 4y agoI do know that, I was trying to implement it as part of a go at your own pace online course, but that still requires approval from the uni.
- starkd 4y agoIt would seem this would be the perfect kind of class for online learning. Perhaps even as a wiki to crowd source helpful contributions. Most learning doesn't even have to be directed, but just point students in the right direction. This is a ripe area to find ways to better facilitate individual initiative, because a moderate level of effort yields tremendous reward. Plus, you can easily determine if you are doing it right.
- LelouBil 4y agoSame in another school (EPITA). You start with 2 weeks of only Linux C + POSIX shell, and during this you're only allowed to use i3 + vim/emacs.
- jcelerier 4y ago> I do not know many others who implemented something like that. the school I did in france, ENSEIRB-MATMECA, started with three weeks where you only learn shell commands, emacs, LaTeX etc before doing anything else. Here are the slides (in french sorry, although they all have useful reference cards at the end): - intro: http://mfaverge.vvv.enseirb-matmeca.fr/wordpress/wp-content/cours/IF104/00-introduction.pdf http://mfaverge.vvv.enseirb-matmeca.fr/wordpress/wp-content/... - unix, shell: https://cours-mf.gitlabpages.inria.fr/if104/docs/01-unix.pdf https://cours-mf.gitlabpages.inria.fr/if104/docs/01-unix.pdf - emacs: https://cours-mf.gitlabpages.inria.fr/if104/docs/02-emacs.pdf https://cours-mf.gitlabpages.inria.fr/if104/docs/02-emacs.pd... - latex: https://mfaverge.vvv.enseirb-matmeca.fr/wordpress/wp-content/cours/IF104/03-latex.pdf https://mfaverge.vvv.enseirb-matmeca.fr/wordpress/wp-content... - "advanced" shell scripting: https://cours-mf.gitlabpages.inria.fr/if104/docs/05-scripts.pdf https://cours-mf.gitlabpages.inria.fr/if104/docs/05-scripts....
- readingnews 4y agoThank you for the links... I actually read enough French to get by, so those are great to look at for more ideas.
- phist_mcgee 4y agoTaking a quick look at the Emacs PDF, I learned that the french word for 'buffer' is tampon!
- RheingoldRiver 4y agoLaTeX? Is this a dual math-cs program?
- btilly 4y agoLaTeX was written by a famous computer scientist to write a computer science book. Yes, mathematicians love it. But computer scientists were first there.
- 4y ago
- closeparen 4y agoThis "class" was run by our CS library computer lab and was something your TA might push you to attend, but not part of the formal curriculum. That worked around some of the admin nonsense but still got help to motivated students.
- gumby 4y agoThis “MIT Course” was taught by grad students because they felt the actual course work left this out. So when you say it’s a shame your uni doesn’t teach this, well, that’s what these grad students were saying as well. Perhaps the students could seize the initiative at your institution as well?
- readingnews 4y agoI might have to get a separate group to do it, like the ACM students. If I suggest it, even as an online sort of thing, it gets cut down. All of the sudden, it can not be "something we support" that is not "part of the curriculum".
- dls2016 4y agoThank you for making the point about accreditation, it's sort of a pet peeve of mine. I taught "intro to C++" last year at the Harrisburg campus of PSU. The students were a mix of non-CS majors who didn't know what a file was, a handful of students who already knew how to program and a bunch in the middle. Re: accreditation... the admin is very reluctant to change anything about the courses. Even specific textbooks had to be recommended (I was warned for suggesting in the syllabus that the textbook wasn't needed). Seemed a little more strict than teaching mathematics, which I did in graduate school. Re: kids these days... a significant portion didn't understand the concept of a file. I blame apps and the cloud (funny because I now work in cloud storage). I ended up writing my own pre-cursor doc to the "missing semester". It was challenge to get a student from not understanding the filesystem to having some sort of understanding of linear search and pointers. (If you're interested: https://www.dropbox.com/s/jar1r0l5vdgspcl/basics.pdf?dl=0 https://www.dropbox.com/s/jar1r0l5vdgspcl/basics.pdf?dl=0) I tried to stress, especially to the non-majors, that this "missing" stuff was perhaps the most important thing they could learn. That, and how to properly google/search for things. I would experiment and try to re-word homework questions so that interesting StackOverflow answers appeared in search results.
- deleted 4y ago[deleted]
- wirthjason 4y agoC++ needs a “missing semester” around tooling. Most material I see focus on the core language but leave out setting up build systems, package management, clang tidy, testing etc.
- no_wizard 4y agoHow do you do package management in C/C++? I have only used pip, cargo, npm (well yarn and pnpm mostly) and composer. Big off putting aspect of learning C/C++ is that I can’t grok how shared libraries work very well
- 3836293648 4y ago