Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-04 Thread Hendrik Boom
On Wed, Mar 04, 2015 at 11:49:20AM +0100, shraptor shraptor wrote:
 
 I consider myself of moderate coding skills
 and I like shell. I learnt coding in basic, modula2 and some c.

If you liked Modula 2, you might want to look at Modula 3.  Same 
syntax, but completely different language.

-- hendrik
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-04 Thread hellekin
On 03/02/15 23:23, Gravis wrote:
 consider grouping your emails as conversations as it is a wonderful
 option for organizing mailing list threads.

*** Thanks for this, but the topic having drifted a lot: the thread
should also have been renamed.  If any of you would like to contribute a
summary, you're welcome to chime in to #devuan-news.  Otherwise I doubt
that anyone wants to cover it in the next issue of DWN because it's way
off-topic and a lot of reading.  Maybe that could be a way to reset the
thread into something workable.  I doubt people coming to the mailing
list at this point will understand anything about simple backgrounds
or Debian problems with Jesse (sic).  [OT] is the last bit of
information in the Subject.

==
hk

-- 
 _ _ We are free to share code and we code to share freedom
(_X_)yne Foundation, Free Culture Foundry * https://www.dyne.org/donate/
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-04 Thread Hendrik Boom
On Wed, Mar 04, 2015 at 01:39:55AM -0600, T.J. Duchene wrote:
 
 On 03/03/2015 09:07 PM, Hendrik Boom wrote:
 As time passed, they kept finding new uses for their scripting
 language. Occasionally they would realize and existing module
 needed major new functinoality, and it was easier to write the new
 version in Scheme than to modify the old. Over two years or so,
 they ended up replacing their C code, piece by piece, with Scheme
 code. In the end they had a system that was mostly written in
 Scheme, was more reliable, did more, ran faster, and was only
 about 3 lines of Scheme.
 
 When I say this, please do not think that I am making remarks
 against your experience or observations, but I just don't get it.
 
 I don't see how that can be the case.  The version of Scheme that
 you mention is specifically implemented on top of C, so your remarks
 cannot be entirely true, nor make any sense to me at all.  Scheme
 can't be more reliable, do more, or run faster, especially if it
 implemented on top of C or even converted into system object code by
 the very same C compiler.

No doubt the programmers could in principle have written the same code 
that Gambit generated.  I say in principle because the generated C
code is bulky, uncommented, and well-nigh incomprehensible.  They could 
have even written equivalent code in well ant truly commented readable C 
code.  But to someone new coming to the project, any 200,000 lines of 
code are incomprehensible, regardless of quality.

What made the difference is that 30,000 lines of code are more 
comprehensible than 200,000, just by sheer volume.
It was easier to understand what the code was doing.  So they could see 
what was really going on and replace algorithms easily.

The increase in comprehensibility might have been due simply to the 
reduced volume of code.

But the powerful metaprogramming features of Gambit may also have 
helped.  They could adapt the language to their applications semantics, 
making it all more comprehensible.  And it may also have reduced the 
total amount of code they needed to write.

 
 The entire statement is non sequitur.
 
 I will that any specific compiler, even a C compiler, can be total
 and utter crap, if it is badly implemented.  I will also agree that
 individuals' programming skills can be massively lacking.  It is
 possible that they were more skilled with Scheme than C, but that
 does not make Scheme superior to C by any objective standard.
 
 It was really a win for the high-level, garbage-collected language.
 
 
 I've used enough GC languages to know the problems that they try to
 solve.  It's a good idea to try, really, and it is a fantastic
 debugging tool when testing code.

It's a fantastic debugging tool only in a run-time secure language.  
Then you can rely on things like pointers pointing to the kind of thing 
they should when interpreting debugging output and making deductions 
about what yout code did.

If your language isn't run-time secure, combining garbage collection 
and undebugged code is a disaster.

The Boehm garbage collector may well *not* be your friend when writing C 
or C++.

 
 But that is all it is good for.

There are problems in which the data structures are so inherently 
tangled that garbage  collection is the *only* practical way to 
manage memory.  I agree that most programs are not of this type.

One use of a garbage collector is in fsck.  It garbage collects file 
systems.  This was especially useful in the days when you could 
hard-link directories.

 No one has ever created a fail-proof GC design. When the GC model
 fails, it makes fixing your code difficult, sometimes even
 impossible to correct without a patch for the entire runtime, not to
 mention you may need to recompile everything regardless after you
 get it.

The same is true for a compiler that generates subtly bad code.
I don't know of any bug-free compilers.  Do you?

Well, actually, I was once told that the Algol 60 compiler written by 
Kruseman Aretz was bug-free.  But I have no direct experience with it.

I'm told that his friends, as an April Fool's joke, once carefully faked 
up a program listing and its (wrong) output and claimed they had 
detected a bug after the compiler had been running correctly for years.
He caught on when he realised that the page numbers on the program 
listing were not *quite* printed as his compiler would have written 
them.

 
 When someone can design a GC language that solves leaks and buffer
 overflows 100% of the time, I'll give them all the praise they
 deserve.

Buffer overflows can be stopped by a language.  Until, of course, you 
step outside the language because you need to use code that does things 
not allowed in the language.

Leaks are more difficult.  GC can prevent dangling pointers, but 
determining for sure whether any piece of storage will ever be used 
again is Turing-undecidable.

Systems languages that are type- and storage- secure handle this 
pragmatically.  They 

Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-04 Thread T.J. Duchene
I think it is very likely Henrik, that we will never agree entirely on the
subject.  =)  Which is okay with me and should be okay with you, too.

We agree that particular GC is doomed to be flawed.  As something that
cannot be avoided, the potential for disasterous bugs that cannot be fixed
by the application programmer outweigh any benefits that a GC provides in
my opinion.  It's important to note that generally speaking a more accurate
GC mechanism is inherently more complex and wastes more and more resources
including battery power and user time.  For me, this goes against the first
maxim of programming: keep it simple.

As you say, compilers are not perfect either, but your average compiler,
converting code to assembly, is well understood and fairly
straightforward.  Garbage collection is not nearly as straightforward. You
aren't even sure it will work until the code is actually executed.  It's a
dynamic process, and guaranteeing reliability is a problem.

Ultimately in the real world, the only effective mechanism for fixing the
problems that GC tries to address is a programmer trained to clean up after
herself. That's why I don't buy into the idea that GC languages are
better.  I believe they create the worst kind of programmers: lazy.

t.j.

On Wed, Mar 4, 2015 at 1:04 PM, Hendrik Boom hend...@topoi.pooq.com wrote:

 On Wed, Mar 04, 2015 at 01:39:55AM -0600, T.J. Duchene wrote:
 
  On 03/03/2015 09:07 PM, Hendrik Boom wrote:
  As time passed, they kept finding new uses for their scripting
  language. Occasionally they would realize and existing module
  needed major new functinoality, and it was easier to write the new
  version in Scheme than to modify the old. Over two years or so,
  they ended up replacing their C code, piece by piece, with Scheme
  code. In the end they had a system that was mostly written in
  Scheme, was more reliable, did more, ran faster, and was only
  about 3 lines of Scheme.
 
  When I say this, please do not think that I am making remarks
  against your experience or observations, but I just don't get it.
 
  I don't see how that can be the case.  The version of Scheme that
  you mention is specifically implemented on top of C, so your remarks
  cannot be entirely true, nor make any sense to me at all.  Scheme
  can't be more reliable, do more, or run faster, especially if it
  implemented on top of C or even converted into system object code by
  the very same C compiler.

 No doubt the programmers could in principle have written the same code
 that Gambit generated.  I say in principle because the generated C
 code is bulky, uncommented, and well-nigh incomprehensible.  They could
 have even written equivalent code in well ant truly commented readable C
 code.  But to someone new coming to the project, any 200,000 lines of
 code are incomprehensible, regardless of quality.

 What made the difference is that 30,000 lines of code are more
 comprehensible than 200,000, just by sheer volume.
 It was easier to understand what the code was doing.  So they could see
 what was really going on and replace algorithms easily.

 The increase in comprehensibility might have been due simply to the
 reduced volume of code.

 But the powerful metaprogramming features of Gambit may also have
 helped.  They could adapt the language to their applications semantics,
 making it all more comprehensible.  And it may also have reduced the
 total amount of code they needed to write.

 
  The entire statement is non sequitur.
 
  I will that any specific compiler, even a C compiler, can be total
  and utter crap, if it is badly implemented.  I will also agree that
  individuals' programming skills can be massively lacking.  It is
  possible that they were more skilled with Scheme than C, but that
  does not make Scheme superior to C by any objective standard.
 
  It was really a win for the high-level, garbage-collected language.
  
 
  I've used enough GC languages to know the problems that they try to
  solve.  It's a good idea to try, really, and it is a fantastic
  debugging tool when testing code.

 It's a fantastic debugging tool only in a run-time secure language.
 Then you can rely on things like pointers pointing to the kind of thing
 they should when interpreting debugging output and making deductions
 about what yout code did.

 If your language isn't run-time secure, combining garbage collection
 and undebugged code is a disaster.

 The Boehm garbage collector may well *not* be your friend when writing C
 or C++.

 
  But that is all it is good for.

 There are problems in which the data structures are so inherently
 tangled that garbage  collection is the *only* practical way to
 manage memory.  I agree that most programs are not of this type.

 One use of a garbage collector is in fsck.  It garbage collects file
 systems.  This was especially useful in the days when you could
 hard-link directories.

  No one has ever created a fail-proof GC design. When the GC model
  fails, 

Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-04 Thread T.J. Duchene


On 03/03/2015 07:19 PM, Nuno Magalhães wrote:

So what you're saying is that all languages are syntactic sugar over
assembly? :)


Not at all.  C was designed specifically to allow code to be portable, 
instead of assembly which is not.


I said usually.  What I mean is that many arguments in favour of 
specific high level languages are mostly syntactic sugar arguments. 
Those languages are usually implemented in C, and the advantages that 
they supposedly offer can be achieved using C.


More and more i see it'll be more work / take longer to implement / 
be more complex as developer excuses to use more user-friendly 
languages like java (and less and less developers learning C in 
college so they're biased).


Yes.  I can't speak for others, but I can implement far more cleanly 
designed and reliable solutions using C than other choices.  I can 
certainly write less code using Python or Perl, but I can do exactly 
the same thing with C by using a library.


IMHO less code is not better over the long term.  Having a clean design 
from the beginning trumps fast and dirty that most people use every 
time. I can't tell you how much time I have spent in the last two 
decades cleaning up other people's disasters.



t.j.

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-04 Thread Didier Kryn


Le 04/03/2015 00:36, T.J. Duchene a écrit :

On Tue, 03 Mar 2015 12:46:17 +0100
Didier Kryn k...@in2p3.fr wrote:


Le 02/03/2015 23:43, T.J. Duchene a écrit :

We just see things differently.  My first question would be: is
there are a justified reason NOT to use C?

  There is a very good reason, and I heard it was given by
Kernighan and Ritchie: we assume the programmer knows what (s)he is
doing. And there is a second reason: C is very tied to the hardware;
it is lacking abstractions.


Fair enough.  If you need that level of abstraction to get the job
done, so be it.  It's at least a better reason that most of the others
that I have heard.  I would comment that levels of abstraction can be
achieved in any language, and that C is just as good any other at doing
so.

You use abstracted libraries everyday.

Although I would have to disagree that C is not tied to the hardware.
That is the whole point of C. That is why C is used over assembly and
why C is considered a universal language.  It's usually the first one
ported to any processor.

Saying it is hardware dependent doesn't make sense when C, and the
Linux kernel written in C are used on so many different forms of
hardware.

T.J., I was probably not clear enough. I dont mean 
architecture-dependant, but assembler-like:


if ( a=b=c ) ; What does this mean?

1) let some register (call it Accumulator) be loaded with the value 
from location c;

2) let store Accumulator at location b;
3) let store Accumulator at location c;
4) check if Accumulator is non-zero;

All this is very different of what the instruction means in 
ordinary language and you better keep it in mind or you will get a mess 
sooner or later.


++ and -- should never be used in expressions. They have been 
invented to generate post-increment or pre-increment with primitive 
compilers. GCC is perfectly able to generate them automatically.


C is so error-prone that GCC has introduced  warnings from the most 
dangerous constructs.


 C is semantic sugar above assembler. I do not want to reduce its 
