On today’s show, you took a call from Heidi, an electrical engineering student at Utah State University. She was previously a math major. When I was in school, we learned that an electrical engineer was a math major with a hobby.

Harold

On today’s show, you took a call from Heidi, an electrical engineering student at Utah State University. She was previously a math major. When I was in school, we learned that an electrical engineer was a math major with a hobby.

Harold

There are a lot of majors that require a lot of math. I have a BS in computer science. I was required to take 48hours of math classes (some like discrete Math and Linear Algebra got credit for CS and Math). Almost any engineering degree requires a lot of Math. Even physics and Chemistry and Biology requires you take a lot of math classes.

Mike, if you didn't also get a batchelor's in math, your college did you a disservice. 48 hours should be more than enough even if you took all the low level courses available.

Where I went to college (Syracuse University) one of the requirements at the time was 2 semesters of German. Some 10 years later they dropped the German requirement. I hated foreign languages…so I choose NOT to get a dual major.

I later went and got my MS in applied mathematics at BU. No foreign languages were required.

I was in a constant battle with my colleagues the last ten years of my tenure as a computer science professor. Over my protests, linear algebra was dropped as a required math course for a CS major. I thought linear algebra was important to an understanding of computer graphics. The mathematics the students took did not include Fourier series which I thought was important to understanding digital filtering and computer vision. When I taught a graduate course in computer simulation, I found that the statistical distributions such as the Poisson distribution, the Gamma distribution, etc necessary to understand arrival times in service queues or waiting times between events of a Poisson process were not being adequatly taught and I had to spend time reteaching these concepts.

There was no such thing as a computer science major when I earned my degrees. I was in a mathematics department and when the department tried to hire faculty in computer science, we had no success. The salary offered by industry was more than three times what my institution would pay. I suggested that if we couldn’t hire faculty, we could “grow our own”. When I was told that this wasn’t possible, I commuted 50 miles each way to another campus to take computer courses to prove that it could be done. My mathematics major served me well in adapting to the computer science field, and there were so many places that the different fields of mathematics I had to learn such as probability theory, numerical analysis, for example have a direct application to computer science.

Linear Algebra use to be on of the weed out courses. Graphics is one concept from Linear Algebra…But some of the programming done multiplying matrices. It’s a good exercise in recursive programming.

The problem with CS majors these days is it’s NOT consistent. The BETTER colleges require their students to take a lot of math. Some of the lower tier colleges you might have to take two math classes. The program is geared to business. Other colleges call it an IS degree.

There was no such thing as a computer science major when I earned my degrees.

When I started college after nam…very few colleges offered degrees in computer science. They offered computer classes (Fortran, Discrete Math in the math department). Then in my second they started a CS program (which I just transferred into).

My mathematics major served me well in adapting to the computer science field, and there were so many places that the different fields of mathematics I had to learn such as probability theory, numerical analysis, for example have a direct application to computer science.

Discrete Math, Linear Algebra, Probability and statistics, Numerical Analysis were offered as CS classes or Math classes. Not sure about now…but I’ll bet they still are.

Back in the 70’s and early 80s companies were hiring you for programming jobs if you had a degree in Computer Science or Mathematics. They figured they could train you how to program if you had a math background. The skill sets are very close.

And for the pay…yea…that’s a problem we have. In our town we have just ONE high-school math teacher who actually has a degree in Mathematics or Math teaching. A couple have degrees in history…one has a English degree and on a degree in Accounting (although at least there were some math classes involved).

