blog.negative9.net/contents/articles/webpack-begone/index.md

3.2 KiB

title author date template
Webpack Begone, ES6 is HERE! geoff-doty 2017-12-24 article.jade

I know. I know. Blasphame, but I really hate Webpack, not the idea of it but what it turned web development into - a bloated tangled mess of headaches you don't need.

Lets take a jaded closer look...

Webpack Rant

Webpack became the defacto go-to solution to get the latest es6 javascript language functionality into a developers pipeline via transpilers like Babeljs and support the overly bloated non-standard web component soultion as the ReactJS framework (batteries NOT included). Sure Webpack does more or can do more, but in the end developers just want to develop with es6 features, however this was only supose to be a temporay polyfill, until browsers started supporting the next version of Javascript -- ES6.

ES6 browser support is HERE

99% of the browsers support it, even Microsoft Edge, Safari, Chrome, Opera, Firefox...

But WebPack left us for this constant jonesing that put a permanent handycap on web developers that reminds me of those old drug commercials

"I work more, so I can do more drugs, so I can work more..."

mantra turned to become

"I work more, so I can add more configuration, so I can work more..."

Dont know about you, but tinkering around with configurations all day, and watching build processes move ever S L O W E R is not what I signed up for.

So...

PULL THE ROTTING PLUG!

Stop getting distracted by the shiny future that may never come, and focus on the here and now. Here and now is pretty awesome. We have native ES6 language support in all evergreen browsers.

No webpack.

No configuration.

No BS.

Write the code you love, and free yourself from the headaches you dont need.

How Does it work

Everything starts with your index.html page, or what ever html page your building, and you turn your script includes from this

<script src="mycode.js"></script>

into this

<script type="module" src="mycode.js"></script>

and those lazy import statements you have that dont include the extension

import Code from './src/Code';

should have the extension

import Code from './src/Code.js';

and everything is right with the world and we can find peace and happiness for all developers.

So...

WEBPACK BEGONE! ES6 IS HERE

But I hear you screaming at the screen, what about minification, and ES5 support, and...

I know WebPack has its uses, or rather a build process has its uses, but a lot of that can be done much simpler...simpler for any developer to understand -- like Gulp. A few gulp scripts could solve your problem, and you can break-up to operations, combine and mix and match as is important to each developer.

My biggest advocate for having a build process is for the final build, aka PRODUCTION, but code-by-the-hour should just work -- everywhere, as the web was designed.

Rant Over.