merit. I have programmed in this language for 34 years.



I had
experiences of big programs in C and my experience is that debugging
is long (and probably never ended) and evolution is a nightmare.

That can be true, but it is also true of any language, or of project of
substantial size: say 2,000,000+ lines of code.  It really depends on
how well it was designed and documented.

  It can be discussed
A given language may do in one line the equivalent of 5 lines of C, 
in a self-explanatory construction.


A language apropriate for a given type of problem may have well 
thought semantic constructs which, at the end result in calling the same 
functions as you do in C, but are expressed in the source code in a way 
which is easier to understand for the reader and easier to check by the 
compiler.


My point is that generating efficient code is not the most 
important issue. The most important things are to prevent and detect 
programming errors and to make the source easy to read. Some people love 
C for just the opposite reason: it is short and cryptic and a single 
typo could change program's behaviour instead of causing an error.


If you take all languages understood by GCC which produce 
executable binary (not Java bytecode), the performance of the executable 
code will be very close, because the code generation is the easy part 
and is paractically all common. The only difference, and it matters a 
lot, is the front-end, that is the language.



wether the choice makes sense, but I don't see even why C should
always be considered.



Efficiency and guaranteed portability, Diedler.  You can't say the same
of Python, Perl, etc -  because in order to use them, you have to
compile them from C first.
I do not deny the necessity to have C. One of the greatest merits 
of C is that it brings in all the others :-)


Also let's not confuse high level with interpreted. Shell 
scripting languages are rather low-level. I don't know perl, but I think 
it is not much higher than C.


Cheers.
Didier



___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread KatolaZ
On Tue, Mar 03, 2015 at 10:07:41PM -0500, Hendrik Boom wrote:

[cut]

   It can be discussed
   wether the choice makes sense, but I don't see even why C should
   always be considered.
   
  
  Efficiency and guaranteed portability, Diedler.  You can't say the same
  of Python, Perl, etc -  because in order to use them, you have to
  compile them from C first.
 
 Case study above, Scheme was clearly superior to C.  Granted, Scheme 
 code did get compiled to C, but what I care about here is the code the 
 human programmers see.
 

Without entering a religious war about languages, similar examples
exist about using Erlang or Haskell instead of legacy C code. For some
specific tasks (but honestly not always) these languages can
outperform C implementations, in a much shorter time than that needed
to get a brand-new and better-conceived C implementation of the same
thing. And both Erlang and Haskell are portable on a large variety of
platforms. 

Again, the world is not just black or white when it comes to languages
(of any kind) :)

My2Cents

KatolaZ

