Couple of weeks ago, I had an exciting debate on some points in my previous entry with Mehrdad. He is offering us his insight on the matter science and engineering. Although I am not totally in agreement with him, I’m putting his article here without any changes as a good respond to my post. He is, indeed, a super genius who will be discovered soon! However, he has some unfair judgments here! Ha-ha!
_____________________________________
It’s been a relatively long time since Sina asked my idea about his blog post on theory and application. I decided to write a guest post on this blog to argue about his point but due to time constraints, I was not able to do so until now.
Traditionally, -since I have an argumentative personality- I’ll start counter-arguing from an engineering standpoint and try to make theory look absolutely obsolete as soon as I face these kind of posts! While most people think of me as a theory-hater, I don’t hate theory at all; therefore, I decided to write this blog post from a realistic and unbiased, point of view. After all, I don’t want to say what I don’t really believe in!
I’m not going to discuss theory and practice in general. I think Sina’s post primarily compares engineering and science as academic disciplines, and by science he means theoretical sciences. However, there is a point that makes me feel he named all good things “science” and all bad things “engineering!” I don’t want to argue with Sina’s blog entry word by word since it’s not really the place. Comments are there for a reason. I want to keep this post’s independence.
I have a different idea on theoretical sciences and engineering. I believe the difference between science and engineering is just like the difference between computer science and biology. They are two sciences pursuing two different goals. Engineering relies on pure science just like physics relies on math. To be a great physicist, you don’t have to be the best mathematician in the world, but you have to be good at it nonetheless. You don’t have to prove pure mathematical theorems, but you should know their existence to use them in the best way possible. Of course, physics and math are related, but they have different set of goals to accomplish. Does it make one of them better than the other? It’s like comparing apples to oranges. Both of them, directly or indirectly, will try make the world a better place to live in, but in dramatically different ways.
Engineering is just like physics. To be a great engineer in a specific field, you have to know what’s going on in the underlying science. What are the theoretical solutions to a specific problem you’re working on. You should have enough expertise in theory to use it in real world applications, but you don’t have to be the best theoretician. As an engineer, you have to be constantly in charge of what’s happening in the theory world and see how you can apply it to the specific problem. In theory, you can abstract away a large sum of constrains which do exist in the real world to make your model simpler to work on. In practice, you have all the constraints in your way. Engineering is the science of integrating a variety of theoretical solutions to different problems to provide a complete solution to a specific real world problem. I think it’s a science, just of a different kind. If you want to be a good engineer, you have to know how to make good decisions, how to make trade-offs. In theory, you can be an idealist. This is the biggest difference between theory and practice in my opinion. In theory, you imagine the world you’re working on. You set the limitations. You define a problem and solve it. In practice, you are not the problem setter. You don’t control the constraints. They do exist and you should find a way to circumvent them. To do so, you require a broader set of skills. You should be able to be good at managing people and resources. You have to be good at communicating to understand problems. You should know a diverse set of solutions, advantages and disadvantages of them and be able to choose between them to get the possible result. It’s a blend of management, psychology and the underlying science. You use all of them as a tool to accomplish the result you need.
Basically, I feel it’s impossible to draw a strict line between different fields of science in general. This seems to be true about science and engineering. In fact, most scientific studies in the history are motivated by real world needs. Number theory is the only field I know that’s improved without having any practical application for years. There might be more fields that I don’t know of, but I’m pretty sure there are much more the other way around!
That was my general point of view about engineering as a science. I think they are separable to some extent, but not completely. And if you separate them, you get two different but related objectives. This particularly cannot make any of them worse or better than the other one. Choosing one is solely a matter of personal preference.
I don’t believe pure science is more magical either. Ask anyone, going to the moon is more magical or just thinking for yourself that you have a teleportation device that can take you to the moon in an instant!
While theoretical sciences will infuse engineers with great ideas to solve a new set of problems every day, building real stuff can directly help sciences to experiment. Yes, engineers are always trying to make things cheaper. But making them cheaper might be the only way they can happen. Most large scientific projects need money to happen! Look at the LHC! Without engineers to make it as cheap as it already is, it would’ve never happened. This is a simple example. The success of the Internet is directly related to the fact that computers and communication channels are really cheap. Even if you were the world’s richest man and you could buy anything you wanted, you couldn’t use a fax machine if you were the only one who could buy it! So making things inexpensive is a big deal! It makes things happen that otherwise would never existed.
You might ask, so if you don’t have any problems with theory, why you look like hating it so much? I don’t hate theory in general. Even though, I like to see real impact of what I do as soon as possible, sometimes I like theory. I like abstract concepts. I like imagination. What I hate is though, the fact that theory, just like applied methods, gets old. If an applied technique gets old, it’ll be clear that there’s a better way to do so, and since a better way probably costs less, everybody would like to use it. Or at least they’ll know it’s old. This is not true with theory. People usually stick with classical theories for so long. The cost of doing so is usually underrepresented. Specially in academic communities, relying on classical theories is very common. We should know that theories can get old. Even if the fundamental thing doesn’t get changed, the way you look at it can change. It can be improved. We shouldn’t study what’s been thought for 30 years. People do it and say it’s a fundamental thing that doesn’t change. It’s like math! I think even the most abstract science, mathematics, has undergone major changes in the history. The notations, the way we express things, the way we write functions. They change constantly. They are inspired by the change in the real world, the advent of computers and much more; and that’s for the most abstract of all sciences! More applied sciences, such as computer science should change more frequently. This is why I look like I hate theory. In fact, I don’t hate theory. It’s a good thing. What I hate is studying old theories. Sure, it’ll be great for a history major! But for a computer scientist, it’s a deathly thing. You want to study the theory of operating systems!? Why should you look at things that existed 50 years ago. You should look at what we use today. The theory we use today. You want to study databases from a theoretical perspective?! You gotta look at what exists nowadays. It’s not necessary the same thing that existed 30 years ago. Though they might be similarities, many things gets old and useless and new things come along. They do affect the theory as much as practice.
As Sina said, the brilliance of theory is being boundless. When you study theory, you should not bind yourself to specific borders. If you do, as done in our universities, you’ll remove the whole good point and you’ll end of with absolute bullshit which I do hate!