1 |
On Sunday 23 Feb 2014 22:32:32 Alan McKinnon wrote: |
2 |
> On 23/02/2014 20:18, Canek Peláez Valdés wrote: |
3 |
> > I don't think forking would attract much developers. Writing something |
4 |
> > new trying to follow "the*nix design principles", but being modern and |
5 |
> > with the same features (all of them optional, of course) of systemd |
6 |
> > will have more chances; although I think it will fail because most of |
7 |
> > the people that can code "better" actually like the systemd design, |
8 |
> > and would prefer to contribute to it. |
9 |
> > |
10 |
> > And if you found enough of this mythical good-coders, good luck |
11 |
> > defining what it means "the*nix design principles". |
12 |
> |
13 |
> I've been wondering about this concept of "the*nix design principles"... |
14 |
|
15 |
Well, I'm no authority on this since I can't code, but here's a starter for |
16 |
10: |
17 |
|
18 |
http://www.faqs.org/docs/artu/ch01s06.html |
19 |
|
20 |
http://people.fas.harvard.edu/~lib113/reference/unix/co-unix4.html |
21 |
|
22 |
http://en.wikipedia.org/wiki/Unix_philosophy |
23 |
|
24 |
|
25 |
> I've now concluded it's a myth, much like invisible pink unicorns. |
26 |
> |
27 |
> Is it like the kernel? A huge monolithic chunk of code with support for |
28 |
> modules? |
29 |
|
30 |
I would think that although the kernel has grown over the years, it has not |
31 |
done so like systemd. You can still *not* build modules you don't need in |
32 |
your kernel. |
33 |
|
34 |
|
35 |
> Is it like X11? A huge monolithic chunk of code that has a bizarre build |
36 |
> system for years, and took something like 5 years of hard work to get it |
37 |
> modular? And is 20 years behind the times? And *still* requires devs to |
38 |
> jump through hoops to get a rendered image through a compositor and back |
39 |
> up the the GPU? |
40 |
|
41 |
The X11 devs saw the error of their ways and ended up breaking up the big |
42 |
monolithic Xorg code and releasing it as a modular package since X11 7.0, if I |
43 |
recall right. |
44 |
|
45 |
|
46 |
> Is it like perl? Support every possible way to do something if it |
47 |
> remotely makes sense to do it, no matter how bizarre the syntax? |
48 |
> Is it like python? Pick ONE way to do it and stick with it dammit! |
49 |
> Is it like php? Do whatever you feel like? |
50 |
> Is it like command line text processing tools that only do one narrow |
51 |
> thing well? [1] |
52 |
> Is it like bash? I can't find a decent description of how bash came to |
53 |
> be except it's like Vogons - wasn't designed and didn't evolve, it just |
54 |
> sort of ... congealed |
55 |
|
56 |
Designing a programming language is not exactly parallel with designing an OS, |
57 |
although similarities exist (e.g. re-use code where you can and don't re- |
58 |
invent the wheel). |
59 |
|
60 |
|
61 |
> Not to rain on anyone's parade, but there's a prize of 40 internets up |
62 |
> for the first person who can clearly and unambiguously define "Unix |
63 |
> design principles" with specificity so that it is globally applicable. |
64 |
|
65 |
The Unix design philosophy may not be globally applicable, but has served |
66 |
Linux well over the years. Lennart has de facto introduced a different way of |
67 |
developing his Linux code, which to others and me seems more restrictive. I |
68 |
am not saying that his coding is poor (I'm not qualified to judge), or that |
69 |
systemd is wholesale bad. But, is this a whole new design paradigm in the |
70 |
development of Linux that we should applaud and follow, or just a mistake |
71 |
borne out of ignorance/arrogance/expedience? |
72 |
|
73 |
Time will tell. |
74 |
|
75 |
|
76 |
> [1] For lack of a better term, let's just call systemd here a "system |
77 |
> controller". What is this ONE thing a system controller should do and do |
78 |
> it well? |
79 |
|
80 |
-- |
81 |
Regards, |
82 |
Mick |