-- 
[ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
[ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
[ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
[ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread T.J. Duchene


On 03/03/2015 09:07 PM, Hendrik Boom wrote:
As time passed, they kept finding new uses for their scripting 
language. Occasionally they would realize and existing module needed 
major new functinoality, and it was easier to write the new version in 
Scheme than to modify the old. Over two years or so, they ended up 
replacing their C code, piece by piece, with Scheme code. In the end 
they had a system that was mostly written in Scheme, was more 
reliable, did more, ran faster, and was only about 3 lines of Scheme. 


When I say this, please do not think that I am making remarks against 
your experience or observations, but I just don't get it.


I don't see how that can be the case.  The version of Scheme that you 
mention is specifically implemented on top of C, so your remarks cannot 
be entirely true, nor make any sense to me at all.  Scheme can't be more 
reliable, do more, or run faster, especially if it implemented on top of 
C or even converted into system object code by the very same C compiler.


The entire statement is non sequitur.

I will that any specific compiler, even a C compiler, can be total and 
utter crap, if it is badly implemented.  I will also agree that 
individuals' programming skills can be massively lacking.  It is 
possible that they were more skilled with Scheme than C, but that does 
not make Scheme superior to C by any objective standard.



It was really a win for the high-level, garbage-collected language.



I've used enough GC languages to know the problems that they try to 
solve.  It's a good idea to try, really, and it is a fantastic debugging 
tool when testing code.


But that is all it is good for.

No one has ever created a fail-proof GC design. When the GC model fails, 
it makes fixing your code difficult, sometimes even impossible to 
correct without a patch for the entire runtime, not to mention you may 
need to recompile everything regardless after you get it.


When someone can design a GC language that solves leaks and buffer 
overflows 100% of the time, I'll give them all the praise they deserve.


Until then, the only things that GC does for you is waste memory, 
processor time, and force you to reboot the entire system more 
frequently in order to clear the exhausted resources.


Have a great evening!
t.j.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread Nuno Magalhães
On Tue, Mar 3, 2015 at 10:42 PM, T.J. Duchene t.j.duch...@gmail.com wrote:
 On Tue, 3 Mar 2015 07:25:23 +
 KatolaZ kato...@freaknet.org wrote:

 All computer languages are constrained to the physical nature of the
 processor, so the benefits of one over another are usually really
 nothing more than syntactic sugar.

So what you're saying is that all languages are syntactic sugar over
assembly? :)

 As a counter-argument, I would offer that you can perform any task in C,
 (with the extremely occasional asm block) that the processor is
 physically capable of, but the reverse cannot be said of other
 languages.

Fornicate yeah!

 These languages might be easier to use by those allergic to to lower
 level ones, but the overhead and inefficiency wastes battery power.
 Ultimately, the time the programmers might save are spent by the
 potential thousand users who have wait 5 minutes for the app to run
 rather than 2 1/2.

More and more i see it'll be more work / take longer to implement /
be more complex as developer excuses to use more user-friendly
languages like java (and less and less developers learning C in
college so they're biased). It should be easy for the end-user,
definitely; and if it can be easy for the developer as well, cool.
Making something less efficient/fast/scalable/ because it's
hard...?

My uncalled-for €0.02
Cheers,
Nuno
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread T.J. Duchene
On Tue, 03 Mar 2015 12:46:17 +0100
Didier Kryn k...@in2p3.fr wrote:

 
 Le 02/03/2015 23:43, T.J. Duchene a écrit :
  We just see things differently.  My first question would be: is
  there are a justified reason NOT to use C? 
 
  There is a very good reason, and I heard it was given by
 Kernighan and Ritchie: we assume the programmer knows what (s)he is
 doing. And there is a second reason: C is very tied to the hardware;
 it is lacking abstractions.
 

Fair enough.  If you need that level of abstraction to get the job
done, so be it.  It's at least a better reason that most of the others
that I have heard.  I would comment that levels of abstraction can be
achieved in any language, and that C is just as good any other at doing
so.  

You use abstracted libraries everyday.

Although I would have to disagree that C is not tied to the hardware.
That is the whole point of C. That is why C is used over assembly and
why C is considered a universal language.  It's usually the first one
ported to any processor.

Saying it is hardware dependent doesn't make sense when C, and the
Linux kernel written in C are used on so many different forms of
hardware.


 I had 
 experiences of big programs in C and my experience is that debugging
 is long (and probably never ended) and evolution is a nightmare.

That can be true, but it is also true of any language, or of project of
substantial size: say 2,000,000+ lines of code.  It really depends on
how well it was designed and documented.

 It can be discussed
 wether the choice makes sense, but I don't see even why C should
 always be considered.
 

Efficiency and guaranteed portability, Diedler.  You can't say the same
of Python, Perl, etc -  because in order to use them, you have to
compile them from C first.

Cheers!
t.j.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread Isaac Dunham
On Tue, Mar 03, 2015 at 07:25:23AM +, KatolaZ wrote:
 On Mon, Mar 02, 2015 at 04:35:24PM -0600, T.J. Duchene wrote:
  When you code in Perl, you are using subroutines and libraries that
  were incorporated into Perl core.The fact you are calling an
  entire subroutine when you split strings in Perl is no different
  than having a C string library.  You call the library to do the
  work.  You don't care how it does it, only that you get the results.
  C gets a bad reputation because a percentage of programmers never
  learned how to prevent buffer overflows or leaks is all.  That is
  certainly not C's fault.
  
 
 And I can mantion dozens of counterexamples in which Perl or Python
 would solve the task more easily than C. Just to give you an idea, I
 have been doing quite a bit of XML parsing, mainly to convert data
 sets of all sorts in a reasonable (ASCII) format. Well, I have done it
 both in C and Python, so I think I can make a fair comparison between
 the two *for this particular task* and for *my specific needs*.
 
 Usually the C implementation of a non-trivial XML parser might require
 a couple of days to be finished and be able to digest the whole schema
 (you have to construct the data structure piece by piece, and to pass
 around a lot of garbage, and to be sure that you don't have leaks
 anywhere, and to catch and handle errors by hand...). Conversely, the
 Python implementation is usually ready in less than two hours,

Are you using expat for the C implementation, like you are for Python
behind the scenes?

python-stdlib requires expat, BDB 5.3, bz2, ncurses, readline, sqlite,
and openssl, along with FFI, terminfo, and mime-support.

However, I recognize you probably won't get C done in less than 2 hours
like you do with Python.

I will say that it sometimes seems like the reason leaks are a problem
in C specifically is that leaks aren't considered a problem in other
languages.
Sure, gc-based languages eventually collect the garbage.
But they seem to take a long time to do it.
And they encourage a sloppy approach where acquiring a resource is not
habitually matched with releasing it.

And exceptions can at times be more obscure and verbose than checking
return values: something three imports deep could throw an exception
you never thought about, and it may propagate.

Now, I've used Python a little bit, and I've used C a little bit.
I won't say that Python/$scripting_language should not be used, period.
But there are a lot of the features that come at costs that sometimes
seem to be ignored.

Thanks,
Isaac Dunham
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread Hendrik Boom
On Tue, Mar 03, 2015 at 05:36:54PM -0600, T.J. Duchene wrote:
 On Tue, 03 Mar 2015 12:46:17 +0100
 Didier Kryn k...@in2p3.fr wrote:
 
  I had 
  experiences of big programs in C and my experience is that debugging
  is long (and probably never ended) and evolution is a nightmare.
 
 That can be true, but it is also true of any language, or of project of
 substantial size: say 2,000,000+ lines of code.  It really depends on
 how well it was designed and documented.

I get this from a conference proceedings -- I forget which, but if 
pressed I can probably get a specific reference within a few days.  A 
firm had an enterprise resource management system (at lease, that's what 
I think it was called) that contained about 200,000 lines of C code.  
Yes, that's an order of magnitude smaller thatn your example.  They 
decided that they needed a scripting language to simplify their work.
They picked Gambit Scheme for their scripting language, and they found 
it quite effective.  Gambit Scheme is an implementation of Scheme that 
has a particularly intimate connection with C.  It can be interpreted, 
but it has a compatible compiler that compiles Scheme to C.  Interfacing 
Gambit to C is particularly easy.

As time passed, they kept finding new uses for their scripting 
language.  Occasionally they would realize and existing module needed 
major new functinoality, and it was easier to write the new version in 
Scheme than to modify the old.

Over two years or so, they ended up replacing their C code, piece by 
piece, with Scheme code.  In the end they had a system that was mostly 
written in Scheme, was more reliable, did more, ran faster, and was only 
about 3 lines of Scheme.

It was really a win for the high-level, garbage-collected language.

Now I'll admit that not all problems are like that.  But I suspect that 
many are.

 
  It can be discussed
  wether the choice makes sense, but I don't see even why C should
  always be considered.
  
 
 Efficiency and guaranteed portability, Diedler.  You can't say the same
 of Python, Perl, etc -  because in order to use them, you have to
 compile them from C first.

Case study above, Scheme was clearly superior to C.  Granted, Scheme 
code did get compiled to C, but what I care about here is the code the 
human programmers see.

-- hendrik
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread Didier Kryn


Le 02/03/2015 23:43, T.J. Duchene a écrit :
We just see things differently.  My first question would be: is there 
are a justified reason NOT to use C? 


There is a very good reason, and I heard it was given by Kernighan 
and Ritchie: we assume the programmer knows what (s)he is doing. And 
there is a second reason: C is very tied to the hardware; it is lacking 
abstractions.


The sentence can be compared to Ada's design rationale: we assume 
the programmer is a human being (meaning (s)he persistently makes 
mistakes). Maybe KR never wrote that sentence, but I like it because it 
fits very well with the nature of the C language.


unsigned u = -2; /* example */

I am very admirative of how the Linux kernel is efficient and safe, 
but everybody knows that this is achieved by hard work of some of the 
best C programmers in the world. This is THE exception. I had 
experiences of big programs in C and my experience is that debugging is 
long (and probably never ended) and evolution is a nightmare.


For me, the question is rather why choose a given language out of 
all available languages? And the reason is generally because the 
programmer feels more comfortable with one. It can be discussed wether 
the choice makes sense, but I don't see even why C should always be 
considered.


Didier



___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-03 Thread Didier Kryn


Le 03/03/2015 01:08, T.J. Duchene a écrit :




It's interesting that you'd mention Java here.  I don't much like the 
Java language or the Java programming culture, but Java bytecode has 
the interesting property that, with a little plumbing, one can send 
executable code over the network and have it run on a remote 
machine.  This actually winds up being useful for large-scale data 
crunching, where you want to move the code to the data rather than 
the data to the code wherever possible. I wouldn't know how to build 
a system that does this in C (for instance) that isn't brittle.
There is no magic to it.  Java's core is usually written in C after 
all. Realistically, the reason Java can do that is that Java bytecode 
is processor generic.  You could theoretically do that with C as long 
as the processors are the same. 
Alas no! There's the F. shared libraries. It works only if you link 
statically, which is discouraged by the glibc just because Ulrich 
Drepper does not like it.


Didier

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread T.J. Duchene


On 03/02/2015 09:11 AM, Tor Myklebust wrote:


I'm even more confused by your position than I was before.



I can see your point.  I'll try to explain more concisely.

When I call something overuse, I am referring to the ideas that an 
interpreted language must be used as glue between two bits of C code, 
that C is to be used only as needed or that interpreted languages are 
the preferential language choice for writing basic system utilities.  
These ideas has become more and more acceptable. They didn't used to 
be.  I remember when interpreted languages were either hobbyist playtoys 
or teaching tools.  Perl was used only for small jobs, and while shell 
was used extensively in System 5 init files, you were expected to do all 
serious work in C.


A respectable percentage of today's Linux distribution is a kludge of 
rapid pre-existing hacks that do not always work well when layered.  You 
have something like adduser or other command utilities written in Perl, 
which are then called by init scripts, which can then be called by still 
more scripting in the form of a X GUI application to manage users.  At 
any stage it can be prone to unforeseen interpretation problems.


I'm just asking at what point would it be more beneficial to simply code 
a library in something like C, and be done with it?



Perl, Python, and Java,and a number of other languages just do not 
function well for certain kinds of tasks that require efficient resource 
management over time, yet they are constantly being used by the 
opensource community today in places were it might be advisable to 
reconsider.





Why pick on perl? 
Only because Perl makes itself the biggest target for example.  I don't 
HATE Perl.  I've even written a lot of Perl code in my day.  I also 
recognize it for what it is.  Perl is something that should be 
restricted to unimportant, small user jobs that won't be used too often, 
and most certainly never used with root permission.  As everyone knows, 
Perl has a very ugly history of permissions flaws, that can rear its 
head if someone does not compile it properly.


Why not pick on the huge number of low-quality C libraries that are 
out there?
Yes, there can be low quality libraries in C.  The main argument for 
using Perl, or other similar languages, instead of C is that there is 
less chance of errors (and thus better software) and you spend less time 
using it.  If as you point out you can have can have crappy code 
anywhere so that tosses out the first argument.  The second, that Perl 
is a timesaver is entirely subjective.  With the right libraries, and 
enough actual use, anyone can write a small utility just as efficiently 
in C or a similar language.

.


I don't think you said what you were trying to say.  Judicious use of 
abstraction is what lets us write useful software in the first place.


True, however, there also comes a point where writing software in highly 
abstracted languages (usually the interpreted sort) has diminishing 
returns.  I feel that they have been overused in the Linux ecosystem as 
whole.  My whole rant is really just chatting with the community and 
seeing if anyone else shares that opinion. If you don't personally, 
that's just fine by me. =)



Have a great day!
t.j.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Tor Myklebust

On Mon, 2 Mar 2015, T.J. Duchene wrote:

A respectable percentage of today's Linux distribution is a kludge of rapid 
pre-existing hacks that do not always work well when layered.  You have 
something like adduser or other command utilities written in Perl, which are 
then called by init scripts, which can then be called by still more scripting 
in the form of a X GUI application to manage users.  At any stage it can be 
prone to unforeseen interpretation problems.


This is indeed true, but it seems like a social problem rather than a 
technical problem.  People can, and will, write garbage software no matter 
what tools they have.  It might pay to let them do this with as little 
pain as possible so they can go back to working on the thing they were 
actually interested in doing.


It sounds here like you don't like that your X application is running 
scripts, probably incorrectly, to do basic stuff.  And how running a 
script can fail, with error codes like too many open files or too many 
processes or not enough memory when the task in question doesn't 
obviously involve allocating memory or spinning up a process.  If you're 
in the mood to lay blame in a situation like this, I sugges directing it 
at the X application's author rather than the author of the script the 
application calls.


I'm just asking at what point would it be more beneficial to simply code a 
library in something like C, and be done with it?


I think the answer to this question is more complicated than can be 
described by a tipping point in a cost-benefit analysis.  I think it's 
context-dependent and I think it can change over the lifetime of the 
software.


Performance concerns, for instance, often crop up later in the lifetime of 
a project once it has a sizable userbase (or once somebody asks for the 
resource-intensive feature enough times).  Should we code everything in C 
from the start just so we don't have to handle the performance problems in 
the unlikely event that the project succeeds?  Maybe, but what if that 
constraint makes the project take quite a bit longer?  And what if that 
reduces its chances of success?


Performance concerns can cut the other way, too, under the name 
scalability.  Because it's easier to write really fast C code, you can 
get a lot farther with your really fast C code before hitting a 
performance wall.  That sounds good, but it means your code can evolve 
into a bigger mess by the time you have to address your choice of data 
structures, or parallelisation, or distribution.


Perl, Python, and Java,and a number of other languages just do not function 
well for certain kinds of tasks that require efficient resource management 
over time, yet they are constantly being used by the opensource community 
today in places were it might be advisable to reconsider.


This is true.  I've found it's not that hard to avoid running crap perl 
and python software.


It's interesting that you'd mention Java here.  I don't much like the Java 
language or the Java programming culture, but Java bytecode has the 
interesting property that, with a little plumbing, one can send executable 
code over the network and have it run on a remote machine.  This actually 
winds up being useful for large-scale data crunching, where you want to 
move the code to the data rather than the data to the code wherever 
possible.  I wouldn't know how to build a system that does this in C (for 
instance) that isn't brittle.


Why pick on perl? 


Only because Perl makes itself the biggest target for example.  I don't HATE 
Perl.  I've even written a lot of Perl code in my day.  I also recognize it 
for what it is.  Perl is something that should be restricted to unimportant, 
small user jobs that won't be used too often, and most certainly never used 
with root permission.  As everyone knows, Perl has a very ugly history of 
permissions flaws, that can rear its head if someone does not compile it 
properly.


Why not pick on the huge number of low-quality C libraries that are out 
there?


Yes, there can be low quality libraries in C.  The main argument for 
using Perl, or other similar languages, instead of C is that there is 
less chance of errors (and thus better software) and you spend less time 
using it.


If as you point out you can have can have crappy code anywhere so that 
tosses out the first argument.  The second, that Perl is a timesaver is 
entirely subjective.  With the right libraries, and enough actual use, 
anyone can write a small utility just as efficiently in C or a similar 
language.


It depends on what the utility is.  C does not support certain useful 
forms of abstraction available in other languages.  (I'm not talking about 
inheritance here.  Generics and mixins are to my knowledge both impossible 
to do in a performant and syntactically transparent way in C.  Ditto for 
anonymous functions.  The way you emulate tagged unions in C---a struct 
with a tag field and a union member---is a little 

Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread T.J. Duchene


On 03/02/2015 11:05 AM, Steve Litt wrote:


If I were the king of all open source, and a programmer asked to write
a program in C, I would ask them to justify that. Will their
performance bottleneck be the code itself rather than the typist's
fingers? Will the time taken by their program materially affect the
overall performance of the computer? Do they need special access to the
metal that Python doesn't give them? Do they need to deal with a
library not accessible via Python, or even Lua?
We just see things differently.  My first question would be: is there 
are a justified reason NOT to use C?


In opensource, more often then not, small tasks get combined into big 
tasks, via scripting or whatever - into huge morasses of complex 
complicated scripts. It can lead to serious problems, which I personally 
prefer to avoid.  I suppose in that way I am somewhat more BSDish than 
your average Linux user.  My concern is usually what maximizes 
efficiency over the long term.




Because here's the thing. We all say we're great programmers, but
somehow, on lots of software, buffers get overrun. Pointers go errant.
Programs proceed after failed mallocs. Malloc/free loops somehow start
to accumulate more allocation than freeing. None of this is an issue in
Python. In Python, programmer mistakes tend to affect the data, not the
system. Python long ago solved the vast majority of security problems:
It's secure, and when it's not, because of its millions of users, you
find out fast.

Yes, I know that Python's got that 2.x vs 3.x problem. Yes, I know that
a lot of people hate Python's significant whitespace. Yes, I know that
a Python import is a dependency, just as sure as
libarbitraryfunctionality.so. But most Python needs are covered by its
standard imports, and they are subject to many eyes quality assurance.

You might wonder why I picked Python over Perl, Ruby and Lua. After
all, most of the interpreter benefits I stated are equally applicable
to all four. Here's why. So far, only Perl and Python are truely
intertwined with Linux. I'd like to keep that number to a minimum.
Throughout the past two decades, Perl's many ways philosophy has
fallen into disfavor, as more and more shaky, indeterminant and
unreadable code gets written in many ways. And CPAN's a menace, and
its tendancy to compile C code is failure waiting to happen. Lastly, as
far as I know, among the four interpreters I mentioned, only Perl and
Python have a stable of known good, well known and capable add-ons to
assure one that any project you start in the language you can finish in
the language.

I'm not the king of Open Source, so I don't get to make others conform
to what I say above. But when I develop something, I don't do it in C
unless I can justify C: Otherwise I fall back on my default, Python.


SteveT

Steve Litt*  http://www.troubleshooters.com/
Troubleshooting Training  *  Human Performance




___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Joel Roth
On Mon, Mar 02, 2015 at 04:12:02PM -0600, T.J. Duchene wrote:
 
 On 03/02/2015 09:11 AM, Tor Myklebust wrote:
 
 I'm even more confused by your position than I was before.
 
 
 I can see your point.  I'll try to explain more concisely.
 
 When I call something overuse, I am referring to the ideas that an
 interpreted language must be used as glue between two bits of C code, that
 C is to be used only as needed or that interpreted languages are the
 preferential language choice for writing basic system utilities.  These
 ideas has become more and more acceptable. They didn't used to be.  I
 remember when interpreted languages were either hobbyist playtoys or
 teaching tools.  Perl was used only for small jobs, and while shell was used
 extensively in System 5 init files, you were expected to do all serious work
 in C.
 
 A respectable percentage of today's Linux distribution is a kludge of rapid
 pre-existing hacks that do not always work well when layered.  You have
 something like adduser or other command utilities written in Perl, which are
 then called by init scripts, which can then be called by still more
 scripting in the form of a X GUI application to manage users.  At any stage
 it can be prone to unforeseen interpretation problems.
 
 I'm just asking at what point would it be more beneficial to simply code a
 library in something like C, and be done with it?
 
 
 Perl, Python, and Java,and a number of other languages just do not function
 well for certain kinds of tasks that require efficient resource management
 over time, yet they are constantly being used by the opensource community
 today in places were it might be advisable to reconsider.

Hi TJ,

The languages you mention are used in industry, extensively,
in heavily loaded applications.  Even the much derided PHP,
has continued to hold a huge niche.  Perl has DBI and
friends, making it possible to create pluggable
backend-independent database applications. Booking.com is
an example of large-scale user that is a perl house.

Access to external libraries from within dynamic languages
can bring in the advantages of compiled langauges.  One can
develop an application in Python or Perl, then later use
profiling to know where to optimize, and to move hotter
parts of the code to C or C++. I'm reading that Python has a
better foreign call interface than Perl.

There is an issue of finding the best modules for a purpose
on CPAN, however there are excellent modules for many, many
purposes, often well documented and with good test coverage.

Personally, I am pleased that I can use sockets through a
dynamic language like Perl without having to be an expert,
write terminal applications without being a cognosenti on
the intricacies of managing terminals, read and write files
without extensive knowledge of file-system minutae.
Lower-level expertise in a developer is usually an
advantage, however I don't think we should blame dynamic
langauges for making it possible for people to code without
knowing all the gory details at the lowest level.

When I think of Apache with mod_perl, which at one point
served a lot of pages, and the current work in Catalyst I am
sure that one can develop heavily loaded applications in
dynamic languages that don't leak resources/memory. 

Was I being trolled? ^^

cheers,

Joel

 
 
 Why pick on perl?
 Only because Perl makes itself the biggest target for example.  I don't HATE
 Perl.  I've even written a lot of Perl code in my day.  I also recognize it
 for what it is.  Perl is something that should be restricted to unimportant,
 small user jobs that won't be used too often, and most certainly never used
 with root permission.  As everyone knows, Perl has a very ugly history of
 permissions flaws, that can rear its head if someone does not compile it
 properly.
 
 Why not pick on the huge number of low-quality C libraries that are out
 there?
 Yes, there can be low quality libraries in C.  The main argument for using
 Perl, or other similar languages, instead of C is that there is less chance
 of errors (and thus better software) and you spend less time using it.  If
 as you point out you can have can have crappy code anywhere so that tosses
 out the first argument.  The second, that Perl is a timesaver is entirely
 subjective.  With the right libraries, and enough actual use, anyone can
 write a small utility just as efficiently in C or a similar language.
 .
 
 I don't think you said what you were trying to say.  Judicious use of
 abstraction is what lets us write useful software in the first place.
 
 True, however, there also comes a point where writing software in highly
 abstracted languages (usually the interpreted sort) has diminishing returns.
 I feel that they have been overused in the Linux ecosystem as whole.  My
 whole rant is really just chatting with the community and seeing if anyone
 else shares that opinion. If you don't personally, that's just fine by me.
 =)
 
 
 Have a great day!
 t.j.
 

Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Go Linux
Are you guys ever gonna run out of gas? This thread has pretty much taken over 
my Inbox . . .
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread T.J. Duchene


On 03/02/2015 05:33 PM, Tor Myklebust wrote:


This is indeed true, but it seems like a social problem rather than a 
technical problem.  People can, and will, write garbage software no 
matter what tools they have.  It might pay to let them do this with as 
little pain as possible so they can go back to working on the thing 
they were actually interested in doing.


It sounds here like you don't like that your X application is running 
scripts, probably incorrectly, to do basic stuff.  And how running a 
script can fail, with error codes like too many open files or too 
many processes or not enough memory when the task in question 
doesn't obviously involve allocating memory or spinning up a process.  
If you're in the mood to lay blame in a situation like this, I sugges 
directing it at the X application's author rather than the author of 
the script the application calls.


I'm not pointing fingers at any particular author, just the prevailing 
wisdom of the day.




I think the answer to this question is more complicated than can be 
described by a tipping point in a cost-benefit analysis.  I think 
it's context-dependent and I think it can change over the lifetime of 
the software.


Performance concerns, for instance, often crop up later in the 
lifetime of a project once it has a sizable userbase (or once somebody 
asks for the resource-intensive feature enough times). Should we code 
everything in C from the start just so we don't have to handle the 
performance problems in the unlikely event that the project succeeds?  
Maybe, but what if that constraint makes the project take quite a bit 
longer?  And what if that reduces its chances of success?


If programming were that black and white I would agree with you. 
However, C in general is the language in which other languages are 
written.  The ease with which you can link C object code to whatever 
language you happen to using pretty much renders that concern moot.


Performance concerns can cut the other way, too, under the name 
scalability.  Because it's easier to write really fast C code, you 
can get a lot farther with your really fast C code before hitting a 
performance wall.  That sounds good, but it means your code can evolve 
into a bigger mess by the time you have to address your choice of data 
structures, or parallelisation, or distribution.
I've seen plenty of scaling arguments, and some of them are perfectly 
valid arguments, but many of them are also just suppositions based on 
the idea that C can't OOP.




It's interesting that you'd mention Java here.  I don't much like the 
Java language or the Java programming culture, but Java bytecode has 
the interesting property that, with a little plumbing, one can send 
executable code over the network and have it run on a remote machine.  
This actually winds up being useful for large-scale data crunching, 
where you want to move the code to the data rather than the data to 
the code wherever possible.  I wouldn't know how to build a system 
that does this in C (for instance) that isn't brittle.
There is no magic to it.  Java's core is usually written in C after all. 
Realistically, the reason Java can do that is that Java bytecode is 
processor generic.  You could theoretically do that with C as long as 
the processors are the same.




It depends on what the utility is.  C does not support certain useful 
forms of abstraction available in other languages.  (I'm not talking 
about inheritance here.  Generics and mixins are to my knowledge both 
impossible to do in a performant and syntactically transparent way in 
C.  Ditto for anonymous functions.  The way you emulate tagged unions 
in C---a struct with a tag field and a union member---is a little 
scary in any large code base because incomplete 'switch' statements 
won't raise compile-time warnings.)
Generics are little more than data in a buffer, IMHO.  All you need do 
is cast them as you see fit.  The fact that other languages offer you 
syntactic sugar to do it, is just fine too.  The real comment is that 
the language you refer to is not more capable.  You are running it on 
the same hardware.  The difference is that the other language just makes 
it easier for you in some cases, not necessarily better.




I think you have aimed your criticism at the wrong target.  It is 
annoying that new and user-friendly have both become synonymous 
with does not work under heavy load or unusual conditions in Linux.  
It wasn't always that way.  But I would look toward the people 
building brittle stuff that instead of the guy who wrote adduser if I 
wanted to diagnose the problem.


I would rather address the disease than the symptom.  I'd rather see 
that the root cause: the cathedral of dependencies gets taken down a 
notch.  Doing that starts at the beginning, IMHO.


___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread KatolaZ
On Mon, Mar 02, 2015 at 04:35:24PM -0600, T.J. Duchene wrote:

[cut]

 I would like to point out that this is not just a curse of
 Debian. Also other distros and other operating systems (like FreeBSD)
 use perl and python scripts for some non-critical system software,
 True, enough!
 
 just because sometimes you can do in three lines of Perl what would
 require a few hundred lines of C (plus a few additional libraries)...
 That is not entirely true.  I've heard that said many times.  I've
 deliberately written code in C instead of Perl, just to test that
 assumption.  Personally, I've found it to be just that: an
 assumption.

Well, if you found that *for your particular tasks* C can replace Perl
or Python, I believe you. But it's just not true that this should be
the case for everybody else, in every possible use case.

I have always had a personal preference for C, and I think it is
absolutely winning in many different contexts. That's exactly why it's
still around after more than 40 years, and why it will probably be
around for the next 40 or so. But you can't deny that other languages
exist, and can be useful (even *more* useful than C for certain
tasks), and there might exist also good coders out there being able to
write good programs with these other languages you despise :)

Unfortunately, the world is not just black or white, when it comes to
languages. And I am among those who believe that the world *IS* and
*SHOULD BE* absolutely black or white, in many other respects... :D


 
 
 When you code in Perl, you are using subroutines and libraries that
 were incorporated into Perl core.The fact you are calling an
 entire subroutine when you split strings in Perl is no different
 than having a C string library.  You call the library to do the
 work.  You don't care how it does it, only that you get the results.
 C gets a bad reputation because a percentage of programmers never
 learned how to prevent buffer overflows or leaks is all.  That is
 certainly not C's fault.
 

And I can mantion dozens of counterexamples in which Perl or Python
would solve the task more easily than C. Just to give you an idea, I
have been doing quite a bit of XML parsing, mainly to convert data
sets of all sorts in a reasonable (ASCII) format. Well, I have done it
both in C and Python, so I think I can make a fair comparison between
the two *for this particular task* and for *my specific needs*.

Usually the C implementation of a non-trivial XML parser might require
a couple of days to be finished and be able to digest the whole schema
(you have to construct the data structure piece by piece, and to pass
around a lot of garbage, and to be sure that you don't have leaks
anywhere, and to catch and handle errors by hand...). Conversely, the
Python implementation is usually ready in less than two hours, at
most, and gives you the same set of functionalities at the cost of a
slightly longer processing time (in the range of tens of seconds, or
minutes, in the worst case). And if I have to use that code only once
(as it is *very often* the case with 98% of the code), then the Python
way is overall far better, faster, easier and convenient than any
other thing you can conceive.

My2Cents

KatolaZ

-- 
[ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
[ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
[ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
[ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread KatolaZ
On Mon, Mar 02, 2015 at 02:33:27PM -0600, T.J. Duchene wrote:

 @Katolz
 
 It's just a conversation, an exchange of views.  It's marked as OT.
 Nothing wrong with that, and it is never intended to be a put down
 in any way.  =)   I find such to be a valuable measure of the
 community.
 
 it's good to get to know the minds and opinions of the people you
 may be working together with at some point.

Totally agree :) I am the first one stimulating this kind of
discussions, when the need arises. I was only scared of other
mailinglisters complaining about an endless thread... :D

HND

KatolaZ
^^^ :P
-- 
[ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
[ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
[ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
[ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread T.J. Duchene


On 03/02/2015 08:13 AM, KatolaZ wrote:

On Mon, Mar 02, 2015 at 07:01:24AM -0500, Gravis wrote:

[cut]

Hi Gravis,

I appreciate that, but I personally can't see how the problems of
garbage collection in Java are related with good or bad programming
practices, or with a supposedly terribly long chain of dependencies
required by Perl and Python modules somebody mourned about earlier in
the thread :) And I don't get how this relates to the development of
Devuan, after all...

Best

KatolaZ


@Katolz

It's just a conversation, an exchange of views.  It's marked as OT. 
Nothing wrong with that, and it is never intended to be a put down in 
any way.  =)   I find such to be a valuable measure of the community.


it's good to get to know the minds and opinions of the people you may be 
working together with at some point.


@Gravis

We seem to think a lot alike on this subject.


t.j.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread KatolaZ
On Mon, Mar 02, 2015 at 07:01:24AM -0500, Gravis wrote:

[cut]

 
 garbage collection is actually a compounding issue, meaning that while
 it may not be a problem for programs that are only active for a few
 minutes before terminating, it is a problem for programs that are high
 intensity or run indefinitely.  it's typical (just ask an admin) for
 internally developed server side Java business database applications
 to require they be restarted daily because the devs cant figure out
 why they are running out of memory and it's easier just to have it
 restarted.  if they were developing in perl, python or any other
 number of GC languages, it would still be an issue.  while it /can/ be
 used properly, garbage collection is more of a hassle than it's worth.

Hi Gravis, 

I appreciate that, but I personally can't see how the problems of
garbage collection in Java are related with good or bad programming
practices, or with a supposedly terribly long chain of dependencies
required by Perl and Python modules somebody mourned about earlier in
the thread :) And I don't get how this relates to the development of
Devuan, after all...

Best

KatolaZ

-- 
[ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
[ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
[ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
[ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Gravis
  Contrary to what most modern programmers would like to promote, I
  do not believe for one second that mandatorily garbage collected,
  bounded languages create better code design.

 I honestly can't see all this failing around of code written in
 Python, Perl or Ruby :)

garbage collection is actually a compounding issue, meaning that while
it may not be a problem for programs that are only active for a few
minutes before terminating, it is a problem for programs that are high
intensity or run indefinitely.  it's typical (just ask an admin) for
internally developed server side Java business database applications
to require they be restarted daily because the devs cant figure out
why they are running out of memory and it's easier just to have it
restarted.  if they were developing in perl, python or any other
number of GC languages, it would still be an issue.  while it /can/ be
used properly, garbage collection is more of a hassle than it's worth.
--Gravis


On Mon, Mar 2, 2015 at 4:26 AM, KatolaZ kato...@freaknet.org wrote:
 On Mon, Mar 02, 2015 at 02:59:40AM -0600, T.J. Duchene wrote:

 [cut]


 Contrary to what most modern programmers would like to promote, I
 do not believe for one second that mandatorily garbage collected,
 bounded languages create better code design.  I would subscribe to
 precisely the reverse, actually.  If there is a flaw in the
 collector or the bound check, you have an extremely hard to fix
 problem that affects virtually everything.  You are also
 continuously wasting resources on overhead  for features that can
 fail without warning.  Even if you set that aside, the reality is
 that you are investing in all of that wasted overhead for vanishing
 returns. At no time are those features a 100% effective solution to
 the problems they were intended to solve, and they create entirely
 new ones.  So what good are they, really?

 Any code that does not work reliably isn't worth much.


 I honestly can't see all this failing around of code written in
 Python, Perl or Ruby :) Bad code is bad code in C, C++, Perl, Python,
 LISP, or whatever other language you can think of, and bad code will
 either get better or die. IMHO the evil is not in any specific
 language, but in the way you use it.

 Concerning performance, well it is not always the most important
 thing. I personally use C a lot for simulations and scientific
 calculations, but I would never do data analysis and postprocessing in
 C, since it would require every time a few days just to have a running
 thing to be used only once or twice, while I can do the same task in
 Python with 10 minutes coding and a few minutes more processing. In
 that case, *my* time and *my* performance is more important than the
 time it takes to the machine to crunch a few million numbers :)

 While I totally agree about the necessity to teach good programming
 practices to young coders, I am convinced that there is no such thing
 as the perfect language. It's just a matter of taste. And if you are
 a good coder you will write good code in asm, C, Perl, Python or
 Erlang. If you are not, then your code will be crap anyway :)

 HND

 KatolaZ

 --
 [ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
 [ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
 [ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
 [ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
 ___
 Dng mailing list
 Dng@lists.dyne.org
 https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Matthew Melton
I've been playing with golang recently and although you can't strictly stop it 
garbage collecting you can compile with a flag which produces the output of the 
escape analysis. Anything that doesn't escape gets stored on the stack. Things 
that might are stored in the heap. 
I often compile with the flag and see if there is a way to use the stack rather 
than the heap in what I am doing. In hope that the heap will get hit less. 
Perhaps the other gc languages have a similar feature that isn't being used as 
much as it might? 

Matthew Melton
m...@mjmworks.co.uk

 Gravis wrote 

  Contrary to what most modern programmers would like to promote, I
  do not believe for one second that mandatorily garbage collected,
  bounded languages create better code design.

 I honestly can't see all this failing around of code written in
 Python, Perl or Ruby :)

garbage collection is actually a compounding issue, meaning that while
it may not be a problem for programs that are only active for a few
minutes before terminating, it is a problem for programs that are high
intensity or run indefinitely.  it's typical (just ask an admin) for
internally developed server side Java business database applications
to require they be restarted daily because the devs cant figure out
why they are running out of memory and it's easier just to have it
restarted.  if they were developing in perl, python or any other
number of GC languages, it would still be an issue.  while it /can/ be
used properly, garbage collection is more of a hassle than it's worth.
--Gravis


On Mon, Mar 2, 2015 at 4:26 AM, KatolaZ kato...@freaknet.org wrote:
 On Mon, Mar 02, 2015 at 02:59:40AM -0600, T.J. Duchene wrote:

 [cut]


 Contrary to what most modern programmers would like to promote, I
 do not believe for one second that mandatorily garbage collected,
 bounded languages create better code design.  I would subscribe to
 precisely the reverse, actually.  If there is a flaw in the
 collector or the bound check, you have an extremely hard to fix
 problem that affects virtually everything.  You are also
 continuously wasting resources on overhead  for features that can
 fail without warning.  Even if you set that aside, the reality is
 that you are investing in all of that wasted overhead for vanishing
 returns. At no time are those features a 100% effective solution to
 the problems they were intended to solve, and they create entirely
 new ones.  So what good are they, really?

 Any code that does not work reliably isn't worth much.


 I honestly can't see all this failing around of code written in
 Python, Perl or Ruby :) Bad code is bad code in C, C++, Perl, Python,
 LISP, or whatever other language you can think of, and bad code will
 either get better or die. IMHO the evil is not in any specific
 language, but in the way you use it.

 Concerning performance, well it is not always the most important
 thing. I personally use C a lot for simulations and scientific
 calculations, but I would never do data analysis and postprocessing in
 C, since it would require every time a few days just to have a running
 thing to be used only once or twice, while I can do the same task in
 Python with 10 minutes coding and a few minutes more processing. In
 that case, *my* time and *my* performance is more important than the
 time it takes to the machine to crunch a few million numbers :)

 While I totally agree about the necessity to teach good programming
 practices to young coders, I am convinced that there is no such thing
 as the perfect language. It's just a matter of taste. And if you are
 a good coder you will write good code in asm, C, Perl, Python or
 Erlang. If you are not, then your code will be crap anyway :)

 HND

 KatolaZ

 --
 [ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
 [ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
 [ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
 [ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
 ___
 Dng mailing list
 Dng@lists.dyne.org
 https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread T.J. Duchene


On 03/02/2015 01:57 AM, KatolaZ wrote:

So the problem is not the language.

While I cited Perl and Python in particular, the gist of my rant was 
about sloppy coding practices.  I singled a few things out because I 
personally feel that their communities can be regarded as some of the 
worst offenders in that regard.


Others disagree, and that's just fine.  We aren't going to change things 
by talking about it, so this is mainly an academic exercise.



The truth is that in the last 30 years we have started doing millions 
new things with computers, and these new needs have unavoidably 
brought new software and new libraries. Despite I like to keep my 
programs small, simple and reliable, I believe that it is not possible 
to set limits to the creativity of coders: let them use all the 
freedom they need.


The freedom you describe has always been present. It was here long 
before I ever showed up and will be here long after I am not.  I just 
don't think that sloppy, shoddy work should be classified as anything 
other than what it is, and not described as freedom.


Again, that's just an opinion. I'm old school.


Unless they use this freedom to break my toys apart, in which case I 
get nervous ;) I personally don't see the massive usage of Perl or 
Python *per se* as a threat to the reliability of the OS.



Danger to the OS, no, not in a strict sense - because the portions of 
the OS we would be concerned about are not written in them.  I was 
referring to code that is used far more often: user applications - which 
deals with the majority of time spent.


The number of interpreted user applications are a performance concern, 
and the poor design practices that the languages actually force on or 
encourage neophyte and more advanced programmers to use is a concern.


I think that bad programming habits in C or C++ are even more 
dangerous than good Perlisms, as the SSH heartbleed saga has recently 
shown.


I'd shoot that argument down almost immediately.  What you are actually 
contrasting is poor maintenance of a codebase, not what language that 
was used.


Contrary to what most modern programmers would like to promote, I do 
not believe for one second that mandatorily garbage collected, bounded 
languages create better code design.  I would subscribe to precisely the 
reverse, actually.  If there is a flaw in the collector or the bound 
check, you have an extremely hard to fix problem that affects virtually 
everything.  You are also continuously wasting resources on overhead  
for features that can fail without warning.  Even if you set that aside, 
the reality is that you are investing in all of that wasted overhead for 
vanishing returns. At no time are those features a 100% effective 
solution to the problems they were intended to solve, and they create 
entirely new ones.  So what good are they, really?


Any code that does not work reliably isn't worth much.

I'd much rather do everything manually.  At least, I know that it is 
done correctly, and I can perform the appropriate testing to prove it.  
In my opinion, that is why C will probably never be replaced in my lifetime.


There are differing views on this, naturally.  I can only speak from my 
own experience and say that every single modern language I have used 
has been a PITA, without exception.



t.j.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Hendrik Boom
On Mon, Mar 02, 2015 at 12:16:52AM -0600, T.J. Duchene wrote:
 
 On 03/01/2015 05:56 PM, Tor Myklebust wrote:
 
 The perl-base package pre-depends on libc6 and dpkg.  And nothing else.
 I was not referring to all the software that depends on them when
 using Debian/Devuan.  I've never believed that they make good choice
 for a required component.

Even more heavily used in Deban is the shell.  Would you care to advise
its abolition?

 Frankly, I've also believe that
 interpreted languages should never be used for anything other than a
 teaching tool.

There's one huge advantage of interpreted languages:  The code you see in
the editor *is* the code you are running.  No compiler to leave an 
obsolete executable around that you might be executing instead.

This is a security issue.

If you must use something like that, at least use
 something that supports JIT to native code.

I view JIT as a form of interpretation.  That's a question of CPU
efficency, which in a lot of cases (some mentioned in this thread)
does not matter.

When it comes to code that's run often, I prefer statically typed 
languages.  A lot of bugs are caught by the compiler, many of them 
bugs that evade the test suite.

It's possible to have a statically-typed intepreter, but such things
are scarce.

-- hendrik
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread Tor Myklebust

On Mon, 2 Mar 2015, T.J. Duchene wrote:



On 03/01/2015 05:56 PM, Tor Myklebust wrote:


The perl-base package pre-depends on libc6 and dpkg.  And nothing else.


I was not referring to all the software that depends on them when using 
Debian/Devuan.  I've never believed that they make good choice for a 
required component.  Frankly, I've also believe that interpreted 
languages should never be used for anything other than a teaching tool. 
If you must use something like that, at least use something that 
supports JIT to native code.


I'm even more confused by your position than I was before.  The things 
that depend on perl-base that you'd want in any minimal system are 
adduser, linux-base (indirectly via libuuid-perl), and debconf.  adduser 
depends on perl-base because adduser and friends are perl scripts. 
linux-base depends on perl-base because /usr/bin/linux-version is a perl 
script.  debconf depends on perl-base because debconf is implemented as a 
collection of perl scripts and perl modules.


I do not see why anybody would insist that something like adduser is 
written in either a compiled language or a language with an effective 
just-in-time compiler available.  Very little time is spent running 
adduser on any system I am aware of.  The same goes for linux-version.


You can write programs in Perl or Python that do not depend on any modules 
that are not installed in the base Perl and Python packages.


I never suggested otherwise.  In fact, I went out of my way to say that the 
community attitude of overuse and the extensions specifically were the 
problem, not the core.


What community attitude of overuse?  There is a long tail of available 
perl modules and quality tends to taper off as you get to lesser-used 
libraries.  This is true of libraries in every language I am aware of.



c) In both languages, modules are usually something of a black art and
notorious for being unreliable at unexpected times.


Are you claiming that perl's module system does not always work as 
expected?  Or just that some perl modules are poorly-written?


My remarks about Perl stem from poor QA in many Perl modules, and issues 
with the community/CPAN.


Why pick on perl?  Why not pick on the huge number of low-quality C 
libraries that are out there?


You gave MailScanner as a concrete example of a perl package that pulls 
in, in your view, too many dependencies.  But consider what MailScanner 
does; it integrates MTAs with several different pieces of filtering 
software and does some of its own scanning as well.  (I suppose you could 
argue that its scope is too broad, but you weren't arguing that.)


That means it has to be able to parse emails (some of which are HTML), 
extract attachments, uncompress archives, and ask some external programs 
what they think about various things.  If you're writing software like 
this, it makes perfect sense to rely on someone else's code for handling 
mail, MIME, HTML, compressed archives, and so forth---you won't get it 
right yourself and you don't want to spend your time maintaining those 
components when you could be making your package better at its core task.


In my experience, while you can generally expect things like the Perl core 
language to act reliably,you can't expect the same of the rest of the Perl 
ecosystem to do the same. The QA simply is not there.  Not to mention that 
all of this can massively impact performance.


This reads like FUD to me.  Yes, it's possible to write Perl modules. Like 
anything else, it's possible to do slipshod work. Why are you trying to 
paint this as a *bad* thing?


Just because my opinions may not be conventional, does not mean that I am 
painting anything.


Convention does not have much to do with it.  You tried to attribute a 
perceived lack of software quality in perl libraries to perl itself, or to 
perl's ecosystem, or to the fact that perl is interpreted.  (I'm still not 
sure which one you're claiming.)  It is straightforward to write 
low-quality software in every language I have heard of, interpreted or 
not, so the problem is clearly not with perl, or with perl developers as a 
community, or with interpreting code as a concept.


Personally, I think you missed the crux of what I was trying to say 
about the piling one layer of interpreted software, one abstraction, on 
top of another.


I don't think you said what you were trying to say.  Judicious use of 
abstraction is what lets us write useful software in the first place.

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-02 Thread KatolaZ
On Mon, Mar 02, 2015 at 05:35:42PM +0100, Didier Kryn wrote:
 
 Le 02/03/2015 16:40, Hendrik Boom a écrit :
 Frankly, I've also believe that
 interpreted languages should never be used for anything other than a
 teaching tool.
 There's one huge advantage of interpreted languages:  The code you see in
 the editor*is*  the code you are running.  No compiler to leave an
 obsolete executable around that you might be executing instead.
 
 I consider weakly typed, or even non-typed languages should
 *never* be used for teaching. Unless one intends to teach loose
 programming.
 

This adds even more confusion to the discussion, as Python (one of the
blamed ones) actually *IS* a strongly-typed language. You might see
*dynamic* typing as a potential issue, and we could even agree on that
to some extent, but that's another story. Please let's try to be fair
and stick to the facts, otherwise the discussion is not useful...


 Yet I agree interpreted languages are convenient for small
 things, precisely because they are interpreted. Conveniency also
 include fast development and architecture-independant packaging.
 

And as they have already explained above, this is exactly the reason
why some non-critical Debian system utilities (such as debconf or
adduser) are written in Perl or Python :) And they were so cool to
manage to reduce the dependencies of these packages to the bare
minimum (basically, the interpreter).

I would like to point out that this is not just a curse of
Debian. Also other distros and other operating systems (like FreeBSD)
use perl and python scripts for some non-critical system software,
just because sometimes you can do in three lines of Perl what would
require a few hundred lines of C (plus a few additional libraries)...

My2Cents

KatolaZ

-- 
[ Enzo Nicosia aka KatolaZ --- GLUG Catania -- Freaknet Medialab ]
[ me [at] katolaz.homeunix.net -- http://katolaz.homeunix.net -- ]
[ GNU/Linux User:#325780/ICQ UIN: #258332181/GPG key ID 0B5F062F ]
[ Fingerprint: 8E59 D6AA 445E FDB4 A153 3D5A 5F20 B3AE 0B5F 062F ]
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread T.J. Duchene
On Sun, 2015-03-01 at 21:12 +0100, Philip Lacroix wrote:

 As other members have already pointed out, this is not a fair 
 comparison.

Perhaps.  The reasons I made the comparison are: 

a) All of them have a dependency chain so interwoven and complex that
they become non-trivial to remove.  You literally cannot have a
Debian/Devuan system without things like Perl or Python installed.

b) The software written in either language have complex module
dependency chains.  Install something like MailScanner, and you will
install a dozen Perl modules as well as a requirement.

c) In both languages, modules are usually something of a black art and
notorious for being unreliable at unexpected times. In my experience,
while you can generally expect things like the Perl core language to act
reliably,you can't expect the same of the rest of the Perl ecosystem to
do the same. The QA simply is not there.  Not to mention that all of
this can massively impact performance.


Systemd comes on the scene. Like everything else, it naturally has its
good and bad points.   Soon it starts following a repeating pattern:  

a) Soon Linux requires it, and it is non-trivial to be rid of it.
b) Modules are written in such a way that you must have the core or a
shim to use the system. Then they are incorporated into yet more
software, and it snowballs.  (Sound familiar?) 
c) The systemd modules impact system performance, and are less than
reliable. Again like the the above, the real QA is simply not there.

So yes, I do feel the comparison is somewhat valid.  

My concern however is not a perfect symmetry, but rather the design
philosophy behind them.  Over the years I've been a programmer the level
of abstraction has increased dramatically.  More and more complex layers
of dependencies are placed one on top of the other.  It's the order of
the day, and to what end? 

Call me a minimalist if you like, but as Scotty used to say: The more
you over-think the plumbing, the easier it is to stop up the drain.

Software performance and reliability has actually decreased in spite of
the fact that your machines are far, far more powerful than the old 8086
I used to spend my days on. 

You are, of course, welcome to disagree and even tell me to stuff it
if you wish.  Maybe I just come from another time, but I would
characterize things like Perl, Python, and Systemd as the push for more
and more abstraction that is detrimental to computer science in general.



 
  Packaging is, in the end, just a 
 practical
 way to manage compiled software on your system. On the other hand, what 
 a given
 software does, and how that software is tied to other software, is 
 inherently
 independent from which package management system is being used. If 
 software A
 needs software B because its developer decided to rely on software B, 
 then it
 doesn't matter whether the downstream packager decides to put B as a 
 dependency
 or not. However, if he doesn't, then software A most probably won't work 
 as
 intended, if it'll work at all.

I'm not advocating abandoning the model entirely, rather that some of
the constraints could be removed and that a more robust model could be
created using version management software.  I suggested that init files
should be separated for example.  

Init files seldom change between versions.  Sometimes they do, certainly
- but the majority of the time they are virtually identical.  Why
repackage the same files over and over? It wastes repo space and user
bandwidth every single time an update is issued.

Furthermore, if Debian had had a policy of keeping init files apart from
binary files, I doubt Devuan would have as much work as they eventually
will when Debian goes all in on systemd.  Only the init setups, and
binaries linked to systemd would require systemd in their chain.

At least, that's the way I see it.  Feel welcome to disagree, it was
just a brainstorm I was tossing about after considering that it was
actually the System 5 maintenance resolution that crippled Debian, not
systemd itself.  The lack of any promise for System 5 is why we are
here.

Cheers!
t.j.






___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread Tor Myklebust

On Sun, 1 Mar 2015, T.J. Duchene wrote:


On Sun, 2015-03-01 at 21:12 +0100, Philip Lacroix wrote:


As other members have already pointed out, this is not a fair
comparison.


Perhaps.  The reasons I made the comparison are:

a) All of them have a dependency chain so interwoven and complex that
they become non-trivial to remove.  You literally cannot have a
Debian/Devuan system without things like Perl or Python installed.


The perl-base package pre-depends on libc6 and dpkg.  And nothing else.

The python2.7-minimal package depends on libpython2.7-minimal and zlib1g 
and pre-depends on libc6.  The libpython2.7-minimal package has no depends 
or pre-depends.


This does not look interwoven and complex to me.  You need a C library, 
you need dpkg, and you need zlib, all of which are perfectly reasonable 
things to expect from a bare-bones Linux system.



b) The software written in either language have complex module
dependency chains.  Install something like MailScanner, and you will
install a dozen Perl modules as well as a requirement.


You can write programs in Perl or Python that do not depend on any modules 
that are not installed in the base Perl and Python packages.



c) In both languages, modules are usually something of a black art and
notorious for being unreliable at unexpected times.


Are you claiming that perl's module system does not always work as 
expected?  Or just that some perl modules are poorly-written?


In my experience, while you can generally expect things like the Perl 
core language to act reliably,you can't expect the same of the rest of 
the Perl ecosystem to do the same. The QA simply is not there.  Not to 
mention that all of this can massively impact performance.


This reads like FUD to me.  Yes, it's possible to write Perl modules. 
Like anything else, it's possible to do slipshod work.  Why are you trying 
to paint this as a *bad* thing?

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread Hendrik Boom
On Sat, Feb 28, 2015 at 06:11:42PM -0600, Nate Bargmann wrote:
 * On 2015 28 Feb 17:07 -0600, T.J. Duchene wrote:
  As for systemd having tentacles, there is certainly truth to that, but
  then the same argument could be said of Python or Perl.  Both are rooted
  so far into standard distributions that it is hard to extract them. 
 
 With all respect, T.J., those are merely programming languages--shell, C
 and C++ are also hard to extract--but none are trying to dictate
 policy.  They are tools a programmer uses to solve a problem which
 parallels your point that systemd is a tool for distributions, but yet
 it is seeking to impose a policy many of us dislike, especially going
 forward.  Debian users are a bit insulated at the moment as the freeze
 is keeping systemd at a given version.  Its tentacles extend even
 further in later versions, AIUI.

The way Perl and Python are different from systemd is that they are not 
exclusionary -- using them for one package doesn't prevent using other 
tools in other packages.

-- hendrik
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread T.J. Duchene


On 03/01/2015 05:56 PM, Tor Myklebust wrote:


The perl-base package pre-depends on libc6 and dpkg.  And nothing else.
I was not referring to all the software that depends on them when using 
Debian/Devuan.  I've never believed that they make good choice for a 
required component.  Frankly, I've also believe that interpreted 
languages should never be used for anything other than a teaching tool. 
   If you must use something like that, at least use something that 
supports JIT to native code.





You can write programs in Perl or Python that do not depend on any 
modules that are not installed in the base Perl and Python packages.
I never suggested otherwise.  In fact, I went out of my way to say that 
the community attitude of overuse and the extensions specifically were 
the problem, not the core.





c) In both languages, modules are usually something of a black art and
notorious for being unreliable at unexpected times.


