← Back to context

Comment by alephnerd

9 hours ago

This is why I feel the recentish (last 10-15 years) shift in decoupling CS curricula from EE and CE fundamentals in the US is doing a massive disservice to newer students entering the industry.

DSP, Control Engineering, Circuit Design, understanding pipelining and caching, and other fundamentals are important for people to understand higher levels of the abstraction layers (eg. much of deep learning is built on top of Optimization Theory principles which are introduced in a DSP class).

The value of Computer Science isn't the ability to whiteboard a Leetcode hard question or glue together PyTorch commands - it's the ability to reason across multiple abstraction layers.

And newer grads are significantly deskilled due to these curriculum changes. If I as a VC know more about Nagle's Algorithm (hi Animats!) than some of the potential technical founders for network security or MLOps companies, we are in trouble.

I came into a CS and math background without CE or EE, and took two dedicated optimization courses (one happened to be in a EE department, but had no EE prereqs), as well as the optimization introduced in machine learning classes. To be honest a lot of the older school optimization is barely even useful, second-order methods are a bit passe for large scale ML, largely because they don't work, not because people aren't aware (Adam and Muon can be seen as approximations to second-order methods, though, so it is useful to be aware of that structure).

Isn't Nagle usually introduced in a networking class typically taken by CS (non-CE/EE) undergrads?

Just because EEs are exposed to some mathematical concepts during their training doesn't mean that non-EEs are not exposed through a different path.

  • > Isn't Nagle usually introduced in a networking class typically taken by CS (non-CE/EE) undergrads

    Networking, OS, and Distributed Systems is increasingly treated as CompE or even EE nowadays in the US.

    > Just because EEs are exposed...

    That's the thing - I truly do not believe that EE and CS should be decoupled, and I believe ECE as a stopgap is doing a disservice to the talent pipeline we need for my verticals to remain in the US, especially when comparing target American CS and EECS programs to peer CEE, Indian, and Israeli CS programs [0].

    There is no reason that a CS major should not be required to take a summary circuits, DSP, computer architecture, and OS fundamentals course when this is the norm in most CS programs abroad. Additionally, I do not see any reason for EEs and ECEs to not take Algorithms, Data Structures, and Compilers as well.

    > Just because EEs are exposed to some mathematical concepts during their training doesn't mean that non-EEs are not exposed through a different path

    Mind you, I'm primarily in Cybersecurity, AI/ML infra, DefenseTech, and DeepTech adjacent spaces - basically, anything aligned with the "American Dynamism" or Cyberstarts thesis.

    From what I've seen, the most successful founders are those who are able to adeptly reason and problem solve, but are also able to communicate to technical buyers because you are selling a technical product where those people make the decision.

    Just because an approach isn't useful today doesn't necessarily imply it isn't in the future and being exposed to those kinds of knowledge and foundational principles makes it easier for one to evaluate and reason through problem spaces that are similar but not necessarily the same - for example, going to the Nagle's example - this was a bog standard networking concept that has now become critical in foundation model training because interconnect performance is a critical problem which can impact margins.

    A lot of foundational knowledge is useful no matter what, and is why we fund founders and hire talent at competitive salaries.

    [0] - https://news.ycombinator.com/item?id=45413516

  • Muon is much more sophisticated than Newton's method. Neural networks have started to borrow techniques from statistical mechanics, and various branches of maths like invariant theory that were previously rarely used in engineering. CS is not dumbing down; its needs and focus are changing.

    I've never needed or benefited from most of the EE curriculum. There is an opportunity cost in learning things you don't need.

I graduated in 2020 and I took a circuit design class and was taught Nagles algorithm. I guess I could have learned more but I thought the degree was packed enough with enough when you consider all the different parts of it, from the math to systems programming to ML stuff.