Threads for ktr

  1. 1

    I remember reading a blog post about it (link below), and affected people just getting generic error messages from the status page or support, and being considered not worthy of having a real human talk to them. So this PIR is clearly a load of bullshit. It’s not because you write: “one of our core values is “Open company, no bullshit”” that it is necessarily true. Not only it was NOT open, but also full of bullshit.

    From the blog post: For most of this outage, Atlassian has gone silent in communications across their main channels such as Twitter or the community forums. It took until Day 9 for executives at the company to acknowledge the outage. […] Impacted companies received templated emails and no answers to their questions.

    The post: https://newsletter.pragmaticengineer.com/p/scoop-atlassian

    1. 15

      Apart from the meme, I’m a little disapointed when people give up and just disable SELinux.

      It doesn’t help that no one wants to be told: “stop what you’re doing, spend a week to learn this other thing, make a tiny change, and then return to your real job”. They’re looking for solutions — preferably quick ones — and not a week’s worth of study.

      I understand that this might be demotivating, but I personally feel that SELinux should be part of the basic skill-set of anybody deploying/running a CentOS/RHEL server. I mean most people learned about permissions, systemd, etc. before deploying their server, what’s wrong with investing a little more time into learning another necessary technology to do your job.

      I get the point of the article, I also run some Debian servers, and it would never come to my mind to maintain SELinux policies and enforcement there. But Red Hat made a great effort to make SELinux seamless on their platform. Yes I agree with the author, the lack of configuration files and the necessity to use seinfo/sesearch/semanage can be frustrating, but a lot of other aspects of Linux “are just there” (to quote the author). Kernel modules being one of them, some script reads and loads what’s in /etc/modules, but I can just modprobe xxxxxx and it’s “just there”, you’ll have to use lsmod to see it.

      In general, when I’ve seen people fight SELinux they’re doing something weird that could be done differently:

      • They’re not storing files in the directory which is specified by in the documentation.
      • They wrote custom policies instead of enabling an selinux boolean which would have allowed them to do what they wanted to achive.

      Take my comment with a grain of salt, I like SELinux (on RHEL/CentOS! Not on other distros which don’t make the effort for it, I just use systemd hardening like the author.)

      1. 14

        The fact that the meme page links to a 40-minute video instead of any usable documentation just proves the point in my opinion. Almost all the documentation points to kludging around with “just make it work*” commands instead of teaching how to write a policy.

        I had an issue with smbd not being able to read from a ZFS mount. The only documentation I could find on the policy said there was an sebool I could set. It was wrong.

        audit2allow basically set it to permissive for that syscall, which filled my logs with permitted violations. Since it was an older machine, that actually impacted performance greatly.

        That was when I decided to disable it.

        1. 3

          To be honest, watching that video has just inspired me to go set selinux to permissive, relabel stuff and try and see if I’ll be able to live with it from now on.

          Although, not running servers and not seeing this as part of my job in the future, I think it’s a wasted effort. I am just doing it to stay up-to-date with my linux skills (also not needed), not because I’ll be running systems with policies and permissions and stuff.

        2. 12

          This feeling is fed not just by a history of bad documentation, but also by a history of absolutely atrocious tooling, especially as shipped by Fedora. I don’t remember the details because it was very long ago, but at one point the handbook asked users to use a Python script that wasn’t even packaged (or maybe it was packaged in a non-obvious package – either way, what I distinctly remember my colleagues doing was literally grabbing a CentOS package to get at the damn thing). It also didn’t help that, for the longest time, SELinux packages weren’t very well synchronized with other packages, so it was pretty common to do an update that involved neither SELinux nor any of its configuration, and still break something.

          1. 9

            Another moderately fun thing is that the tools for working with SELinux are pretty CPU and memory hungry. I remember being unable to change SELinux config on CentOS 6 VMs with 1GB of RAM because the policy update tool would crash with an OOM error.

            1. 6

              Exactly this. I tried Fedora once and needed to recursively reset some SELinux context for my home directory. This required to use some single threaded Python tool that took forever to finish the job. I just installed Arch afterwards and never looked back.

              1. 2

                This is the way.

          2. 6

            As a long-time Fedora user, I’ve “learned to stop worrying and love SELinux”. I consider the tooling and documentation atrocious, but you’re right about the two problems. Whenever I have a problem, the solution is either to go searching for the right selinux boolean (/usr/sbin/getsebool -a | grep httpd) or find the right label for whatever I just installed and relabel the place I installed it.

          1. 5

            Tangent, just because: tar doesn’t need even a single - for the main cvtfxzj (etc) options, either on macOS or Linux:

            $ tar jcvf archive.tbz file1 file2
            a file1
            a file2
            
            $ tar jtvf archive.tbz
            -rw-r--r--  0 user   group       0 Apr 11 19:45 file1
            -rw-r--r--  0 user   group       0 Apr 11 19:45 file2
            

            Just think of all the unnecessary dashes being typed around the world, every minute. Hell, every SECOND.

            1. 3

              Tar should just go all the way and just have random numbers for common (?) groups of options. tar 243 file.tar.gz; tar 932 file.tar.gz -- output etc. It would be easier to remember.

              1. 8

                chmod effectively has arbitrary numbers for options. At least for those of us who don’t know octal.

                “644” and “755” are complete verbs to me. Or “777” (roughly translates to “amateur hour”).

                1. 2

                  Funilly enough, chmod doesn’t take -h as a short opt :)

                  A heads-up, but you can e.g. chmod +-rwx (read-write-execute) stuff. E.g. add read: chmod +r file, or remove exec perms: chmod -x file. You can also specify user/group/others/all (default is all if you don’t specify). E.g. group can read and execute: chmod g+rx file. Also add -R to go recurrsively and you’re golden.

                  P.S. just wanted to add that octal is simple enough as well, but I guess I’m speaking with 30 years of experience so it’s not really fair.

                2. 2

                  I have an e function in my zshrc that understands all archive formats and extracts them. I just need to remember e ;p

                  1. 2

                    FreeBSD’s tar uses libarchive and so mostly ignores the other flags if you pass x - it will figure out what the file format is from the header and then extract it. You can pass z or J or whatever to tell it that it’s gzip or bzip2 or xz compressed, but you don’t need to.

                    1. 1

                      aunpack is also such a command.

                    2. 1

                      Just use the mnemonics:

                      tar xaf — extract a file

                      tar caf — create a file

                  1. 14

                    Wow, I can’t believe rasterman is still working on E. I ran it on my RedHat 5 desktop in the late 90s

                    1. 6

                      Well, he’s aiming for a 1.0 in 2052 ;) (https://0ver.org/)

                    1. 3

                      I listened to it not so long ago. Good episode. At least the first half as I can never listen to the second half of these podcasts because I fall asleep every single time.

                      1. 0

                        You can’t put “awesome” “windows” and “dev setup” in the same sentence. I really don’t get all these people that work with WSL. Just use a real GNU+Linux already instead of using malware that desguises itself as an operating system….

                        1. 4

                          It’s always nice to be able to start again from scratch and make sure all the “cruft” is now reproducible and documented. :)

                          Are you using ansible at all or NixOS makes it obsolete?

                          Anyway, I always like your posts, thanks for sharing <3

                          1. 3

                            NixOS absolutely obsoletes Ansible. Plus you don’t need to write yaml.

                          1. 1

                            Used bspwm for a year or so, but went back to Awesome WM, which I think is more mature and works better for some corner cases.

                            1. 21

                              The responses to this post are pretty spot on. Asking people to hand-edit XML files to do UI design is stupidly backwards and I can’t even…

                              1. 18

                                … poster proceeds to edit HTML and CSS in an IDE, watching results in a browser.

                                1. 9

                                  Yes, this blog post is missing the part where another better tool is recommended.

                                  1. 5

                                    Yes, we should be drawing mini ASCII art instead:

                                    "H:|-[button1(200)]-(>=10)-[button2(200)]-|"
                                    
                                    1. 3

                                      Do Apple developers still use this?

                                      1. 3

                                        No, that was the first version of auto layout. I remember using this syntax for one year, iOS SDK 6 I think? Tools / SDK releases are annual just like phone hardware, and we’re on SDK 14 now, so it has been a good while. Anyway there was one initial year where Interface Builder, the visual layout tool, made constraints hard to get right, and that year my teams did constraints in code. We came around to IB again when they improved it a year later.

                                        The primary ways to define constraints now are either to draw them in Interface Builder or use a new more expressive and type-safe code syntax. If I recall, that was new with SDK 8. I believe all of this was pre-Swift.

                                        However the true new hotness is SwiftUI, which is a React-like declarative UI system that tends to operate in flexbox-like stacks and permits specific, dynamic layout in ways other than a system of linear equation constraints, so your don’t then have to debug them for over- or under-definition. SwiftUI cannot yet do everything, so adoption is slow, but that’s the state of the art over in Apple dev world.

                                        Suffice to say, VFL is ancient history.

                                        1. 2

                                          I suspect it’s not very popular these days. VFL dates back to the time before Swift when ObjC would have forced extremely bracket-y APIs. With Swift we get more fluent APIs.

                                          Many new projects probably start with SwiftUI, a completely new UI toolkit. It’s still limited, but nice where it works. Most UIKit/AppKit apps use Interface Builder, Xcode’s graphical GUI builder. Of those that prefer UIs in code (I certainly do), many probably use a third party wrapper around auto layout, such as SnapKit:

                                          box.snp.makeConstraints { (make) -> Void in
                                              make.size.equalTo(50)
                                              make.center.equalTo(container)
                                          }
                                          

                                          Or they use Apple’s newer anchor API which is almost as nice:

                                          NSLayoutConstraint.activate([
                                              box.widthAnchor.constraint(equalToConstant: 50),
                                              box.heightAnchor.constraint(equalToConstant: 50),
                                              box.centerXAnchor.constraint(equalTo: container.centerXAnchor),
                                              box.centerYAnchor.constraint(equalTo: container.centerYAnchor),
                                          ])
                                          
                                    1. 45

                                      Setting aside feelings one way or the other, posting this because the default behavior changing is bound to bite somebody in the next month or two. If anybody knows what minor version is going to start doing this, post here so we can know what to check git --version against. It appears this is landing prior to git 3.0.

                                      Quoting from the mailing list discussion:

                                      So we need to make sure existing users know that they can add:
                                      
                                      [init]
                                          defaultBranch = master
                                      
                                       to their ~/.gitconfig if they want the legacy behavior
                                      

                                      In case you need to support legacy scripts or muscle memory.

                                      git config --global init.defaultBranch master may also work, but haven’t tried it on my machine.

                                      1. 19

                                        [init] defaultBranch = master

                                        Adding this to my gitconfig now to avoid future issues…

                                        1. 16

                                          Wait, I thought that init.defaultBranch was the compromise, to avoid renaming the default branch in Git, while still allowing those who feel uncompfortable by it to avoid it as much as possible?

                                          Are there any statistics or scientific attempts to qualify how much of a problem this is? It’s probably my fault, but I find it hard to imagine that if someone is in the need for version control, will learn all the basics up until the point where they see the word “master”and give up, not because of direct racism, but racism by association.

                                          Non-technical issues like these are never easy, but there should at least be some discission where one position is designated as the morally superior before a word is said.

                                          1. 27

                                            main is shorter, simple, and has no negative connotations whatsoever. This is an easy thing to do and it makes people feel welcome

                                            1. 25

                                              Semi-serious question: How do we know that? I’m going to guess that the people who decieded to use “master” in version control systems didn’t do this out of mallace, but just because the phrase seemed appropriate. So how can we be sure that main won’t eventually fall our of favour? I remember that at the beginning of 2015 Elementary OS wanted to release a new version called “Isis”, afaik in reference to the egyptian god, but then the terror group in ISIS gaiend power and a more or less inncoent name became very controversial.

                                              And does “shorter” and “simpler” even matter? Almost everyone uses autocompletion in some form or another, and it’s not something you use as often as “git commit”.

                                              1. 17

                                                If we knew the future the world would be a better place ;) In the absence of perfect prescience, we will have to be guided by the voices of today.

                                                1. 7

                                                  Ok, fair enough, but let’s twist the question again: How do we know that everyone has a seat at the table? What if there is a language or a culture where main has a different meaning (a simple but unoffensive example is in Germany, where Main is a river)? Apparently there were no black people, or people “decendents of slavery” to be exact (because not all back people were slaves) were present when the term “master” came into use, to correct this issue early on. But then on the other hand, if I remember correctly, make still uses tabs instead of general indentation, beacuse Stuart Feldman didn’t want to disrupt his userbase of at most a few dozen users.

                                                  1. 7

                                                    Of course, given that “git” itself is an offensive term in the UK, I insist that the whole project must be immediately renamed.

                                                    1. 6

                                                      false equivalence bad-faith troll

                                                      1. 1

                                                        Ok, but it is a swear word and you would be chastised for saying it in a learning environment.

                                                        Much like “GIMP” doesn’t belong in polite conversation.

                                                    2. 2

                                                      What are you hoping to achieve with this thought experiment?

                                                      1. 8

                                                        I intend to show that the argument is internally inconsistent. We cannot simultaniously assume a kind of standpoint theory, by which there is always a posibility that a term is (objectivly) wrong, but at the same time be able to suggest an (objective) replacment for a (subjective) offense.

                                                        A simpler understanding, that does not run into these problems is that offense is determined by intent, not by the nature or the etomology of a word.

                                                        At the same time, I don’t think that people advocating for this change are arguing on this level. Any reference to this logic is handwaving, but the motivation appears to be something else, which I would either guess to be some kind of at best false pragmatism or at worse opportunism.

                                                        1. 2

                                                          (I apologize if I misinterpret your comment, English is not my first language and I am trying to understand your comment)

                                                          a group X used a terminology to undermine/subjugate a group Y in the past, the group X is much smaller now but it still exists.

                                                          the change happening here is removing that specific terminology because group Y today is reminded of the past treatment.

                                                          and is your argument is that, since we don’t know that the new terminology wasn’t used to undermine any group in the past, the change is fruitless as we might need to change it again?

                                                          or that since the terminology was also used in other contexts by people not in group X, it should be okay to continue using it?


                                                          As I am neither a member of group X or group Y, my opinion is that if the change results in more people being comfortable using tool, we should definitely do it.

                                                          1. 4

                                                            First of all, and I don’t know why this has to be said: Slavery didn’t exist because it was called slavery, it existed because the society reproduced the conditions under which people were slaves.

                                                            and is your argument is that, since we don’t know that the new terminology wasn’t used to undermine any group in the past, the change is fruitless as we might need to change it again?

                                                            or that since the terminology was also used in other contexts by people not in group X, it should be okay to continue using it?

                                                            I explained the further in a sibling comment, that on the terms of the argumentation, it is imposible to say that main is better than master, because perspectives cannot be compared or have any common point of reference. Since this discussion is not based on any hard evidence, we cannot derive any emperical conclusion like “this will make more people comfortable”, since we are talking about idealized, aggregated perspectives, produced by a worldview that has ever increasing problems to explain anything that is happening, hence the focus on such things like “master/main”.

                                                        2. 6

                                                          I find it not to be only a “thought experiment”. The questions are on point. No data (if any, I would like to see it) to back up claims that people are offended by these words results in such major changes for everyone. At least that needs to be pointed out.

                                                          1. 3

                                                            OP is leaning back in their armchair imagining the theoretical universe in which the broader German community is coping with the upsetting rivered associations with “main” as the new default git branch. I suggest they apply their philosophical leanings to the actual real world in which it turns out a sizeable community of real live humans prefer to dispose of master/slave language where possible in discussions with their terminal.

                                                            1. 6

                                                              Please re-read my comment, the “main” example was just to give an example due to limited perspectives, we cannot know what our actions or decisions mean from other perspectives. I explicity said it was harmless, but if you want something better, consider @caleb’s example.

                                                              I suggest they apply their philosophical leanings to the actual real world in which it turns out a sizeable community of real live humans prefer to dispose of master/slave language where possible in discussions with their terminal.

                                                              How can you know that? Where are the statistics? Where are the polls? How did we figure this out? When did we figure this out? This is just postulated, and nobody goes into it. And I have a hunch that this is because if you were to actually find out what most people belive, that it would not be what you want to think they do. But that’s just by unprooven hypothesis.

                                                              1. 2

                                                                I’m not going to debate you because you’re displaying a preference for thought experiment over an engagement in reality, which not only suggests a closed mind, but also that you simply don’t have sympathy for the real issue at hand. @caleb’s “example” is a much less veiled form of the same type of trolling you’re unwilling to let go of.

                                                                You wish to model reality, but no modeling is required to understand this issue. We’re here because we’re here. This is a real conversation which is taking place in the real world for several years now. You’re attempting to place the burden of proof of the existence and size of a community on that exact community itself, which is existentially large and significant enough to make the issue stick broadly across numerous open source projects, GitHub, and now the git project itself.

                                                                This is just completely illogical. If you want to go do your own research and develop some set of quantitative metrics in an attempt to quantize a complex social issue which is unfolding as we speak, then go ahead and do so. It’s not going to change what’s happening.

                                                                1. 5

                                                                  As already stated, I just want to explain why the position is incoherent, and as everyone knows, ex falso, quod libet. You have already dismissed everyone who is questioning it as a troll, declare the issue as obviously setteled and then proceed to moralize it by claiming those who don’t agree have no sympathy for the real issue at hand – but of course, we are have a closed mind. I am honestly disgusted by this kind of behaviour, this dishonesty and the smug superiority you emit. Please stop and consider what you are doing, and why you feel the need to behave the way you do.

                                                                  1. 2

                                                                    You wish to model reality, but no modeling is required to understand this issue. We’re here because we’re here. This is a real conversation which is taking place in the real world for several years now. You’re attempting to place the burden of proof of the existence and size of a community on that exact community itself, which is existentially large and significant enough to make the issue stick broadly across numerous open source projects, GitHub, and now the git project itself.

                                                                    This could be accomplished by a small group of PR professionals who don’t actually care about racism, but recognize a potential upside for their company while the cost of changing a default is distributed throughout the open source community.

                                                                    The real story here is that GitHub made the change unilaterally, and git followed suit. One might consider the depth of anti-racist feeling that would drive a company to make this change while continuing to partner with ICE, DOD, and police departments around the country.

                                                        3. 7

                                                          i was there when we named elementary OS Isis and i was also there when we named it Freya.

                                                          from what i remember, no one was concerned about optimizing the name, we were more concerned about not hurting people who themselves or their families had been impacted by Isis.

                                                          I am 110% proud of our decision.

                                                          (taking the elementary OS dev hat off)

                                                          I found main to be a better choice, i am used to using mainline at work now (because of perforce legacy repos) and don’t even notice a difference.

                                                          1. 2

                                                            So how can we be sure that main won’t eventually fall our of favour

                                                            Then we just change it again?

                                                            1. 3

                                                              But considering that the same would apply again, ad infinitium, we cannot say we will ever find a good name. And at then, what is the point? Either we go on forever renaming every time someone complains, at technical expense, or we claim that this renaming is more important than others, because one offended group is more important than others, which I don’t think that the people arguing for this want to argue.

                                                              1. 5

                                                                we cannot say we will ever find a good name

                                                                I don’t think anyone is claiming that main will be the perfect name forever. If at some point in the future main becomes offensive, then we could change it again. I haven’t found any evidence that would lead me to believe that git would be changing the branch name on a monthly or yearly basis, so I don’t think there is a high cost here.

                                                                forever renaming every time someone complains, at technical expense

                                                                Uh, we work in software. Everything changes all the time at technical expense. Updating your dependencies could break your app (even if the API doesn’t change), products get deprecated, new products get created. I don’t see this much backlash against Apple changing their CPU architecture and that’s gonna cause a lot more trouble than this change.

                                                                But that makes sense because the real issue here is ideology, wokes vs anti-wokes. We’re just pretending it’s technical. I think it’s fine to argue the ideological issue. I don’t think people are automatically racist for not liking the change. I just don’t think the technical argument holds much water.

                                                                1. 1

                                                                  I don’t know how Apple is going to handle the migration, but I suppose they have tooling to make it easier, the kind of tooling Git lacks.

                                                                  Those conversations might also be more private.

                                                                  As for tech expenses, you’re correct in that everything comes at an expense.

                                                                  Is it therefore justified to impose more of it on others?

                                                                  Maybe that’s an important ideological question as well?

                                                                  This doesn’t have to be all about how git has a master branch to signify “the master copy”.

                                                                  See also: how master hosts usually perform more work than slave hosts (to counter American slavery connotations) or how offensive “blanket exception handling” and “collaborators” should be (in cultures treated with “less thought” than American slavery).

                                                            2. 1

                                                              Changing it alone is more welcoming than any harm from the word itself.

                                                              1. 1

                                                                This I don’t get. Could you explain what you mean?

                                                            3. 36

                                                              Master is more precise, traditional, doesn’t break anything, and has no negative connotation in this context, or most other contexts.

                                                              Main does not make me feel welcome, it makes me feel like I’m being forced to bend the knee to a mob that can’t or willfully choose to not understand English. It makes me embarrassed to be in this field. Admitting that feeling means I deserve to feel bad anyway though, so whatever.

                                                              1. 12

                                                                Tradition should not hold back progress. There are more descriptive names out there. For example allow/deny is better than black/whitelist, parent/child is better than master/slave. I understand people are resistant to change and humans are creatures of habit (energy conservation) but this is a simple name change where there’s more advantages than not and people will get over it after a few weeks.

                                                                1. 22

                                                                  parent/child is better than master/slave

                                                                  Not if it brings up memories of child abuse.

                                                                  1. 4

                                                                    Sorry about your child abuse, or are you simply virtue signaling? If you feel strongly about it then you can message the maintainers of the software you use to alter the names, otherwise why bring up a “whataboutism” argument.

                                                                    1. 7

                                                                      That you consider it valid shows the futility of choosing names to please everybody.

                                                                      The master slave relationship is not the same as the primary secondary relationship, nor the parent child relationship. Sometimes master slave actually describes the subject matter.

                                                                      And sometimes the master copy of some source code should live on the master branch. Many people only commit to master when they are certain of their work, while they use another branch as their main branch. Kind of presumptuous, calling the default branch the main branch, isn’t it.

                                                                  2. 17

                                                                    Sure, but it should hold this back.

                                                                    1. 1

                                                                      Sure, but it should hold this back.

                                                                      Not when there are demonstrably better names that are not, traditionally, associated with one-sided power dynamics, it shouldn’t.

                                                                      If “main” makes you feel less welcome, then there’s something wrong with your capacity for feeling.

                                                                      1. 9

                                                                        Hold on, it’s not possible to win an argument about inclusiveness by saying that the other person is broken. Or even pretend that there is only one way to view things. We have to learn to communicate better and see the other person’s point of view.

                                                                        1. 1

                                                                          No, @yawpitch is quite on-point. This isn’t about “winning an argument”. Those with any decent capacity for nuance, critical thought, and self-reflection will note that “main” draws fewer negative associations than “master”. Those with unconfronted reactionary cultural/emotional anger stemming from the strawman “woke mob” fantasy will come up with a contorted bad-faith “arguments” a such as “the word ‘main’ makes me feel unwelcome”. You gotta call bullshit when you see it.

                                                                          1. 4

                                                                            Maybe. Or it’s also an opportunity to learn. People can have different points of view, and still, be good people. <3

                                                                          2. 0

                                                                            First off, this isn’t an argument about inclusiveness, it’s at best a debate about semantics, and since there’s no cognizable or remotely valid viewpoint that can distinguish “master” in the “traditional” sense being described above from its root association with human bondage, it’s not even a very sensible debate. No such valid viewpoint, with no pretense involved, exists: the word has several long-standing definitional meanings and the one involved here is fundamentally and absolutely inseparable from the notion of master / slave dynamics by which it derives any meaning whatsoever to the cause of version control. To try and empathize with any countering point of view is absurd … it’s a word, its meaning is simply a fact, and that fact is not open to meaningful and intellectually honest dispute, without descending into the interminable Hell of “alternative facts”.

                                                                            The semantic dispute thus settled the only question, then, is is the community, right now, okay with that semantic baggage being carried further forward, or is the community prepared to make a break from that historical association? Personally I’d say that’s also a moot point … it’s been de facto settled by Github and the very reason the patch detailed above exists is because the network pressures of the downstream are driving an upstream change because YES the community is ready to not be exclusive any longer.

                                                                            What remains is for individuals who are not comfortable with that linguistic and cultural evolution to, frankly, grow up and un-break themselves of their lack of empathy … the point of view of the “tradition” argument has been heard to death, it does not need more empathy heaped upon it.

                                                                            I stand by my point: if you – and I’m using the most generally inclusive meaning of “you” here – feel that you’re somehow more included by “master” and less included by “main” then something is deeply and dangerously flawed with your emotional apparatus. The only colorable arguments against this minor default change are inertial, as in you either don’t want to invest the time required to update existing repos or you don’t want to engage in the effort needed to reprogram some muscle memory for future ones. Those are the available arguments. They’re just not very good ones.

                                                                            1. 7

                                                                              Maybe OP doesn’t know everything you do. Git is being used all over the world, in different types of cultures, and this seems like an American problem at heart. If they feel like this change is being trusted upon them, and on top of that they get vilified when they want to talk about it, it’s not really helpful to generate a common understanding. It doesn’t mean that they are broken, they just have a different context from you.

                                                                              I feel like a better line of discussion would be to give out concrete instances where this word has been a problem. Or actually, even ask why OP feels like they do.

                                                                              1. 4

                                                                                OP made their context quite clear with their phrasing:

                                                                                Master is more precise

                                                                                … only when understood as an explicit reference to master/ slave dynamics …

                                                                                traditional

                                                                                … which is automatically a claim of being “inside” the dominant cultural context …

                                                                                doesn’t break anything

                                                                                … privileges the idea that the status quo isn’t already broken, which it is if you find the master / slave connotation at all problematic …

                                                                                and has no negative connotation in this context

                                                                                … no negative connotation to OP; the phraseology has an extremely negative connotation to me, and I am most certainly not alone: you keep suggesting I need to apply more empathy to someone who’s denying my very existence…

                                                                                or most other contexts.

                                                                                … can someone please enumerate the many and varied contexts in which master / slave has no negative connotation from the perspective of anyone who has been a slave, or whose family history was affected by slavery. I can affirm that I’ve personally got a great many friends in a great many contexts – including well outside of America – who see the problem with “master” as default.

                                                                                I don’t need to understand why OP feels like they do … I need only identify that the feeling itself is unworthy of consideration in the political choice at hand… it is impossible for any rational being that both understands English and is armed with minimal historical context to see “main” as more exclusionary and historically problematic than “master”, hence we need not engage with any such view that happens to be espoused at all, except to point out its obvious and manifest flaws.

                                                                                1. 3

                                                                                  I guess I didn’t get notifications for this continuing discussion. I’m on mobile and also don’t really care to keep this going, but I do want to clarify that I mean more precise in the sense of “master recording” or “master copy”, as in the source of truth from which copies are derived.

                                                                                  I can’t tell if you already read it that way, and believe that usage to itself be derived from slavery, or just think I’m directly defending the master/slave dynamic.

                                                                                  1. 3

                                                                                    Both of those usages — arguably they’re the same usage — rely in their entirety on the master / slave semantic for their meaning. Indeed no semantic value can be extracted from either without knowing that relationship exists, at least implicitly. A replication master makes no sense without duplication slaves, and that’s exactly what we called them in the bygone days of glass / nickel masters in optical pressing and tape in replication farms. Even before tape and indeed wax cylinders the master mold of foundry and pottery days was there to be used to direct the toil of those making exact copies, as it were, slavishly, with no independent freedom allowed in the work. They’re utterly inextricable from the historical institution they took as their model.

                                                                                    As I’ve said before there’s is not now, nor ever can be, any legitimate argument to be made that separates usage in version control from the historical idea of the privileged master and the slave(s) that follow.

                                                                                  2. 0

                                                                                    it is impossible for any rational being that both understands English and is armed with minimal historical context to see “main” as more exclusionary and historically problematic than “master”, hence we need not engage with any such view that happens to be espoused at all, except to point out its obvious and manifest flaws.

                                                                                    I’m totally with you, though based on the extent of some of the involved philosophical gymnastics into symbology, original intent, and sociology on the “other side” thrown in the face of the simple actual sizeable live human community looking to stop promoting “master” I’ve gotta conclude that these folks are ultimately motivated by a certain emotional bias…

                                                                        2. 7

                                                                          In many uses of master/slave in computer related things, it is actually a poor analogy. Often a “master” does all the work with the “slave” sitting idle waiting to step in only if needed, Other terms like prime and replica can be a better fit anyway. parent/child has a connotation of the parent spawning the child which works for, e.g. processes but not in other cases. In the case of git, there isn’t even a corresponding “slave” concept, only “branches” - In my mind, I wouldn’t even connect that use of the term master to slavery, but I’m not American. In any case, the subversion term “trunk” was better to begin with.

                                                                          1. 4

                                                                            Trunk is a good term. I can understand a change to Trunk.

                                                                            In the book 1984, a major plot point is the reduction of language to reduce the complexities of expressable thought. Words meaning only one thing, like master only meaning “of a slave,” is an example of this language reduction.

                                                                            1. 3

                                                                              The master name in git was derived from master/slave terminology, see https://mail.gnome.org/archives/desktop-devel-list/2019-May/msg00066.html

                                                                              The name trunk like in SVN is ok but I still think calling it main is better overall because of it’s shortness and detachment from it’s controversial origin.

                                                                              1. 3

                                                                                Saw, am very not convinced by his sources that it is master slave, even in bitkeeper.

                                                                                Trunk is much better than main. One is descriptive.

                                                                            2. 1

                                                                              Principal/agent makes a lot more sense than parent/child for workflows.

                                                                              1. 2

                                                                                Not bad, certainly makes sense under certain delegation workflow contexts.

                                                                            3. 1

                                                                              Master is not more precise.

                                                                            4. 15

                                                                              As we’ve seen, you can never make people feel welcome–you can only make it more or less costly to join.

                                                                              1. 14

                                                                                the spanish main was the site of centuries of brutal colonialism

                                                                          1. 5

                                                                            I think this article is missing the point of using packers (webpack, parcel) and tree shaking. If you don’t rely on a CDN you can optimize your bundle with only the required code.

                                                                            1. 0

                                                                              Open source drama at its best. Someone get the popcorn! :D

                                                                              1. 5

                                                                                Call me meta, but I’m more interested in seeing how Lobsters handles this story, in comparison with the latest bit of qmail drama posted by a new arrival.

                                                                                1. 2

                                                                                  I flagged this as off-topic as well ;)

                                                                              1. 6

                                                                                Very nice. The shade created by the sun and the day/night cycles are great! :)

                                                                                1. 2

                                                                                  I just noticed the sun moves right to left, meaning it must be in the southern hemisphere, facing North.

                                                                                  1. 3

                                                                                    I don’t think the hemisphere matters.

                                                                                    1. 2

                                                                                      What do you mean exactly? If you’re in the northern hemisphere, you will never see the sun rise, move towards the left, then set. Admittedly, the curve described by this sun in this is not realistic for any location, as it goes far too high in the sky for a situation in which the positions where it rises and sets are so close together.

                                                                                      1. 3

                                                                                        I mean that the sun rises in the east and sets in the west, regardless of the hemisphere. So, right to left when facing north. But I’m probably misunderstanding your comment, sorry. It’s not very important :)

                                                                                        1. 3

                                                                                          So, right to left when facing north.

                                                                                          Yes, it goes right to left when facing north, irrespective of the hemisphere. However, if you are in the northern hemisphere, facing north, the sun goes from right to left behind you, so you can’t see it. When you turn around to be able to see the sun, Left and Right move with you, such that Left is now East and Right is West. The only way to orient yourself such that the sun appear to move from right to left in the northern hemisphere is to turn yourself upside down (or at a minimum, lie on your back). In the virtual aquatic ecosystem, 1. we are not upside down (things fall towards the bottom of the view), and 2. we can see the sun in front of us throughout the day.

                                                                                          1. 2

                                                                                            I understand now :). Right, and great explanations, thanks!

                                                                                            1. 1

                                                                                              If you are in the north, but not very north, you can still look north and see the sun moves right-to-left, right?

                                                                                  1. 17

                                                                                    I really dislike that part: “Like the Chinese firewall, this European internet would block off services that condone or support unlawful conduct from third party countries.”

                                                                                    When you’re writing something and it starts with “Like what they do in China”, you can be sure that it will empede individual liberties and promote censorship…

                                                                                    1. 10

                                                                                      I think they are pointing at that it’s technically possible to firewall a large region. I would guess that this is driven by various recent developments:

                                                                                      1. The success of US and Chinese internet companies compared to EU counterparts.
                                                                                      2. The introduction of the GDPR, which will get more teeth if the EU could actually threaten to block sites that do not comply.
                                                                                      3. The rise of Uber & AirBnB. In some EU countries these companies are operating against EU law. To which their reaction is basically shrug, we’ll just compensate drivers/property owners that get a fine.
                                                                                      4. The rise of Alibaba, which sells products to EU customers without proper safety certification.

                                                                                      Normally, I would be strongly against any kind of internet blockade. But with the disgraceful violations of privacy and pervasive tracking, we (as the EU) should at least consider explore different possibilities to force companies to ‘comply or shutdown’ if they want to do business in the EU but do not want to abide by our privacy laws.

                                                                                      1. 3

                                                                                        I don’t think they’re arguing for a literal “Chinese firewall” in the EU, but are rather observing that one effect of their firewall is that China has developed its own internal tech, which seems to be working quite well for them. This seems like a valid observation to me, and I think you can separate that effect from others such as the censorship.

                                                                                        1. 6

                                                                                          Like the Chinese firewall, this European internet would block off services that condone or support unlawful conduct from third party countries.

                                                                                          That sounds like they’d like to block e.g. services in the US that don’t respect privacy enough.

                                                                                          1. 3

                                                                                            I think you can separate that effect from others such as the censorship.

                                                                                            I don’t think that this sort of thing would end up in censorship territory (though the EU has certain… interesting opinions on copyright that wouldn’t be great to export), but I think it’s hard to underestimate all the collateral damage this would cause.

                                                                                            Imagine you’re travelling to Europe from abroad. Will you even be able to access stuff from your home country? It might get completely isolated because the EU strategy might end up being “Register your presence with us if you want routing here”.

                                                                                            It just feels like the sort of thing that would bring the net back many steps in terms of an amazing communication tool.

                                                                                            I agree on the EU’s reasonable interest in stopping Uber/AirBnB/Alibaba types. But we already have ways of dealing with this kind of stuff.

                                                                                            Examples:

                                                                                            • customs can just stop accepting stuff shipped from these kinds of services
                                                                                            • EU can pressure payments processors to stop allowing payments to these kinds of services
                                                                                            • Airbnb in particular, you could just look at all the listings and bulk fine everyone.
                                                                                            • Just DNS filter?

                                                                                            “Let’s build out our own infra” (which isn’t really all of the nuance of the PDF) just feels like a solution that’s come up by people wanting to sell a bunch of infra to the EU.

                                                                                            1. 3

                                                                                              Yeah, that’s reasonable. I’m not so sure what to think about any of this, I never really considered this idea before and don’t feel like I’ve thought about it enough and heard enough opinions about it to really form a good coherent opinion on it.

                                                                                              But “it will lead to Chinese censorship” doesn’t strike me as a very good argument.

                                                                                          2. 2

                                                                                            Lots of praise for WeChat on page 17:

                                                                                            WeChat lets users pay for their shopping at vending machines, public transport and the ever-p r esent street vendors. Payment is made easy by using systems such as QR codes or mini-pr o gr a mmes (see Figure 7). Doctor’s appointments can be made through WeChat just as well as job applications. Wh at’s more, WeChat’s operator Tencent Holdings Ltd. has no plans to stop just yet. According to a 2018 press release, WeChat plans to be part of the user’s daily life – from morning to night – with no gaps in between (Sapra, 2019). And they are on the right track to getting there with WeChat events starting to include a virtual ID in their app, used for social security by the Chinese government. In a nutshell, life in China is basically impossible without using WeChat (Sapra, 2019).

                                                                                            At attempt at a joke: One wonders if WeChat server locations are listed as a target option in the surely super secret New SIOP.

                                                                                          1. 3

                                                                                            Congrats to all the people involved!

                                                                                            1. 9

                                                                                              It’s s really wordy article for no real reason: took about 3 paragraphs to just state “developers don’t like reviewing large PRs”.

                                                                                              1. 5

                                                                                                Also, readers don’t like wall of texts that span 25 screens… ^^ This guy must be writing java entreprise code :p

                                                                                                1. 0

                                                                                                  I agree it was perhaps too wordy but that TL;DR doesn’t do it justice at all.

                                                                                                1. 1

                                                                                                  yep, openbsd with opensmtpd \o/ (and mutt as client)

                                                                                                  1. 18

                                                                                                    And.. one can upgrade from 6.5 using sysupgrade

                                                                                                    1. 4

                                                                                                      Sooooo nice!

                                                                                                      1. 2

                                                                                                        I still haven’t upgraded from 6.3 because the entire opensmtpd configuration language changed quite a bit. Maybe with 6.6 I can find some better tutorials out there, but I still need to build out a full test environment for it. E-mail is not something I want to fuck up :-P

                                                                                                        1. 3

                                                                                                          Yeah I had a lot of problems with that. Took me awhile to get back to a working configuration and I made a few mistakes! As my configuration is pretty simple I probably would have been better just starting from scratch and reading the manpage without any prior assumptions than trying to adapt what I had.

                                                                                                            1. 1

                                                                                                              Wow .. that’s .. long .. gotta skip way down to the code.

                                                                                                              I mean .. I’d rather just have a tutorial that tells me how to convert my old config to the new config. Like here’s the ansible template for my old one:

                                                                                                              https://github.com/sumdog/bee2/blob/master/ansible/roles/openbsd-email/templates/smtpd.conf.j2

                                                                                                              I don’t think the old one had filter implemented yet. pki and action look mostly the same, but the accept have been replaced by action. I’ve read through the official doc before and got confused and couldn’t find a straight upgrade guide. I’ll probably write one myself whenever I get around to it.

                                                                                                              1. 1

                                                                                                                You can contact the author on twitter, maybe he knows of such a resource. https://twitter.com/PoolpOrg

                                                                                                          1. 3

                                                                                                            Author here. I appreciate this response!

                                                                                                          1. 2

                                                                                                            I’m a little sad that it only talks about flow. The hat tip to Typescript is nice but it would have been nice to title the article “Static Type Checking Javascript with Flow”, or tell the reader a little earlier that this article is exclusively about Flow. Otherwise it was neat enough and still somewhat useful.

                                                                                                            1. 1

                                                                                                              Yep. Also, it seems that Flow has lost the hype war and Typescript is 2.5 times more popular (based on Github stars).