Are you claiming that perl's module system does not always work as 
expected?  Or just that some perl modules are poorly-written?
My remarks about Perl stem from poor QA in many Perl modules, and issues 
with the community/CPAN.





In my experience, while you can generally expect things like the Perl 
core language to act reliably,you can't expect the same of the rest 
of the Perl ecosystem to do the same. The QA simply is not there.  
Not to mention that all of this can massively impact performance.


This reads like FUD to me.  Yes, it's possible to write Perl modules. 
Like anything else, it's possible to do slipshod work. Why are you 
trying to paint this as a *bad* thing?
Just because my opinions may not be conventional, does not mean that I 
am painting anything.


Personally, I think you missed the crux of what I was trying to say 
about the piling one layer of interpreted software, one abstraction, on 
top of another.  It hardly matters though. I said my piece. You're 
certainly welcome to read it however you like.   I said what was on my 
mind, and you are free to make your own judgements.  I'm not offended in 
any case.  So you don't agree.  Good for you! =) That means that you 
gave it some thought.


t.j.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread T.J. Duchene


On 03/02/2015 12:16 AM, T.J. Duchene wrote:


I was not referring to all the software that depends on them when 
using Debian/Devuan. 


*I was referring to all the software that depends on them when using 
Debian/Devuan. *


Bad editing on my part.  Mea Culpa.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread Hendrik Boom
On Sun, Mar 01, 2015 at 01:53:11AM -0500, Gravis wrote:
  Having [perl and python] doesn't cost much, IMO.
 
 this is true however, you only need a single deep-seeded flaw to
 exploit an entire system when it comes to scripting.  for further
 reading, see bash.

