1. 44
    1. 29

      I’m surprised I couldn’t find a description of Ares’ goals. Like is it for fun, or for a specific use case, or to explore an idea, or simplify a design? I have zero background in OS dev, so it’s possible the design makes it obvious to the initiated.

      I did some searching and the end of Drew’s update blog post seems to say it was originally an attempt at proving out Hare but has become more of a fun-time hobby. For some reason I’m used to projects like this having a manifesto attached. If it is mainly for fun/exploration then that’s really awesome! The world could use more play.

      1. 7

        Sometimes engineers are more enthusiastic about building the thing than talking about the thing. :D

        1. 18

          Drew might have been burned by the flames that seem to erupt whenever his stuff is discussed. Keeping it quiet is understandable.

    2. 21

      Yeah I mean, unfortunate. I said this when Hare came out - more memory unsafe systems is not something the world needs. Hare doesn’t really offer anything compelling for safety - it aims to be safer than C (a low bar) but it’s not replacing C code, it’s being used to build new systems.

      But whatever, hope they’re at least having fun building the thing.

      1. [Comment removed by author]

    3. 23

      My reactions:

      • oh it looks pretty neat
      • oh dear it’s written by drew devault
      • oh dear it’s written in Hare
      • Well I guess this will keep him occupied on bootstrapping systems for the next 20 years or so! (I don’t have any particular beef with ddevault that hasn’t already been hashed out, but it’s interesting to watch the trajectory of his projects go ever deeper into solipsism.)

      That said, the actual technology seems solid but not particularly novel, from what little is actually written there. Message-passing microkernel based on seL4, capability-based access control, etc. Early days for it yet.

      1. 11

        This is at risk of devolving into a flame war but I’ve seen a lot of people say Drew is…objectionable?…and I don’t know why. What little I’ve read about Hare I like, for example. I would like to be informed, but for my own mental health I’ve stopped meeting my heroes.

        (I’m hoping it’s not a Io or Jai situation, where these beautiful programming languages are marred by their creators’ just…awful stances on things.)

        1. 31

          A few years ago the best way to describe him is “being smart doesn’t mean you’re always right, and being right doesn’t mean you have permission to be a douchebag”. He has said he’s trying to tone down a bit a few years ago, but I haven’t interacted with him since then so I don’t know if it’s true. As far as I know he’s not an actual nazi though; I pay to use Sourcehut with a clear conscience.

          It’s mainly interesting to me in that he first came to prominence for making wlroots and sway, which are useful things that needed to be made. Then he made Sourcehut, which is a useful thing that needed to be made. Now he’s making Hare, which is… competent, but imo pretty weaksauce compared to something like Zig. It feels like suffers from the same problem as Go, having learned nothing about programming languages since 1990 or so. (Disclaimer, I am very biased.) And now an operating system that, from the first glance, probably suffers from the same problem?

          I’d be pretty excited if he was building a new userland on top of seL4, tbh. I’d definitely trust him to do something interesting with that, or at least make a cool respin of Plan 9. But as someone who likes hobby OS dev, seeing yet another Mach-ish message-passing microkernel made is fairly uninspiring.

          1. 9

            Thank you.

            Douchebag I can handle, as long as the douchebaggery isn’t, you know, actual hatred. And kudos to him for trying, I suppose.

            I like minimalism, probably to a fault. And I still think Amiga Exec (which is an atypical, message-passing kernel) is a beautiful operating system.

            1. 11

              Douchebag I can handle, as long as the douchebaggery isn’t, you know, actual hatred. And kudos to him for trying, I suppose.

              It can be tricky. He got into a fight with someone trying to report a bug with Sourcehut’s Git integration, calling them an idiot and accusing them of lying about their repro steps.

              The issue turned out to be fully reproducible bug in libgit2.

              No, that level of douchebaggery isn’t actual hatred, but it’s more than enough to drive people away from contributing to a project, and I think it’s reasonable to be a little hesitant about new projects he’s kicking off (it drives me away from them, for example). But I agree it’s a totally different situation than some of the other referenced projects.

            2. 7

              Tangent, but how come the Amiga hasn’t left more traces within FOSS? I associate it with nostalgia and strong partisanship among its adherents. Is is the lack of source, the ties to a specific hardware, or something else?

              1. 8

                how come the Amiga hasn’t left more traces within FOSS?

                Vim started on Amiga.

                FreeBSD then Dragonfly lead Matt Dillon was a prominent Amiga dev, back then the author of “Dice C” and other tools.

                1. 17

                  FreeBSD then Dragonfly lead Matt Dillon was a prominent Amiga dev

                  The message-passing IPC that he put in Dragonfly was strongly Amiga inspired. Unfortunately, a lot of these ideas make sense as core abstractions that you build the system around but are much less useful bolted onto a POSIX system.

                  I recall reading a paper in the ’90s claiming that the last thing that any interesting new kernel design added was a POSIX compatibility layer, at which point everyone just ran ported UNIX code on it and ignored its exciting features (and then found it was a less good UNIX and gave up on it). POSIX has been very useful in making software portable but has been a sad barrier to innovation.

                  1. 4

                    Yeah, that’s my feeling too. Everyone fell into the comfortable local minimum of GNU/Posix, and there wasn’t energy to resurrect the Amiga experience, for example.

              2. 12

                Amiga stuff was tied to specific hardware for sure.

                But there was also, at least in my experience, a lot of hostility to open sourcing stuff in the Amiga world. I don’t know if it was because there were a lot of cottage programmers or what, but source-available programs on the Amiga were really rare until very recently and the SDK was expensive the whole time Amigas were in mass production.

                1. 8

                  Amiga stuff was tied to specific hardware for sure.

                  You might be surprised.

                  The MacroSystem DraCo was basically an independent, 3rd party, enhanced Amiga clone which ran AmigaOS and clean AmigaOS apps, but didn’t use any Amiga hardware.

                  http://theamigamuseum.com/amiga-models/draco-the-amiga-clone/

                  https://bigbookofamigahardware.com/bboah/product.aspx?id=43

                  hostility to open sourcing stuff in the Amiga world.

                  Indeed.

                  So, for instance, the successor to Rexx, Rebol, seems to be free, not FOSS – just source-available.

                  (The successor to Rebol, Red, seems to be FOSSier.)

                  AROS is FOSS, but Morphos and AmigaOS 4 are not. AmigaNG, based on Intent, wasn’t and is lost to history.

                  1. 4

                    Note Rebol is from Carl Sassenrath, the lead engineer behind the original AmigaOS.

                    1. 3

                      Er, yes, that’s why I mentioned it. Sorry, probably should have said, for those who don’t know the history. My bad.

                    2. 2

                      More context:

                      Rexx was the scripting language embedded in AmigaOS. (It originates from IBM mainframe OSes. It is also found in IBM PC DOS 6.x-7.x, when IBM continued development of DOS for some years, after Microsoft dropped it for Win9x and NT, and in recent versions of OS/2.)

                2. 3

                  the SDK was expensive the whole time Amigas were in mass production.

                  Yet another Commodore failure.

              3. 7

                AROS exists. It’s an open source reimplementation of AmigaOS. It’s binary compatible on original hardware, and has ports to other platforms.

                1. 1

                  I just wish there was a native Raspberry Pi version. It seems like an ideal platform for the OS.

          2. 5

            Addressed directly to you: being right doesn’t mean that you should voice your opinion bluntly in public. Speaking about someone that you think is objectionable in these terms doesn’t make your words less so.

            1. 4

              Pointing out someone’s objectionable behavior is not wrong; it’s how communities establish and demonstrate their norms, and how they prevent future abuse. It may be off topic in a particular discussion, of course, although I don’t think that that’s the case here.

              1. 2

                Calling someone a douchebag is not pointing out objectionable behaviour. There are always less hurtful, more truthful ways to convey your disagreement with someone.

            2. 3

              Touche. :-P How would you rephrase it?

              1. 3

                I can’t speak for you, but personally I’m happy for him that he found a new project and that he’s not shy of trying difficult things.

                In your case, even if you think your work is better than his, I bet you could still learn something from what he’s doing on hare and helios. Support your peers, don’t put them down.

              2. 3

                I dont have a bone in this fight but for starters, name calling (aka douchebag) and comparison to a Nazi doesn’t say anything other than you dislike them.

                Its commonly phrased “resort to name calling” for a reason, because name calling is only the best option when you can’t/won’t back up your beliefs/opinions. It would have been far more effective to show an example of Drew’s (rudeness?) or pattern of.

          3. 3

            Just a heads up, the link you included in your comment appears to be broken?

            1. 3

              Good catch, thank you! Should be fixed now.

          4. -1

            So I take it the operating system you’re developing in the language that you also developed makes more inspiring choices? I’d be curious to see it. Could you share a link? Thanks!

            1. 3

              The language, Garnet:

              The only OS of @icefox’s that I see in their submissions is “Mongoose: A small toy OS with no memory protection”, which I suspect isn’t very comparable, either to a seL4-based OS (such as this Ares is said to be) or to Garnet, in terms of ambition or “inspiring choices”. In particular, last I heard, Garnet has the ambition to have memory safety, at least by default, whereas Mongoose and Hare, to my limited understanding, do not attempt memory safety (whichever kind of memory safety would apply).

              1. 0

                Thanks for the links. Mongoose 404s on sourcehut. And judging by the May 2023 status update on Garnet it still seems to have a long way to go. No very inspiring, no? Or do we use “weaksauce” in this context? /endsnark

                1. 2

                  What is Mongoose? A browser?

                  If you’re going to snark in favor of Drew Devault, you might want to exclude not being able to reach sourcehut from the attempt, since it’s his project.

                  1. 2

                    From the parent comment, Mongoose seems to have been @icefox’s OS project.

                    And it 404s because the project was deleted BTW (?)

                    Also, that was non-partisan snarking ;) Worst case, snarking against arm chair critique.

                    1. 1

                      Thanks for the clarification.

        2. 4

          (I’m hoping it’s not a Io or Jai situation, where these beautiful programming languages are marred by their creators’ just…awful stances on things.)

          …do I want to know what’s going on there? I thought Jai was just the guy behind Braid, and, assuming Io’s the prototype language from forever ago, the only thing I’m aware of there is that the author used Io to create a porn browser, which…fine?

          1. 2

            There’s more to it IMHO, but I’ll let you draw your own conclusions from the authors’ Twitter/blogs.

            1. 8

              I think I’m gonna just go with ignorance being bliss and continue not using either

            2. 3

              Twitter is broken, and Steve Dekorte has since taken down his blogs, and archive.org isn’t being very helpful here but I’m guessing something crypto-related?

              Jonathon Blow has some really dumb political views, and more importantly is just as opinionated and blunt about them as Drew Devault has ever been, I’m guessing there’s nothing more than that though.

        3. 3

          And Racket 😞

          1. 6

            Wait what’s going on with Racket? I thought it had a pretty large maintainer base at this point…

        4. 2

          OK, I’ve spent some 15+ minutes Googling so far, and have read about Jai and Jonathan Blow, and about Io and Steve Dekorte, and I still have no clue what you’re talking about. I have already invested way too much time into this.

          Can you just, y’know, tell us, please, rather than dropping elliptical hints?

          I went to a Drew de Vault talk at the last FOSDEM and I hoped to speak with him, but I didn’t get time to – I had to run off to another talk afterwards. I find his blog posts very interesting, and often highly insightful. Most of what he writes about I have no clue about, but on laptops he is absolutely 100% right, and on Linux distros, he talks a lot of sense although his desires are very different to mine.

      2. 4

        That said, the actual technology seems solid but not particularly novel, from what little is actually written there.

        And that’s a good thing. Better keep experimentation to a minimum (writing it in Hare is the experiment).

        He’s otherwise selected the best architecture available: Multiserver system based on a 3rd gen microkernel.

        It means that his system is better at a fundamental level relative to the most prominent operating systems in use today.

        1. 8

          “Better at a fundamental level” and an empty sack is worth the sack.

          1. 6

            Much higher potential than any boring “yet another UNIX” or “yet another 1st gen microkernel”. There’s hundreds of those projects, the most popular (and one of the worst) being Linux.

            In contrast, there’s few that looked at the state of the art, selected the best technologies and made something that isn’t architecturally bankrupt from the get-go:

            That’s about it. Well, there’s also a few non-opensource ones, but I’d rather focus on open source.

            1. 5

              Helios is Ares’s kernel

              1. 1

                HeliOS is also – another Amiga connection here – a FOSS cluster-native OS designed for INMOS Transputers but later ported to Arm and other CPUs. It is very loosely a continuation of TRIPOS, from which the kernel in AmigaOS 1.x was derived, but came to market on the Atari Transputer Workstation.

                https://www.theregister.com/2021/12/06/heliosng/

            2. 2

              Another seL4-based project is Robigalia, currently having the website https://rbg.systems. (It has been submitted on Lobsters before with a different domain name, but that domain name lapsed and was nabbed by someone who set up an imposter website.)