What the web platform can learn from Node.js: The Darwinism of small modules
Web development is in truly a sad state.  Having worked on a larger Node project I&#x27;ll never do it again.  The only thing you can do is npm shrinkwrap and never update your dependencies ever again.  If you update you are f&#x27;ed.  It&#x27;s a nightmare.  Semvar doesn&#x27;t help at all.  For instance Bookshelf added a method called count.  Co worker was on .4 and using count.  Everyone else was on .3.  0_0. <a href="https:&#x2F;&#x2F;github.com&#x2F;tgriesser&#x2F;bookshelf&#x2F;issues&#x2F;888" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tgriesser&#x2F;bookshelf&#x2F;issues&#x2F;888</a><p>If you want things to just work like in the Ruby community, make sure you shrinkwrap.<p>I don&#x27;t think most people run into this because most backend node programmers have moved to Go at this point, so they&#x27;re not aware of the upgrade problems.<p>On the front end, people are probably re writing the front end every 3 or 4 months.  Moving from javascript framework to javascript framework.  Never dealt with upgrading 6to 5 to Babel to Babel 4 to 5 to 6, and npm from 2 to 3.  Or browserify, browserify react hot reload, react-proxy v1 only, gulp.  Ugh.<p>I&#x27;m not sure it&#x27;s possible to move a project using Babel 5, async&#x2F;await, generators and react to upgrade to Babel 6.  I&#x27;ve spent hours on it.<p>Sometimes I think it&#x27;s all some kind of cruel joke.  Look at Babel.  I mean a library that doesn&#x27;t do anything without installing a plugin.  At least support transpiling ES 6 and 7 to 5 out of the box and everything else with a plugin.  I have to install like 4 plugins to get anything running.