nickwitha_k (he/him)

  • 1 Post
  • 99 Comments
Joined 1 year ago
cake
Cake day: July 16th, 2023

help-circle


  • So what it’s really like is only having to do half the work?

    If it’s automating the interesting problem solving side of things and leaving just debugging code that one isn’t familiar with, I really don’t see value to humanity in such use cases. That’s really just making debugging more time consuming and removing the majority of fulfilling work in development (in ways that are likely harder to maintain and may be subject to future legal action for license violations). Better to let it do things that it actually does well and keep engaged programmers.


  • That’s the beautiful thing about gifting software with permissive licenses (when one wants to): it’s a gift and anyone can do whatever they want with it for free.

    ETA: I DO think that it is important for one who chooses to license software permissively to be informed about their decision and its implications. But, just like consent in other areas, as long as one enters into it intentionally and with the understanding of what the license means, it’s noone’s place to judge (and, like consent in other interpersonal areas, the license can be revoked/modified at any time - with a new version). Honestly, really weird of those that take issue with individuals choosing to gift their software to humanity - there’s way more interesting and useful things to engage in in the FLOSS landscape.




  • what would you do if someone used it to hurt people instead? I’d personally feel like shit if my software were used for that, and as others said in this post, they’d prefer to have entities request an exemption rather than have their code used in ways they don’t approve of. So what say you?

    I’ve a few thoughts on this:

    • Anyone who wants to use anything that I release for harm, will probably do so regardless of license. Bad actors are going to act badly. Plus, chances are that they’d see no legal repercussions as underdogs winning in court is the exception, not the rule. The legal system is heavily stacked against the little guy.
    • I tend to specifically avoid working on things that are weaponizable to reduce the chance of ethical conflict.
    • The projects that I’ve released or plan to release tend to be pretty esoteric. The one that saw the most interest was years ago and it was an adapter between abandoned gallery plugin and an abandoned social media CMS thing. It would take some great creativity to hurt people with that, other than making them read my horrible code from that era. My current projects are more about FPGA and mixed reality stuff.
    • Once I’ve created something and shared it freely, it is no longer wholely mine. I cannot dictate how one uses it, anymore than a musician can dictate how someone listens to the radio. As long as one abstains from creating tools intended to harm (or that can be predictably turned to harm), I don’t see legitimate ethical culpability. We only have control over ourselves.

  • Really?..

    Just about every FOSS and Source-Available license that I’ve seen is perfectly valid. As a software developer, one has the option to choose how they wish to license their software. This can be based upon one’s personal philosophical view or what seems most appropriate for the piece of software.

    Not everyone is motivated by profit. Most software that I develop personally is permissively licensed because IDGAF as long as I have enough to get by. If I write some code that makes someone else’s life better or easier, that’s more than enough for me.

    Wait. What am I saying? This is the Internet and, according to the rules of corpo social media, we’re all supposed to be dicks to each other to further “engagement”. WHICH ONE OF YOU SAVAGES IS USING TAB INDENTATION INSTEAD OF BLOCKS IN YOUR LICENSE FILES?!?;!!!111one








  • Currently on Fedora Silverblue. I think I’m settling there for a base system/local hypervisor. Tried NixOS but, as someone who has been Linuxing and programming for over a decade, I don’t think it is for me (I don’t like the syntax or need for a DSL - give me a tool that uses a standardized language like JSON or YAML, not one that forces me to use a language that is of no use anywhere else - not to mention the garbage documentation; if the Getting Started docs don’t result in a system that is functional including a networking stack, it is insufficient and no, Discord is not documentation).




  • Kinda. nil is a weird value in Go, not quite the same as null or None in JS and Python, respectively. A nil value may or may not be typed and it may or may not be comparable to similar or different types. There is logical consistency to where these scenarios can be hit but it is pretty convoluted and much safer, with fewer footguns to check for nil values before comparison.

    I’m other words, in Go (nil == nil) || (nil != nil), depending on the underlaying types. One can always check if a variable has a nil value but may not be able to compare variables if one or more have a nil value. Therefore, it is best to first check for nil values to protect against errors that failure to execute comparisons might cause (anything from incorrect outcome to panic).

    ETA: Here’s some examples

    // this is always possible for a variable that may have a nil value. 
    a != nil || a == nil
    
    a = nil
    b = nil
    // This may or may not be valid, depending on the underlying types.
    a != b || a == b
    
    // Better practice for safety is to check for nil first
    if a != nil && b != nil {
        if a == b {
            fmt.Println("equal")
        } else {
            fmt.Println("not equal")
        }
    } else {
        fmt.Println("a and/or b is nil and may not be comparable")
    }