This is true of any library you might use, whether it's a scripting 
language or not.  Such tools tend to get more reliable the more they 
are used, because more bugs are found and fixed.

-- hendrik
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread Steve Litt
On Sun, 1 Mar 2015 09:01:58 -0500
Hendrik Boom hend...@topoi.pooq.com wrote:

 On Sat, Feb 28, 2015 at 06:11:42PM -0600, Nate Bargmann wrote:
  * On 2015 28 Feb 17:07 -0600, T.J. Duchene wrote:
   As for systemd having tentacles, there is certainly truth to
   that, but then the same argument could be said of Python or
   Perl.  Both are rooted so far into standard distributions that
   it is hard to extract them. 
  
  With all respect, T.J., those are merely programming
  languages--shell, C and C++ are also hard to extract--but none
  are trying to dictate policy.  They are tools a programmer uses to
  solve a problem which parallels your point that systemd is a tool
  for distributions, but yet it is seeking to impose a policy many of
  us dislike, especially going forward.  Debian users are a bit
  insulated at the moment as the freeze is keeping systemd at a given
  version.  Its tentacles extend even further in later versions, AIUI.
 
 The way Perl and Python are different from systemd is that they are
 not exclusionary -- using them for one package doesn't prevent using
 other tools in other packages.

True, and in addition, they've both been pretty much assumed to be
installed on every distro for the last decade.

