Live data from Hacker News

The Missing Semester of Your CS Education

missing.csail.mit.edu

31–40 of 200 posts

Re: The Missing Semester of Your CS Education

#31
post #26

Earlier quoted context omitted.

The world's best CS school is an internet connection.

I'm entirely self-taught and can entirely understand wanting that belief to be true, but it just isn't. A university can give you so much more than just learning some programming language. At the very least, it's going to force you to dabble in some languages you wouldn't ordinarily touch. The same obviously goes for theory. Assuming there are at least some things that require a minimum effort that is uncomfortable b…

[deleted]

Re: The Missing Semester of Your CS Education

#33
To be honest, I was kind of disappointed with this, because most of it I already knew! (That's not a criticism of your course c:)

In the vim section, you might want to cover `*` - go to next match of current word and `#` - go to previous match of current word

Re: The Missing Semester of Your CS Education

#34

Learning about a command-line debugger and command-line profiling tools would be helpful for those that find themselves in the past. IDEA and Visual Studio have had these things integrated for decades. I find the likelihood of knowing how to use a debugger or profiler is inversely proportional to the amount of time someone spends in the terminal. It's astonishing how many developers rely on logging/print statements f…

> It's astonishing how many developers rely on logging/print statements for debugging.

One reason is that you don't switch contexts if you insert a print statement in your code. I personally find that to be the least distracting way to debug.

Re: The Missing Semester of Your CS Education

#35
post #20

I think the reason you don't see this kind of course offered is because it is primarily concerning training and not education. Imagine if your training course 25 years ago focused on the Turbo C IDE and that's all the University offered. You would be amazingly proficient at Turbo C and know all its keyboard shortcuts but that wouldn't be too relevant in today's market. Keeping such training material up to date with t…

Sure, or it could have focused on bash, terminal, Unix, vim, etc and still be relevant today.

Sure, but 25 years ago that'd still be placing a bet that those tools would be relevant today. That was my point.

Re: The Missing Semester of Your CS Education

#36

Earlier quoted context omitted.

it's even worse at the school I graduated from. the intro level course for cs majors is in python, but calculus I is a prereq. so the students who are catching up in math and/or don't quite feel ready for the real intro course have to take the remedial course, which is in c. I was a TA/grader for that course and what a shitshow it was. I don't think the professor ever explained the concept of undefined behavior. the…

> the intro level course for cs majors is in python, but calculus I is a prereq. so the students who are catching up in math and/or don't quite feel ready for the real intro course have to take the remedial course, which is in c. I don't understand, why would students who need to take Calc 1 not just take the normal course the following semester?

I didn't explain that very well. students who were seriously considering the cs major could certainly just take calc their first semester and then take the real intro course next semester.

at the same time, the university basically considered having taken calc in high school to be a proxy for the overall quality of the student's stem education so far. so if you were one of those people, you were encouraged to take the intro intro course first. this was also the course that people would take who were interested in cs but weren't stem majors. it was a poorly designed course for both purposes.

Re: The Missing Semester of Your CS Education

#37
post #14
post #9

I really wish this practical stuff was more emphasized. I graduated with a lot of very smart people who could write great code - but they could not compile, run, test, or check it into VCS to save their lives. It made group projects hell.

I graduated high in my CS class from a top school, but it turns out that I'm just good at tests/abstract thinking/hacking things together with duct tape. I'm terrible at software engineering, and really glad to see this kind of stuff being emphasized at the university level.

Depends on your point of view, but it sounds like you’re great at software engineering. :)

Abstract thinking and duct tape are the tools of the trade! The tools they’re teaching in this course are just fantastic abstractions held together with duct tape, after all.

Re: The Missing Semester of Your CS Education

#38
post #29

Earlier quoted context omitted.

it's even worse at the school I graduated from. the intro level course for cs majors is in python, but calculus I is a prereq. so the students who are catching up in math and/or don't quite feel ready for the real intro course have to take the remedial course, which is in c. I was a TA/grader for that course and what a shitshow it was. I don't think the professor ever explained the concept of undefined behavior. the…

What kind of intro course was this? Just an intro to programming, or something like data structures? If it's the former, calculus as a prerequisite makes zero sense. It's bizarre that anyone would approve that idea.

literally just the first course in the cs major sequence. they didn't actually have to do any math. as I mentioned in a sibling comment, the department used calc I as a proxy for the quality of your high school stem education. that was the official reason, anyway. there were a lot of courses with irrelevant prereqs. cs was by far the largest major at the school, and they were constantly short on faculty to actually teach a the courses. a cynical person might think that the track was designed deliberately to stop people from being able to take too many cs courses at once.

Re: The Missing Semester of Your CS Education

#39
post #4

In the lab for my second or third CS course, the professor was walking us through intro Unix usage, but he didn't take attendance so it ended up being just 2-4 of us showing up. After a few weeks, he cancelled the lectures and told us he'd just be around to answer questions, help with homework, etc. The last lecture before he cancelled things was an intro to Vim. The next would've been Emacs. And that's the story of…

As someone who uses vim consistently, I hope I'm not a life-long vim user, I plan on at least a short retirement ;)

Re: The Missing Semester of Your CS Education

#40
I graduated a top 50 school, that gave us an “engineering” degree but had no such similar course. There were no more than 20 students, out of 300ish, who understood the material of this course well enough to teach it. From my perspective, this knowledge was generally inversely correlated to GPA and strongly correlated to postgrad performance.

Take my anecdata for what it is, but I think these skills are strongly underrated by universities and students alike. Kudos to MIT for publishing this online; I know I would have benefitted from exposure to these topics in my first couple of years.

Post reply on HN