37
zeknoss
5y

Really, I hate this composer / bower / npm shitholes!

Why the hell is my app 300MBs?!? Because that shitty pudding composer decided to download the ENTIRE git including README.md, examples, 5 hours of assembly-giraffe porn, my granny's pajamas and two wraps of kebabs!

How hard is it to define the folder that contains the REQUIRED library so that our project might stay at 5MBs instead of 300?

Comments
  • 1
    @teganburns this literally kills physical environment as well. The more bandwidth and disk IO usage the more CO2 emissions literally. There should be laws for real!
  • 2
    @Artemix I might have not express myself clear enough. So I'll go through this with an example.

    Let's say you want to use a simple library, jquery. What do you do? If you are using bower you type "bower install jquery", right? Then bower downloads the whole content of the jquery git repo and extract it into jquery folder under bower_components.

    But hey, I just wanted to use jquery.min.js under the dist folder, why the hell did bower download dist, external, src, AUTHORS.txt, README.md, etc?

    If someone thought of putting a variable in bower manifest to point the client to a certain file/folder in case the developer only needed the files to USE the jquery, wouldn't that be nice? I mean jquery itself is 85kb but the entire git repo is 1.3mb! You get what I mean?
  • 0
    @Artemix We have the same approach. See my first ever rant :)
  • 0
    Really? You are complaining about a few MiBs some developers do download and think this has any impact on the overall CO2 footprint? I mean video/music streaming takes more than 50% of overall traffic: http://bit.ly/1Nf9wFH

    I absolutely do understand that the data isn't required. Bower/npm could provide it like many Linux distributions do. One normal package for 95% of users and a -src version with the additional data to rebuild the lib locally or whatever you want to do. But the traffic->CO2 is not simply not true.
  • 0
    @MrThompson I'm not simply saying the only responsible thing of CO2 is this, but this is a part of the pattern of today's humanity. The streaming, the wasting of BW & disk IO, the needlessly working electric devices, pile all them up and you have a ugly monster.

    Youtube netflix and spotify being most resource wasting services does not make thiss approach innocent. Hawking saying we got left 100 years of habitable earth in front of us should be saying something.
  • 2
    My .m2 folder has 4GB 😓
  • 1
    @azous wow dats one big ass library folder!
  • 0
    @zeknoss Yes basically every bit counts but if you want to solve a problem having a lot of different reasons why do you put your effort in the least serve one? I mean all end users traffic is only a small part of all CO2 emission causes. And of that the traffic caused by some useless developer file transfers is more than negligible. I mean other every day senseless things are more serve. I mean how many time did you buy a new smartphone/shoes/whatever although your last one was not broken? Even this app and this rant counts then and affects mother earth' healthiness. 😉
    I am absolutely on your side when it comes to take care about ecological topics but I saw what's going on in the US, no recycling at all no care about gas usage, that does hurt, not some extra MiB of data.
  • 2
    @zeknoss its maven's local repository folder 😜
  • 0
    @MrThompson I get your point, but you gotta understand, this place is for ranting about dev issues :) Wouldn't it be a bit weird if I ranted about carbon emissions of cars instead of package managers in the first place?

    I don't think we both need to say anymore, we both care about same things, so let me rant here for some ineficcient dev tool, alright?

    Cheers!
  • 1
  • 1
    You can try:

    composer install --prefer-dist --no-dev

    This should get the distribution where possible and no Dev dependencies.
  • 0
    @chrisrhymes thank you Chris, I know this one and use it, but don't you think this should be the default?
  • 1
    @zeknoss I do find it strange it installs dev dependencies by default now you mention it. Not sure why?
  • 0
    @chrisrhymes the same question came to my mind when I was to United Kingdom and saw the faucets in toilets. why seperate cold and hot water faucets, why?!?
  • 1
    @zeknoss even stranger, calling taps faucets... 😜
  • 0
    @chrisrhymes strange times, indeed...
  • 1
    I share your pain mate, composer is the trojan horse enabler provided by lazy fuckers who get trapped into hype and like easy solutions to complex problems... now every library uses it, and we are stuck with this fucking piece of shit
Add Comment