• 30 Posts
  • 369 Comments
Joined 6 years ago
cake
Cake day: May 31st, 2020

help-circle
  • The description in the ticket isn’t too bad:

    allows users to make a window disappear and keep only its title bar visible.

    It really just hides the window contents. In effect, it is similar to minimizing a window, except that it doesn’t spring into your panel and rather stays in place as just the window title bar without the contents.

    It is a niche feature, if you couldn’t tell. But it isn’t some KDE specialty feature; various other desktops and window managers also support it. I think, it was more popular in the early days of graphical user interfaces, when we were still working out, how we want to do panels and such.

    And conversely, I do think it makes more sense as a feature on big screens like you can have today, where your panel might be quite a bit away.
    Don’t think, window shading will make a big comeback just yet, but yeah, probably enough existing users that use it, so that it would be cool to support that workflow.







  • Oh man, these global outages are really getting out of hand. A few days after the recent AWS and Azure outages, I suddenly noticed that I couldn’t reach certain webpages anymore. And I genuinely didn’t even bother trying to debug, because I just assumed that it’s another global outage.

    In the evening, I did look into it and noticed that my router was at fault (presumably DNS got bugged by a recent update). That was just wild to me, that I genuinely deemed it more likely that several major webpages went offline together than that my home setup is fucky.




  • That’s kind of why I never feel great about buying video games. The price is pretty much entirely arbitrary.
    Like yeah, they did an investment, it is fair that they recuperate that. But the actual price they need to ask of each customer entirely depends on how many customers there are.

    And so, they will always start out asking more than what they expect to need to ask of each customer, which just feels like I’m paying too much.
    But even when they do put it on sale, there’s likely going to be sales in the future where they sell it for even less. It’s not like they need to empty out a warehouse or such, where they put up uniquely low prices. So, even when I could get a game on a sale, I’ll feel like I could also just wait longer…


  • She did the math (with some assumptions), but basically 0.25 mL of lemon juice will turn 500 mL of alkaline water into neutral water:

    This is in the video at 13:16.

    The reason is that pH is a logarithmic scale. Alkaline water has a pH of about 8, which means it has a tenth of the hydrogen ions compared to neutral water at pH 7.
    Lemon juice has a pH value of 2, which is 1,000,000 times more hydrogen ions than there are in pH 8. So, you just need a little bit of lemon juice to increase the hydrogen ions in alkaline water tenfold, which makes it neutral.


  • I’m towards the hyperphantasic side of the spectrum and I’ve also noticed that it influences quite a lot of things.
    Perhaps the biggest factor is that I don’t have the same drive to visit places or people. I could travel to a castle to look at it, or I could do so in my mind. I could meet back up with an old friend, but as I think of them, my desire to see them again is satiated. This does mean I’m terrible at maintaining friendships and socializing in general.


  • I agree in general, that a crash is much better than silently failing, but well, to give you some of the nuance I’ve already mostly figured out:

    • In a script or CLI, you may never need to move beyond just crashing.
    • In a GUI application or app, a crash may be good (so long as unsaved data can be recovered), but you likely need to collect additional information for what the program was doing when the crash happened.
    • In a backend service, a crash can be problematic when it isn’t actually necessary, since it can be abused for Denial-of-Service attacks. Still infinitely better than failing silently, but yeah, you gotta invest into logging, monitoring and alerting, so you don’t need to crash to make it visible.
    • In a library, you generally don’t want to trigger a crash, unless an irrecoverable error happens, because you don’t know where it’ll be used.

  • Currently implementing error handling for a library I’m building and the process is basically to just throw all of the information I can find into there. It makes the error handling code quite verbose, but there’s no easy way for me to know whether the underlying errors expose that information already, so this is actually easier to deal with. 🫠



  • Ephera@lemmy.mlOPtoLinux@lemmy.mlUnderappreciated `top`
    link
    fedilink
    English
    arrow-up
    9
    ·
    1 month ago

    Yeah, I especially don’t understand it here, because it’s a graphical tool. You don’t have to keep backwards compatibility.

    Even if you’re worried about people depending on the format that’s being piped, you could keep only the piped format stable. We have the technology.




  • Ephera@lemmy.mltoProgrammer Humor@lemmy.mlCareer Advice
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 month ago

    Last year, money was running out in our project and the guy who had trained me decided he’d take the L and move to another project, so we could continue in the project. And yeah, suddenly I was in the role of the lead developer.

    Like, don’t get me wrong, I would’ve been the one to be moved to another project, if I wasn’t up for the task. It’s not like I was a complete dumbass.
    But it did still feel more like “I guess, we doin’ lead development now” rather than something I had intentionally worked towards.


  • Been hacking away at a library and definitely feeling this one. Some APIs, I’m not yet terribly happy with, and there’s always this urge to introduce a macro to hide away the ugly API.

    So far, I’m still staying away from it, because I’m just thinking that users will not have an easier time either way. The code they write may look prettier, but if they have to learn custom syntax rules for it, then it isn’t easier to understand in the end.
    Also, while a macro can clean up some rough edges, it won’t fix up an API that’s illogical to begin with. Well, unless you make it a turing-complete macro (i.e. proc_macro rather than macro_rules), but that makes it infinitely harder to understand once more.



  • I happen to be a software developer, so I hope you’re in for an info dump:

    Webpages are generally designed as documents. You type a URL into your browser, it downloads a webpage document and displays it. This simple concept also allows for hyperlinks and browsing history, which just put another URL into your browser, so that it downloads and displays a different document.

    But it does not work for everything. For example, this meme was brought to you by the web version of Microsoft Teams™, where if you were to switch between pages by downloading entirely separate documents, then you’d get kicked out of calls every time you do so.

    This is why the entirety of MS Teams is using a singular document. It’s a so-called Single-Page Application, SPA (*insert scary music here*).
    When you click on a navigation element, it doesn’t put a new URL into your browser for it to download. Instead, some JavaScript monstrosity starts churning, downloads whatever information it needs and then modifies the displayed document, so that it looks as if you had navigated away.

    To make it extra confusing, it also does typically change the displayed URL, it just doesn’t instruct the browser to download+display the respective document. It does this, because it tries to emulate a normal, document-based webpage, with browser history and where you can link to subpages.

    Well, and this is then why opening in a new tab is often broken. Because there is no link there. It has to emulate the behaviour of a link via JavaScript just as well. If the developers do a bad job at that and never try out shortcuts like middle-click or Ctrl+click, then they may never get implemented.


    Having said all that, there’s also a chance that the devs decided to intentionally hinder opening in a new tab.
    Because MS Teams and other SPAs are JavaScript monstrosities, downloading+displaying the document anew like when opening in a new tab takes an obscene amount of time.
    And having two tabs of it open means that you get two notification sounds for each notification, and users might accidentally join multiple calls.

    But yeah, that I can’t have a call in fullscreen on one monitor and respond to chat messages on another monitor, without jumping through hoops like in the post, that’s just bad either way.


  • Well, in this case I’m merely talking about the webpage not giving access to the right-click menu, as well as to shortcuts like middle-mouse-click and Ctrl+click, which would normally allow you to open parts of it in a new tab.

    If a webpage were to actually check for cookies, to try to detect whether you’ve got two tabs of it open, then yeah, Container Tabs would be a solution for that, since it isolates the cookies.