On Mon, 23 Feb 2015 22:33:28 +0000
Noel Torres <envite@???> wrote:
> On Saturday, 21 de February de 2015 18:52:22 Nate Bargmann escribió:
> > * On 2015 20 Feb 11:56 -0600, Steve Litt wrote:
> > > On Fri, 20 Feb 2015 08:59:33 -0800
> > >
> > > Go Linux <golinux@???> wrote:
> > > > We all knew this was coming . . .
> > > >
> > > > KDE Will Depend on 'logind' and 'timedated' in 6 Months
> > > >
> > > > https://soylentnews.org/article.pl?sid=15/02/20/101235
> >
> > Following on here since I inadvertently deleted Go Linux's post.
> >
> > Ughh, so they will apparently drop "legacy" support. Why? What
> > does it hurt? Why is backward compatibility anathema to these
> > people? I couldn't care less if they want to use various systemd
> > services, but why can there only be one way? Imagine the chaos if
> > the maintainers of the C library behaved in a like manner (okay,
> > we'd have Python, but I digress ;-).
> >
> > I guess that I am simply too dense to "get" the current paradigm.
> > Actually, I do get it and this is now simply unacceptable behavior
> > from supposedly free software projects.
> >
> > - Nate
>
> This is the same as depending on a library like QT.
>
> The article specifies it will not depend on systemd as init, just on
> its services logind and timedated.
>
> Why not? If I were a developer and I had a library or service doing
> part of my work, I would link to it and delete duplicated code on my
> side.
>
> I do not re-program printf everytime I need some output.
>
> er Envite
Using somebody else's supposedly reusable code has costs and benefits.
The benefit is that you needn't write nor maintain the code, and your
copy of the functionality works the same as everyone else's.
The cost is one more thing the user must install, one more dependency,
and that your code can now be broken by somebody else's mistake.
The printf() functionality is a perfect example of all benefit and no
cost. Old, tested, known good, pretty much one for one code to
functionality, or at least <stdio> is useful for just about every C
program that inputs or outputs.
But consider if you needed an enhancement of printf() that would
prepend the date. You could either code it yourself, or you could use
that functionality from the kitchen-sink library. Kitchen-sink has 700
API functions, and has a dependency tree 4 deep and 15 wide at level 3.
Incorporating Kitchen-Sink brings in code from twelve different
projects of varying quality. Some of these dependencies aren't even
offered by some distro package managers, so they must be hand compiled
(sometimes impossible) or retrieved from a repository you might or
might not trust. All to save five lines of code on your part.
I don't usually reinvent the wheel, but if all I need is a single
spoke, I'm darn well not going to weld on a wheel. And if what I need
is a hex bolt, I'm not going to weld on a wheel and then re-fashion its
axle to be a hex bolt.
In this particular case, where systemd code is needed, and systemd
comes from untrusted vendors with a pattern and practice of API
changes, that's a cost I would *never* put up with if I had a choice.
SteveT
Steve Litt * http://www.troubleshooters.com/
Troubleshooting Training * Human Performance