MIT Missing Semester 2026

(missing.csail.mit.edu)

72 points | by vismit2000 6 hours ago ago

45 comments

  • ghaff 3 hours ago ago

    There's definitely a tension at top STEM schools (probably especially in CS) between assuming students have some baseline knowledge of whatever field and just tossing them into the deep end of the pool and figuring out the practicalities on their own.

    I did take one of the MIT intro CS MOOCs at one point for kicks. Very good. But it was more or less learn Python on your own if you don't already know it (or how to program more broadly). That doesn't really happen in a lot of other disciplines other than some areas of the arts.

    • andai 2 hours ago ago

      At one university I went to, the head of the CS department was quoted as saying "[We don't need to care about the job market,] Our job is to create researchers."

      I thought that was pretty strange at the time because like 5% of the students end up going into research. So that was basically like him saying I'm totally cool with our educational program being misaligned for 95% percent of our customers...

      Maybe it makes sense for the big picture though. If all the breakthroughs come from those 5%, it might benefit everyone to optimize for them. (I don't expect they would have called the program particularly optimized either though ;)

      • scottlamb an hour ago ago

        > I don't expect [the 5% of students who end up going into research] would have called the program particularly optimized either

        This. I went to the University of Iowa in the aughts. My experience was that because they didn't cover a lot of the same material in this MIT Missing Semester 2026 list, a lot of the classes went poorly. They had trouble moving students through the material on the syllabus because most students would trip over these kinds of computing basics that are necessary to experiment with the DS+A theory via actual programming. And the department neither added a prereq that covers these basics or nor incorporated them into other courses's syllabi. Instead, they kept trying what wasn't working: having a huge gap between the nominal material and what the average student actually got (but somehow kept going on to the next course). I don't think it did any service to anyone. They could have taken time to actually help most students understand the basics, they could have actually proceeded at a quicker pace through the theoretical material more for the students who actually did understand the basics, they could have ensured their degree actually was a mark of quality in the job market, etc.

        It's nice that someone at MIT is recognizing this and putting together this material. The name and about page suggest though it's not something the department has long recognized and uncontroversially integrated into the program (perhaps as an intro class you can test out of), which is still weird.

        • ghaff an hour ago ago

          >It's nice that someone at MIT is recognizing this and putting together this material. The name and about page suggest though it's not something the department has long recognized and uncontroversially integrated into the program (perhaps as an intro class you can test out of), which is still weird.

          While this comes out of CSAIL, I wouldn't ascribe too much institutional recognition to this. Given the existence of independent activities period, it's probably a reasonable place for it given MIT's setup. Other institutions have "math camp" and the like pre-classes starting.

          It's probably a reasonable compromise. Good schools have limited bandwidth or interest in remedial education/hand-holding and academics don't have a lot of interest in putting together materials that will be outdated next year.

      • anon84873628 an hour ago ago

        Well you can say there is a difference between "computer science" and "software engineering", plus many "universities" are particularly research focused.

        A chemistry, physics, or even MechE BS is coming out only at the very beginning of their training, and will require lots of specific on-the-job training if they go into industry. School is about the principles of the field and how to think critically / experimentally. E.g. software debugging requires an understanding of hypothesis testing and isolation before the details of specific tech ever come into play. This is easy to take for granted because many people have that skill naturally, others need to be trained and still never quite get it.

        Edit: of course if only 5% of grads are going on to research then maybe the department is confused. A lot of prestigious schools market themselves as research institutions and advertise the undergrad research opportunities etc. If you choose to go there then you know what you're getting into.

        • ghaff 25 minutes ago ago

          >A lot of prestigious schools market themselves as research institutions

          Out of one side of their mouth maybe.

          Out of the other, they absolutely are not telling potential undergrads that they may tolerate them but they're really focused on research.

      • ghaff 2 hours ago ago

        Probably one of those thoughts you should self-filter (and the alumni association sure wishes you would).

        But it's also the case that (only half-joking) a lot of faculty at research universities regard most undergrads as an inconvenience at best.

      • __loam an hour ago ago

        Historically, the point of a university is not to be a jobs training program.

        • flatline an hour ago ago

          It kind of depends on how you define "history". Before STEM dominated the hiring landscape, Universities were less career focused. No employers in these fields, as far as I know, have ever offered apprenticeships to teach new hires chemical engineering or applied mathematics from the ground up. University will not prepare you for a corporate job, exactly, but it gives you a background that lets you step into that, or go into research, etc. Lots of employers expect new hires to have research skills as well.

          I think there are a number of ways in which financial incentives and University culture are misaligned with this reality.

        • esrauch an hour ago ago

          Historically that's true, but I don't think it's true in 2025.

        • 01HNNWZ0MV43FF an hour ago ago

          I'm not gonna recommend them to anyone then, because the number one problem most of my friends have is having crappy jobs

          • beepbooptheory an hour ago ago

            Youre not going to recommend college? Or jobs?

            • dhosek an hour ago ago

              Personally, I do not recommend jobs. Avoid them as much as possible.

    • throwaway20174 2 hours ago ago

      It's tough to for me to judge cause I've been programming for 30 years maybe I'm underestimating how hard it is, but I look at learning a new language very different that trying to understand the graduate level CS work I've seen at a top STEM school.

      Git, shell, basics.. even simple python if you have any at all programming experience - not nearly as hard as what they're teaching in the class.

      Most of the time something like that like learning latex or git basics.. they'll say.. you'll pick up what you need. They're not gonna spend 12 weeks on those subjects they aren't hard enough.

      • ghaff 2 hours ago ago

        Discrete tools are fairly easy. On the other hand, I think a lot of people here would laugh at the "text book" for the introductory FORTRAN course I took at said school.

        Of course, you were struggling with fairly primitive tools at the time as well. Made a typo? Time to beg the grad students running the facility for some more compute cycles.

        Although it's out of print I don't immediately see a full copy online. https://www2.seas.gwu.edu/~kaufman1/FortranColoringBook/Colo...

    • cylentwolf 3 hours ago ago

      I feel like most first intro classes in Computer Science is learn the coding language on your own. At first I was like why? Why don't they hold our hands while we do this. But since I have had some space to look back it really is a pretty good representation of our industry. You are going to need to learn new languages. So getting thrown in the deep end is a pretty good precursor for what work is going to look like.

      • kenjackson 2 hours ago ago

        This isn’t a bad idea, just not for the intro course. When I was an undergrad “programming language” was this course. You were given a brief introduction to brew languages and paradigms then expected to figure it out from there. But at this point you had a foundation of experience to build on.

      • ghaff 2 hours ago ago

        I don't totally disagree. On the other hand, based on the MOOC I took, had I been going in literally cold (as in college, new experiences, this is my chance to dive into CS and programming), I'd have been completely lost in a way that wouldn't have been the case in other engineering disciplines.

        Now, I'm sure some would argue "tough." What are you doing at MIT then? And certainly, there are SO many opportunities these days to get some grounding in a way that may not be as readily possible with chemistry much less nuclear engineering for example. But it is something I think about now and then.

        • somenameforme 2 hours ago ago

          What makes you think this would not have been the case in other engineering disciplines?

          I'm also a CS guy so I can't directly challenge this on the whole, but my experiences in some classes outside of this in other domains didn't feel like they were 'comfortably' paced at all. Without extensive out-of-class work I'd have been completely lost in no time. In fact one electrical engineering course I took was ironically considered a weed out course, for computer science, as it was required, and was probably the most brutal (and amazing) class I've ever taken in my life.

          • ghaff 2 hours ago ago

            Personal experience?

            I had basically a machine shop course in mechanical engineering in college. OK, it was a bit more than that but I had no "shop" in high school.

            Certainly nothing in high school anything that would have really prepared me for a civil engineering or or chemical engineering degree.

            I had actually done a little bit of fiddling around with electronics (and maybe should have majored in that). But certainly college would have been a whole different level. (With a whole lot more math which was never my strong suit.)

            So, yeah, these days I think there's a different baseline assumption for CS/programming than many other majors.

        • griffzhowl 2 hours ago ago

          Is the MOOC the same as the actual MIT course though? I went through one of the old Grimson Guttag Intro to CS courses on MIT OCW years ago, with zero programming background I found it a very gentle on-ramp with all the basics explained.

          I think it was this one, unfortunately archived now. I don't know the new one

          https://ocw.mit.edu/courses/6-00-introduction-to-computer-sc...

          • ghaff 2 hours ago ago

            No idea how similar it was to what's taught in the classroom. Of course you have access to TAs and other students IRL. And I have no doubt that assumptions about prior exposure and skills have changed over time.

            I can only report that, had you dumped me into that content with those assignments, with no prior background I'd probably have been dropping that class.

            The online version was more Grimson on the algorithms and Guttag (who wrote the Python book) on a bit of the programming. But the emphasis was more on the algorithms.

  • ternus 3 hours ago ago

    It's interesting to see that MIT is still like this. Canonically, there were no classes that taught programming per se: if you needed that, there were (often volunteer-taught) courses over IAP, the January Independent Activities Period, that would attempt to fill the gap - but you were still expected to pick it up on your own. I taught the Caffeinated Crash Course in C way back when. Good times.

    • ghaff 3 hours ago ago

      Way back in the day, you did have a few programming classes especially outside of CS/EE given that it was perfectly reasonable for students to have no or little prior exposure to computers and programming. See FORTRAN coloring book. And, as you say, although I haven't dropped by since pre-COVID, there was as you say a smattering of stuff during IAP.

      But my general sense based on some level of connections is you're expected to figure out a lot of, for lack of a better term, practicalities on your own. I don't think there's a lot of hand-holding in many cases--probably more so in some domains than others.

      • kkylin 2 hours ago ago

        Yup. Back in my day there was 1.00, a Civil Engineering course, a pretty standard intro to programming in plain old C. I don't know if it still exists. There was nothing of that sort in EECS, though there are lots of IAP courses (which take place in January, before spring semester starts). IMO a month is about right to spend on (leisurely) picking up a programming language for fun. A friend and I learned APL that way.

        • icambron 2 hours ago ago

          In 2004 or so, 1.00 was an intro to Java course. I took it very cynically to pad out my units; I was a course 6 senior at the time. I got side-eyed by TAs a lot.

      • foobarian 2 hours ago ago

        I feel like anyone with enough talent to get into MIT will have no problem picking up a programming language in a month or two on their own. Heck there are freshmen there who write programming languages for fun

    • dnackoul 2 hours ago ago

      During my time there (late 2000s) there was a Software Lab (6.170) that focused on programming fundamentals and culminated in a four-person, month-or-so long project. At least at the time, it was one of the more notorious courses in terms of time investment. It was common for people to live like monks during project time.

      Unfortunately I heard that class was retired and there was no direct replacement, which is a shame. It was an excellent crash course in shipping.

      • ghaff an hour ago ago

        Project courses were pretty notorious. I had a few. 2.70 (which I think is a different number now) in mechanical engineering was a HUGE time sink. [For others: was a design challenge competition with a live context.] Did another all-terrain vehicle competition in grad school which was probably an even bigger time sink.

    • neilv an hour ago ago

      There was this one grad class taught by a professor who was also a capable programmer, and the class incidentally used this one programming language that many grad students wanted to learn.

      So the word on the street was that his was a good class to take if you wanted a chance to learn the programming language. (Because you have only so much time in the day to allocate to labs.)

      And rumor was also not to say to the professor that you want to learn that language, because word had gotten back to him about the off-label draw of his class to many, and he didn't like it.

    • griffzhowl 2 hours ago ago

      Wasn't the SICP course a course in programming per se?

  • alexpotato an hour ago ago

    I was an undergrad at Rutgers in the late 1990s as they transitioned from teaching Pascal to Java for the introductory CS classes.

    The lectures were primarily about algorithms, basic data structures etc and the extra "labs", taught by Teaching Assistants, was almost always for reviewing the lecture notes with a focus on answering questions.

    At no point was there any discussion around "hey, here is a good way to design, write and test a program in a compiled language". My prior experience was with BASIC so just figuring out how to compile a program was a skill to pick up. I thankfully picked it up quickly but others struggled.

    Another thing I saw often was people writing ENTIRE programs and then trying to compile them and getting "you have 500 compilation errors". I never wrote programs this way, I was more "write a couple lines, compile, see what happens etc" but it always struck me that even just suggesting that option in class would have helped a lot of folks.

    (This being HN, I'm sure some people will say that students figuring this stuff out on their own helps weed out non-serious people but I still don't 100% buy that argument)

  • russfink 2 hours ago ago

    Link to the About page that clearly describes the effort and rationale.

    https://missing.csail.mit.edu/about/

  • loughnane 2 hours ago ago

    Anyone know how/if this differs from the 2020 one?

    Edit: Nvm, they comment on it. https://missing.csail.mit.edu/2026/development-environment/

  • anonu 2 hours ago ago

    I always thought this practical side of development was missing in a CS or engineering curriculum. This is awesome.

    For similar reasons I think arts and humanities students should take marketing and business courses.

    • ghaff 36 minutes ago ago

      There are probably books out there that probably do a better job than most discrete courses I can think of--i.e. an accounting course is probably too in the weeds for most people--but I agree that some sort of business/marketing/finance 101 would be useful for a lot of people (engineers as well).

  • LasEspuelas 3 hours ago ago

    There should be something like this available for any student at University, regardless of field. Perhaps less geared towards programming tasks but basic computing productivity.

  • tekknolagi 3 hours ago ago

    If you're interested, see also https://bernsteinbear.com/isdt/ by me and Tom

  • genix 2 hours ago ago

    very useful, took me couple months brute forcing to grasp the know hows because my school doesn't teach it. glad to see a course for it now getting out there

  • kratom_sandwich 3 hours ago ago

    Awesome course and I encourage everyone to check out the previous iteration (and the corresponding discussions on HN)

  • russfink 2 hours ago ago

    Conspicuously missing is a direct mention of AI tools. Is MIT, like others, side-stepping the use of AI by students to (help them) complete homework assignments and projects?

    • Reubachi an hour ago ago

      A question. If you think AI use by students to "bypass homework" is anything remotely approaching a problem, then I must ask you how you felt/feel about:

      - University being cost prohibitive to 90 percent of all humans as financial driven institutions, not performance.

      - Before AI, 20 + years of google data indexing/searches fueling academia

      - study groups before that allowing group completion (or, cheating, in your view)

      - The textbook that costs 500 dollars, or the textbook software from pearson that costs 500, that has the homework answers.

      I think it's a silly posit that students using AI is...anything to even think about. I use it at my fortune 500 job every day, and have learned about my field's practical day-to-day from it than any textbook, homework assignment, practical etc.

      • ghaff an hour ago ago

        >study groups before that allowing group completion (or, cheating, in your view)

        Totally dependent on school/department/professor policy.

        Some are very strict. Others allow working together on assignments. (And then there are specific group projects.)

    • elephanlemon 2 hours ago ago

      If you click through the lectures they are mentioned in several of them.