[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[RANT] [OT] Bloating dependencies instead of using recommends (was: Re: RFS: sqlkit)



On Sep 04 2009, Boyd Stephen Smith Jr. wrote:
> On Friday 04 September 2009 13:14:43 Alessandro Dentella wrote:
> > So I'd really prefer to leave those 2 drivers as dependencies.
> 
> Recommends, right?  As a user it annoys me to no end when the packager Depends 
> on something the system will work without; I end up having to roll my own 
> packages to get the small footprint I desire.

Thank you so very much for bringing this up. I agree 100% with your comment.

I am really annoyed with the current trend of packages dragging in a lot
of dependencies on which the packages don't really "depend". The word
"dependency" seems to has lost its meaning.

A software that is merely an "additive" to another should be a suggests
or recommends. The package managers explicitly install recommends,
unless told otherwise.

For instance, some packages of mine may be useful with some tools that I
myself never, ever use (and most probably never will---e.g., for
compression, I am willing to use gzip, bzip2 or lzma instead of lzo).  I
list such other packages as recommends or suggests, as determined by
policy.

But the problem is that other people seem to have infinite computational
resources: hard disks are always the biggest, their computer memory has
no end, their cpus can run even the silliest background daemons killing
lots of cycles just to put a purple pixel in the lower right corner of
the screen with super-duper 4D with many effects, doing everything
(sure, why not) in interpreted languages (that, of course, have to be
re-JIT compiled every single time the program is run---why bother
compiling it once).

They need a super computer with the latest graphics processing unit just
to show some silly mouse trail animation.

And this problem does not happen only with Debian, and with the current
Desktop environments (proprietary or not). It also seems to happen with
some meant-to-be-small packages, also.

I can cite many examples, but I leave this as an exercise to anybody who
thinks that his system is "leaner" than other unnamed operating systems:
just run debtree [1] on some of your packages and be scared of what you
get as output.

[1] http://alioth.debian.org/~fjp/debtree/

Geee. Just think of the already bought, installed, established base of
computers that were sold during the last decade (which are the ones that
*are* in the hands of the users) and the sold-from-now-on.

Apparently, people don't even remember how coding were done in, say, 15
or 20 years ago.  If you want to see what a surprising animation, with
sound, synchronized could be done on a i386 computer, just watch Future
Crew's Second Reality. [2]

[2] http://www.youtube.com/watch?v=XtCW-axRJV8

It was meant to be run on computers that were much slower than the ones
that we have today.

An ironic thing here is that the video on youtube has more than 17 times
(17 times!) the size of the original program.

People have come to be used to fast computers which even "forbids" bad
coding. I would recommend them to read a very good book called
"Programming Pearls", by Jon Bentley.

> With recommends, newbie and novice users will get the packages, and
> one of the first things you learn in wrangling apt-get/aptitude is how
> to not install Recommends by default.

Amen to that.


Regards, Rogério Brito.

-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org


Reply to: