Live data from Hacker News

The Missing Semester of Your CS Education (2020)

missing.csail.mit.edu

31–40 of 347 posts

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

#31
post #6

I love vim, it's great to know how to navigate it, but I have met very few people who use it professionally. I'd love to hear others' experiences, there.

Using vim itself? I mean, yeah picking up ninja edits here and there. Using vim motions? Everywhere. All the time.

Yep! Evil for Emacs, IntelliJ, ranger, ksh93 shell history editing (this one includes search!), DuckDuckGo, Fastmail, Gmail....

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

#32
post #24

It's amazing how many CS programs fail to teach you even the basic tools of being a software developer. Yes, yes, CS is not programming, but there is a non-trivial amount of CS that is indeed programming, and that is generally what people do with their CS degrees, so it'd make sense for a CS program to teach the basics. Maybe even more than the basics.

CS programs prepare you first and foremost for a PhD in CS. They're great for learning the theory and fundamentals, but teach practical Software Engineering skills as a side effect.

This very much varies by school. In California, undergrad as prep for grad school is the default for the UC system, but not so for the Cal State system.

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

#33
post #2

The content taught here is the highest payout thing you can learn, in my opinion. Certainly more important than actually writing code or learning algos. What this content covers should unlock iteration speed, which is the single greatest lever in learning and growing faster (on a computer). Thus it gives you more cycles to go back to improving your code, experimenting with algos, etc. Probably also highly correlated…

I sat with a talented developer whilst we wrestled with a threading issue this past week. I wanted to inspect the value of a variable within a method during execution and asked him to set a breakpoint. He didn't know how to do that in the IDE, which he'd been using for over a year. Debugging is indeed a skill which needs learning.

A talented developer who doesn't know how to set a breakpoint sounds contradictory to me.

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

#35

I love vim, it's great to know how to navigate it, but I have met very few people who use it professionally. I'd love to hear others' experiences, there.

been using it my entire career. works well, never had much reason to switch, especially these days when I do most of my work sshed into another machine (we aren't allowed to have work code on our laptops)

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

#36
post #15

I love vim, it's great to know how to navigate it, but I have met very few people who use it professionally. I'd love to hear others' experiences, there.

I use (Neo)vim as my daily driver, professionally (for the past 4 years, coming from Goland). I've found every other editor to be too heavy/slow (VScode/Jetbrains), or too noisy (regarding features). Neovim allows me to specify the precise minimum I desire to have a fully functional IDE-like experience (basically treesitter + LSP + DAP + minimal extra plugins). It's super fast, I'm already in my shell, and my memory…

Once I learned how to use vs code productively it really changed my mind. The other day I needed to do a quick base64 encode and vs code had that. Same goes for formatting some json or doing a diff. It's all available in a single tool with no learning curve. Hell it even has git and git blame in there.

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

#39
We're teaching a course at ETH Zurich [1] where --besides the actual payload of solving partial differential equations (PDEs) on GPUs-- we put a lot of emphasis on "tools". Thus students learn how to use git and submit their homework via pushing to a repo of theirs on github, we teach testing and continuous integration, writing documentation, running code on a cluster, etc. In their final project, again submitted as a GitHub repo, they need to make use of all of theses skills (and of course solve some PDEs).

Note that excellent work in this space is done by the Software Carpentry project which exists since 1998 [2].

[1] https://pde-on-gpu.vaw.ethz.ch/ [2] https://software-carpentry.org/

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

#40

It's amazing how many CS programs fail to teach you even the basic tools of being a software developer. Yes, yes, CS is not programming, but there is a non-trivial amount of CS that is indeed programming, and that is generally what people do with their CS degrees, so it'd make sense for a CS program to teach the basics. Maybe even more than the basics.

I was on the CS faculty at a Canadian university in the 1980s. I proposed a course with almost exactly this outline, only to be told it wasn't university-level material. MIT seems not to have got this message; good on them!
Post reply on HN