Live data from Hacker News

Ask HN: What is it like being in a CS major program these days?

news.ycombinator.com

131–140 of 221 posts

Re: Ask HN: What is it like being in a CS major program these days?

#131
I'd like to give my perspective as a computer science professor at Ohlone College, which is a two-year community college located in Silicon Valley. I used to work as an AI researcher in industry (but not in large language models) before becoming a tenure-track instructor in Fall 2024.

Our core computer science curriculum consists of five courses: (1) an introductory programming course taught in a procedural subset of C++, (2) an object-oriented programming course taught in C++, (3) a data structures and algorithms course taught in C++, (4) a discrete mathematics course, and (5) an assembly language course that also covers basic computer architecture. Students who pass all five courses are prepared to transfer to a four-year university to complete their undergraduate computer science programs. The majority of our students transfer to either San Jose State University or California State University East Bay, though many of our students transfer to University of California campuses, typically UC Davis, UC Santa Cruz, UC Merced, and UC Irvine.

Because I teach introductory freshman- and sophomore-level courses, I feel it is vital for students to have a strong foundation with basic programming and basic computer science before using generative AI tools, and thus I do not accept programming assignments that were completed using generative AI tools. I admit that I'd have a different, more nuanced stance if I were teaching upper-division or graduate-level computer science courses. I have found that students who rely on generative AI for programming tend to struggle more on exams, and they also tend to lack an understanding of the programming language constructs the generated program used.

With that said, I recognize that generative AI tools are likely to become more powerful and cheaper over time. As much as I don't like this brave new world where students can cheat with even less friction today, we professors need to stay on top of things, and so I will be spending the entire month of June (1/3rd of my summer break) getting up to speed with large language models, both from a users' point of view and also from an AI research point of view.

Whenever my students are wondering whether it's worth studying computer science in light of the current job market and anxieties about AI replacing programmers, I tell them two things. The first thing I tell them is that computers and computation are very interesting things to study in their own right. Even if AI dramatically reduces software engineering jobs, there will still be a need for people to understand how computers and computation work.

The second thing I tell them is that economic conditions are not always permanent. I was a freshman at Cal Poly San Luis Obispo in 2005, when computer science enrollment bottomed out in the United States. In high school, well-meaning counselors and teachers warned me about the post-dot com bust job market and about outsourcing to India and other countries. I was an avid Slashdot reader, and the piece of advice I kept reading was to forego studying computer science and earn a business degree. However, I was a nerd who loved computers, who started programming at nine years old. I even wrote an essay in high school saying that I'd move to India if that's where all of the jobs are going to end up. The only other things I could imagine majoring in at the time were mathematics and linguistics, and neither major was known for excellent job prospects. Thus, I decided to major in computer science.

A funny thing happened while I was at Cal Poly. Web 2.0, smartphones, cloud computing, and big data took off during my undergraduate years. My classmates and I were able to get internships at prestigious companies, even during the economic crisis of 2008-09. Upon graduation, I ended up doing an internship in Japan at a major Japanese tech company and then started a PhD program at UC Santa Cruz, but many of my classmates ended up at companies like Microsoft, Apple, and Google, just in time for tech industry to enter an extended gold rush from roughly 2012 when Facebook went public until 2022 when interest rates started to go up. Many of my classmates made out like bandits financially. Me? I made different choices going down a research/academic path; I still live in an apartment and I have no stock to my name. I have no regrets, except maybe for not getting into Bitcoin in 2011 when I first heard about it.... Though I'm not "Silicon Valley successful", I'm living a much better life today than I was in high school, qualifying for Pell Grants and subsidized student loans to help pay for my Cal Poly education due to my parents' low income.

I still believe in the beauty of an undergraduate curriculum that encourages critical thinking and developing problem-solving skills, as opposed to merely learning industry topics du jour. Specific tools often come and go; my 2005 Linux system administration knowledge didn't cover systemd and Wayland since they didn't exist at the time, but my copies of Introduction to Algorithms by Cormen et al. and my Knuth volumes remain relevant.

Re: Ask HN: What is it like being in a CS major program these days?

#132

Earlier quoted context omitted.

Maybe I’m an oddball, but I’d rather hire a new grad with sound fundamentals, but learned on an older tech stack, then somebody with all the buzzwords but no fundamentals. And I’ve always found summer internships to be good way to find out. Even better if the candidate is willing to work part-time through their senior year.

I mean yeah, I agree, but is it that hard to keep relevant technology in the mix? I'm not saying everything has to be cutting edge!

Many professors view teaching as a secondary obligation. Even if they don't it takes more time to learn to teach something than just to learn it. Our field is moving so fast that outside of the major innovations, it would be quite difficult to keep up being a good teacher on everything, while also doing research, and doing the actual teaching. In addition, most new tech isn't very interesting, or useful. Like every couple of months I'm getting another peak at SOTA Python or JS and the "innovation" is just another layer of duct tape that doesn't really improve much.

Cool tech usually also sees faster adoption in academia. Rust courses where offered at the uni I went to back in 2017 for example. According to my friends still involved with uni, there was also a strong shift towards more data science/engineering and HCD since then, both fields that saw major practical improvements.

Re: Ask HN: What is it like being in a CS major program these days?

#133
post #20
post #4

I am not in a CS program myself, but I guest lecture for CS students at CMU about 2x/year, and I'm in a regular happy hour that includes CS professors from other high-tier CS schools. Two points of anecdata from that experience: - The students believe that the path to a role in big tech has evaporated. They do not see Google, Meta, Amazon, etc, recruiting on campus. Jane Street and Two Sigma are sucking up all the ta…

