Can computer engineers and scientists drive the future of computer science?

In summary, computer scientists are rare in the field of innovation and new technology, but they are essential in the field. New innovations will be made by them, the computer engineering based students, and academics.
  • #1
CylonMath
34
0
Hello there,

I want to share my views on my field. I am a computer engineering student at a university. After doing some research about the field, i have seen that mostly innovative and new ways of computing technology and algorithms has been found by either mathematicians or physicists ( They are also called as computer scientists) And we computer engineers or scientists are very rare in the field of innovation and new technology.

Is this because traditional computers are found by scientists ( coz they needed it ) and computer science is a new discipline. So new innovations will be made by us, the computer engineering based students and academicians ? Or the field will stay same and mathematicians and physicists will continue to dominate the domain ? We CS based students will just improve and develop software technologies only ?

I think second idea will come true as the scientists are requiring more and more computing power and they have already discovering quantum technology which will reduce exponential complex algorithm to linear complexity. (That will make a new era in artificial intelligence as the search space will be scanned much much faster) So the leaders of computer science field will be still them according to me..

What do you think ?
 
Technology news on Phys.org
  • #2
CylonMath said:
So new innovations will be made by us, the computer engineering based students and academicians ? Or the field will stay same and mathematicians and physicists will continue to dominate the domain ? We CS based students will just improve and develop software technologies only ?

I think the innovations will be made mostly by those in theoretical computer science (and the nearby fields of math). The 'practical' CS people will focus more on creating than innovating (which is appropriate).

CylonMath said:
they have already discovering quantum technology which will reduce exponential complex algorithm to linear complexity. (That will make a new era in artificial intelligence as the search space will be scanned much much faster)

NO. Quantum computers are not known to be able to solve NP-hard problems in polynomial time, let alone EXP-hard problems. This misconception is so common that it's the masthead for Scott Aaronson's blog!

On the other hand, you're right that quantum computing can search faster than conventional computers, thanks to Grover's algorithm. But this is a polynomial, not exponential, speedup.
 
  • #3
The first CS undergraduate program was at Purdue in 1968. This means that the first graduates from the undergraduate program were happening at around 1972. Say they were 22 at the time; now, another 8 years for graduate school and you're looking at 1980 for the first real computer scientists (real meaning "not something else, too")

Since 1980, what fundamental advances have been made in the area of computing by non-CS academics? Before then, there were no computer scientists who weren't also something else by training. In many cases, mathematicians and physicists became computer scientists with the introduction of the computer.

In summary, it's too new of a field to talk about these things in any meaningful way. In any field, someone from a related but different field can make important advances outside of their specific area of training, but this will be less common.

If you like CS, and want to be good at CS, and want to contribute to the field of CS, my money says you should major in CS.
 
  • #4
I think you are limiting yourself to what you consider as 'innovations in technology'. Technology need not be a physical quantity. It can be a concept or a system, and most of these technologies in the field of computers are indeed innovated by computer scientists.

Sure innovations in computer hardware such as faster processing, better graphics, faster internet browsing, compact handsets, dense memory, etc. are naturally (usually) the result of research by scientists in the fields of materials science, electrical engineering, electronics, telecommunications, etc.

But a computer scientist may contribute by designing a radical new application using the latest technologies (eg. operating system design, database system design, network protocols) that will greatly change the way computers function for the better.

A computer scientist should be well versed in advanced mathematics (at least that related to computer science). So for example, the innovation of say a new algorithm in artificial intelligence, game theory, etc. can be done by a computer scientist, not necessarily a core mathematician.

As AUMathTutor mentioned above, the technologies/algorithms developed over decades have been formed by non-CS academics simple because CS was not a proper field at the time.

Also sometimes, those working in practical environments also end up discovering/creating something new. It arises as a result of the design phase where minimal research is required before starting anyway.

So you see, students of computer engineering / computer science do have a good scope ahead, especially if you consider radical innovations in the way computers work.
 
  • #5
CylonMath said:
Hello there,

