upvote
I think it is worse than that. Science is a process for resolving disagreements, ambiguity, and uncertainty, and also for discovering abstractions (patterns) among phenomena. It is social and can not be reduced to a binary / digital file, as it is dynamic and ongoing, and, fundamentally, exploratory.

Software is a static program and basically none of these things.

Software development is kind of like science, in some ways, in that you discover abstractions and patterns, and this requires resolving disagreements and ambiguity between you and your users, but in the end, the user demands are usually fairly concrete and specific (though no one may know how to express those demands precisely, initially), and the process is not really exploratory in the way science is.

It just really isn't a very good comparison IMO.

reply
> Science is a process for resolving disagreements, ambiguity, and uncertainty ... It is social

More dramatically stated as: Science progresses one funeral at a time.

> An important scientific innovation rarely makes its way by gradually winning over and converting its opponents. What does happen is that its opponents gradually die out, and that the growing generation is familiarized with the ideas from the beginning.

https://en.wikipedia.org/wiki/Planck%27s_principle

reply
Thank you for engaging. This is a much more insightful take.

If I'm reading yiur argument right, you're saying that deployed models are downstream versions (reified) of aa theory. Theory, being the actual object of science.

I think this misrepresents science. Science is the ability to build testable knowledge. From that,how would you separate the test from the science? In fact, in an ideal world, why wouldn't you want your theory to be put in a format that's executable? I'm not saying that those things are always the same, my (provocative) title is based on a dream where we can imagine theory and model coexist because software is now a thing.

reply
[dead]
reply