samspenc 9 months ago

JFYI for anyone who may not know, the donor is the co-founder of HashiCorp which was acquired by IBM earlier this year for $6B https://www.hashicorp.com/blog/hashicorp-joins-ibm

He wrote about the donation on his own blog as well https://mitchellh.com/writing/zig-donation

  • steveBK123 9 months ago

    Worth noting the merger is announced but neither (edit: regulatory) approved nor completed.

mahmoudimus 9 months ago

Thank you, Mitchell Hashimoto. I have always wondered why folks who made their fortunes of technology do not give back consistently. You are part of the few folks such as Jan Koum, Gabriel Weinberg and I'm sure there others who I have failed to mentioned. Thank you.

  • steveBK123 9 months ago

    Yeah agreed. You basically see small time donations, or boomers once they have their $50B+ pile of money pledging to give it away at death. Not a lot of big incremental giving in between by $100M-$1B class.

    I mean Gates is doing good work on poverty & global health for sure, but hes quite the exception.

    You don't see the durable institutions like new universities being setup like after the gilded age. Not sure if its a tax code thing or what.

    One thought I've had, living in NYC, is that there are just businesses structured to take every incremental dollar out of you whether you are worth $0/$100K/$100M/$100B now. $100M condos in 5 different cities, $1M supercars, private jets, blade chopper from Manhattan to the jet, just so many ways to part fools from their cash.

    For context, David Rockefeller's old NYC townhouse, which he lived in for 70 years, was for sale, post-renovation, for $50M or so. Rockefeller name synonymous with old money wealth.

    These days though, a $50M apartment might not even crack the top 10 sales annually in 2020s NYC. New money is also hot money by comparison.. I really do think our vintage of wealthy are that much more rapacious.

    • kibibu 9 months ago

      In absolute value this is a fantastic contribution to support a very valuable project, and anybody who donates to Zig should be commended. It's one of a handful of projects that has a real chance of meaningfully pushing back against software bloat.

      I do find it sobering to look at relative contribution, if for no other reason than to remind myself of the scales of money some are working with, and the out sized impact of having wealth. A $300k donation from a billionaire is loosely equivalent to somebody with $100k donating $30 (and likely has even less impact on quality of life!). We wouldn't have a hacker news article about such an event.

      I should probably just shut up and go donate to Zig.

      • dlisboa 9 months ago

        300k is 300k and the people receiving it won’t care if that’s chump change to the donor. Probably one of or the biggest donations the zigs foundation ever got. I don’t think it’s worth it making equivalences, I just commend it.

        • kibibu 9 months ago

          Of course, and I think it's fabulous. It's really just me being morose about how billionaires can throw this kind of money around in the same way a regular person might order a couple of pizzas.

      • zdragnar 9 months ago

        There comes a certain point at which more money doesn't (short term) benefit the project much, and this says nothing about the (arguably) more worthy causes Hashimoto may have donated to.

      • randomdata 9 months ago

        > We wouldn't have a hacker news article about such an event.

        If it were someone famous I bet we would, although granted it is unlikely that someone famous only has $100k.

        We just don't like each other that much.

    • vineyardmike 9 months ago

      > You don't see the durable institutions like new universities being setup like after the gilded age. Not sure if it’s a tax code thing or what.

      For a while, America was much more aware that you could just kill the rich like you killed kings. The rich gave away more and did more for society as a way of washing their reputation and proving they shouldn’t be killed in an uprising. Today, global society has become much more legally certain around perceptions of property rights and entitlement of the rich to their wealth.

      If we saw genuine movements in America to (for example) tax wealth above 1B at like a 99% tax rate, I bet you’d suddenly see a few new well endowed universities and concert halls and similar.

      Instead today, the wealthy are much more interested in showing off their reputation by buying media companies (WashPo, twitter, etc) with influence or by building their vision of the future in a commercial context - look at Elon musk and bezos going to space or Bryan Johnson trying to live forever and selling vitamins along the way.

      When we do get billionaires donating, and they become unpopular, people try to penalize the institutions. Like the Zuckerberg general hospital getting petitioned to change their name.

      • willcipriano 9 months ago

        The rich of today lack taste, they aren't funding the opera beacuse they watch marvel movies instead.

        In the past they were well read, educated and had class. They would dress better, not wearing $1000 sneakers and designer sweatpants but tailored suits and Italian shoes. Talk better due to years of study. The women would walk around with books on their heads to learn to glide around the room ethereally.

        It doesn't sting as much when the guy who is richer than you is more cultured and put together. When he's an idiot with a mustard stain on his shirt just like you it's unbearable.

        • steveBK123 9 months ago

          Yes maybe it was a class thing.

          It's just astonishing how many universities / institutes were founded from ~1800-1900ish by rich industrialists to varying degrees - Vanderbilt, Carnegie Mellon, Drexel, U of Chicago, Stanford, Johns Hopkins, Cornell, WPI, RPI, NYU, Purdue, CalTech, . (Some of these are sort of public-private partnership "land grants")

          Maybe it's also a change in tax policy or relative cost of capital vs labor (universities are now expensive to operate due to their staff, not the buildings/land).

          Meanwhile the only schools you see being founded in the last 30 years are scam for-profits / virtual universities / diploma mills. One of these scams were even run by one of our presidential candidates.

          • willcipriano 9 months ago

            The work of Vermeer was largely brought to the world by the van Ruijven family.

            Henry Wriothesley gave us Shakespeare.

            Archduke Rudolph allowed Beethoven to echo down the ages.

            Bezos has a really big boat that requires bridges to be dismantled to move it.

            The wealthy of the past were a different caliber of people. Maybe the simplicity of life kept them more grounded?

            • steveBK123 9 months ago

              Yeah that was my point upthread - I think there are just more businesses selling goods to every level of billionaire now .. like the consumer culture goes all the way up to the $100B level. Kind of a weird flattening of American culture.

              So they can buy bigger boats/homes/jets/etc rather than found a university or fund the arts...

      • steveBK123 9 months ago

        Agreed! I think that's what I was getting at with historical differences in tax policy. It's interesting some of the former gilded age estates in the northeast that have become public parks of one form or another, for similar reasons.

        > When we do get billionaires donating, and they become unpopular, people try to penalize the institutions. Like the Zuckerberg general hospital getting petitioned to change their name.

        To me this always seemed like broken brain syndrome. If you don't like some rich guy, the best possible outcome is that some public good extracts wealth from him that taxes have failed to do. Would we be better off if he kept the money? These people get too hung up on letting the perfect (billionaires shouldn't exist!) get in the way of the good (billionaire funding a hospital).

        • carapace 9 months ago

          Funding a hospital is fine, A-Okay. Putting your name on it is crass.

          It's been the "General Hospital" for my entire life and now I'm supposed to call it "Zuckerberg General Hospital"? This from the guy that's feudalizing Kauai. Or should we call it Zuckerberg-Kauai?

          Yeah I'm being a bit churlish, but c'mon. We don't have to worship them? Let's tax them already and get on with fixing the climate etc.

          • vineyardmike 9 months ago

            I’m Ancient Greece they used to name platoons and battleships over the rich who were taxed to pay for it. They’d even announce whose battalion was the winner of the battle to give them a publicity boost. They’d even announce rich would compete to pay more taxes to be the one to show off.

            I’m not saying that hospitals should exclusively be funding by billionaires honoring their doctor wives who used to work at said hospital, but it’s a pretty innocent gesture.

            • carapace 9 months ago

              We have come a long <EXPLETIVE DELETED> way from ancient Greece.

              Here's what we should be doing: free hospitals.

              > Sri Sathya Sai Institute of Higher Medical Sciences aims to provide free medical care to the sick and ailing with the dedication, commitment, love and the best of skills, so that they will be cured in body, mind and spirit.

              https://sssihms.org/

          • steveBK123 9 months ago

            This is not new or unique. I'm not worshipping them. Their vanity doesn't hurt my ego.

            I had the misfortune of being in 2 different hospitals in the last 18 months.

            One had its ER named after a hedge fund guy & his (now ex) wife. The other had an entire building named after the deceased wife of another hedge fund guy.

            Didn't really bother me. Good for the guy honoring his wife, even. Probably some sentimental value in that she had been treated there.

            I think in the rare event billionaires actually put 8+ figures into social goods, I'm not going to squabble over the name on the label. I think anything that incentivizes the rich to give to social goods is fine with me.

            Better allocation of capital than another yacht or putting their name in another art museum wing (look around next time you are at one..).

            • carapace 9 months ago

              > I think anything that incentivizes the rich to give to social goods is fine with me.

              You put your finger on the crux of the problem.

              "The ends justify the means."? All motivations are equal? Vanity is as good as charity as long as the hospital stands?