I want to share my views on my field. I am a computer engineering student at a university. After doing some research about the field, i have seen that mostly innovative and new ways of computing technology and algorithms has been found by either mathematicians or physicists ( They are also called as computer scientists) And we computer engineers or scientists are very rare in the field of innovation and new technology.

Is this because traditional computers are found by scientists ( coz they needed it ) and computer science is a new discipline. So new innovations will be made by us, the computer engineering based students and academicians ? Or the field will stay same and mathematicians and physicists will continue to dominate the domain ? We CS based students will just improve and develop software technologies only ?

I think second idea will come true as the scientists are requiring more and more computing power and they have already discovering quantum technology which will reduce exponential complex algorithm to linear complexity. (That will make a new era in artificial intelligence as the search space will be scanned much much faster) So the leaders of computer science field will be still them according to me..

What do you think ?

I'm a dual major in computer science and mathematics. I think the computer science degree is not very strong on its own, but it is a great 2nd major.
 
  • #6
"I think the computer science degree is not very strong on its own, but it is a great 2nd major."

The same could be said about the mathematics degree... in either case, I disagree.

Why do you feel this way?
 
  • #7
AUMathTutor said:
"I think the computer science degree is not very strong on its own, but it is a great 2nd major."

The same could be said about the mathematics degree... in either case, I disagree.

Why do you feel this way?

Because computer science is a great supporting role to another major. Mathematics, physics, various engineering, and biology are cool to take with computer science. Business and other finance majors can work well with it too. By itself, it seems to lack content.
 
  • #8
How could you say it's lacking in content?

At my school, you have to take 2 programming courses, a course in large-scale software construction, a course in software engineering, a course in programming languages and a separate one in formal languages, a course in algorithms, one in operating systems, one in computer organization and assembly language, one in networks, as well as all the math and circuits that goes with it.

One could say that math is also a great supporting major for another major. I know more people double majoring in math than double majoring in computer science.

I don't see how you could think CS lacks content. Yes, CS is applicable to many fields. But it also stands on its own as a field worthy of study. Just like math can be pure or applied, and studied by itself or in the context of another discipline, computing can as well. That doesn't mean computing is a secondary major or lacks content... it just means that CS has applications in other subjects.

I agree that double majoring can be fun, and that's what I'm doing, but you definitely wouldn't have to.
 
  • #9
The fundamentals in computer science - that is, data structures and algorithms, won't change much, if any -- even as parallel hardware becomes more available. The real advancements are all happening in specific fields of "computer science," but these fields are not so much about the science of computers as they are about designing algorithms to solve difficult problems using computers.
 
  • #10
AUMathTutor said:
How could you say it's lacking in content?

At my school, you have to take 2 programming courses, a course in large-scale software construction, a course in software engineering, a course in programming languages and a separate one in formal languages, a course in algorithms, one in operating systems, one in computer organization and assembly language, one in networks, as well as all the math and circuits that goes with it.

One could say that math is also a great supporting major for another major. I know more people double majoring in math than double majoring in computer science.

I don't see how you could think CS lacks content. Yes, CS is applicable to many fields. But it also stands on its own as a field worthy of study. Just like math can be pure or applied, and studied by itself or in the context of another discipline, computing can as well. That doesn't mean computing is a secondary major or lacks content... it just means that CS has applications in other subjects.

I agree that double majoring can be fun, and that's what I'm doing, but you definitely wouldn't have to.

Computer science is mostly setup around software engineering. When you engineer software for a purpose, you need to have an understand of that purpose; therefore, you need a 2nd major. You can be a English major and become a computer scientist; however, the reverse is not true. Besides that, if you dual major, you will always have something to fall back on.
 
  • #11
AUMathTutor said:
The first CS undergraduate program was at Purdue in 1968. This means that the first graduates from the undergraduate program were happening at around 1972.
My high school had a MonRobot (drum based memory) computer back in 1967-1968, and then in the fall of 1968, they got an IBM 1130 which they still had when I graduated in 1970. University of California had CS programs by then, but I don't know if they started in 1968 or later.