When I was in college in the early 2000s, it was the same. Most professors were at least a decade behind current technology.

Having taken a graduate-level CS course as a non-CS major, yes sw is about a decade behind what is actually being used. But the algorithms don't just magically go bad.

Re: Ask HN: What is it like being in a CS major program these days?

#134

Earlier quoted context omitted.

I mean yeah, I agree, but is it that hard to keep relevant technology in the mix? I'm not saying everything has to be cutting edge!

Sure, but are C++ or Java really that outdated. AFAIK that’s what most schools teach. Maybe with some JavaScript as well. It’s not lime they’re teaching Fortran or COBOL. And with the advent of AI coding, I’d hope they can spend more time on system design, as that’s where I’ve found new grads are generally lacking.

The irony is that if they taught COBOL today, those grads could likely get a good job working on legacy code.

Re: Ask HN: What is it like being in a CS major program these days?

#135
post #24

Earlier quoted context omitted.

I wish it was decade for me, in early 2010s they were still teaching 90s approach to handling complex projects(upfront design, with custom DSL for each project and fully modelled by BA without any contact with actual users, with domain experts being siloed away - and all of that connected to codegen tools for xml from the 90s)

Back when soap wasn’t just for hygiene.

I still see software sold as soa compliant, whatever that means. I think we have just started recycling and mixing sw memes at this loint. Like you see someone wearing bell-bottoms with an 80s dayglo jacket. We do agile soap waterfall kanban model driven design here.

Re: Ask HN: What is it like being in a CS major program these days?

#136
post #102
post #24

Earlier quoted context omitted.

I wish it was decade for me, in early 2010s they were still teaching 90s approach to handling complex projects(upfront design, with custom DSL for each project and fully modelled by BA without any contact with actual users, with domain experts being siloed away - and all of that connected to codegen tools for xml from the 90s)

It can be worse! I went back to school for some graduate work in the early 00s after having been in the industry for a handful of years. There was a required class that was one of those "here's what life is like in the real world instead of academia". The instructor was a phd student who'd never been in industry. He kept correcting me about industry practices, telling me that I had no idea what the real world was lik…

The Rodney Dangerfield film, Back To School covers this:

https://m.youtube.com/watch?v=bjuHQOgggxo

Re: Ask HN: What is it like being in a CS major program these days?

#137
I taught an intro course last semester. It was intended for non-CS majors, but it ended up with one module having all CS majors after all. They were very pessimistic about their job opportunities at graduation.

I explained that the fundamentals are still very much necessary for now, even if you end up only reviewing AI code. Honestly, computational thinking is as important as ever, although how persuasive I was about this is up for debate.

We used some tools AI models just aren't good at (visual languages are not a strength of language models, and I explained that they couldn't help from day one), but it meant some weaker students still tried to use AI and were confidently told incorrect instructions. They often ended up stuck because the newest group we've gotten is very adverse to office hours when ChatGPT exists (out of ~75 students, only one ever showed up, although I did meet with many right after class).

I'm very concerned for these students, using AI as a crutch was definitely not helping them succeed, but the ability to get easy answers (even if totally wrong) is too appealing. In the classroom they seemed interested, but when they get to a chatbot, they don't want to put it in the "learning" mode, they want to be done with the assignment, and they aren't taught enough "AI literacy" to know to think critically about the outputs or their use of it in general.

Re: Ask HN: What is it like being in a CS major program these days?

#138
post #37

Earlier quoted context omitted.

To be fair, college CS programs have always been decades behind in my experience. Maybe schools like Stanford and MIT are different but the majority of CS programs are not teaching tech that is actually used in the business world.

Which is a good thing. They should be teaching the cornerstone principles, not offering vocational courses.

my old CS prof at my uni used to say when this question came up "do you sign up for an astronomy course and expect they teach you how to build a telescope?"

It's always puzzled me why people sign up for an academic education that has 'science' literally in the name and then complain when they get a theoretical education. It's not a tool workshop

Re: Ask HN: What is it like being in a CS major program these days?

#139

Earlier quoted context omitted.

Sure, but are C++ or Java really that outdated. AFAIK that’s what most schools teach. Maybe with some JavaScript as well. It’s not lime they’re teaching Fortran or COBOL. And with the advent of AI coding, I’d hope they can spend more time on system design, as that’s where I’ve found new grads are generally lacking.

> Sure, but are C++ or Java really that outdated. In what sense is either "outdated" at all?? Especially Java. Anybody who's paying attention to Java since about Java 11 would know that Java is very much a modern language at this point. I don't write much C++ myself these days so I haven't kept up with that as much, but my subjective perception is that C++ is also modernizing quickly over the last decade or so.

That was my point! Unless I missed it, those are the two most common core languages at colleges, and they're both very much alive and in use.

Re: Ask HN: What is it like being in a CS major program these days?

#140

Earlier quoted context omitted.

To be fair, college CS programs have always been decades behind in my experience. Maybe schools like Stanford and MIT are different but the majority of CS programs are not teaching tech that is actually used in the business world.

Maybe I’m an oddball, but I’d rather hire a new grad with sound fundamentals, but learned on an older tech stack, then somebody with all the buzzwords but no fundamentals. And I’ve always found summer internships to be good way to find out. Even better if the candidate is willing to work part-time through their senior year.

Yes it is just you. Every application for a job gets hundreds of applications. A company is not going to hire someone with no experience or knowledge over someone who does.
Post reply on HN