Why should CS teach game design? It is really orthogonal to computer science. And in some parts even to software engineering. CS can be useful for game design, but I doubt there is too much to gain other way around.
To offer well rounded education. And HCI is really in sense core of lot more software than game design. You have to stop somewhere and can only include so much.
Computer Science is about computing theory, algorithms and such, not practical software engineering. You can actually learn computer science without programming.
Game Design should probably be an art school discipline.
Going to college is about being able to convince some entity with money to give you some of that money in exchange for your labor so then you can exchange that money to support your addiction to food, clothes and shelter.
It is perfectly reasonable to spend four years of life and tens of thousands of dollar and expect to learn something you can use to get a job.
I don't pragmatically disagree with you, but this is a debatable point.
Technically going to college is to learn knowledge about a topic. For computer science, that would be learning the theory of computing.
What you're talking about is a trade school to become a software engineer.
There are people who want to get a PhD in computer science or go on to do research of some kind. Those people do need a theory based computer science curriculum, not just a software engineering trade school.
We currently conflate these two things. It mostly works out but we should really be more explicit about it in my opinion. I went to a top CS program and I learned 90% of what I needed to know to be a software engineer at my first job, not in school. Something about that feels off to me.
How many of those 100K students do you think are interested in learning the theory of computer science or are interested in getting a job?
How many jobs are available in the US for pure “computer scientist” and in an ultra competitive job market, why would anyone hire someone who doesn’t know how to code when they can get someone for around the same price who can?
I don't disagree with any of this. I'm just explaining that universities are not trade schools, even though we often treat them like they are.
The theory is that somebody with a background in computer science is going be more likely to be capable at being a software engineer. There is a high correlation between the two. But nonetheless, that does not make a computer science program a software engineering trade school.
Wouldn’t someone with a computer science background and knowing how to actual program be better?
If I need someone who can actual code your standard enterprise development - where most developers work - who would I be better off hiring, someone who knows theory or someone who knows how to code?
Do doctors, lawyers, teachers or any other professionals graduate just knowing “theory”?
Medical school and law school are professional programs you take after your bachelors degree.
I've seen some discussion about making engineering programs something you do after a pre-engineering bachelor degree, simply because you can't learn enough in 4 years to really learn those fields.
I think a better comparison to what you're saying is that getting a history degree doesn't qualify you to become a history teacher, you still need to take a teaching program on top of it.
I personally double majored in EE and CS and neither program prepared me for working in those fields. They just gave me the theoretically background and not very much application experience.
For EE, you barely learn enough physics and background stuff to just start doing a bit of application engineering in your senior year. Another 2 years on top of that is definitely required for job training. And that's one of the program they're thinking of making a 4+2 years thing.
I think you could modify a CS program to have less theory and more practical application classes, but that would be software engineering trade school, not computer science. I did do a software engineering masters on top my CS undergrad and that was more helpful to a degree for job preparation. I will say I haven't used very much of the computer science theory I learned at my jobs so that wasn't a good use of time for job training.
I graduated with a degree in computer science from a state school back in the 90s and it tried to prepare people for a job. Would I have been prepared to design and write a double entry, networked, data entry program with 10 screens in C with a database backend by myself as my first job with just the degree? Maybe?
I learned C in college. But I learned to program in assembly and a little BASIC before going to college by being self taught.
Yeah we did a DS&A class, networking, and I believe a database class was offered soon after I graduated. But we also learned how to code. Now it seems quaint that some of the coding classes were in COBOL and FORTRAN. But I have a classmate that is still working for the same payment processing he got a job at in 1995 and still doing COBOL.
This is a specific 4 year degree to become a teacher and the first link that showed up when I was looking for a math teacher (my mom is a retired math teacher)
People go to college and get a bachelors with the hope of getting a job with the exception of those getting an undergrad degree with the expectation of doing post grad work for a specialty that requires it with the hopes of learning skills to get a job.
This is a 4 year nursing degree. After passing the exam you are qualified to be a nurse. Again not a “trade school”
“Focus: building on a base of fundamentals in programming and computational theory to provide a solid foundation of knowledge and skills for applying digital processes effectively to issues of broad interest in a global society.”
Applied learning is the opposite of theory and they teach “programming”.
And here they are focus on “careers” none of which is about getting a PHD or learning for the sake of learning.
Game design is taught at many schools, though often not a lot of courses (maybe 1 or 2). But if you broaden your scope, the things that go into video games (graphics, modeling like goes into a physics engine, etc.) are taught at many more schools with greater opportunity to dive deeper into the topics.
amichail's questions rarely make sense when you read them. They contain weird assumptions that don't make sense when considered against reality or they're just weird questions. I assume they're stoned half the time.
I went through school specializing in game development. Here are some thoughts:
Game development is all about project management, including managing external teams. The CS is just one part that goes into the whole business. You instead will be working with artists and their tools, from exporting 3D models to playing sound correctly. Getting everybody working productively is Project Management 101. As a corollary, having students make a very simple game (like Frogger or Space Invaders) with multiple people, including non-technical people, is great practice for real-world development while not exploding in scope.
"Game Design" is notoriously vague, but college is a unique place where you can get all the building blocks. You really want to have some experience with music, art, philosophy, theater, creative writing, project/business management, and much more. The broader your experience the more it serves your foundation. College is also a great place to meet many different people (artists, business, theater, music, etc) that can contribute and bounce ideas. You will learn about managing people!
Game development is more Art than Computer Science. Yes it is a simulation that is programmed on a computer, but outside low level game engine development you will be working on much more fuzzy concepts like artwork and "fun" far more than the CS heavy parts. Because it takes so many different experiences combined together, it's hard to make a specific elective or specific major. I do think other majors, like Film and Theater, are a good prototype of what a Game Development major might look like because they too have to combine many different technical specialties into a production.
tl;dr: Game development isn't a single major, but a whole bunch of majors in a trench coat.
No, but it would simply be off-putting to majority of the students and they dont need it for anything. There are game focused programs available for those who want to go into game development. They are not mandatory in general CS.
At my uni HCI was an optional elective
Game Design should probably be an art school discipline.
It is perfectly reasonable to spend four years of life and tens of thousands of dollar and expect to learn something you can use to get a job.
Technically going to college is to learn knowledge about a topic. For computer science, that would be learning the theory of computing.
What you're talking about is a trade school to become a software engineer.
There are people who want to get a PhD in computer science or go on to do research of some kind. Those people do need a theory based computer science curriculum, not just a software engineering trade school.
We currently conflate these two things. It mostly works out but we should really be more explicit about it in my opinion. I went to a top CS program and I learned 90% of what I needed to know to be a software engineer at my first job, not in school. Something about that feels off to me.
https://www.statista.com/statistics/185353/number-of-doctora...
There are over 100K CS graduates per year.
https://www.studentclearinghouse.org/nscblog/computer-scienc...
How many of those 100K students do you think are interested in learning the theory of computer science or are interested in getting a job?
How many jobs are available in the US for pure “computer scientist” and in an ultra competitive job market, why would anyone hire someone who doesn’t know how to code when they can get someone for around the same price who can?
The theory is that somebody with a background in computer science is going be more likely to be capable at being a software engineer. There is a high correlation between the two. But nonetheless, that does not make a computer science program a software engineering trade school.
If I need someone who can actual code your standard enterprise development - where most developers work - who would I be better off hiring, someone who knows theory or someone who knows how to code?
Do doctors, lawyers, teachers or any other professionals graduate just knowing “theory”?
I've seen some discussion about making engineering programs something you do after a pre-engineering bachelor degree, simply because you can't learn enough in 4 years to really learn those fields.
I think a better comparison to what you're saying is that getting a history degree doesn't qualify you to become a history teacher, you still need to take a teaching program on top of it.
I personally double majored in EE and CS and neither program prepared me for working in those fields. They just gave me the theoretically background and not very much application experience.
For EE, you barely learn enough physics and background stuff to just start doing a bit of application engineering in your senior year. Another 2 years on top of that is definitely required for job training. And that's one of the program they're thinking of making a 4+2 years thing.
I think you could modify a CS program to have less theory and more practical application classes, but that would be software engineering trade school, not computer science. I did do a software engineering masters on top my CS undergrad and that was more helpful to a degree for job preparation. I will say I haven't used very much of the computer science theory I learned at my jobs so that wasn't a good use of time for job training.
I learned C in college. But I learned to program in assembly and a little BASIC before going to college by being self taught.
Yeah we did a DS&A class, networking, and I believe a database class was offered soon after I graduated. But we also learned how to code. Now it seems quaint that some of the coding classes were in COBOL and FORTRAN. But I have a classmate that is still working for the same payment processing he got a job at in 1995 and still doing COBOL.
This is a specific 4 year degree to become a teacher and the first link that showed up when I was looking for a math teacher (my mom is a retired math teacher)
https://www.ucf.edu/degree/secondary-education-bs/mathematic...
As part of the requirements to become a teacher you have to do student teaching. Would you call this a trade school?
Part of the ranking criteria for how USA Today ranks colleges (not “trade schools”) is getting a well paying job after leaving.
https://www.usatoday.com/story/news/nation/2023/09/18/us-new...
People go to college and get a bachelors with the hope of getting a job with the exception of those getting an undergrad degree with the expectation of doing post grad work for a specialty that requires it with the hopes of learning skills to get a job.
This is a 4 year nursing degree. After passing the exam you are qualified to be a nurse. Again not a “trade school”
https://valenciacollege.edu/academics/programs/health-scienc...
This is GA Tech’s computer science program - again not a “trade school”. They focus on practical skills and “building” things.
I looked up GT because I was accepted here decades ago in their computer science program. But decided on going somewhere else.
https://catalog.gatech.edu/programs/computer-science-bs/
And if you back up a page;
“Focus: building on a base of fundamentals in programming and computational theory to provide a solid foundation of knowledge and skills for applying digital processes effectively to issues of broad interest in a global society.”
Applied learning is the opposite of theory and they teach “programming”.
And here they are focus on “careers” none of which is about getting a PHD or learning for the sake of learning.
https://www.cc.gatech.edu/explore-your-degree
Here is GT’s Applied Physics degree which they specifically call out how it leads to a job and not just theory
https://www.gatech.edu/academics/degrees/bachelors/applied-p...
When I was in uni CS majors could take multiple gamedev classes but they were electives
amichail's questions rarely make sense when you read them. They contain weird assumptions that don't make sense when considered against reality or they're just weird questions. I assume they're stoned half the time.
https://news.ycombinator.com/item?id=11416374
BTW my No.1 pet peeve about universities is they force you to take many irrelevant courses which you can simply look up by yourselves if you so wish.
Game development is all about project management, including managing external teams. The CS is just one part that goes into the whole business. You instead will be working with artists and their tools, from exporting 3D models to playing sound correctly. Getting everybody working productively is Project Management 101. As a corollary, having students make a very simple game (like Frogger or Space Invaders) with multiple people, including non-technical people, is great practice for real-world development while not exploding in scope.
"Game Design" is notoriously vague, but college is a unique place where you can get all the building blocks. You really want to have some experience with music, art, philosophy, theater, creative writing, project/business management, and much more. The broader your experience the more it serves your foundation. College is also a great place to meet many different people (artists, business, theater, music, etc) that can contribute and bounce ideas. You will learn about managing people!
Game development is more Art than Computer Science. Yes it is a simulation that is programmed on a computer, but outside low level game engine development you will be working on much more fuzzy concepts like artwork and "fun" far more than the CS heavy parts. Because it takes so many different experiences combined together, it's hard to make a specific elective or specific major. I do think other majors, like Film and Theater, are a good prototype of what a Game Development major might look like because they too have to combine many different technical specialties into a production.
tl;dr: Game development isn't a single major, but a whole bunch of majors in a trench coat.