Sphax 9 months ago

That’s great to see, I’ve been using zig on and off for the past 3 years, I really like the language so I’m happy to see it gaining even more traction

ww520 9 months ago

This is great news. Zig is very promising. I got huge joy working with it. Good it got the recognition.

popularonion 9 months ago

I read https://ziglang.org/learn/why_zig_rust_d_cpp/ but I’m still not clear on the endgame for this language. Is the plan to kill both Rust and Go?

  • AndyKelley 9 months ago

    Endgame: After creating a language that encourages programmers to make robust and optimal software, using a toolchain that exemplifies these ideals by providing an order of magnitude faster development iteration speed, point this energy towards the ecosystem, with a focus on our core principle of prioritizing the needs of end users. Building upon this rich ecosystem of high quality software, create and maintain free, libre, and open-source applications that outcompete proprietary versions. I want to see the next Blender, the next Postgresql, the next Linux. This is my vision.

    Mitchell's Ghostty project is a perfect example of this movement. At least, it will be when it is open sourced.

    • rc00 9 months ago

      > I want to see the next Blender, the next Postgresql, the next Linux. This is my vision.

      Do you think it makes sense to augment these existing (and successful) open source projects with Zig (language and/or toolchain)? Or should something grassroots and written primarily in Zig be their eventual successor?

      • samatman 9 months ago

        This is one of the shining features of the language: either of these is a viable option. Zig is a great way to build C projects, with native cross-compiling, and the semantics make it straightforward to supply a C API for Zig libraries to add to existing code in C. Depending on the specifics, it can make sense for a C codebase to switch to Zig's build system just for excellent cross compilation, without writing anything in Zig.

        I think once Zig stops being a moving target, we'll see an increasing number of C codebases writing some of the new code in Zig, moving over to the build system, and taking it from there. There are a lot of decisions which make this easy. As an example, idiomatic Zig code which allocates memory receives an Allocator, where C uses malloc and free. So there's a C allocator, which provides the Allocator interface to malloc and free, meaning Zig code can create objects and pass the memory to C, which can free it later.

        There's a lot of C code out there which is working just fine, and if it ain't broke, no need to fix it. But if it's easy to do new work in a nicer language (to my taste, Zig is definitely that), why not? Then maybe rewrite some preprocessor-heavy C code using comptime.

        The main thing holding this back (though it's already happening) is that Zig is pre-1.0. That imposes a maintenance burden which not everyone is willing to take on. But that won't last forever.

      • AndyKelley 9 months ago

        Now that you mention it I forgot an important one! I want to see the next VLC. And in fact J-B has mentioned on IRC that he would be interested to see contributions to the project using Zig.

      • geon 9 months ago

        I interpreted it as examples of excellent open source software that Andy wants to see more of. Not that those projects should be replaced.

        Specifically, those are applications that are arguably better than their proprietary alternatives.

        Perhaps we can se a

        * DAW

        * Photoshop alternative (no, gimp was never it)

        * Video editor

        • rc00 9 months ago

          > I interpreted it as examples of excellent open source software that Andy wants to see more of. Not that those projects should be replaced.

          Thank you.

      • zdragnar 9 months ago

        Why contribute to a monopoly when you can lay the foundation for greener grass for more competitors?

        There's arguments both ways; what it really boils down to is what you value.

    • zozbot234 9 months ago

      > ... I want to see the next Blender, the next Postgresql, the next Linux. This is my vision.

      That's a really nice thought. Maybe instead of "Move fast and break things" we can have "Move Zig for great justice."

      • rc00 9 months ago

        I much prefer the pattern I've noticed with the recent generation of Go projects. What I mean is that I find myself more and more often going to a project's repository to check for an issue or open a pull request, only to find that it is written in Go. After the initial hype cycle, Go silently started being the engine many useful tools were written in. While I understand that Zig needs to have some level of getting the word out early on, ultimately having great projects arrive that are written in Zig (that don't need a "written in Zig" tag line as a sort of marketing gimmick) would be the best statement. This pattern I've observed with Go holds true for projects written in TypeScript, Python, and even C as well but Go is the more recent entry.

        Effectively, less focus on slogans and more on great projects that solve actual problems. Sometimes moving in silence can speak volumes. (In chess, there's a saying: "Move in silence. Only speak when it's time to say, 'Checkmate.'")

        But your sentiment was great! :D

        • pjmlp 9 months ago

          I rather love three specific projects that are rather vocal about Go actually.

          TamaGo, TinyGo and the Go compiler toolchain itself.

          As they are all good examples regarding Go's suitability for systems programming, regardless of the usual discussion of what is systems programming about.

          • rc00 9 months ago

            These are great but none of them would be considered "recent generation" for this scope and it actually highlights the point rather well. Those projects started before this resurgence in Go and the first two are likely branding artifacts of the Go vs Rust period that the open source software engineering field was in at the time.

            A good example of what I mean is a project like Ollama. If you look at the repository's main page, the only hints that it is written in Go are in the file tree, the GitHub language graph, and the topic labels. This is a project that was started in 2023 and exemplifies the lack of necessity to brand the project with "written in Go" likely because Go has really taken hold in CLI application development. (This could have easily been called Gollama. :D)

  • kristoff_it 9 months ago

    We don't have VC money so the only endgame is to gift Zig to people who happen to find it an effective tool, so that they can make more software you can love.

  • rgrmrts 9 months ago

    No, the plan is to build a simple general purpose language. Lots of folks already enjoy using Zig, and not every language has to be in direct competition with others.

  • lenkite 9 months ago

    I think Zig is definitely an alternative for programmers who are too dumb to grok idiomatic Rust - sadly I am one of them. Go is more meant for middleware and services programming and is a simple, consistent language that won't go away as it has now been enterprise adopted.

  • skywhopper 9 months ago

    Why would it need to kill anything? It’s enough to be useful, imo.

    • infamouscow 9 months ago

      [flagged]

      • Ar-Curunir 9 months ago

        Yes, Rust which is under consideration as the first ever non-C language in the kernel, has very little real-world respect.

        JFC, I can get that sometimes Rust folks can be obnoxious and overbearing, but IME it's the "never-rust" crowd that are more obnoxious.

        • randomdata 9 months ago

          To be fair, he said the Rust community has little real-world respect. Linux considering the inclusion of Rust on technical merit is unrelated to the bunch of yahoos who have made a certain technology their identity.

          • Ar-Curunir 9 months ago

            I have a hard time believing that as well. What is the definition of community? Is it the RIIR fanboys? Is it /r/rust? Is it users.rust-lang.org?

            Each of these subcommunities is quite sizable, and the last two definitely make an effort to squash RIIR-type overzealotry.

            If you're still going to define the Rust community by the latter, it would be fair game to define the C/C++ community by the very vocal people who insist that there's nothing wrong with the lack of memory-safety in those languages.

            • randomdata 9 months ago

              > Is it the RIIR fanboys? Is it /r/rust? Is it users.rust-lang.org?

              Does it matter? Which one of those do you think has the respect of the real world? I'd say none of them. Frankly, I have never heard of these communities (if we are to call them that), and if I had to guess I'd say their only claim to fame is writing silly comments on the internet, which certainly doesn't garner respect even on the internet, let alone in the real world.

              > the last two definitely make an effort to squash RIIR-type overzealotry.

              A further indication of not having respect. "Quiet you, you're making me look bad" is not something someone who already has respect is concerned with. Maybe someone seeking respect.

              • talldayo 9 months ago

                > Which one of those do you think has the respect of the real world?

                Judging by the direction of C++ apologists these days - probably the people that promote Rust as a better LLVM-compiled language than it's alternatives? Renouncing them would kinda mean renouncing the concept of IR as a whole, which coincidentally seems to be the saving grace of the C programming language too. Without intermediate representation, both languages are unfit for commercial or optimization-sensitive applications.

                The entire world of compiled languages has always been a ravenous and ego-fuelled madhouse. This recent attempt to slough off the discourse onto the Rust community is stupid, because if we dig down to the compiler level we're literally arguing over semantics. If you wouldn't call LLVM or Valgrind advocates "overzealous" then you probably don't have a rational reason to say it to Rust advocates either. And I just say that as a guy who wants my kernel to not suck balls.

          • infamouscow 9 months ago

            You've precisely pinpointed the nuance that seems to elude so many: the distinction between the technical merits of Rust and the often overzealous antics of its most ardent adherents.

            It's amusing how some conflate corporate adoption with universal admiration for a community's demeanor. Perhaps if more could separate the tool from its torchbearers, we'd have fewer misguided defenses and more meaningful discourse.

        • pjmlp 9 months ago

          Meanwhile it is already shipping on Android Linux regardless of upstream, while Microsoft ships it on Windows, is making use of TockOS for firmware like on Pluton security CPU.

          If Linux upstream doesn't care, it is their loss.

      • throwawaymaths 9 months ago

        This is wrong. There is a lot of respect for rust, being used by Microsoft, Google, etc. (and i'd argue its a bad thing because it's stifling innovation and sucking up a lot of air for people who want temporal memory safety without all the... technical baggage that rust cones with)

        • pjmlp 9 months ago

          Well that is something you definitely don't get with Zig, unless using runtime analysis just like C and C++ have been doing for decades.

          Use after free is a reality in Zig.

          • samatman 9 months ago

            This understates what Zig has accomplished. The GeneralPurposeAllocator used in Debug or ReleaseSafe modes will detect use-after-free, double-free, and memory leaks. This isn't a second tool and a bunch of flags which you have to set up and use, it's literally the default choice for memory allocation.

            Zig also has bounds checking, and is null safe: these are important ingredients in spacial and temporal memory safety, respectively. The bounds checks can be turned off, but length is part of an array type, and slices include the runtime length, so it's still doing much better than the classic degrade-to-pointer you get with C (C++ doesn't use arrays much but it shares the problem in a more complex way). Runtime safety can be turned on and off on a per-block basis, which in the right hands gives fine-grained control.

            Which isn't to say you're wrong: in Zig, you manage memory, and that means that memory bugs are not only possible, but they will happen and must be found and corrected in testing. But saying it's "just like" C and C++ is pushing it imho.

            Zig is aiming to make memory bugs as easy or hard to detect as ordinary logic bugs, the kind of thing which it's tractable to detect and correct for with rigorous testing. It also has much better support for arenas than any other language, since allocators are explicitly passed: this can conglomerate potential memory bugs into one point in a program's execution. There are more features like this than I can feasibly fit into a Hacker News post.

            Saying that Zig is not a memory-safe language is just correct. But it's possible to write memory-safe code in Zig, to say otherwise would be like claiming that you can't traverse a tree in Python because the language won't help the traversal code be bug-free by construction.

            The leading example is TigerBeetle, which chose an architecture which statically allocates all memory on load. This prohibits any temporal memory safety problems, leaving only spacial memory bugs as an option. TigerBeetle insists on no bugs at all, and is willing to do the enormous amount of testing which is necessary to get any amount of confidence that the goal is accomplished.

            There's a place for a language with manual memory management, which instead focuses on easing the extreme pain and pointless difficulty of writing memory-correct code in C. Zig is doing a great job of becoming that language.

            • pjmlp 9 months ago

              That was already achieved in 1978 with Modula-2, or 1983 with Ada, and I am not even bothering to list others, we should do better in 2024.

              But I know, those curly brackets make all the difference.

          • throwawaymaths 9 months ago

            [flagged]

            • pjmlp 9 months ago

              Zig is far from being as safe as Ada.

              • samatman 9 months ago

                It would be great if you could be a specific as possible about the ways in which Ada is more memory-safe, or otherwise-safe, than Zig.

                The language isn't 1.0 yet and is willing to learn from other languages.

                • pjmlp 9 months ago

                  Lets start with controlled types (RAII), generics, type driven programming, tasks and monitors for concurrency and parallel programming, certification profiles for high integrity computing (where people die when bugs happen), formal proofs in the type system, contracts.

          • vkazanov 9 months ago

            Tbh, use after free was never a big problem for me (in old school C).

            Random integer promotion rules, weird puzzle-like type declaration rules, the macro mess, the crazy WG14 reasoning in general.

            No, use after free was NEVER a problem.

            So Zig solves problems I had with the language instead of trying to force non-problem solutions on me.

            • pjmlp 9 months ago

              Security teams and governments are of a different opinion.

              • vkazanov 9 months ago

                My point is not that use-after-free or other resource allocation problems do not exist. The point is that in vanilla C any solution one might come up with is too fragile. Reasonable patterns require a very, very steady hand to work (which means it doesn't scale).

                C++ came up with a few consistent language-level RAII-based solutions to the problem. Rust came up with a single big consistent language-level approach. Both Rust and C++ insist on using it in all cases.

                What Zig does, and which I like, is that it refocuses the language on tools that make it easy to codify the right thing without making it a cornerstone of the language itself. But without introducing the kind of complexity C++ (and Rust to an extent) is famous for.

                • pjmlp 9 months ago

                  At its core, it takes the Modula-2 type system from 1978 and makes is appealing to C devs, with sprinkles of compile time programming on top, not as powerful as Lisp macros.

                  Much better than raw C, but still it leaves things to be desired in the context of safe systems programming.

                  • vkazanov 9 months ago

                    Well, Rust makes one BIG bet, and then keeps adding everything else, just like C++ keeps doing.

                    The thing is: people don't want everything.

                    For the kind of things that are expected to be build in C and C-inspired languages it just doesn't make sense to have Lisp-like macros, or 2 flavours of macros like in Rust, or the accidental kind of metaprogramming C++ is famous for.

                    Comptime does the job just fine here, replacing the unpredictable macro mess.

                    • pjmlp 9 months ago

                      Waiting for comptime debuggers, alongside memory quarantine analysers....as they will surely come up if Zig ever gets wide adoption.

  • ksec 9 months ago

    I don't remember Java ever had an endgame during the late 90s or early 00s. There were certainly a lot of ambitious. But on the whole we know or assumed about its ( JVM ) limitations.

    There were also languages before or in between. But I dont record any one of them ever had an End Game plan. This phenomenon is entirely new and doesn't exist until certain language's supporter came out. And it has now somewhat popularised by it.

  • zozbot234 9 months ago

    I just asked my local AI chatbot, and they said that this is the endgame for Zig:

      Congratulation !!
      A.D.2111
      All bases of Rust were destroyed.
      It seems to be peaceful.
      But it is incorrect.
      Rust is still alive. Zig must fight against Rust again
      And down with them completely!
      Good luck.