• 121 Posts
  • 5.95K Comments
Joined 6 years ago
cake
Cake day: May 31st, 2020

help-circle





  • Ephera@lemmy.mlto196@lemmy.blahaj.zoneDeveloper(ule)s
    link
    fedilink
    English
    arrow-up
    9
    ·
    11 hours ago

    A few years ago, a colleague had the title “software craftsman”, because he thought it was utter bullcrap to call our profession “software engineer”.
    And yeah, now that I’m part of a project for a few years, I’m definitely feeling “software mechanic”. I might install half a spoiler every so often, but aside from that, it’s mostly just repairs…


  • Add computer science and you have a programmer.

    I mean, while this definitely does happen in reality, in particular if you count data scientists towards programmers, I feel like I need to point out that neither knowing computer science, nor maths, makes you a good programmer.

    In fact, if you tell me someone is a computer science professor, I will assume that they are a bad programmer, because programming takes practice, which is not something they’ll have time for.


  • Yeah, although it doesn’t mean that, say, the top 10 pop songs aren’t blander today than they were 50 years ago.

    I’ve heard it argued that Spotify pushes songs to be blander, for example, because:

    • they don’t typically get played back as part of an album anymore, so they’re more samey in that they all have to work as a single,
    • you don’t want to be the song that stands out, where the user presses Skip, because Spotify will rank those lower, and
    • lots of folks now consume music as background noise, so the intricacies of a guitar solo, which would’ve hit like a truck for active listeners, are often just drowned out by traffic noise or may just be too much to take in while you’re learning for school or whatever.

    Having said all that, there is the flipside that the top 10 pop songs are less relevant than ever. You’ve got practically an infinite supply of songs to choose from, so you kind of just have to find the good stuff.
    That is work, I admit, so I can understand a certain level of frustration, but yeah, it is also something to be excited about, that there is such a huge selection to choose from.



  • I’m on NixOS for my personal laptop, too. I just tried it and well, #!/bin/bash apparently does not work, but #!/bin/sh does.

    The file /bin/sh does also exist as a symlink for me:

    > ls -l /bin/sh
    lrwxrwxrwx 1 root root 73 14. Dez 19:50 /bin/sh -> /nix/store/35yc81pz0q5yba14lxhn5r3jx5yg6c3l-bash-interactive-5.3p3/bin/sh*
    

    Does that point into the bash package for you, too?


    Edit: And for #!/bin/bash, the output was:

    > ./test
    exec: Failed to execute process './test': The file specified the interpreter '/bin/bash', which is not an executable command.
    

  • Well, it won’t work for Kate, because Kate is implemented using the Qt framework, so will preferentially use the Qt theme on your system. You would have to try it on e.g. Inkscape, which uses the GTK framework. (I did just try it on Inkscape to confirm that.)

    We’re getting into the technical details of how these applications are implemented, so I can’t make this any less confusing.
    But basically, KDE generally uses Qt, but it also generates a GTK theme, so that Inkscape et al don’t look out of place.
    Applications not specifically developed for Linux are likely to refer to that GTK theme for their own theming, even if they aren’t implemented in GTK themselves. Firefox also does this, for example.

    UnityModManager seems to be implemented using neither Qt, nor GTK, but rather Microsoft’s .NET Framework. So, yeah, kind of no idea what it’s gonna do here.

    You could try telling KDE to generate a specific GTK theme and see if that does anything: (There’s a button in the top-right of the screenshot.)

    You may also want to see, if it’s maybe this issue: https://github.com/newman55/unity-mod-manager/issues/88





  • To give a quick highlight, because this case is often politicized and misrepresented:

    The plaintiff, Stella Liebeck (1912–2004), a 79-year-old woman, purchased hot coffee from a McDonald’s restaurant, accidentally spilled it in her lap, and suffered third-degree burns in her pelvic region. She was hospitalized for eight days while undergoing skin grafting, followed by two years of medical treatment. […]

    Liebeck’s attorneys argued that, at 180–190 °F (82–88 °C), McDonald’s coffee was defective, and more likely to cause serious injury than coffee served at any other establishment.

    So, the lawsuit never demanded McDonald’s to put a warning that you’re not supposed to spill hot coffee on yourself. It argued that it’s an unnecessary safety hazard, because the coffee was served at hazardous temperatures.
    No matter how many warnings you put down, it can happen that someone spills coffee on themselves and they shouldn’t need to be hospitalized from that.






  • Runtimes/“VMs” like the JVM also allow nice things like stack traces. I don’t know about the author but I much prefer looking at a stack trace over “segmentation fault (core dumped)”. Having a runtime opens new possibilities for concurrency and parallelism too.

    Rust has stacktraces without needing a runtime. Don’t ask me what exactly is going on behind the scenes, but there is a way to request a stacktrace for a given point in the program. And unless you’re doing embedded stuff, a stacktrace is automatically generated for errors.

    And as for concurrency/parallelism, it’s correct what you wrote, but I just wanted to point out that it doesn’t have to be a language runtime. Using Rust as an example again, you typically spawn the Tokio async runtime on program start, if you’re gonna do async/await stuff.