Thursday, September 27, 2018

The web browser can replace many resource-heavy smartphone apps

In a reply on a heavily-commented Slashdot article.

A web browser can supplant individual apps, because I suspect, that each such large-scale app simply comes equipped with its own WebKit/Blink rendering engine to support all the functionality that the default rendering engine might not have on an Android phone due to it being more outdated than the latest version of app.



A browser with an adblocker, or a Gecko-based browser with NoScript is also one of the solutions in fending off big apps and script-heavy sites. Many large services also have lite versions of their social (Facebook) and e-mail (GMail, Yahoo, AOL) front-ends; and on desktop, YouTube has a "lite" version with the ?disable_polymer=1 URL parameter.



In fact, Flash was a much better solution for older computers, because HTML5 playback is baked into the browser process in Firefox, and HTML5 playback was always interfered with even through simply resizing the browser window. Because Flash was out-of-process in plugin-container.exe, I could elevate its priority a notch using Process Explorer in Windows. That essentially guaranteed hiccup-free playback with Flash 18 and Firefox 39.0. This was probably an unintended, or accidental feature that software developers created, but welcome nevertheless.



The trouble starts with very interactive functionality in comms apps, where video and audio are required. Resource-intensive games are in a category of their own, as they have always been on desktop.

The case for open source flashlight apps

There is really no need to download flashlight apps off the Google Play Store, because many of them want access to one's contacts and maybe other privileged information. The solution is to get an open-source flashlight app that is much more light-weight, and won't ask for too many permissions.
Initialy written as a reply comment on YouTube.

If your Android phone is relatively basic, and does not have a built-in flashlight, then the F-Droid store of free and open-source (FOSS) software offers many small-sized flashlight apps that do not require access to contacts.

This does require (temporarily) enabling third-party installs, but the open-source flashlight apps' much smaller size removes the requirement for Play Store-based apps that want access to data that they should have no right to have access to.

In some cases, a phone may have a built-in flashlight, but no OS-level functionality to turn it on. This applies to older versions of Android, which I've seen with Android 4.0 ICS (Ice Cream Sandwich), but may as well apply to any Android 4.x version. That's why an app is still required. Some flashlight apps available on F-Droid do require camera access to control the hardware flashlight.

In the F-Droid store app, search using the 'flash' and 'torch' terms, which will match anything that contains these patterns. I've chosen MrWhite, which is only 21 KiB in size.

Depending on version, Samsung smartphones' TouchWiz UI allows adding an "Assistive Light" widget for phones that have a built-in hardware flashlight.

Android-native flashlight functionality is accessible via Google Now in Android 5.0 Lollipop. I don't know, if the function is accessible by other means. Android 6.0 and 7.0 should have the flashlight functionality built-in — check the expanded notification area.

Wednesday, September 26, 2018

Moore's law works, but not the law about efficient coding in the consumer area

Posted as an anonymous reply on slashdot

A major reason why users do not perceive performance advantages, is, that they now use a web browser almost all the time, and most people do so without adblockers, and without NoScript (in Firefox), or some other ad/scriptblocker elsewhere, such as uBlock Origin, or uMatrix (to each their own).



These tools are some of the most basic ways of optimising resource usage in a browser, and go a long way in making websites and browsers more reponsive, thereby improving speed and user experience.



Alas, most people don't have that, and advertisers are reaping great benefits thereof.



On top of that, there's the transformation of simple web pages into resource-heavy webapps. There used to be a time, when I could still use Firefox 1.0 on an older computer without having to worry too much about not getting a connection to where needed, since many sites were carefully designed to match the relatively basic abilities of their target audience. Anything fancier used Flash. But that was when desktops and notebooks were not particularly powerful as a class.



Now, though, a newer browser is a must both due to security implications, and because of video providers using newer codecs in order to increase video resolution size (4K and up), and to simultaneously seek to have a lesser load on the network in the face of more and more users gradually getting to see all that fancy 4K video on their 4K screens. Soon-to-be 8K. While most simply contend with 1080p as some sort of a standard.



Security is also a thing, and a faster rig or farm is able to break ciphers faster, too. A major gaming rig with several cores has the power comparable to any supercomputer of the days of yore, but is not necessarily faster in terms of user experience, because the software is awful (Windows 10), or a badly-coded website with terrible fonts and CSS, or a site that mines coins without the user noticing, but then complaining, that 'their computer is slow.'



Or simply lots of sites without being active on several tabs at any one time, without the browser having adblockers on. Firefox mostly has a remedy for that, and I think, Google Chrome -- despite its awful recent flaws -- is coming up (or has come up) with a suspend feature for inactive tabs.