SteveT

Steve Litt*  http://www.troubleshooters.com/
Troubleshooting Training  *  Human Performance

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-03-01 Thread Philip Lacroix

Am 01.03.2015 00:04 schrieb T.J. Duchene:
As for systemd having tentacles, there is certainly truth to that, 
but
then the same argument could be said of Python or Perl.  Both are 
rooted

so far into standard distributions that it is hard to extract them.


As other members have already pointed out, this is not a fair 
comparison.



Ultimately, the whole problem revolves around the idea of packaging.
Personally, I've come to believe that the existing idea of package
management is more damaging to Linux than systemd itself.  If the 
Debian

packaging system separated the actual init files from binary package
files, then majority of developers making Jesse packages that assume
systemd rather than System 5 would be non-issue.


I'm not sure that I agree with this. Packaging is, in the end, just a 
practical
way to manage compiled software on your system. On the other hand, what 
a given
software does, and how that software is tied to other software, is 
inherently
independent from which package management system is being used. If 
software A
needs software B because its developer decided to rely on software B, 
then it
doesn't matter whether the downstream packager decides to put B as a 
dependency
or not. However, if he doesn't, then software A most probably won't work 
as

intended, if it'll work at all.

Of course packaging, especially when automatic dependency resolution is
implemented, will introduce loads of possible decisions that can be made 
by
downstream packagers, but this is a completely different story, let 
alone the
so-called tasks, which I admit having always skipped while using 
Debian: in

