4 ms·
> But I've never heard of one where the majority of users actually do so https://github.com/Kickball/awesome-selfhosted https://github.com/Kickball/awesome-sel
by maratd 10y ago
> But I've never heard of one where the majority of users actually do so
https://github.com/Kickball/awesome-selfhosted https://github.com/Kickball/awesome-selfhosted
- mindslight 10y agoThe majority of that list has nothing to do with the web (eg sendmail). And many of the projects that do also fail the requirements - for instance most users of a blog platform are readers, who still aren't in control of said software. We're obviously not disagreeing about the utility of local software, just that of "web apps". I assert that the platform itself is inherently biased towards making non-Free software. It's not impossible to create something that qualifies as a web app and Free software, it's just that this puts it in one small corner of an ecosystem based on user-disempowerment. Obviously many web technologies could be useful to build freer systems (like say if DNS/HTTP were replaced with something distributed), but as it stands the term basically refers to the modern generation of proprietary software. I get that a lot of by-day web developers want to apply their skills to build Free software, and that is great. They just need to be aware that it's an uphill battle against one's own assumptions, and building the same type of centralized systems desired by business interests (but releasing the code) likely does not suffice.
- maratd 10y ago> The majority of that list has nothing to do with the web There are 188 PHP web applications in that list. 60 NodeJS web applications. 86 Python web applications. 25 Ruby web applications. I can go on. You're just being silly by pretending that this segment doesn't exist. > I assert that the platform itself is inherently biased towards making non-Free software. As opposed to native applications? I recall those being distributed through "app stores" where you have zero access to even the binary, nevermind the source code, and demand payment in return for access to either the application or features within that application. Does that mean native applications have a bias toward "making non-Free software"? No. And the answer is no for web as well. > They just need to be aware that it's an uphill battle against one's own assumptions, and building the same type of centralized systems desired by business interests (but releasing the code) likely does not suffice. I have no idea what this means, but based on your previous statements you're assuming a multi-user registration model with a centralized database you find on every commercial site which is a pre-requisite to monetization. You don't need to have that for a web app. At all. You can build a calculator as a web app. Or any desktop or command line application as a web app. With no registration or database required. Just type in a web address and start using the app. There is nothing inherent about web development that requires a user-based system. There is no uphill challenge to building free software using web. Now, you obviously won't have as many users of your software because getting things running is much more difficult ... but that's changing with platforms like Electron. http://electron.atom.io/ http://electron.atom.io/
- mindslight 10y agoAs I keep saying, yes it is possible to create something similar to a webapp that is Free software. [0] But, let's take a look at the actual technologies behind the "web": 1. A naming system/transport protocol 2. A document markup language 3. A virtual machine for sandboxed code. (2) is user-friendly (PoLP). But creating a Free app implies ignoring the defining "web" features of (1) and (3)! If a single user is the only one accessing a given name, then that naming system has basically been made irrelevant. (If multiple users are accessing a given name, then per HTTP only one is in control of that name, and thus we deviate from free software). If a user controls updates to the code and (in theory) audits it, then the primary purpose of the sandbox (executing random third-party specified code) is gone. The battle-hardened sandbox is nice for security, but the functionality is otherwise indistinguishable from any other language. Why should such an app be called a "webapp" if it does not utilize most web features? > based on your previous statements you're assuming a multi-user registration model with a centralized database you find on every commercial site which is a pre-requisite to monetization I am not assuming this - I am noticing that a large majority of released projects are. Either due to lack of developer thought about repudiating "web" assumptions, or deliberate corporate "free-washing". Platform defaults end up defining the culture of a platform. A good question to ask yourself - if you were designing a Free calculator app and wanted to show a friend, would you send them the files you're editing and they'd set it up on their own httpd to try it out, or would you end up sending them a URL to your server and thereby undermine their freedom? [0] Although as I've said, many of those PHP etc apps are not actually Free - for instance the blog platforms.
- maratd 10y ago> If a single user is the only one accessing a given name, then that naming system has basically been made irrelevant. No. It's not irrelevant at all. It's how you "execute" that specific software. It serves the same purpose as a filename for a binary on a filesystem. > If a user controls updates to the code and (in theory) audits it, then the primary purpose of the sandbox (executing random third-party specified code) is gone. No. An audit is never perfect and that even assumes you perform one. While I frequently modify the software I utilize, I almost never audit the entire codebase, so a sandbox is quite useful. > if you were designing a Free calculator app and wanted to show a friend, would you send them the files you're editing and they'd set it up on their own httpd to try it out, or would you end up sending them a URL to your server and thereby undermine their freedom? I did just that. I sent them a URL. Here's the rub, it's a purely front-end only web app. No backend. That means their browser downloads the entire codebase instantly. The codebase is easily accessed, saved, and modified by them, if they want to. The calculator was possible over a decade ago. With some of the stuff hitting JavaScript within the last few years, you can literally build anything you want in that fashion. Games, communication apps, etc.