@MikeInNH–Back in the mid 1980s, I fought and won the battle for a separate department of computer science. I had too many colleagues who were “summer computer scientists”. These colleagues would teach computer science courses in the summer in order to have a summer income, but wouldn’t teach the courses during the academic year. Many of them were doing a poor job of covering the concepts in the summer courses that they did teach. We had a department chair that wouldn’t stand up to these faculty members. I made enough noise that a separate department was established. Philosophically, I would rather have had computer science in the mathematics department. In later years, the younger colleagues that were hired with doctorates in computer science felt that only their specialties were important and didn’t seem to see the need for the mathematics background. As an old geezer of 70, I got tired of fighting with them and decided to retire and let them do it their way. What really bothered me is that the newer colleagues were hired at a lower rank, yet given lighter teaching loads and a higher salary. When I questioned this, I was told “these faculty are doing research”. When I pulled out my list of publications and asked about what these younger faculty had produced, I was then told “we have to give these new people time to establish their research agendas”. At any rate when I submitted my letter requesting retirement to my department chair, I attached reprints of my recent publications, my conference papers, my student evaluations which were quite high and my list of service activities on college and university committees over my last five years. At the end I put this sentence: “This represents ‘Geezer Power’. What are your new faculty doing?”

The problem with requiring so much math nowadays is that there’s a lot of computer science classes that you really need to take for a career in the computer field.

Back in the 70’s and 80’s you didn’t take any database classes . Now it’s whole discipline. Many colleges offer several database classes. Networking classes. Again there were no network classes in the 70’s and 80’s. Computer languages have become much more complicated then Fortran IV. Everything is now object oriented. With all the extra computer classes you need to take…the math classes tend to suffer.

I took a BSc in mechancal engineering. The first year there was Physics (I & II), Calculus, Chemistry. Geology, etc. All but Geology required extensive depth in Math. Second year, more of same; two physics courses, descriptive geometry, hydraulic engineering, more calculus, etc.

Third year actually got into mechanical engineering subjects, with calculus III, combustion theory, energy cycles, organic chemistry and fuels technolgy. One text was `Higher Mathematics for Engineers & Physicists`

by Dr. Sokolnikoff.

Fourth year was more applied, with real life engineering design, testing and lab work.

To the end of the third year, mechanical, electrical and engineering physics took the same courses.

Later in Business school, extensive course work in statistics and their application was part of the market research and operations research course.

A buddy took pure physics & astronomy and ended up as an atronomer in Flagstaff, Arizona (US Naval Observatory). He took only two more math courses.

At this stage today, I confess not remembering a lot of this. But I understand what goes into the design of engines and rockets.

“One text was `Higher Mathematics for Engineers & Physicists`

by Dr. Sokolnikoff”.

This was the assigned textbook I used in advanced calculus and differential equations. The edition I used was by E.S. and I.S. Sokolnikoff. The authors were a man and wife team. I used the textbook in these courses during the 1961-62 academic year. I still have this textbook and often used it as a reference. I remember back in the 1980s I had a colleague who was doing some work in physics and needed to make the transformation from rectangular co-ordinates to cylindrical co-ordinates. I told her that one used a Jacobian and I set up the transformation for her. When she quizzed me about whether or not is was correct, I scratched my head for a source and then got out the Sokolnikoff textbook and flipped it open to the right page. She looked at the book and said “You’re exactly right. How did you remember that after 25 years?” I said, “If you had to sweat over as many problems as we did back in those days, you would have it ingrained in your mind as well”. At any rate, I think “Higher Mathematics for Engineers and Physicists” was one of the best textbooks written in the area.

Triedaq Yes that`s the book, the wife`

s name was Elizabeth, they were both of Russian background, I believe. I still have the book somewhere in the basement.

@Docnick–I think we went to school back in the days where the proof of whether or not you knew mathematics was whether you could apply the mathematics. In the years I taught calculus, I assigned all the applied (word) problems. The students groaned at first, but it paid dividends in helping them understand the concepts in calculus.

One sign of a budding engineer is a student who actually **likes** word problems…

One sign of a budding engineer is a student who actually likes word problems...

I had a problem with word problems until my Junior year in high-school (Trig). My math teacher actually had his PHD in physics. He was big into word problems. His approach (which I still follow today) is to visualize the problem. It’s easier if you can visualize what the problem is.

CS classes of old: Many colleges are no longer teaching Data Structures. That class gave a person a real good understanding of HOW the computer actually handles data internally. But with collections now being built into the language there’s no longer a need to write your own link-list. Same with writing your own sort routine. When was the last time anyone every wrote their own sort routine. But learning how to write a simple bubble sort was a good exercise in logic.

