Just a small frog hopping from post to post. Because it may be Wednesday my Dudes!

Sometimes in German, sometimes in English.

  • 1 Post
  • 162 Comments
Joined 3 年前
cake
Cake day: 2023年6月14日

help-circle





  • I’d just like to interject for a moment. What you’re referring to as Linux, is in fact, GNU/Linux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX. Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called “Linux,” and many of its users are not aware that it is basically the GNU system, developed by the GNU Project. There really is a Linux, and these people are using it, but it is just a part of the system they use.

    Linux is the kernel: the program in the system that allocates the machine’s resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called “Linux” distributions are really distributions of GNU/Linux.


    Sorry, it had to be done. (But is actually misquoted)






  • I am.sorry to hear this. But I feel your pain. A few years ago I had a phone where some apps just where buggy as hell for some reason. There are so many factors contributing to app stability on Android:

    • Android version
    • Possible customisations from the phone manufacturer (bloatware, battery optimisations etc.)
    • Phone hardware, especially working memory and CPU

    My current phone has 8 GB working memory and like 40 GB free memory available. It also runs a approx. five year old LineageOS installation, upgraded each year as stated on their website. Currently its LineageOS 22.2 (android 15).

    All of this may or may not have great impact on how well FF Android runs.


  • Maybe give Iceraven a try. Its a FF Android fork and works with lots of add ons that regular FF android does not offer for some reason.

    https://github.com/fork-maintainers/iceraven-browser

    Edit:

    To be clear, Iceraven does not magically make all add ons usable. But more than regular FF android anyway. From their Readme:

    Our goal is to be a close fork of the new Firefox for Android that seeks to provide users with more options, more opportunities to customize (including a broad extension library), and more information about the pages they visit and how their browsers are interacting with those pages.

    Notable features include:

    • about:config support
    • The ability to attempt to install a much longer list of add-ons than Mozilla’s Fenix version of Firefox accepts. Currently the browser queries this AMO collection Most of them will not work, because they depend on code that Mozilla is still working on writing in android-components, but you may attempt to install them. If you don’t see an add-on you want, you can request it.







  • This is basically one of the core ideas of Ruby: that you can read it like a story. Once you are used to reading it as “do X unless Y”, you will miss it in other languages. Note that I wrote Y, not Y is true. Because often Y is a statement that has meaning in itself.

    Example:

    # imagine that given_name is some text from user input
    
    # this is of course valid:
    user.name = given_name if !user.is_locked
    
    # but this reads more fluently:
    user.name = given_name unless user.is_locked
    

    Ruby also allows using ? as last character in method names, which is a convention for methods that return either true or false.

    Same goes for ! (the bang operator), that is commonly used to tell developers that there exists a non-bang version of the same method as well. The bang method is often the more strict version (e.g. raises an error instead of returning nil; or having side effects compared to the non-bang version).

    So the above example may be more commonly written like this:

    user.name = given_name unless user.locked?
    

    and the question mark makes you automatically adding is or has while reading: Set the user’s name to the given_name unless the user is locked

    Of course this is all by convention and you may also do it different. But that’s how most Ruby code is written.

    To stay consistent, lots of projects use RuboCop, which warns you on inconsistency based on your project’s settings.