jegp
Joined 13 years ago
Joined 13 years ago
One thing I'd like to surface is the distinction you're making between software and physics. You point out that social and medical sciences are only now becoming approachable with scientific methodology. We can now, to a higher degree than before at least, model and predict what'll happen in social and medical scenarios. Isn't that an excellent example of how subject matters can be virtualized? I can't find good arguments for why this would stop there; why wouldn't our scientific models improve to such a degree that we can predict and "interfacte" with more and more of reality. Put plainly: why can't experiments be done in code one day? Particularly if we imagine having better robotics.
Do you see my point about closing the gap between the theorizing and experimenting? Or are they fundamentally different things? The "reasonably skilled person" seems like an excellent heuristic > 2 years ago that's rapidly being replaced by automated thinking machines.
I would also contest the point about science being social. To me, science is the interplay between social constructions and physical reality. Which is why tests and experiments are so fundamental. Your point about software development as kind of like science is spot on: why not be exploratory/empirical in software development? Couldn't we imagine an LLM, say, that would go out and try to solve a question we frame? This seems strikingly close to autoresearch [1]
Best: I still argue that Docker and Conda are more accessible, but my point was to go for reproducible, declarative science. Nix environments are exactly that. They're not perfect and are, as you point out, not standardized. But they cover much more ground that Docker. If you trust the upstream nix repo, you can get bit-level equality at every single build you (or anyone else) does. Docker relies on huge binary blobs that you can't inspect and that can be pretty much arbitrarily swapped around.
I'm totally fine if Guix takes over. Or the next big thing. As long as it's declarative and reproducible.
The Turing Way seems great and I'm all for education. One of the most interesting conversation topics in this thread is, to me, how to create the necessary incentive structures. Know how is only part of the way. We need to secure the credit assignment for "openness" both in academia and industry.
Everything can be prevented given sufficient knowledge. That's not the point. The point is how to prevent as much as possible.
The important part here is, as you say, to light candles and insist on rigor. Coincidentally, history tells us that that also gets us further. So by pure memetic selection, this strategy should win
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.
https://jepedersen.dk