As DontKillMyApp notes, "the latest feedback suggests even when you remove an app from the restricted list, Samsung may re-add them later after a firmware update or when it thinks it is using too much resources". That is horrible.
3,927 karma · joined October 30, 2012
As DontKillMyApp notes, "the latest feedback suggests even when you remove an app from the restricted list, Samsung may re-add them later after a firmware update or when it thinks it is using too much resources". That is horrible.
Stock Android already contains energy saving mechanisms that work reasonably well. By piling potentially broken additional battery saving mechanisms on top of that, you risk breaking the phone for certain use cases. At the very least, as a user of that phone, there should be an easy way to exclude certain apps from energy saving measures. (Let's pick out Huawei again, where even if you added an app to such exclusion lists, after a few days the OS would randomly remove the app from that exclusion list again. Plus, there was some kind of "lock" that you could activate in the app switcher, but that lock wouldn't survive a reboot.)
Because some of the energy saving measures are so extreme, some manufacturers put popular apps on internal exclusion lists. These apps work fine, but apps by smaller developers don't. This is a major source of market distortion.
Huawei used to be the worst offender in this space, but it has gotten a little bit better by now. Nokia also had a phase where they had a horribly broken energy saver, but thankfully they got rid of that. Samsung has gotten worse and worse over the last years.
OCRmyPDF (https://ocrmypdf.readthedocs.io/) actually does a pretty good job! It also handles deskewing and all other stuff that's necessary for good OCR results.
It does the following steps:
1. Scan a document with any scanner that supports SANE (ADF supported), 2. straightening and cleaning of scanned documents, 3. run OCR on PDF so that it becomes searchable, 4. generate PDF/A file for archival, 5. add keywords to the PDF file
I've probably saved many hours with this script, even when taking into account the time it took me to write it.
Tiny projects don't always save time, but they sure are gratifying when they work as intended!
With pipewire, this works quite nicely, including for applications that are sandboxed (e.g. Jitsi in a Flatpak). In my bubble, when people talked about using Pipewire, it was almost exclusively related to screensharing on Wayland.
I've switched from Pulseaudio to Pulseaudio-on-Pipewire last year and haven't looked back. Next step would be trying to set an audio processing pipeline with audio effects (like a multiband equalizer tuned to my headphones), something that I managed to set up with Jack before using Pipewire, but that was always a pain.
Esperanto is a language that's simple and easy to learn (at least if you're familiar with romance languages), but not necessarily easy to understand if you're not familiar with it.
On the other hand, if you're familiar with 2 or 3 romance languages, try to read https://ia.wikipedia.org/wiki/Interlingua. Even if you've never heard of Interlingua, you'll probably understand most of it. Interlingua is optimized for easy understanding, which means that it adopts common words from romance languages even if they're not totally consistent with the rest of the language. This means that ease of understanding comes at the cost of language consistency and ease of learning. For people in central Europe, I'd say Esperanto is easier to learn (to speak) and Interlingua is easier to understand.
While this is a very different idea than decentralized cryptocurrencies, what it would give us as consumers is a much more privacy-preserving alternative to credit cards, Apple Pay and PayPal when buying things online (or in a store). At the same time, it is controllable enough for governments and banks that they could consider introducing such a system.
Setups like this could be used to test the system in practice.
I've heard a lot of complains from Pixel 4a and 6 owners though, about bugs in the OS and drivers... Not sure if these issues are widespread or not.
Fortunately organizations like NOYB (with Max Schrems) are doing exactly this: https://noyb.eu/en/noyb-files-422-formal-gdpr-complaints-ner... Once there are a few high-profile cases with high fines to set a precedent, this hopefully changes the way companies handle cookie banners.
From what I can tell: If you ask your users for permisssion ("informed consent"), then no, it is not illegal. The way I understood the court case in Austria, the disputed point was whether or not the use of GA falls under the GDPR. If it does fall under it, then you are obliged to ask your users for consent ("opt-in"). If it does not, you can use it freely without consent.
Because analytics data isn't worth that much if you collect only part of the data, most collectors of data do not want to ask users for their consent, because most users would reject this.
But IANAL. In any case, please stop using Google Analytics, and self-host your analytics using Matomo, Plausible, or something similar. Matomo can also be configured to use server-side analytics, in which case your analytics become both less invasive (no client-side JS needed) and more complete (can't be blocked by ad-blockers).
> Unfortunately Hot-swap sockets are not really compatible with curved FR4 PCBs, without extensive hand soldering.
That makes sense.
A non-low-profile keyboard would need to be designed differently, to avoid the keys colliding (due to the curving). It's probably not feasible as an option, that would be an entirely new design.
- https://stackoverflow.com/questions/40275832/typescript-has-...
- https://github.com/microsoft/TypeScript/issues/32690
In a TS codebase I'm currently working on, we have the policy of never using "plain" TS enums. Instead, we have a tool that generates our own enum objects using a schema and a generator script for the cases where we want "rich" enums. For other use cases, we use string unions a lot (in combination with a helper function that allows exhaustive matching).
1/5, would not recommend. (But sometimes there's no way around it.)
The Rust Docopt implementation¹ was deprecated this year, which is probably good because clap v3² is so awesome. In a project of mine (tealdeer), I noticed that docopt.rs was responsible for the huge majority of CPU instructions when running the binary: https://github.com/dbrgn/tealdeer/issues/106#issuecomment-59... I then switched³ to clap and shaved off almost a megabyte from the release binary⁴. Performance improved as well, time required for rendering a tldr page went down from ~15.9 ms to ~12.4 ms⁵. With the migration, we also managed to reduce a lot of custom validation logic and move this logic into the derive macro attributes.
¹ https://github.com/docopt/docopt.rs
² https://github.com/clap-rs/clap
³ https://github.com/dbrgn/tealdeer/pull/108
⁴ https://github.com/dbrgn/tealdeer/pull/108#issuecomment-9448...
⁵ https://github.com/dbrgn/tealdeer/pull/108#issuecomment-9448...
Did you try fuzzing your implementation (e.g. with AFL++ or libfuzzer)? Codecs and especially decoders written in C that handle untrusted binary data are quite worthwhile targets for fuzzing.
Are you sure? In Switzerland, most farms I know have at least one dusty three-phase power outlet somewhere in a shed. Sometimes just 16A, but that should be sufficient for many use cases.