There’s still no good way for me to write an open source web application and have its users bear the cost of running it. This is a major regression from open source desktop software, and IMO is the reason open source web applications haven’t taken off more.
You can. If you write it in Go and package it as a single binary. You can't if you write it in a scripting language that requires tons of programs to already exist on the system (a specific version of the language interpreter + a database server + other servers like redis and memcache etc etc etc). This is a problem with programming languages, not with computer systems. Computer systems already allow you to package a…
You are close, but you are not exactly right.
If consider real case of application, which create some value (I don't mean just money, may be for example community value or scientific), you will need to depend on some libraries or tools.
This is how our civilization works, we don't create all things from scratch every time, but instead, we take ready parts and construct something new from them, possibly adding our new parts.
Some parts could been compiled/linked statically inside your big one file package, some only dynamically.
Scripting languages difference is just that they usually shipped with rich development library, and in many cases it is possible to cut unused parts of these libraries.
For example, Python now shipped even with sqlite database included, sure this is not tiny package, but it is used in many applications.
To be more precise, python for android (p4a), when compiled as helloworld, results in approximately 6mbytes .apk. As I said before, there all python standard library compiled with cython.
Sure, if you will compile helloworld native, will got something within 200k, but if add any library, it will grow, and for real application, 6mb is not to much currently.
If add functionality to p4a helloworld, it grow very slowly, because compiled Python representation is relatively compact.
BTW it could be interesting project, to add to Python/Cython possibility, to create single binary package, so it will not decompressed to fs hierarchy, but read all from those binary as need.