7 ms·
> “surely there is a app for that!” A quick look leads to speedometer apps with ads and 30MB download weight, and simple screen light that also have ads that we
by albertgoeswoof 8y ago
> “surely there is a app for that!” A quick look leads to speedometer apps with ads and 30MB download weight, and simple screen light that also have ads that weight in at 5MB.
I’m finally groking what rms has been banging on about for so long. It is completely unacceptable that we are running software that does this to the user. Users need to be empowered and able to run code that they can control.
- denniskane 8y agoI started building something I like to call "Linux on the Web" (LOTW) 6+ years ago in order to start working on this problem (it's live on the web right now). Just like with node.js applications, the smallest legal file size for an app running inside of LOTW is precisely 0 bytes. I've tried to shave that down even more, but I seem to be running into physical limits :)
- jstanley 8y agoCan you share a link? People reading your comment have no way to know how to learn more about your project, or even whether it is relevant to the topic at hand. The most relevant result I could find for "linux on the web" was https://linuxontheweb.appspot.com/ https://linuxontheweb.appspot.com/ which doesn't seem to be relevant at all.
- denniskane 8y agoDid you try the "desk.os" link that is link number 3 on that page... https://linuxontheweb.appspot.com/desk.os https://linuxontheweb.appspot.com/desk.os ? I can really only guarantee that things work on a relatively recent version of Chrome (like within the last few stable releases). The version that is live now is a couple weeks old. I'm working on some really cool features for the modular synth app right now. I'd love to start sharing this stuff with you guys! Also, link number 5, at https://linuxontheweb.appspot.com/shell.os https://linuxontheweb.appspot.com/shell.os is for people who just want to poke around the deep system internals via a command line. For that, you need to use the "import" command in order to pull in libraries of commands. For instance, running a command like: $ import fs && vim should open up my custom-made vim clone.
- jstanley 8y agoHow can you use this to implement a speedometer that runs on your phone?
- codetrotter 8y agoI think that is the one actually because the looking at the post history [1] of the person you are responding to I find that the most recent post they made in the past was one titled “Linux on the Web” [2], which leads to that very URL that you found. He also posted a comment in the thread with some more details: > It makes heavy use of the HTML5 Filesytem for local storage, as well as Native Client for vim, python, and plugin codecs to enable highly configurable realtime a/v streaming via WebRTC peer connections. Windowed HTML5/JS applications can be developed live within the site itself. There is a feature to stream terminal sessions to each other, in order to show how to efficiently use vim to develop applications, for example. [1]: https://news.ycombinator.com/submitted?id=denniskane https://news.ycombinator.com/submitted?id=denniskane [2]: https://news.ycombinator.com/item?id=10977459 https://news.ycombinator.com/item?id=10977459
- denniskane 8y agoHi, yes, that stuff is from quite awhile ago, seeing that NaCl/PNaCl is quite dead, and WASM is now all the rage. I previously had actual vim running via NaCl, but the current (better IMO) version is just a fairly small JS clone (about 70kb). The whole system is rapidly stabilizing right now, what with the entire gui framework being fleshed out, both conceptually and technically. I try to stay away from the above kinds of sweeping generalizations about the whole thing nowadays. It is best to let it speak for itself and evolve in its own good time.
- deleted 8y ago[deleted]
- codetrotter 8y agoDoes it work on mobile? On iOS 12 Safari this is what I see: https://i.imgur.com/NJjoZhU.png https://i.imgur.com/NJjoZhU.png
- megous 8y agoExactly. If more people's reaction, instead of searching an app store for a privacy respecting screen light, was to sit down and write: <!DOCTYPE html> <script>let on true;</script> <body onclick="on = !on; this.style.background = on ? 'white' : 'black'"> and were able to easily upload it somewhere on a phone and run it locally from a shortcut on the screen. We'd have hacker culture encouraged right there.
- adrianhel 8y agoYou can do that with mobile-web-app-capable and add to home screen on both ios and Android. No address bar and it looks like any other app. You need to host the site though.
- megous 8y agoRunning it from file:/// of the phone's local filesystem could be more hassle-free. Not sure if it would be bookmarkable, but I don't see why not. I don't have access to a smartphone to try.
- eat_veggies 8y agoI'd love that but I don't think it'll encourage hacker culture. Instead we'll have the Can-Code making things for the Can't-Code like we do now, but with even fewer checks for nefarious activity. Case study: people copy-pasting random code into their Myspace profiles
- acct1771 8y agoInspired a lot of "can kinda read code"s to learn more - so they didn't get their pages compromised, haha
- lazerwalker 8y agoI wonder if https://glitch.com https://glitch.com has a mobile-friendly IDE and will also let you set up a project to be a PWA? Seems like it'd be a great fit for what you're describing.
- lazerwalker 8y agoI agree the loss of control is unacceptable. I agree that only being able to get commercial apps like this that monetize through advertisements and selling opaquely-gathered tracking data is unacceptable. But I'm curious how much download weight matters, outside of as a proxy for "how much bloated ad bullshit is hiding inside the app bundle"? I'd wager the difference between a 2KB PWA and a 5MB or 30MB native app download is relatively insignificant — in storage space, in cellular data use, in initial download time — to your average user when compared to streaming a film on Netflix or downloading a F2P game with 100MBs to GBs of assets. (where "average user" is assuming most of these apps are only localized in English and only available in largely-western countries — totally get how the story is very different in emerging markets)
- hawski 8y agoIn case of apps I imagine something like this: 2kB will feel instant. 5MB will feel mostly quick. 30MB will feel like it had to earn it. When things are instant then it feels like magic. It's sad that having all those super fast machines everywhere we have to deal with so much bullshit. Your computer can push through gigabytes of memory on a second. Does it feel this way? That's why people still use CLI, at least there, many things feel instant and when not it's usually reasonable. It's not only download speed, it's also verification time, compilation/optimization and whatever else happens during install. All of those will take longer the bigger the app is. Similarly the problem with JavaScript on sites currently is not only download time and request count bloat. It's significant by itself, but it just takes time to even parse all this code and I did not start on execution. But at the same time for me the proxy effect of "how much bloat and bullshit did they cram into it" is as important and can't be dismissed.
- PavlovsCat 8y ago> 2kB will feel instant. 5MB will feel mostly quick. 30MB will feel like it had to earn it. And that's just one usage, by one user. Multitply by thousands of usages and billions of users. It's inexcusable from a craftsmanship viewpoint.
- lazerwalker 8y ago
- zozbot123 8y ago> I’m finally groking what rms has been banging on about for so long. It is completely unacceptable that we are running software that does this to the user. Users need to be empowered and able to run code that they can control. There are plenty of high-quality mobile apps on F-Droid, even with downloadable source. This is purely a PEBKAC issue.
- nerdponx 8y agoWhy don't browsers give us finer control over Javascript execution (eg whitelisting JS APIs)? Performance?
- pjmlp 8y agoBecause it would work like permissions on Android or Windows UAC, regular users would just turn everything on anyway.
- nerdponx 8y agoMaybe. On Android, iOS, Firefox extensions, and many websites, you can't give permission for one thing without giving permission for everything. Or those "I accept cookies popups" -- until recently, you couldn't choose which cookies you wanted to accept, so either you accept tracking cookies in order to use basic functionality, or you head elsewhere. The application developer could be a good citizen and request on the permissions needed -- but it's just easier to request that they be able to read and modify any and all data, regardless of their need or desire to do so. On Windows, Unix, and other "system-level" permission systems, you have a different problem. There, there is no real ability to verify what an application is trying to do with its elevated permissions -- it just wants to be given God power, even if it only needs permission to do one or two very specific things in one or two very specific locations. In fact, the web browser is probably the most accessible place to roll out a whitelisting-based permission system. It has already been demonstrated successfully with uBlock Matrix and uBlock Origin -- you can block specific types of activity coming from specific subdomains. Some sites break completely when you block the few specific elements you don't want to see, but most work just fine, or at least close to fine. Being able to whitelist specific Javascript APIs (e.g. the battery API, the ambient light API, etc) is a logical next step in my opinion. An OS-level analogy would be the ability to block specific syscalls made by specific processes, optionally only when spawned by a specific parent process.
- pjmlp 8y agoI would argue that it failed to be successfully demonstrated with uBlock, as my premise was about regular users, not consumers with technical skills to go into browser settings.
- kamikaz1k 8y agoWho/what is "rms"?
- detaro 8y agoRichard Stallman