• 18 Posts
  • 167 Comments
Joined 1 year ago
cake
Cake day: August 10th, 2023

help-circle
  • Yes, I feel like some kind of bell should ring in your brain when something needs to be commented, most often if you struggled to write out the solution or you had to do a lot of digging from various places to achieve the final resulting piece of code, it doesn’t make a lot of sense to pressure yourself into thinking you should comment everything, because some knowledge has to be assumed, nowadays you could even add that if someone completely extraneous to the codebase entered without any knowledge, they could feed the parts of code they need to understand into some LLM to get a feel for what they’re looking at, with further feedback from actual devs though, you never know what random bs they might write.
    Good one on the variables to store results of expressions, I agree with that method, though I always forget to do that because I get so lost in the pride of writing that convoluted one-liner that I think, “oh yeah, this is perfectly beautiful and understandable 😇”, I have to check myself more on that.

    complex portions in some of my projects that would appreciate similar simplification

    So I’m not alone on that haha.

    This is why […] better

    Sorry, what’s the subject of that?




  • QuazarOmega@lemy.loltoProgrammer Humor@lemmy.mlComenting code
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    2 hours ago

    Making up an example on the spot is kinda difficult for me, but I’d look at it this way with a bold statement, you should hope that most code won’t need comments. Let’s exclude documentation blocks that are super ok to be redundant as they should give a nice, consistent, human readable definition of what x thing does (function, constant, enum, etc.) and maybe even how to use it if it’s non-intuitive or there are some quirks with it.
    After that, you delve in the actual meat of the code, there are ways to make it more self explanatory like extracting blocks of stuff into functions, even when you don’t think it’ll be used again, to be used with care though, as not to make a million useless functions, better is to structure your code so that an API is put into place, enabling you to write code that naturally comes out high level enough to be understood just by reading, this thing is very difficult for me to pinpoint though, because we think of high level code as abstractions, something that turns the code you write from describing the what rather than the how, but really, it’s a matter of scope, a print statement is high level if the task is to print, but if the task is to render a terminal interface then the print becomes low level, opposite is also true, if you go down and your task is to put a character onto stdout, then the assembly code you’d write might be high level. What I mean to say is that, once you have defined the scope, then you can decide what level of knowledge to expect of the reader when looking at your code, from there, if some process feels fairly convoluted, but it doesn’t make sense to build an abstraction over it, then it is a good place to put a comment explaining why you did that, and, if it’s not really clear, even what that whole block does


  • useless research for the curious

    Did a bit more research, was thinking it might be a systemd service, so I checked for timers there, but there was just a countme timer enabled that basically tells the server to include you in the count of active systems (how to disable, for the paranoid 🥸).
    Then I went on to look at the live logs of rpm-ostree and, as found from this website used this command:

    journalctl --follow --unit rpm-ostreed.service
    

    So that I could monitor its activity while I open Discover and so I managed to record when it happens, I also saw from the logs that there is a configuration file at this path /etc/rpm-ostreed.confand that you can configure automatic updates from there, by default there a this line about it (usage greatly explained with man rpm-ostreed.conf btw):

    [Daemon]
    #AutomaticUpdatePolicy=none
    

    but it’s commented out, so it couldn’t have been that.

    Finally there is this one thing that pops up in the logs:

    Initiated txn AutomaticUpdateTrigger for client(id:cli dbus:1.1625 unit:app-org.kde.discover@df0f43f8979843c0a34d36ad199c7eda.service uid:1000): /org/projectatomic/rpmostree1/fedora
    

    So it is something triggered by Discover, as I had known already, due to other articles that talk about the integration with Discover, but I wasn’t so sure about it anymore, since I couldn’t find any related settings in the app.

    So I found the setting that configures automatic updates in general… in the three dot menu (questionable UX decision?):

    three dot menu > Configure Updates...

    which actually just leads to the system settings:
    Update software: automatically. Update frequency: weekly
    I had this configured to be weekly, there isn’t even a setting as granular as seconds, the smallest span of time is daily, but what I’m guessing is that the “Update frequency” acts on when they should be installed automatically rather than when they should be fetched, so this is a limitation of the system as I understand it







  • Why so irritable? I’m just asking, I don’t even know German, I thought since you knew the video already, you could point me in the right direction, rather than me having to sift through it all while also passing it through a translator to hopefully (because I don’t know how well youtube’s auto-translate feature works) find the information I’m looking for in the whole presentation









  • QuazarOmega@lemy.loltoLinux@lemmy.mlFedora: GNOME or KDE?
    link
    fedilink
    English
    arrow-up
    14
    ·
    edit-2
    21 days ago

    I used to prefer GNOME, until I started using KDE daily on the desktop, I thought it would just be temporary, but I ended up liking KDE way more because of the features that are built-in, the integration is simply priceless and I’m tired of those GNOME extensions that keep breaking at the next GNOME major release and I have to wait weeks for the poor devs to catch up and fix them up to get the compatibility going again, in some ways that also happens on KDE with the widgets, but, arguably, you will need way fewer of those to extend the already wide functionality provided by the Fedora KDE experience, so you risk incurring in that issue a lot less. Note I specifically mention Fedora both because it’s the system you want and because the pool of apps included is the best for a streamlined, but not bloated, experience, which also allows me to use Kinoite without troubling myself to overlay crucial apps that aren’t provided (or don’t work fully) as Flatpak.