4 ms·
Ah, the neverending cycle. 1. The existing tool is way too complicated to configure and slow. Let me introduce a new, zero-configuration, blazing fast tool 2.
by joshwa 8y ago
Ah, the neverending cycle.
1. The existing tool is way too complicated to configure and slow. Let me introduce a new, zero-configuration, blazing fast tool
2. OK so because it's strongly opinionated there are some things it can't do. So we'll allow you to extend it via plugins. You'll have to configure this.
3. Due to the increasing popularity, we are making a meta-version that lets you re-plug any element in the entire system with one of your own choosing. You'll have to configure this.
4. GOTO 1.
- rising-sky 8y ago> 1. The existing tool is way too complicated to configure and slow. Let me introduce a new, zero-configuration, blazing fast tool sounds like progress / innovation to me?
- tomnipotent 8y agoYou mean iterating on something, sorta the entire conceptual model behind the scientific method of experimentation?
- some_account 8y agoIterating without improvement is just making a different wheel, if you know what I mean. It gives the impression of progress without actually making progress. This is also why I got tired being a programmer after doing it for many years. First version is always super nice. Then you add features, and refactor. Doing this is slower and slower the bigger your software gets. At the end, your software is filled with complexity and you want to rewrite it from scratch. So you do, and you are back with a nice version. Until again, more features need to be added. Now, does this example above mean the developer is innovating? Are we getting somewhere? No. At the end, his product is going to be replaced by other products that does the job better - until they also meet the same fate.
- tomnipotent 8y ago> No. At the end, his product is going to be replaced by other products that does the job better - until they also meet the same fate. Yes, this is the very definition of innovation. Just because what you're working on is going to be replaced, doesn't mean it's not innovative. Of course it's going to be replaced, that's the whole purpose. Hopefully we get better and smarter along the way. Sometimes something that seems trivial to you as an engineer is mind blowing to a layman with domain expertise that goes on to leverage your software to help make the company more money in ways no one was expecting (or maybe save money). In other words, innovating.
- yzmtf2008 8y agoI think this is a great exaggeration of the "javascript build tools are hard to config" meme, and it honestly is obsolete. Maybe the meme was relevant two years ago, but every since (1) create-react-app and (2) webpack 3, the configuration story has greatly improved. With Webpack 4 and Parcel especially, these tool are both zero config and configurable. Your point 1 and 3 are actually not mutually exclusive, and repeating the meme just sounds like you're perhaps out of the loop for a bit. While the Javascript developer experience truly was horrible a few years back, it has dramatically become better. Try it, and you might be pleasantly surprised :)
- Soinou 8y agoI'll be speaking for Webpack, since it's the only one I use for the few internal applications at work, and I've never really used Parcel yet. Configuring Webpack is still pretty bad. If the zero config works for you, great. But if you need to configure it yourself, it's really verbose, it's really complicated, and the documentation is a bit thin. SplitChunks in Webpack are like black magic, they work but you don't have any idea how, and when they don't work, you still have no idea how. And you don't know if it's because you didn't configure them properly, because you don't know what is configuring them properly, because the documentation on them is so bad. Maybe I'm just bad at configuring Webpack, but I still don't understand how many things in Webpack work, and it's given me a lot of headaches, even with the "zero config" Webpack 4.
- dmitriid 8y agoYou are so wrong on so many levels. Have you ever looked at what CRA does? Just do an `eject`. It layers and layers and layers of configuration. The moment you need something not covered by CRA you'll be stuck with the insanity that is webpack config. [1] webpack 3 did nothing to solve the configuration problems. Heck, just half a year ago one of the core devs of webpack argued that there could be no defaults in webpack and that webpack config is horrendous "because it's javascript" [2] [3] webpack 4 addresses just some of the long-standing problems with webpack configuration leaving the actual config as insane and inscrutable as ever. And the only reason it exists is probably due to the public outcry of the larger community and tools like Parcel somewhat stealing the thunder. Parcel is probably the best thing to happen to JS bundlers in recent years, but it's still not without its problems. [1] I did: https://twitter.com/dmitriid/status/908677755046449154 https://twitter.com/dmitriid/status/908677755046449154 [2] Webpack team arguing there can't be defaults in October 2017: https://twitter.com/dmitriid/status/920542261020160000 https://twitter.com/dmitriid/status/920542261020160000 [3] And continues pretending config issues are because of Javascript: https://twitter.com/dmitriid/status/920714918625775618 https://twitter.com/dmitriid/status/920714918625775618
- carbolymer 8y agoWelcome to the world of web developers, where reinventing a wheel is required at least once a day.