
David W. answered 04/12/19
Experienced Prof
You are considering one of the most important principles of Computer Science -- "Levels of Abstraction."
In the 1960's, my first computer program was written on coding sheets and pressed into the switches/lights of a very expensive computer. A very simple program took hours (much of which was tedious "debugging"). It took a whole page of program to perform a very simple calculation.
I worked as a Student Programmer / Consultant part-time as I studied Aerospace Engineering full-time. It was tough using a slide rule when I could punch a few cards and solve lengthy problems in a few minutes. However, the handwritten lab reports had to include the derivation of formulas that we used.
When the University started a Computer Science program, I switched. Even then, calculators were appearing that had a "square root" key and people bemoaned the fact that students would no longer learn the Newton-Raphson method of finding a square root. Very few people need to know that today; are you one of them?
Then, there were high-level languages, data base languages, applications packages (word processing and spreadsheet were wonderful), and others -- compilers and operation systems were being written in high-level languages such as C -- only specialists still used assembler.
Ask anyone this: Before you get a license to drive a vehicle, what precious little must you know about the inner-workings "under the hood?" Knowing the "innerds" may make you a better race car driver, but not a better commuter (who uses a cell phone to call for roadside assistance rather than patching an innertube in the tire like I did with my first car).
Now, we have an additional, overriding issue. Students today prefer to "look it up" than to memorize hundreds of pages about computers and software (my famous quote: "Anything that you learn about computers today will have changed yesterday."). Finding current information quickly is better than knowing lots of outdated information.
Have you noticed that on-line shopping has impacted retail stores?
You have a good perspective: "... as long as I learn the concept and application for how aspects of linear algebra and differential equations work ..." Most courses teach this using mundane practice problems. Always be sure to learn processes at the appropriate level for you.
Lastly, math and computer science have historically been taught sequentially -- with pre-requisites. Today, people get the high-level "schema" (our outline) for storing detailed information and then fill it in as needed. Role-based schema are everywhere: For example, an engineer at a chemical plant knows what chemicals come in and out, what machines and processes they go through, what safety features must be followed, etc. A Chemist at the same plant knows the chemical equations for the reactions, the temperature and pressures required, any bi-products, etc. The manager knows that chemicals are processed, who the suppliers are, the cost of materials and labor, the overall profitability of the plant, etc. They all get their information from the same data base -- using different schema.
So, learn the detail necessary for the job/role you want to pursue.