Live data from Hacker News

Stanford CS Curriculum 2021

docs.google.com

101–110 of 146 posts

Re: Stanford CS Curriculum 2021

#101

Looks really good. I still remember the curriculum of my CS degree in Europe: - first year: Mathematics I, Mathematics II, Mathematics III, Electronics I, Electronics II, Digital Circuits, Statistics I, Physics I. The rest was about software and programming (at least!) - second year: Mathematics IV, Statistics II, Physics II. The rest was about software and programming (nice!) - third year: software and programming o…

That looks like a CompEng degree, something of a mix of CS and EE content. The physics and digital circuits courses don't seem very typical of pure CS degrees.

Re: Stanford CS Curriculum 2021

#102
post #49
post #33

Earlier quoted context omitted.

Not from stanford but I enjoyed these: MIT 6.824: Distributed Systems https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39... CMU The Databaseology Lectures https://www.youtube.com/watch?v=GkgDDs9EJUw&list=PLSE8ODhjZX... You essentially learn systems by looking at lots and lots of examples of how good real world systems are designed.

How did you like 6.824 specifically? I haven’t taken any systems courses as I’m not too interested in it, but I realize distributed systems is important in the industry as a SWE and was thinking of watching the videos. Any other courses you recommend on the topic?

Martin Kleppmann from Cambridge University made has pandemic lecture series public here: https://youtube.com/playlist?list=PLeKd45zvjcDFUEv_ohr_HdUFe...

Re: Stanford CS Curriculum 2021

#103
post #23

Does anyone know which of these courses are great to learn more about system design?

I'm a adherent to the idea that nothing teaches system design except experience and having to fix your own mistakes in sufficiently large systems. In most software development courses, the student is learning how to make something (and then after that is done, its thrown away for the next homework assignment). System design is often about writing the glue between different constraints - frequently through another con…

I think I agree with you almost fully but not quite. Systems design in the sense of 'designing systems' means that a lot of the time you are dealing with glue, but perhaps quite a bit of time is spent on the 'blueprint'. A good system design means that you can synthesise your learned knowledge with that of the body of knowledge to produce a new solution. So sure, you from experience know that a doesn't go with b, but if you include c, you can z. But sometimes you need to break things down further, to components you have haven't used, have never seen before, and only barely understand. This is where your CS first principles come in. You need a URL shortener. Should you create a hash of the url on demand when requested? Well maybe not, because you could get collisions, how about pre generating and picking them up at request time? Oh look, someone has written an article on this problem!

So much of system doesign is understanding what your 'actual' problem is, and then thinking it through, looking for what others have done, and then bringing it together with your team knowledge.

Re: Stanford CS Curriculum 2021

#104
post #99

Looks really good. I still remember the curriculum of my CS degree in Europe: - first year: Mathematics I, Mathematics II, Mathematics III, Electronics I, Electronics II, Digital Circuits, Statistics I, Physics I. The rest was about software and programming (at least!) - second year: Mathematics IV, Statistics II, Physics II. The rest was about software and programming (nice!) - third year: software and programming o…

I don't get why it would include so much math but no discrete or proof based stuff. Was it a degree in computer engineering instead?

I suspect it is a distinction in the common names of things. Eg to me “logic, Boolean algebra” feels like something that ought to fit into a lecture or two (assuming here that logic doesn’t mean formal logic full of things like tautologies and modus ponens and some ZF set theory). So I have to assume that there’s more to it.

Another example is that in my education I think of analysis as being the “pure” thing with a first course consisting of 0. epsilon-delta; 1. sequences, series, limits; 2. Continuity, limits; 3. differentiation, Riemann integration. And calculus is the application of integration and differentiation and probably involves physics and integration by parts and things like Stokes’ law or Green’s theorem and maybe differential equations (unless they go in a separate course). But I understand that at other universities these might all be called calculus.

Re: Stanford CS Curriculum 2021

#105

