1. 90
  1.  

  2. 18

    So this is one of the situations where GPLv3 would’ve helped?

    1. 12

      It depends what your objections and goals are. If you object to the closed-source fork: yes. But if your primary objection is that Zen goes out of its way to mention it’s a Zig fork and the spreading of FUD: not so much.

      I have the impression that Andrew’s largest objection is to that second point, rather than the closed-source fork as such. One of the interesting parts of the eventloop diff is that all references to Zig issues were removed. I find it hard to believe this has any technical justification, and seems like a deliberate attempt to scrub the Zig legacy from the code. GPL won’t help with that (and nor should it).

      1. 6

        I don’t think so, lots of the criticism I’ve been seeing are related to the guy behind Zen being a bad player in the community and the GPL can’t fix that. Yes, the GPL would make the changes (or lack of changes) visible but I don’t think that the main case here is that Zen made changes people want to incorporate back into Zig and are being prevented due to it being closed source. What appears to be happening is that the company and person behind Zen is sketchy. Or that has been my reading of it.

      2. 13
        1. 9

          Zen’s claims seem sketchy.

          1. “We cannot see a future for Zig where the founder does not allow corporate entities to use and support Zig” — unless I really missed something, there’s nothing in Zig’s licensing or community against that.
          2. OK, they have a point here; I also feel that polymorphism is important. (That was one of several missing things that led me to stop exploring Zig. The other one being lack of a global memory allocator.) But that of course is only a rationale for forking, not for going closed-source.
          3. IANAL, but I know that trademarks are very domain-specific. Would the existing “Zig™” trademarks cover a programming language/compiler? Is “Zen™” any more available?
          4. “we want to prioritize embedded development” — other languages, notably Rust, have been able to accommodate embedded systems without a hard fork. (Not sure if MicroPython / CircuitPython count as forks or not.)
          1. 12

            That entire list just seems like a post-hoc rationalisation of “I don’t like to work with Andrew”. That’s actually fair enough; sometimes people don’t work well together based on different interests, personalities, differences of opinion, etc. but just be honest about it instead of all this FUD.

            1. 4

              zig is already ideal for embedded development. zen has no value-add there other than translating the docs into japanese.

              1. 3

                Maybe they are offering support contracts zig does not?

              2. 4

                “We cannot see a future for Zig where the founder does not allow corporate entities to use and support Zig” — unless I really missed something, there’s nothing in Zig’s licensing or community against that.

                I’m reminded of the old saying, “A lack of imagination on your part does not constitute impossibility on our part.” Taking the premise that Zig doesn’t ‘support corporate entities’ as true (which I do not think is the case) – Just because a company can’t imagine a future for a language that doesn’t support companies doesn’t mean that there is no future.

              3. 5

                Some interesting info over at the orange site too. Apparently Zen/connectFree is trying to register Zig as a trademark?!
                That’s really shady.

                1. 3

                  It reminds me of something similar which happened with Linux a long time ago:

                  The Linux trademark is owned by Linus Torvalds in the U.S.,[2] Germany, the E.U., and Japan for “Computer operating system software to facilitate computer use and operation”. The assignment of the trademark to Torvalds occurred after a lawsuit against attorney William R. Della Croce, Jr., of Boston, who had registered the trademark in the US in September 1995[3] and began in 1996 to send letters to various Linux distributors, demanding ten percent of royalties from sales of Linux products.[4] A petition against Della Croce’s practices was started,[5] and in early 1997, WorkGroup Solutions, Yggdrasil, Linux Journal, Linux International, and Torvalds appealed the original trademark assignment as “fraudulent and obtained under false pretenses”.[5] By November, the case was settled and Torvalds owned the trademark.[3]

                  The lesson is to register the trademark early, before someone else does and begins to use it against you.

                  1. 4

                    The lesson is to register the trademark early, before someone else does and begins to use it against you.

                    It’s not really as simple as that.

                    1. There are a lot of different jurisdictions around the world.
                    2. Registering a trademark is not free (there are generally fees, in addition to the time and knowledge required to do it. For foreign jurisdictions, you may need the services of somebody who speaks the language and understands the legal process to acquire a trademark)

                    So yes, if you have a moderately successful project, it may make sense to trademark the name in your own jurisdiction, and possibly a few other key areas, but it’s by no means something that everyone should do early on, especially for projects which have no idea that they will grow into something big.

                    An alternative lesson from that story would be that registering your trademark early is not that important, because using a name outweighs registering it anyway (though doing both will probably save you a legal battle).

                  2. 2

                    There was some Japanese company (a sort of programming class) that was able to get a trademark on Python and would claim that they were the only ones allowed to do “Python training certification” with it…. really shady stuff when you see this sort of thing going on

                  3. 4

                    Just to be clear, is Zen violating the MIT license here by replacing it with their own license?

                    If so, then at the moment it wouldn’t make a difference if Zig were licensed under the GPL, Zen is currently violating copyright law and Zig could sue. Presumably Zig is not doing so because they don’t think it’s a good use of their time and money, and these public posts warning about Zen’s bad faith actions should achieve most of what they want, i.e. preventing people from getting scammed.

                    Personally I think that A/GPL licenses specifically and copyleft in general deserve more popularity with new projects than they currently enjoy, and I avoid permissive licenses in my own work, but this may not be the time to bring it up.

                    EDIT: According to a random comment on HN, “They are complying, the original Zig license is at the bottom of the file lib/zen/std/LICENSE (complete with “Copyright (c) 2019 Andrew Kelley”). I just downloaded it from the Zen website, and the tarball is dated 2020-09-04.”

                    1. 5

                      The BSD license (some of them anyway, there are a gazillion variants) is actually a bit clearer on this:

                      1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

                      With “retain” it seems to mean more “keep this notice here”, rather than “stuff it somewhere in the project”.

                  4. 12

                    I find the whole Zig / Zen thing super annoying. Zig is MIT licensed meaning closed source forks entirely part of the social contract. There was an apparently a disruptive community member who was banned and that former community member started a fork.

                    THIS IS HOW IT’S SUPPOSED TO WORK!

                    If you want derivative works to be open source then you can chose a license that requires that. If you don’t want any derivative works at all then you can make your project source available with a license that restricts forks, but that’s not open source definitely not free software.

                    I wish Andrew would celebrate the fact that his creation is successful enough to inspire forks rather than obsess about them.

                    1. 26

                      Reading the statement implies that there is no problem with Zen being closed-source code. Seems the foundation Is concerned with false statements used to advocate Zen. Maybe I’m missing more context.

                      1. 3

                        This is exactly how I read it. They address the fork from their side.

                      2. 23

                        https://news.ycombinator.com/item?id=24483162

                        As a Japanese-speaking software engineer

                        Many of my friends didn’t actually know until this statement was made that Zen is a fork of Zig

                        And there you have it. Did you want me to celebrate the fact that people were being tricked?

                        Also check out the license section of Zig’s readme. The law is a blunt weapon and not always the most appropriate tool for the job.

                        1. 19

                          I think the point being made is more that these kind of issues are largely solved by the GPL, which I wholeheartedly agree with - not to say that you deserve the trickery and abuse that’s going on here, which you clearly don’t.

                          However, GPL having fallen by the wayside in recent years for new projects does make things like this kind of inevitable for those projects that use permissive licenses.

                          1. 13

                            GPL being suppressed coincided with the adoption (usurption) of Open Source by corporations. Greed leads to FUD.

                          2. 4

                            The law is a blunt weapon and not always the most appropriate tool for the job.

                            What a great way to put it. I need to save this quote somewhere.

                            It’s also a weapon that seems extremely difficult to wield. As a regular person open source developer, how would you even start an international lawsuit against a license violator?! How much are all the fees? How do these even work? What if the countries are not friendly? What would you even achieve with the lawsuit other than lots of stress for everyone involved?

                            I know there are non-commercial foundations that help with copyleft enforcement, but they probably aren’t going to help every small project ever.

                            1. 3

                              The law is a blunt weapon and not always the most appropriate tool for the job.

                              It is, but it’s also worth highlighting that there’s a big discrepancy between what we expect open source to be, and what the Open Source licenses actually require.

                              1. 4

                                That’s why I’ve stopped contributing to open source.

                              2. 3

                                This may be off topic, but I feel like it’s the only appropriate thing to add to this conversation: Thanks for your work on Zig, it’s super neat!

                                1. 4

                                  If you think it’s important for users of your code to know your name and/or the name you chose for the software you should choose a license that embodies that value. The original BSD license is a popular example. The BSD copyright owners chose to change the license to remove that requirement and now people who fork their code don’t mention them at all. Many macOS users have no idea that much of the system they’re using is derived from BSD Unix. Maybe that’s good, maybe that’s bad, but it’s the intended behavior.

                                  1. 8

                                    If you think it’s important for users of your code to know your name and/or the name you chose for the software you should choose a license that embodies that value.

                                    Not at all. This presupposes that you’re comfortable using the legal system to enforce what you think is important. I can think it’s important not to plagiarize work (for example) while simultaneously putting my code into the public domain, which legally allows plagiarism simply because I don’t think the legal system is the right way to solve those kinds of problems. Laws != Ethics.

                                    1. 4

                                      Yeah, but you can’t enforce ethics.

                                      So when someone comes across a project that is licensed like this, and (rightfully) essentially does whatever they want with it, They have the legal high ground.

                                      So the best you can do at that point is public shame them. It just sounds like people want their cake and eat it too. You wanna use a permissive license to get that sweet wide adoption? Great, but accept the risks, or start with copyleft.

                                      1. 13

                                        So the best you can do at that point is public shame them

                                        bruh

                                        1. 6

                                          I feel like you read my comment, ignored it, and just decided to say, “use laws or STFU and stop complaining.” That’s a lame response.

                                          So the best you can do at that point is public shame them.

                                          Yeah that is one method. What do you think is happening here?

                                          1. 1

                                            nothing is happening here… I doubt Zen feels shamed

                                            1. 5

                                              Zen feeling shamed is not necessary for ostracization tactics to be effective.

                                        2. 3

                                          It’s not plagiarism to fork a MIT licensed project. It’s not unethical to take a work whose authors have explicitly asked not to be credited, make changes and not credit them. MIT licensed its software like this so that proprietary Unix vendors could take X11 and fork it. When you start a project and choose a license like this you’re making a clear statement about what your expectations are.

                                          1. 8

                                            Plagiarism is the representation of another author’s language, thoughts, ideas, or expressions as one’s own original work. This is absolutely plagiarism. It may be legal (I’m not convinced; it’s probably illegal in Europe), but it’s definitely unethical.

                                            Being on the right side of the law but the wrong side of your friends sounds like something only a real loser would celebrate.

                                            1. 3

                                              Okay, then you’re making the argument that Laws == Ethics. Why not just come out and say it?

                                              It’s not unethical to take a work whose authors have explicitly asked not to be credited, make changes and not credit them.

                                              This is disingenuous because that’s not the argument I’m making. A license is about what’s lawful. So the only thing a public domain (for example) declaration says is that “I will not use the legal system against you if you do bad things like plagiarize.” That is nowhere near saying “I’ve explicitly asked not to be given credit.”

                                      2. 7

                                        The license, sure, but the issue here is more ethics than legal. The article didn’t even once mention legality, but was focused on the ethics of what is going on, and rightfully warning other developers so they don’t get caught the same way others have.

                                      3. 3

                                        I think this is less a compilers thing and more of a law thing. And programming is just redundant.

                                        1. 2

                                          Good idea, I changed the tags to law.

                                          1. 5

                                            Why law? Zen seems to be following the letter and the spirit of Zig’s MIT license.

                                            1. 5

                                              The law tag encompasses “Law, patents, and licensing”.

                                              1. 3

                                                Dude, stop. You are basically starting arguments based on a misunderstanding of the linked article.

                                          2. 2

                                            Eh, people can buy crappy off brands if they want. Maybe Zig just needs to get a customer list and try to convince them to migrate to the original. Maybe the japanese customers are willing to pay for support contracts that zig does not offer.

                                            1. 2

                                              Woah. This whole situation is nasty. I hope that Zig project will recover from this mess.

                                              1. 2

                                                Will this improve the reader’s next program?

                                                No.

                                                Will it deepen their understanding of their last program?

                                                No.

                                                Will it be more interesting in five or ten years?

                                                No, no, and no.

                                                Some things that are off-topic […]: entrepreneurship, management, news about companies that employ a lot of programmers, investing, world events, anthropology, self-help, personal productivity systems, last-resort customer service requests via public shaming, “I wanted to see what this site’s amazing users think about this off-topic thing”, and defining the single morally correct economic and political system for the entire world when we can’t even settle tabs vs. spaces.

                                                But you know what will attract votes?

                                                Rage, rage, FUCKING rage!

                                                But since we’re all here, sorry @andrewrk. What a shitty situation.

                                                1. 5

                                                  No, no, and no.

                                                  In five and ten years we will know how this ends. It will be either a project management or licensing lesson. Either way right now it’s a lesson in knowing where your code originates and finishes.

                                                  1. 1

                                                    Rage, rage, FUCKING rage!

                                                    Dear God, I didn’t think it was possible for animation to look that ugly.

                                                  2. 1

                                                    is this another case of the old “open source licenses are just free work for corporations willing to exploit it”?

                                                    1. [Comment from banned user removed]

                                                      1. 1

                                                        The statement is indeed new (posted yesterday), the situation has unfortunately been around for quite a while.

                                                      2. 0

                                                        No one is dumb enough to use some twistedly licensed language. There are too many good ones out there which are free-licensed. Who the hell is going to use this Zen shit?

                                                        1. 6

                                                          Apparently a reasonable number of Japanese people. Proprietary languages are more popular outside of mainstream software engineering and/or the western world

                                                          1. 3

                                                            The only closed-source compilers I know of are for highly popular languages, C/C++. (I think the D compiler used to be closed-source? But I don’t know if it still is so I’m not counting it.)

                                                            It seems like it’d be very hard for a newish language to gain traction as a commercial product, given the massive chicken/egg problem.

                                                            I’m guessing the attention Zen is getting in Japan may have more to do with Japanese-language docs and marketing. Which is something other language projects could emulate, of course.

                                                            1. 3

                                                              DMD, the reference D compiler, is now fully licensed under the boost software license. This only happened within the last two years maybe (?) so you’re forgiven for not knowing.

                                                            2. 2

                                                              You say mainstream but you mean populist: there’s more proprietary software being developed than open source, even if there’s more people using open source than proprietary.

                                                              1. 1

                                                                Sure, but they’re using closed-source tooling? Sounds alien to me. Why would you?

                                                                1. 3

                                                                  It’s more common than you think: e.g. When your customers have an iPhone, or you sell consulting for Salesforce, it’s clearly inevitable, but even just consider how many Visual Studio users there are you have to appreciate just how many more people are using closed-source tooling (for something) than open-source?

                                                                  1. 1

                                                                    Seems obvious now in hindsight. Fair point.