On Sun, Feb 23, 2014 at 4:32 PM, Alan McKinnon <alan.mckin...@gmail.com> wrote:
> On 23/02/2014 20:18, Canek Peláez Valdés wrote:
>> I don't think forking would attract much developers. Writing something
>> new trying to follow "the*nix design principles", but being modern and
>> with the same features (all of them optional, of course) of systemd
>> will have more chances; although I think it will fail because most of
>> the people that can code "better" actually like the systemd design,
>> and would prefer to contribute to it.
>>
>> And if you found enough of this mythical good-coders, good luck
>> defining what it means "the*nix design principles".
>
> I've been wondering about this concept of "the*nix design principles"...
>
> I've now concluded it's a myth, much like invisible pink unicorns.

Exactly.

> Is it like the kernel? A huge monolithic chunk of code with support for
> modules?
> Is it like X11? A huge monolithic chunk of code that has a bizarre build
> system for years, and took something like 5 years of hard work to get it
> modular? And is 20 years behind the times? And *still* requires devs to
> jump through hoops to get a rendered image through a compositor and back
> up the the GPU?
> Is it like perl? Support every possible way to do something if it
> remotely makes sense to do it, no matter how bizarre the syntax?
> Is it like python? Pick ONE way to do it and stick with it dammit!
> Is it like php? Do whatever you feel like?
> Is it like command line text processing tools that only do one narrow
> thing well? [1]
> Is it like bash? I can't find a decent description of how bash came to
> be except it's like Vogons - wasn't designed and didn't evolve, it just
> sort of ... congealed
>
> Not to rain on anyone's parade, but there's a prize of 40 internets up
> for the first person who can clearly and unambiguously define "Unix
> design principles" with specificity so that it is globally applicable.
>
> Best I can come up with is "Use common sense and build stuff that can be
> used and maintained" which is wonderfully descriptive but really sucks
> as a definition.

I reached a similar conclusion; "Unix principles" is, basically,
whatever good idea you can have for a particular problem. Therefore,
almost anything under the sun can be reasonably argued to be following
"Unix principles". In particular, all of the examples you listed.

"Unix principles" says nothing, means nothing, and helps even less to
design anything.

Almost all the people criticizing systemd or Wayland are Unix *users*,
not *developers*. Most Unix/Linux *developers* (not package
maintainers) actually like the changes introduced by systemd and/or
Wayland; of those who not, most of them at least *understand* why a
change was necessary (and long overdue). A minority oppose those
changes vehemently; but at this point, I'm starting to question if
that opposition has technical foundations, or if it's just a gut
reaction to an specific set of developers and/or companies.

> [1] For lack of a better term, let's just call systemd here a "system
> controller". What is this ONE thing a system controller should do and do
> it well?

Control the system?

Regards.
-- 
Canek Peláez Valdés
Posgrado en Ciencia e Ingeniería de la Computación
Universidad Nacional Autónoma de México

Reply via email to