Re: A dumb question

From: Martin \ <et.code_at_ethome.sk>
Date: Wed, 3 May 2017 04:29:13 +0200

On Mon, 01 May 2017 23:11:25 +0200
Francisco Gómez <espectalll_at_kydara.com> wrote:

>     "It's old software. Its last version is from 2014. If I have to
>     choose between a dynamic, bug-filled init like Systemd and a barely
>     maintained init like Runit, I'd rather use Systemd."
>
> That sounds bad, doesn't it?

Yes it sounds bad, if your mental model of environment matches that of
archlinux. If your gcc from today doesn't compile your stuff from last month
(exageration - I have no clue about intricacies of C, but I observe that there
are chunks of C code from 2005 floating the net, that mere mortal like me, has
no way to compile in 2017).

It also sounds bad, if your init system from tomorrow doesn't boot your root
from yesterday (that can happen with systemd, at least it did to me).

People like that need to have "latest and greatest packages", everything else is
outdated. I know, I used to be one of them.

Then you start reading about runit or anything else, that is not superficial
(try postgres sometimes), or just start reading lines of various bsds
(I started from pure curiosity, how these people who actually studied os(db)
design do it) and you realise - "whoa this line is from 1980!" and "holy crap,
it still works!". Why wouldn't, it right? You are still "missing it",
though, unless you try it. Which you did.

> I hence ask: why is it that Runit has no new versions, neither a VCS
> repository or bug tracker? Has Runit been so well tested and hardened,
> is it such a simple codebase? Or are there not enough interested,
> capable people maintaining the project?

As you heard from others: something like that. Thing is, this little niche you
found yourself in, it's its own little world, where things are actually
**simple**.

Not "easy", not "simple", just plain simple. Simple = almost brainded, here. If
almost braindead (in reality all these designs are actually pretty smart
and cool because they are intelligent, not just "intelligent"), then robust.

Runit was probably less tested than systemd (as in number of desktop users) but
was written in djb spirit. It also doesn't do much actually.

But if you take that djb spirit and try to apply it, what we can see tells
us, that that "application" usually ends up pretty robust.

Maybe you heard of opendns, big alternative dns provider. This is not about
whether you like them or not, the truth is their service is exceptionally
robust. Shocker, it runs "djbdns"
https://umbrella.cisco.com/blog/blog/2016/02/29/a-brief-history-of-opendnscache/.
Well not anymore, but imagine how many of their programmers were exposed to
that djb style.

Once you start reading such stuff, there is no way back. I believe Gerrit
Pape did so. So did others, producing tools discussed here. It left lasting
impression on them. Hint: they never recovered (you see, once you do
that, you cannot recover).

So if you want to be smart with the guy, have him read this:
https://cr.yp.to/qmail/guarantee.html

This djb guy is so confident, he is offering $500 of his money for a bug.
Not some company - djb himself.

Even better have you colleague read runit code. Then have him read systemd code.
Then, you can ask him about "feelings" he felt.

As I wrote, I started reading these things just out of pure curiosity. As an
unimportant admin, I was curious, how big guys do it. That is how it grows on
you. You start reading, and realise there is something to it.

Something you yourself might like to emulate. I am trying, but still end up with
overly long function names and deep code paths :(. But these guys, they have
balls of steel. So terse. No fluff. To the point.

  eto
Received on Wed May 03 2017 - 02:29:13 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:19 UTC