Looks really good. I still remember the curriculum of my CS degree in Europe: - first year: Mathematics I, Mathematics II, Mathematics III, Electronics I, Electronics II, Digital Circuits, Statistics I, Physics I. The rest was about software and programming (at least!) - second year: Mathematics IV, Statistics II, Physics II. The rest was about software and programming (nice!) - third year: software and programming o…

It’s somewhat similar in India. First year has introductory courses from all other engineering streams. Mechanical, civil and what not and is common for all the students. The specialization beings from the second year.

Re: Stanford CS Curriculum 2021

#106
post #39

Given the power tech has over the daily experiences of billions and how many questions of values and ethics it is now directly confronting in society, I'm a little surprised there's just one ethics course and one law course that cover these subjects, and they're electives [1]. We all know much of the learning in engineering is on the job anyways, so the role of formal education is less about particular job skills and…

When I was at university (mathematics; not so long ago) there was basically no ethics course in the curriculum[1] at all. Common career paths were:

- academia

- intelligence agencies

- teaching

- various “data science” or “AI” type things (could include eg pricing insurance or selling/targeting ads amongst other things)

- computer programming

- finance (investment banks, quant shops, etc)

[1] A few lecturers started trying to do a few lectures in ethics topics while I was a student but I think they weren’t really a proper part of the curriculum

Re: Stanford CS Curriculum 2021

#107
post #53

Earlier quoted context omitted.

FWIW, I've never seen any value whatsoever in these ethics classes (note: I'm not saying it's not an important topic, it's extremely important). The hypotheticals and situations presented and discussed in many of them are very similar to yearly mandatory classes we have to take at FAANG (and many other workplaces I assume) and it boils down to having a checkbox that says "I'm not stupid". Real world ethics is much mo…

The one ethics course I took as an EE undergrad taught me exactly one lesson - that the whistleblower always has their life ruined, and even ones who (in the US) have received significant payments typically regret it. I think it's the reverse of the lesson they were trying to teach.

Hacker One's business model is creating a pen for all the whistleblowers (security researchers doing bug bounties) so they are trapped inside it and can't escape unless they want to lose their ability to get paid in the future.

It's a classic Monopsony.

Re: Stanford CS Curriculum 2021

#108

Earlier quoted context omitted.

> It's the effect on your thinking patterns as a result of studying I've heard this over and over again, but I don't believe there's a shred of evidence for it.

I strongly believe it's a rationalization for having to spend so much time studying.

Pretty much. jlos is claiming that college educated people have a monopoly on certain thinking patterns, isn't that extremely elitist?

Re: Stanford CS Curriculum 2021

#109

Earlier quoted context omitted.

I see this type of like used to justify whatever it is the speaker enjoys being forced on everyone else. Something like "everyone should learn philosophy because it trains the mind" usually means "I like philosophy and wish it was taught more at schools".

The statements you provided are obviously the same thing though, no?

If you interpret "the mind" as "my mind" then yes, it can't be more obvious.

Re: Stanford CS Curriculum 2021

#110

Looks really good. I still remember the curriculum of my CS degree in Europe: - first year: Mathematics I, Mathematics II, Mathematics III, Electronics I, Electronics II, Digital Circuits, Statistics I, Physics I. The rest was about software and programming (at least!) - second year: Mathematics IV, Statistics II, Physics II. The rest was about software and programming (nice!) - third year: software and programming o…

That looks like a CompEng degree, something of a mix of CS and EE content. The physics and digital circuits courses don't seem very typical of pure CS degrees.

In Spain for example, there is historically no such thing as a Computer Science degree. Before the implementation of the EU-wide Bologna Process (mid 2000s), 5-year bachelor degrees were classified into either ordinary “Licenciaturas“ or “Ingenierías“ (=Engineering), with computing being an engineering degree (“Ingeniería Informática“) and treated as such. I'm not sure how it works now, but I think it's still a degree in engineering at least by name.

In my opinion, this being the only option has had a lasting negative impact on the IT culture in Spain, with many people who worked their way through (i.e. suffered their way through) getting their Computer Engineering degree feeling defensive about "professional intrusion" from people who work in the field without having taken Computer Engineering at university. However, being as I am one of those intruders, I am of course biased.

Post reply on HN