The good CS programs are now teaching design patterns. The problem my company is having when hiring a fresh-out is that most colleges teach Java. We have very little Java work…most is in C#. So we end up having to do a few months of training before they come up to speed.

One problem I was asked to solve as pipeline inspector during a summer job was how long it would take to pressure up an 8" line 3 miles long to get the water for the hydrostatic pressure test up to 625 psi. given the pump capacity. Factors to be considered were the compressibility of water, the modulus of elasticity of the carbon steel, temperature, and others.

Since it was a complex problem I just estimated it and added a certain percentage. I think the contractor’s foreman had a date that night and wanted to know if the line could be pressurized before 7 pm.

Math without problem solving is like a swimmer without water.

Another way of thinking about it is that math is the ‘language’ of engineering. Without it I’d be ‘illiterate’, technically.

“Many colleges are no longer teaching Data Structures. That class gave a person a real good understanding of HOW the computer actually handles data internally”. " Same with writing your own sort routine. When was the last time anyone every wrote their own sort routine".

@MikeInNH–I appreciate you using uppercase for HOW in what I just quoted. The word “Science” is in “Computer Science” and to me a central question in “science” is :HOW". I taught data structures from Standish’s book. To me, an understanding of linked lists, hash tables, binary tree structures, etc. is still important despite having these collections built into languages. The students were assigned to write a program involving a particular data structure with the computer language they studied in the previous course. In my career as a computer science professor, the languages used included FORTRAN, PL/1, C, C-plus, and JAVA.

When you mentioned sort routines, I taught an assembly language class and assigned a problem to sort a set of values. One student came up and told me that this was impossible because there was no sort command in the assembly language. It took me an hour to explain to the student that the student had to write the sort routine from the available commands in the assembly language.

I agree…understanding data structures is very important. But some colleges are not teaching it anymore because you’ll learn it and never apply it. Same with sorts.

When I was in college the main language was Fortran IV. Very limited data elements. Then structured languages came along. I programmed for a couple years in Pl/C (Cornell Universities version of PL/1). Writing link lists with pointers is a good exercise in computer science. Not sure what level of data structures is being taught today.

Some college don’t teach assembler anymore either. Or it’s just an option class you can take…just no longer required.

@MikeInNH–" But some colleges are not teaching it anymore because you’ll learn it and never apply it. Same with sorts".

This is one of the reasons why I retired. I’ve always believed that learning something was a good exercise for the mind that made learning something new easier. Learning one computer language makes it easier to learn another computer language. I was teaching a dual level graduate/undergraduate course where we were using an assembly language. I pointed out that the assembly language was specific to a particular vendor’s system, but if you learn one assembly language, you could quickly adapt to another. I had to learn the assembly language for a CDC 6600, the IBM assembly language, the DEC-10 assembly language and Intel assembly language. I pointed out to the class that learning an assembler was rather like learning to drive an automobile; once you learn to drive one car, you can drive any car. I said that I knew only four things about driving a car: 1) you turn the steering wheel clockwise to go right; 2) you turn the steering wheel counterclockwise to go left; 3) the rightmost pedal makes the car go; 4) the left pedal makes it stop. I continued that I had no idea how to work the heating and air conditioning. My wife knows how to freeze me in the summer and roast me in the winter. I have no idea how the radio works–my son has it set on a rock station at 100 decibels and I just live with it. I then concluded by saying “I have no idea how to work the lights and wipers, but they are for wimps anyway so I wouldn’t want to use them. However, I can drive any car anyplace I need to go”. I tried to emphasize to the class that they could pick up the nuances of a language as they needed them. This was all lost on one graduate student. My wife was the associate dean in the graduate school. This graduate student had to see my wife about an enrollment problem. When he saw my picture on her desk, he said “I would like to ask you a question. Does your husband really drive a car and never use the lights or wipers?” This was another reason that helped me decide maybe it was time to retire.

@Texases

…" math is the language of engineering…"

I always thought I became more successful as a teacher when I treated math as much like a foreign language as a separate discipline when teaching it. A lot of kids are lost if you don’t teach "vocabulary including reading comprehension " when teaching math.