Live data from Hacker News

The Missing Semester of Your CS Education (2020)

missing.csail.mit.edu

281–290 of 347 posts

Re: The Missing Semester of Your CS Education (2020)

#281

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) - Ther…

Thank 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 h…

> I would experiment and try to re-word homework questions so that interesting StackOverflow answers appeared in search results.

That's a really interesting pedagogical approach, I like it a lot.

Re: The Missing Semester of Your CS Education (2020)

#282
post #175

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) - Ther…

Note 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.

I 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.

Re: The Missing Semester of Your CS Education (2020)

#283
post #206

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) - Ther…

This “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?

I 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".

Re: The Missing Semester of Your CS Education (2020)

#284
I've learned most of this stuff at VUSEC.

VUSEC: learn about systems security!

In your own time figure out:

- git

- vim (you wanna be cool right? Btw, use vimtutor in the commandline ;-) )

- C (okay okay, it was a prerequisite, I didn't have it, haha, so learned some basic C in a week to do the assignments. I knew Java only at that point)

- ssh

- Many other things

Re: The Missing Semester of Your CS Education (2020)

#286
post #203

Earlier quoted context omitted.

LaTeX? Is this a dual math-cs program?

I find this comment a bit odd. I teach CS and our students are required to use LaTeX for everything they hand in (internship report, project work, BA thesis). We also publish everything using LaTeX if possible. There's some conferences which use Word templates (shudder) but mostly it's LaTeX. Citations and bibliography management are easy, it's super easy to switch from IEEE to Harvard or whatever and as soon as you…

Back in the 90's, I'd write all my papers in LaTeX, just to avoid using Windows and Word.

Re: The Missing Semester of Your CS Education (2020)

#287
My education was at an EET (technical school -redneck-dirty-hands-technician) school. A trade school.

Very practical, and vocational, so they had stuff like this (but for E Techs).

Universities tend to be less "vocational," so may skip some of the more practical stuff.

Also, developing a curriculum is a huge pain in the butt, and keeping it updated, is even worse. Stuff like this tends to be highly topical, so it needs to be kept up to date, with almost no lag.

But this is great.

Re: The Missing Semester of Your CS Education (2020)

#288

Earlier quoted context omitted.

Perhaps if you already know C#, otherwise I doubt it. Of course it depends on ones prior experience, but F# is functional but still requires you to understand OO in order to interact with the framework.

Knowing a good bit of Rust helped me considerably, due to the commonalities of being expression-based, pattern matching and sum-types. F# almost feels like a more functional and GC'd Rust.

F# is heavily based on OCaml and Rust was heavily inspired by the ML family of languages, and I've often heard it described as an ML without GC and with memory management and a C++ style syntax.

You're noticing a very real relationship.

Re: The Missing Semester of Your CS Education (2020)

#289

Earlier quoted context omitted.

I think there's a sort of horseshoe effect where both beginners and some experienced programmers tend to use print statements a lot, only differently. When you're extremely "fluent" in programming code and good at mentally modelling code state, understanding exactly what the code does by looking at it, stepping through it doesn't typically add all that much. While I do use a debugger sometimes, I'll more often form a…

> Using a debugger is much too slow. This varies, but in a lot of environments, using a debugger is much _faster_ than adding a print statement and recompiling (then removing the print statement). Especially when you're trying to look at a complex object/structure/etc where you can't easily print everything.

> using a debugger is much _faster_ than adding a print statement and recompiling (then removing the print statement)

Don't remove the print statement. Leave it in, printing conditionally on the log level you set.

Re: The Missing Semester of Your CS Education (2020)

#290
post #275

Earlier quoted context omitted.

Can you elaborate on how not knowing those things specifically is what led to you not being able to find work Did your interviews ask specific questions about Git, Linux things not covered in a standard operating systems course, and command line editing?

go on indeed, search for "software engineer", look at how often those things crop up in the "essentials" section

I’m just not sure how jot knowing these thing practically stopped you from getting a job.

Did they specifically ask about them in an interview?

Post reply on HN