fact I wanted to decide by myself which were the defaults I needed.

That being said, the Grand Unifying Init System's attempt to hijack a 
large
part of the free software ecosystem, by imposing itself as a hard 
dependency,
is technically independent from downstream packaging decisions, even if 
it

does influence those decisions.


I guess that far from focusing on subjective topics, DeVuan is forking
DeBian itself right now, while encouraging objective and balanced
discussion, which is welcome and a pleasure to read.


Fair enough, Philip. Who am I to say it does not have entertainment
value?


Not only entertainment value: educational and *ethical* value as well.


As a person who has written C code and used Unixes for about 20+ years,
I see some technical benefit in systemd's approach.  Just because
systemd itself has design flaws does not mean the entire concept is 
bad.
The fact that I come right out and say so, even if it just happens to 
go

against the majority sensibility is: with blunt honestly, not my
problem.


No one ever said that its entire concept is bad. Moreover, I think it is 
kind
of useless to insist with this here, since Devuan is intentionally, 
consciously
and rationally avoiding systemd, no matter what its technical merits 
are.



I'm not really looking for a debate on the topic, because in the grand
scheme of things my opinion does not amount to much, really.   Nor
should it.  You should always make up your own mind.


Of course.


If you'd rather not hear it, I can certainly go elsewhere or refrain
from posting, but I personally do not believe that Devuan needs yes
men (or yes-women).


Well, the decision is completely up to you. I am a guest on this list, 
and I'm
a peaceful fellow, hence it is not my goal, nor my right, to send anyone 
away,
whatever opinions they have. On the other hand, as others have pointed 
out,
there are plenty of pro/anti systemd debates on the Web already, so it 
makes

no sense to replicate them here, a systemd-free project by definition.


This one seems to have been inspired by Microsoft's ancient anti-Linux
FUD marketing campaign - you know, the one with a long-proboscized
monster-penguin.


Not at all.  It is simply a comment on the collective nature of Linux.
Sometimes design by committee is not the best approach.  That's simply
life.  That I call Linux a Linux is a mean-spirited, ugly camel with
the number of humps chosen by committee but endearing at the same
time is nothing more than a recognition that it has flaws. There are
precisely zero perfect software projects in the world.  Having had this
much time in the field, I simply have no illusions about it is all, and
I feel free to say so.


Agreed, but one can find drawbacks in every approach, and again, it 
makes
little sense to reiterate this here, since it is a well known factor 
which

can potentially affect just about every situation where humans interact.
Most of all, it doesn't seem to be a problem affecting Devuan very much.


I'm sorry if that bothers you, but it hardly seems a secret to me.


It doesn't bother me, I just find it pretty useless and redundant, and 
not
much constructive: I guess we already know that the Open Source 
community

is full of a**holes, etc. etc.


Have a great day, Philip! =)


Have a great day too, t.j.

Philip

Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread T.J. Duchene
On Sat, 2015-02-28 at 21:03 +0100, Philip Lacroix wrote:

 
 I wouldn't call personality clash the case of a user having specific 
 problems
 with systemd's networking tentacles on Debian Jessie, don't you think? 

Actually, yes I would call it a personality problem, but only because I
have seen them before.  No offense.  

As for systemd having tentacles, there is certainly truth to that, but
then the same argument could be said of Python or Perl.  Both are rooted
so far into standard distributions that it is hard to extract them. 

Ultimately, the whole problem revolves around the idea of packaging.
Personally, I've come to believe that the existing idea of package
management is more damaging to Linux than systemd itself.  If the Debian
packaging system separated the actual init files from binary package
files, then majority of developers making Jesse packages that assume
systemd rather than System 5 would be non-issue.

 
 Anyway,
 I guess that far from focusing on subjective topics, DeVuan is forking 
 DeBian
 itself right now, while encouraging objective and balanced discussion, 
 which
 is welcome and a pleasure to read.


*Nod* 

Fair enough, Philip. Who am I to say it does not have entertainment
value?


 
 Quite frankly, it sounds like you're actually trying to *pose* as a 
 Devuan
 supporter, which you seem not to be.

Rest assured that I wouldn't be here if I didn't think Devuan was
worthwhile.

As a person who has written C code and used Unixes for about 20+ years,
I see some technical benefit in systemd's approach.  Just because
systemd itself has design flaws does not mean the entire concept is bad.
The fact that I come right out and say so, even if it just happens to go
against the majority sensibility is: with blunt honestly, not my
problem.  

I'm not really looking for a debate on the topic, because in the grand
scheme of things my opinion does not amount to much, really.   Nor
should it.  You should always make up your own mind. 

If you'd rather not hear it, I can certainly go elsewhere or refrain
from posting, but I personally do not believe that Devuan needs yes
men (or yes-women).   



 
  The reality is that Linux is a mean-spirited, ugly camel with the 
  number
  of humps chosen by committee.  For all of that, it is rather endearing 
  -
  because you can make of it what you will. No one can charge you in 
  court
  or judge less of your character for doing your own thing.
 

 This one seems to have been inspired by Microsoft's ancient anti-Linux 
 FUD
 marketing campaign - you know, the one with a long-proboscized 
 monster-penguin.

Not at all.  It is simply a comment on the collective nature of Linux.
Sometimes design by committee is not the best approach.  That's simply
life.  That I call Linux a Linux is a mean-spirited, ugly camel with
the number of humps chosen by committee but endearing at the same
time is nothing more than a recognition that it has flaws. There are
precisely zero perfect software projects in the world.  Having had this
much time in the field, I simply have no illusions about it is all, and
I feel free to say so.  

I'm sorry if that bothers you, but it hardly seems a secret to me.

Have a great day, Philip! =)

t.j.



___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread Nate Bargmann
* On 2015 28 Feb 17:07 -0600, T.J. Duchene wrote:
 As for systemd having tentacles, there is certainly truth to that, but
 then the same argument could be said of Python or Perl.  Both are rooted
 so far into standard distributions that it is hard to extract them. 

With all respect, T.J., those are merely programming languages--shell, C
and C++ are also hard to extract--but none are trying to dictate
policy.  They are tools a programmer uses to solve a problem which
parallels your point that systemd is a tool for distributions, but yet
it is seeking to impose a policy many of us dislike, especially going
forward.  Debian users are a bit insulated at the moment as the freeze
is keeping systemd at a given version.  Its tentacles extend even
further in later versions, AIUI.

Other tools we're familiar with also dictate policy at some level such
as dpkg and apt, however, the authors of those tools don't start
throwing around the term haters whenever someone sets out to compile
from source outside of their policy.  Do you see the difference?

systemd strongly reflects the personality of its developers.
Unfortunately, that doesn't make it unique, but it's the first time I
recall a lead developer being so outspoken since the CDR tools guy was
routed around by Debian and others.  Personally, the existence of
systemd is fine if that is what an admin or user or distribution finds
useful.  Debian made its choice and after looking at it for a while I
don't want to continue down that road.  That doesn't make me a hater, I
prefer the term discerning.

- Nate

-- 

The optimist proclaims that we live in the best of all
possible worlds.  The pessimist fears this is true.

Ham radio, Linux, bikes, and more: http://www.n0nb.us
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread Philip Lacroix

Am 27.02.2015 21:18 schrieb T.J. Duchene:
With respect to all, I think that a measure of objectivity is called 
for

here. I think that because personality clashes that Debian's entire
systemd discussion has lost any sense of reality long ago.


I wouldn't call personality clash the case of a user having specific 
problems
with systemd's networking tentacles on Debian Jessie, don't you think? 
Anyway,
I guess that far from focusing on subjective topics, DeVuan is forking 
DeBian
itself right now, while encouraging objective and balanced discussion, 
which

is welcome and a pleasure to read.

With no offense or judgment intended, I'd rather not see Debian's mud 
at
our door. The reason we left was to get away from it. Devuan does not 
need

to justify its own existence.


Debian's mud at our door? The reason we left? With all due respect 
and no
judgement intended, your sudden use of the royal We on this list is 
quite
surprising, especially since about three weeks ago you wrote the 
following
comments, which strikingly resemble to what can be read on Poettering's 
blog,
which is being copypasted around the web by many well-disguised 
Yes-Men:


Funny thing. I hear a lot of complaining about systemd, and yes, i 
think

some of it is justified, but consider this... Rather than joining the
project and steering it in another direction, or creating patches to 
fix

what you do not like, everyone is just standing about complaining.
(...)
The reality is that no matter what anyone does, systemd is here to 
stay

(...)
There is no escaping this fact of life. Linux as an OS is developed in 
a

hodgepodge of distributions. The reason systemd has found such wide
adoption is that it simplifies their work.


Quite frankly, it sounds like you're actually trying to *pose* as a 
Devuan

supporter, which you seem not to be.

The reality is that Linux is a mean-spirited, ugly camel with the 
number
of humps chosen by committee.  For all of that, it is rather endearing 
-
because you can make of it what you will. No one can charge you in 
court

or judge less of your character for doing your own thing.


This one seems to have been inspired by Microsoft's ancient anti-Linux 
FUD
marketing campaign - you know, the one with a long-proboscized 
monster-penguin.
However, let's paraphrase it: of course Linux is free software 
released under
the GPL and similar licenses, therefore you can make of it what you 
will...
unless somebody manages to nail it down through some subtle and nasty 
agenda

which makes said licenses useless.


I've had Debian, RedHat, and just about every major distribution grace
my system at some point. With every single one of them, without
exception, has had issues of some kind or another.  Some of which were
major showstoppers. Some didn't even boot, others were so poorly
assembled that you'd think the packagers were drunken monkeys.


Unfortunately I cannot brag such a catastrophic experience with Linux
distributions myself, but that's probably my fault. Anyway, your comment
sounds like yet another iteration of the Linux is broken mantra, hence 
I

encourage you to jump on (or return to) the Grand Unifying Init System
bandwagon.


All of this started long before systemd was ever created, and will
certainly be around long after systemd is forgotten.


Yeah. However, this is (again) just another way to say That's the way 
it
is, or So goes the world, while dismissing specific problems by 
pushing

them inside the foggy and much undetermined concept of life.

Philip
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread Joel Roth
On Sun, Mar 01, 2015 at 12:05:32AM -0500, Gravis wrote:
  My point is that Perl and Python as system software are forced on you in
  a Linux distribution as a requirement in much the same way that systemd
  is.  You can't get rid of them

Having them don't cost much, IMO.
 
A lot of the Debian infrastructure is written in perl.  In
Gobo Linux, the system administration software is written in
shell. Utility for administrating Nix are written in Nix language. 

 this is actually something i'm looking into fixing.  my preference
 would be to make a standard POSIX base to build upon.  the LSB is a
 bad joke.

As a basis for building Linux distributions?
You may look into Automated Linux from Scratch

http://www.linuxfromscratch.org/alfs/

