Skip to content

Comment on Engineering Is Not Scienceparent

Comments

I think programming is becoming a science.

Computer programming used to be applied maths. You followed the correct lemmas in the language and if you didn't make any errors you had a correct program.

Now there are so many layers of indirection between you and the world (huge complex APIS, graphics drivers, optimizing compilers, hyperthreading, cache, etc) that the actual behaviour of a program - especially in high performance, real time world - is no longer possible to calculate from the published specs.

It becomes experimental science, you adjust various parameters and measure the result. Certainly to get performance but sometimes just to get APIs to work together.

It becomes experimental science, you adjust various parameters and measure the result. Certainly to get performance but sometimes just to get APIs to work together.

This confuses the issue. The relevant question is --- as a programmer, would you consider yourself a "scientist" or an "engineer"?

In that context, we would not want to conflate the two, for example by trying to define why engineering ("adjust various parameters ... to get APIs to work together") is in fact science ("it becomes experimental science").

During the process of engineering, we of course employ the scientific method to accomplish our goals. But we would not want to consider engineering a purely scientific endeavor, in the way that, say, theoretical physics is a purely scientific endeavor.

Diligently following the prescribed rules and making careful measurements and calculations = Engineering.

Deciding how to measure something so you can determine what it's doing without knowing the internal rules = experimental science.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.