Say they were 22 at the time; now, another 8 years for graduate school and you're looking at 1980 for the first real computer scientists.
So only post PHD graduate are real computer scientists?

Getting back on topic, I'm not sure what is going on in CS graduate departments of schools today. While working for a tape company, we met with UCSD graduate students working on coding methods for magnetic media (CMRR), and a few people that specialized in error correction codes, something I spent some time with myself.

I'm not sure what's new in the general sense for software. Multi-tasking design was figured out decades ago, so not much there. Graphical interfaces and the internet have produced some new software technology. Think C had object oriented programming back in the 1980's. There was a "4th generation" language tool called Prototype or Prototyper in the late 1980's or early 1990's for the Macintosh, sort of like Visual Studio's "draw your program" interface to generate code (but I can't seem to find any hits for Prototype for the mac doing a web search). I only worked on a couple of Mac apps while assisting a consulting group making a backup app for the tape company I worked for, but remember the tools and how antiquated MPW seemed compared to Think C or Microsoft's tools back then. Since 1987, for me it's been mostly PC or imbedded firmware development, Intel and ARM like cpu's.

I was mostly working with operating system design until 1987, but ended up working on computer peripherals, which also use multi-tasking systems. I'm 57 years old now, and looking for a bit of a change for some more generic and current type software work before I retire.
 
Last edited:
  • #12
That's a false argument... so you're saying that since Math is applied to specific fields, Math must be part of a double major, or since English is only used to write about things, you must double major in English and something else, etc.

I think interdisciplinary work is good, but that doesn't necessitate a double major. You could make exactly the same argument about any of the following fields: Math, Physics, English, Communications, and a whole host of others.
 
  • #13
AUMathTutor said:
The first CS undergraduate program was at Purdue in 1968. This means that the first graduates from the undergraduate program were happening at around 1972.
That's a bit too pedantic. Consider aerospace engineering. In many schools, aerospace engineering is treated as a discipline within mechanical engineering. To get a concentration in aerospace engineering from such a school one must take a lot of courses that are at best peripherally related to traditional mechanical engineering concerns. Graduates of such programs are mechanical engineers in name only; their training is very similar to graduates from a school with a distinct aerospace engineering department.

Undergraduate computer science was in pretty much the same situation before 1968. You could get a degree in mathematics with a concentration in computer science at some schools, a degree in electrical engineering with a concentration in computer science at others. Moreover, there were distinct graduate programs in computer science prior to 1968.

SixNein said:
Computer science is mostly setup around software engineering.
I strongly disagree. Software engineering is an even newer discipline than is computer science and has much more in common with systems engineering than it does with computer science.
 
  • #14
AUMathTutor said:
That's a false argument... so you're saying that since Math is applied to specific fields, Math must be part of a double major, or since English is only used to write about things, you must double major in English and something else, etc.

I think interdisciplinary work is good, but that doesn't necessitate a double major. You could make exactly the same argument about any of the following fields: Math, Physics, English, Communications, and a whole host of others.

I think if you want to be strong in any area of computer science, then you have to dual major, or pick up a minor. I could drop computer science, and I could still get a job as a computer scientist with a mathematics degree. The field of computer science still has some growing up to do, and it will be weak until that happens. Researchers are still trying to decide on the best method of publishing research. Currently, it's mostly done at conferences, but some would like to see it being done in Journals instead (myself included).
 
  • #15
"and I could still get a job as a computer scientist with a mathematics degree."

You couldn't even get a job as a Mathematician with a mathematics degree. You can get a programming job without any degree at all. I think you need to sit down and really think about your position. Your college major is not a meal ticket and it's not a union card.

"I think if you want to be strong in any area of computer science, then you have to dual major, or pick up a minor."

What about operating systems? Maybe industrial engineering as a double major to better understand scheduling algorithms? Or for computer graphics graphic design? These would be great ideas, but the point is that it's just icing on the cake, like a double major in Political Science would be to a History major studying something related to politics.

"The field of computer science still has some growing up to do, and it will be weak until that happens."

This is true, but it doesn't mean an undergraduate can learn everything any good university can teach them about the field in the course of an undergraduate curriculum. You can study CS without explicitly studying an application area. Why not?

"Researchers are still trying to decide on the best method of publishing research. Currently, it's mostly done at conferences, but some would like to see it being done in Journals instead (myself included)."
... I've heard of this, but I have no idea how this has anything to do with the issue at hand. I agree CS is a new field and is still hammering out the details in some respects, but I don't think this is any reason to say that CS isn't a good primary major.

I don't like the idea that CS is somehow lesser than other majors. I'm a CS/Physics double major, and I feel like I've learned a lot more actual content in CS than in Physics. And Physics isn't light on content, mind you.
 
  • #16
AUMathTutor said:
"and I could still get a job as a computer scientist with a mathematics degree."

You couldn't even get a job as a Mathematician with a mathematics degree. You can get a programming job without any degree at all. I think you need to sit down and really think about your position. Your college major is not a meal ticket and it's not a union card.

"I think if you want to be strong in any area of computer science, then you have to dual major, or pick up a minor."

What about operating systems? Maybe industrial engineering as a double major to better understand scheduling algorithms? Or for computer graphics graphic design? These would be great ideas, but the point is that it's just icing on the cake, like a double major in Political Science would be to a History major studying something related to politics.

"The field of computer science still has some growing up to do, and it will be weak until that happens."

This is true, but it doesn't mean an undergraduate can learn everything any good university can teach them about the field in the course of an undergraduate curriculum. You can study CS without explicitly studying an application area. Why not?

"Researchers are still trying to decide on the best method of publishing research. Currently, it's mostly done at conferences, but some would like to see it being done in Journals instead (myself included)."
... I've heard of this, but I have no idea how this has anything to do with the issue at hand. I agree CS is a new field and is still hammering out the details in some respects, but I don't think this is any reason to say that CS isn't a good primary major.

I don't like the idea that CS is somehow lesser than other majors. I'm a CS/Physics double major, and I feel like I've learned a lot more actual content in CS than in Physics. And Physics isn't light on content, mind you.

I've met computer science grads who could not do math, had no practical application, and could not write (not talking about code) worth two cents. Many institutions shell out programmers instead of computer scientists. It's a rough form of applied computer science.

If you are an employer, what do you know about that person by the degree? At best, you know he can write a hello world program. You cannot tell because the academics are very uneven with regard to computer science. This is why you hear about people not getting a job with computer science degrees.
 
  • #17
"This is why you hear about people not getting a job with computer science degrees."
I have never heard that, at least, more so than any other major. Math, English, and Philosophy majors routinely have hard times finding jobs. The field of electrical engineering is experiencing slower growth than the average for all professions, so jobs will be relatively harder to come by for EE majors. Software Engineering and CS are growing much faster than the average, according to the BLS OOH. Programming jobs are being outsourced, but not all CS/SE jobs are programming.

Do you have any statistics to back up any claim that CS majors have a harder time getting jobs than other majors, or is this just baseless supposition based on anecdotal evidence?

"I've met computer science grads who could not do math, had no practical application, and could not write (not talking about code) worth two cents. Many institutions shell out programmers instead of computer scientists. It's a rough form of applied computer science."
This is probably more a reflection on the students and/or individual programs than on CS programs in general. I'm sure there are some math programs that shell out majors who can't write a program to save their life, maybe know one scripting language, have no application outside of math, and can't write to boot. That doesn't invalidate mathematics as a major. The same for any other major you can think of.

"If you are an employer, what do you know about that person by the degree? At best, you know he can write a hello world program. You cannot tell because the academics are very uneven with regard to computer science."
Many employers have experience with graduates from certain programs and know roughly what to expect from them. ABET accredited CS programs teach at least the same core subjects, so your argument doesn't make much sense.
 
  • #18
AUMathTutor said:
"This is why you hear about people not getting a job with computer science degrees."
I have never heard that, at least, more so than any other major. Math, English, and Philosophy majors routinely have hard times finding jobs. The field of electrical engineering is experiencing slower growth than the average for all professions, so jobs will be relatively harder to come by for EE majors. Software Engineering and CS are growing much faster than the average, according to the BLS OOH. Programming jobs are being outsourced, but not all CS/SE jobs are programming.

Do you have any statistics to back up any claim that CS majors have a harder time getting jobs than other majors, or is this just baseless supposition based on anecdotal evidence?

"I've met computer science grads who could not do math, had no practical application, and could not write (not talking about code) worth two cents. Many institutions shell out programmers instead of computer scientists. It's a rough form of applied computer science."
This is probably more a reflection on the students and/or individual programs than on CS programs in general. I'm sure there are some math programs that shell out majors who can't write a program to save their life, maybe know one scripting language, have no application outside of math, and can't write to boot. That doesn't invalidate mathematics as a major. The same for any other major you can think of.

"If you are an employer, what do you know about that person by the degree? At best, you know he can write a hello world program. You cannot tell because the academics are very uneven with regard to computer science."
Many employers have experience with graduates from certain programs and know roughly what to expect from them. ABET accredited CS programs teach at least the same core subjects, so your argument doesn't make much sense.

I would start here:
http://portal.acm.org/citation.cfm?...l=GUIDE&dl=GUIDE&CFID=680595&CFTOKEN=77604214

I don't think you realize how specific computer science jobs are becoming. Just being able to code is not enough, and you should attempt an interdisciplinary approach.

At least, that is my opinion.
 
  • #19
SixNein said:
Many institutions shell out programmers instead of computer scientists. It's a rough form of applied computer science.

Perhaps because there's much more need for programmers than computer scientists.
 
  • #20
I think you all have really missed the heart of the future of computer science. I agree that when most people hear CS, they think either math or software engineering, but there really is much, much more to it. In my opinion, computer science will be the field of study responsible for most technological advancement in the next fifty years.

Consider the Human Genome project. This was a CS based initiative after the initial data gathering of the DNA was done. It takes sophisticated algorithms to identify the genes in human DNA and determine the relevant subsequences. Searching has been a primary area of research in CS since the beginning and only now are these well studied techniques being applied to other very important area. And in the future, Machine Learning research will be applied to genetics to try to predict what sequences of DNA are responsible for coding different proteins.

Another area of the future will be creating technologies for the developing world. It will be computer scientists who figure out how to modify existing computers, networks, software, etc, to make them applicable for different conditions. One Laptop Per Child has already changed the way people think about computing. And lots of people are working on creating mobile phone applications to help in commerce in under developed cities.

I could go on and on, but one last example from a pretty different area: Robotics. Although this may seem like an Electrical Engineers area, designing the reasoning systems for robots really lies in the CS domain. Think about the DARPA Grand Challenge autonomous vehicle competition. Computer Scientists successfully created a car that could drive one hundred miles across a desert without crashing into trees, rocks, or other cars. Mathematicians and English majors and Biologists, etc, do not have the abilities to program this car. Computer scientists, however, understand how to design algorithms to interpret the data of the world, and how to represent this data in a digital way. And robotics will really be a huge area of work in the future. They are already ubiquitous and factories, and soon we will find more areas that we would rather have machines working at than humans.

And for those of you who noticed that most advances in CS that we have heard of have come from mathematicians and physicists by training, you are absolutely right. However, by the time they advanced areas of CS, I would consider them computer scientists. When universities set up the requirements for degrees in computer science, they are trying to lay the best foundation to give students the abilities to work on the above mentioned problems.
 
  • #21
Excellent post, Cyrus. I couldn't agree more with what you've said.
 
  • #22
junglebeast said:
The fundamentals in computer science - that is, data structures and algorithms, won't change much, if any -- even as parallel hardware becomes more available. The real advancements are all happening in specific fields of "computer science," but these fields are not so much about the science of computers as they are about designing algorithms to solve difficult problems using computers.

I must respectfully, but sharply, disagree with that. It reminds me of the Physics professor around 1900 who advised his students not to go into Physics, because he thought it was all finished except for carrying a few calculations out to more decimal places.

Perhaps your definition of computer science is a bit skewed. As I think Dijkstra pointed out, computer science itself is no more about computers than astronomy is about telescopes.
 
  • #23
CylonMath said:
After doing some research about the field, i have seen that mostly innovative and new ways of computing technology and algorithms has been found by either mathematicians or physicists

I predict that the 21st century mathematicians and physicists will be chagrined to learn that many interesting innovations in Math and Physics will be made by the computer scientists.
 
  • #24
A very strong claim you have Cantab Morgan.
But i think the main reason why CS Grads are working on a Genome Project is that biologists does suck at computing and programming skills which they have no education in that field at all. It is not relevant with CS Grads' skill level or intelligence in science ?
 
  • #25
Computer scientists know the classical CS problems. Physicists are well positioned to come up with new CS problems, although most of them don't know how to code. Innovation results when fields are bridged. Something tells me that it is computer scientists that are doing the protein folding experiments with their distributed networks.
 

1. What advancements can we expect in the future of computer science?

The future of computer science is constantly evolving, but some advancements we can expect include:

  • Artificial intelligence and machine learning becoming more integrated into everyday technology
  • Quantum computing allowing for faster and more complex calculations
  • Augmented and virtual reality becoming more mainstream
  • Advancements in cybersecurity and data privacy
  • Increased use of biometric technology for authentication and identification

2. How will computer science impact other industries in the future?

Computer science has already had a significant impact on various industries, and this trend will continue in the future. Some potential impacts include:

  • Automation of tasks in industries such as manufacturing, transportation, and healthcare
  • Improved data analysis and decision-making in fields like finance, marketing, and education
  • Enhanced communication and collaboration through various technological tools
  • Creation of new job opportunities in fields like artificial intelligence, cybersecurity, and data science
  • Development of innovative products and services to improve efficiency and convenience for consumers

3. What challenges may arise in the future of computer science?

As with any field, there will be challenges that arise in the future of computer science. Some potential challenges include:

  • Ethical concerns surrounding the use of artificial intelligence and automation
  • Cybersecurity threats and data breaches becoming more sophisticated
  • Privacy concerns with the increasing amount of personal data being collected and used
  • Digital divide and access to technology becoming a barrier for certain populations
  • Environmental impact of the growing use of technology and electronic waste

4. How can individuals prepare for the future of computer science?

To prepare for the future of computer science, individuals can:

  • Stay updated on current trends and advancements in the field
  • Develop a strong understanding of computer science principles and programming languages
  • Continuously learn and adapt to new technologies and tools
  • Network and connect with others in the field to stay informed and collaborate on projects
  • Consider pursuing higher education or certifications in a specialized area of computer science

5. How will computer scientists address ethical concerns in the future?

The field of computer science is becoming increasingly aware of ethical concerns and is taking steps to address them. Some ways that computer scientists may address ethical concerns in the future include:

  • Developing ethical guidelines and standards for the use of technology
  • Including ethics courses in computer science education programs
  • Collaborating with experts in other fields, such as philosophy and law, to address ethical concerns
  • Conducting ethical reviews and assessments for new technologies
  • Promoting transparency and accountability in the development and use of technology

Similar threads

  • Programming and Computer Science
Replies
29
Views
3K
  • STEM Career Guidance
Replies
11
Views
708
Replies
18
Views
3K
Replies
2
Views
948
  • STEM Academic Advising
Replies
23
Views
3K
  • Programming and Computer Science
Replies
8
Views
349
  • Computing and Technology
Replies
2
Views
349
  • STEM Academic Advising
Replies
3
Views
434
Replies
6
Views
862
Replies
1
Views
65
Back
Top