cheers

 --Gravis





 
 
 On Sat, Feb 28, 2015 at 11:49 PM, T.J. Duchene t.j.duch...@gmail.com wrote:
  On Sat, 2015-02-28 at 18:11 -0600, Nate Bargmann wrote:
 
 
  With all respect, T.J., those are merely programming languages--shell, C
  and C++ are also hard to extract--but none are trying to dictate
  policy.
 
  I would not consider C in that group, as the system actually requires
  the C library for the OS to function on the most basic level, not to
  mention that the kernel, Perl and Python are actually written in C.
 
  My point is that Perl and Python as system software are forced on you in
  a Linux distribution as a requirement in much the same way that systemd
  is.  You can't get rid of them, without pulling a DIY. Linux as a
  platform does not require them to function.
 
  What makes it relevant to the conversation is that it is all about
  attitude. They are enthusiastically endorsed by communities that refuse
  to acknowledge that either can be as much of a hindrance as a help in
  many cases. For example, Python as a programming language is designed
  specifically to dictate how you do things, i.e. Zen of Python: There
  should be one-- and preferably only one --obvious way to do it.
 
  Sometimes Linux can be its own worst enemy.
 
 
  Other tools we're familiar with also dictate policy at some level such
  as dpkg and apt, however, the authors of those tools don't start
  throwing around the term haters whenever someone sets out to compile
  from source outside of their policy.  Do you see the difference?
 
  There is some truth to that, but you can revisit that virtually anywhere
  there are fanboys/fangirls. The fact that few authors like LP can use
  the term haters to divert attention from the real issues, and then get
  a free pass just shows how easily the issue has polarized others and how
  easily the sheeple are manipulated into going along.
 
  t.j.
 
  ___
  Dng mailing list
  Dng@lists.dyne.org
  https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
 ___
 Dng mailing list
 Dng@lists.dyne.org
 https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

-- 
Joel Roth
  

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread T.J. Duchene
On Sat, 2015-02-28 at 18:11 -0600, Nate Bargmann wrote:

 
 With all respect, T.J., those are merely programming languages--shell, C
 and C++ are also hard to extract--but none are trying to dictate
 policy.

I would not consider C in that group, as the system actually requires
the C library for the OS to function on the most basic level, not to
mention that the kernel, Perl and Python are actually written in C.

My point is that Perl and Python as system software are forced on you in
a Linux distribution as a requirement in much the same way that systemd
is.  You can't get rid of them, without pulling a DIY. Linux as a
platform does not require them to function. 

What makes it relevant to the conversation is that it is all about
attitude. They are enthusiastically endorsed by communities that refuse
to acknowledge that either can be as much of a hindrance as a help in
many cases. For example, Python as a programming language is designed
specifically to dictate how you do things, i.e. Zen of Python: There
should be one-- and preferably only one --obvious way to do it.

Sometimes Linux can be its own worst enemy.


 Other tools we're familiar with also dictate policy at some level such
 as dpkg and apt, however, the authors of those tools don't start
 throwing around the term haters whenever someone sets out to compile
 from source outside of their policy.  Do you see the difference?

There is some truth to that, but you can revisit that virtually anywhere
there are fanboys/fangirls. The fact that few authors like LP can use
the term haters to divert attention from the real issues, and then get
a free pass just shows how easily the issue has polarized others and how
easily the sheeple are manipulated into going along.  

t.j.

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread Gravis
 My point is that Perl and Python as system software are forced on you in
 a Linux distribution as a requirement in much the same way that systemd
 is.  You can't get rid of them

this is actually something i'm looking into fixing.  my preference
would be to make a standard POSIX base to build upon.  the LSB is a
bad joke.
--Gravis


On Sat, Feb 28, 2015 at 11:49 PM, T.J. Duchene t.j.duch...@gmail.com wrote:
 On Sat, 2015-02-28 at 18:11 -0600, Nate Bargmann wrote:


 With all respect, T.J., those are merely programming languages--shell, C
 and C++ are also hard to extract--but none are trying to dictate
 policy.

 I would not consider C in that group, as the system actually requires
 the C library for the OS to function on the most basic level, not to
 mention that the kernel, Perl and Python are actually written in C.

 My point is that Perl and Python as system software are forced on you in
 a Linux distribution as a requirement in much the same way that systemd
 is.  You can't get rid of them, without pulling a DIY. Linux as a
 platform does not require them to function.

 What makes it relevant to the conversation is that it is all about
 attitude. They are enthusiastically endorsed by communities that refuse
 to acknowledge that either can be as much of a hindrance as a help in
 many cases. For example, Python as a programming language is designed
 specifically to dictate how you do things, i.e. Zen of Python: There
 should be one-- and preferably only one --obvious way to do it.

 Sometimes Linux can be its own worst enemy.


 Other tools we're familiar with also dictate policy at some level such
 as dpkg and apt, however, the authors of those tools don't start
 throwing around the term haters whenever someone sets out to compile
 from source outside of their policy.  Do you see the difference?

 There is some truth to that, but you can revisit that virtually anywhere
 there are fanboys/fangirls. The fact that few authors like LP can use
 the term haters to divert attention from the real issues, and then get
 a free pass just shows how easily the issue has polarized others and how
 easily the sheeple are manipulated into going along.

 t.j.

 ___
 Dng mailing list
 Dng@lists.dyne.org
 https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-28 Thread Joel Roth
On Sat, Feb 28, 2015 at 08:18:59PM -1000, Joel Roth wrote:
 On Sun, Mar 01, 2015 at 12:05:32AM -0500, Gravis wrote:
   My point is that Perl and Python as system software are forced on you in
   a Linux distribution as a requirement in much the same way that systemd
   is.  You can't get rid of them
 
 Having them don't cost much, IMO.
  
 A lot of the Debian infrastructure is written in perl.  In
 Gobo Linux, the system administration software is written in
 shell. Utility for administrating Nix are written in Nix language. 
 
  this is actually something i'm looking into fixing.  my preference
  would be to make a standard POSIX base to build upon.  the LSB is a
  bad joke.
 
 As a basis for building Linux distributions?
 You may look into Automated Linux from Scratch
 
 http://www.linuxfromscratch.org/alfs/

And interesting to find that the LFS books
exist in regular and systemd flavors.

http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks

The jalfs software hasn't been undated changed since 2009, however
the LFS books are current.

 cheers
 
  --Gravis
 
 
 
 
 
  
  
  On Sat, Feb 28, 2015 at 11:49 PM, T.J. Duchene t.j.duch...@gmail.com 
  wrote:
   On Sat, 2015-02-28 at 18:11 -0600, Nate Bargmann wrote:
  
  
   With all respect, T.J., those are merely programming languages--shell, C
   and C++ are also hard to extract--but none are trying to dictate
   policy.
  
   I would not consider C in that group, as the system actually requires
   the C library for the OS to function on the most basic level, not to
   mention that the kernel, Perl and Python are actually written in C.
  
   My point is that Perl and Python as system software are forced on you in
   a Linux distribution as a requirement in much the same way that systemd
   is.  You can't get rid of them, without pulling a DIY. Linux as a
   platform does not require them to function.
  
   What makes it relevant to the conversation is that it is all about
   attitude. They are enthusiastically endorsed by communities that refuse
   to acknowledge that either can be as much of a hindrance as a help in
   many cases. For example, Python as a programming language is designed
   specifically to dictate how you do things, i.e. Zen of Python: There
   should be one-- and preferably only one --obvious way to do it.
  
   Sometimes Linux can be its own worst enemy.
  
  
   Other tools we're familiar with also dictate policy at some level such
   as dpkg and apt, however, the authors of those tools don't start
   throwing around the term haters whenever someone sets out to compile
   from source outside of their policy.  Do you see the difference?
  
   There is some truth to that, but you can revisit that virtually anywhere
   there are fanboys/fangirls. The fact that few authors like LP can use
   the term haters to divert attention from the real issues, and then get
   a free pass just shows how easily the issue has polarized others and how
   easily the sheeple are manipulated into going along.
  
   t.j.
  
   ___
   Dng mailing list
   Dng@lists.dyne.org
   https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
  ___
  Dng mailing list
  Dng@lists.dyne.org
  https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
 
 -- 
 Joel Roth
   
 
 ___
 Dng mailing list
 Dng@lists.dyne.org
 https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

-- 
Joel Roth
  

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-27 Thread Steven W. Scott
Lol! I recently happened to be researching the different soundsystem
architectures, after incinerating pulseaudio on my laptop/Wheezy and then
having different problems, and found -- https://wiki.debian.org/Sound

What struck me of particular interest were the three diagrams of how
alsa/jack/pulseaudio perceive the sound architecture. I couldn't help but
think that systemd very likely has the same structure. The mother, may
I?/None shall pass/TRON MCP structure.

Developers often hang to a general pattern of designing things; I cant see
why the designer behind pulseaudio would be different. Best argument
against systemd I've seen to date.

SWS
On Feb 27, 2015 11:45 PM, Steve Litt sl...@troubleshooters.com wrote:

 On Fri, 27 Feb 2015 14:18:15 -0600
 T.J. Duchene t.j.duch...@gmail.com wrote:


  With respect to all, I think that a measure of objectivity is called
  for here.  I think that because personality clashes that Debian's
  entire systemd discussion has lost any sense of reality long ago.

 You know, T.J., I might just agree with you, *if* you can show me a
 block diagram of the systemd ecosystem, *complete with interaction
 lines as well as functional blocks*.

 You know, like this:

 http://troubleshooters.com/lpm/201202/images/email_arch_personal.png

 Or these:

 http://troubleshooters.com/lpm/200803/images/server_app.png
 http://troubleshooters.com/lpm/200803/images/client_app.png

 Or these:

 http://www.troubleshooters.com/linux/djbdns/images/mm_process_overview.png
 http://www.troubleshooters.com/linux/djbdns/images/mm_daemontools.png
 http://www.troubleshooters.com/linux/djbdns/images/mm_minimal_service.png

 http://www.troubleshooters.com/linux/djbdns/images/mm_dnscache_block_diagram.png

 http://www.troubleshooters.com/linux/djbdns/images/mm_tinydns_block_diagram.png

 Or this:

 http://www.troubleshooters.com/linux/nullmailer/images/nullmailer_mm.png

 But not the following, because it's boxes with no lines:


 http://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Systemd_components.svg/440px-Systemd_components.svg.png

 Nor this, because it's obviously incomplete as a representation of the
 systemd ecosphere:


 http://upload.wikimedia.org/wikipedia/commons/thumb/e/e7/Linux_kernel_unified_hierarchy_cgroups_and_systemd.svg/440px-Linux_kernel_unified_hierarchy_cgroups_and_systemd.svg.png


 Bottom line is this: If you make a modular system with thin interfaces
 and sane components, somebody will make a block diagram representing it,
 accurately, in its entirety.

 It could be argued that the email, sockets, and djb software systems I
 diagrammed were much simpler than systemd. Fair enough, but I'm one guy
 doing this stuff in my spare time, not six guys getting paid full time
 by Red Hat. I'm sure one of the geniuses Red Hat hired could have
 diagrammed system accurately and completely. Heck, I often do that
 *before* I write software, just so the system turns out architecturally
 sound.

 Let's see the block diagram. Prove systemd doesn't have grave
 architectural problems.

 SteveT

 Steve Litt*  http://www.troubleshooters.com/
 Troubleshooting Training  *  Human Performance

 ___
 Dng mailing list
 Dng@lists.dyne.org
 https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


[Dng] [OT] Debian problems with Jesse - was simple backgrounds

2015-02-27 Thread T.J. Duchene
On Fri, 2015-02-27 at 18:13 +, KatolaZ wrote:
 On Fri, Feb 27, 2015 at 01:56:56PM +, Matthew Melton wrote:
 
 [cut]
 
   
   Just to support my point, Debian has a great logo, but this is what is
   currently happening to the users of Jessie, thanks to the
   systemd-nonsense:
   
   https://lists.debian.org/debian-user/2015/02/msg00013.html
  

 
 Well, I still find it hard to believe that a modern Unix OS might be
 stuck at boot because I forgot to connect an ethernet cable... This is
 the essence of the systemd-nonsense. In that case it was just a
 laptop, but can you imagine something similar happening on a
 production server? Who is going to pay for the downtime that these
 little glitches are going to cause? How much should systemd damage


With respect to all, I think that a measure of objectivity is called for
here.  I think that because personality clashes that Debian's entire
systemd discussion has lost any sense of reality long ago.  With no
offense or judgment intended, I'd rather not see Debian's mud at our
door.  The reason we left was to get away from it.  Devuan does not need
to justify its own existence.  

The reality is that Linux is a mean-spirited, ugly camel with the number
of humps chosen by committee.  For all of that, it is rather endearing -
because you can make of it what you will. No one can charge you in court
or judge less of your character for doing your own thing.

I've had Debian, RedHat, and just about every major distribution grace
my system at some point.  With every single one of them, without
exception, has had issues of some kind or another.  Some of which were
major showstoppers.  Some didn't even boot, others were so poorly
assembled that you'd think the packagers were drunken monkeys. 

All of this started long before systemd was ever created, and will
certainly be around long after systemd is forgotten.

t.j.

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng