Photo by Joshua Earle on Unsplash
I had some thoughts about this post quite some time but wasn't sure how to frame it. This tweet helped me
What could we take away from frontend development that would make you more happy?08:56 AM - 13 Sep 2018
Subseconds build time
Did you see OCaml (you may know it as ResonML or BuckleScript) compiler in action? It caches everything as binary, so consequent builds are like 20 milliseconds. This is totally astonishing. Can not wait to see something like this for JS.
Maybe https://pax.js.org/? Who knows...
Automatic code splitting
The big experiment we're going to run in Parcel 2 is giving you no power to manually define your code splitting. You just write your code.
Instead the bundler will make all the decisions for you through a plugin system.
We'll see if the community can make computers beat humans.17:44 PM - 06 Jul 2018
This will pair nicely with React Suspense
@wycats @TheLarkInn @slightlylate @AdamRackis @sincerely_tegan This means that you can code split more at any point in time — for example to load ModalHeader — without worrying about changing design. You already have a Placeholder. It will wait for both ModalHeader and Autocomplete as it tries to render Modal.01:55 AM - 13 Sep 2018
Per browser builds
@sitnikcode started this crusade called browserslist (correct me if I'm wrong). Imagine you specify which browser you want to support and compiler (transpiler) will provide builds for each browser in the list with all required polyfills with all required changes to CSS and you can use small script in Lambda@Edge or Cloudflare-Worker to serve appropriate assets at the edge of CDN. Or compiler will fail if your code is not compilable (transpilable) for given browsers.
Also, it would be nice if it would compile it down to ES6
Rich Harris@rich_harris
Explanation: ESM lets us ship a lot less code (switching from webpack to Rollup reduced JS payload by **25%**), and 70% of users can use modules (including dynamic import()) natively according to caniuse. For the remaining 30% we're using Shimport — github.com/Rich-Harris/sh…15:58 PM - 08 Sep 2018
For the reference, here is how builds per browse can look like preact-hn webpack config
What do you dream about?
What is the most expected thing for you?
Oldest comments (39)
I'm not sure whether I love or hate fully automatic code splitting.
I definitely see the edge being more and more powerful and custom, along with service workers.
Where code runs will be more and more important in this sense.
With suspense it will be seamless, you can split at any point and it will work. And bundler will decide how to pack modules together. And you can use github.com/guess-js/guess, to predict what to prefetch. It's like a magic
Wow, that is incredibly cool.
That sounds a lot like [Require.js]requirejs.org), if you are loading all async then you will made the initial load slower.
But definitely having code splitting easier to do is awesome, if you can just add a single line and create a new splitting point that's is definitely useful.
Any specific use case on your mind or generally?
I dream about a replacement for HTML CSS JS all together, they just have lots of crap for the sake of compatibility... I hope one day we will have clean version of all these langs once and for all.
Try Elm or react-native-web
Mint is like that ;)
Seems really nice... hope they reach a mature stage !
There are gazillion languages which compile down to JS. Like Elm, Kotlin, PureScript. I do not see any innovation with WebAssembly here. There are for sure use cases for WebAssembly, like performant code for games (WebGL) maybe something else...
Probably someone will reinvent splitting the files, again, and in 5yrs a new webpack to glue them together again.
Meanwhile
My fav is CloudFlare Edge workers, they are a start to a new serverless revolution, but for front-end. I think more use cases will be found, for networking and backend services, and soon all CDN's providers will support this feature.
Modules in browsers - combined with TypeScript maybe the JS code will not look so bad.
PWA - after Apple joins the board, and hopefully market stores will have PWA apps too, it will open a new market.
WebAssembly ...
I hope for a Flutter web, Dart as a JS alternative sounds great.
What so special about "Modules in browsers - combined with TypeScript"? I mean I'm excited about each one standalone, but is there any additional benefit comes from the combo
Yes waiting for it. They are polishing it
Anything specific got you excited
Well... Chrome's V8 JIT compiles JavaScript to machine code.
So you can write code that will be auto translated to JS that will be auto translated to machine code :D
Frameworks based on progressive enhancement and not SPAs by default.
I think I'll take a look at Stimulus.js at some point...
Why do you need C to develop a frontend?
Have you seen the proof of concept Quake js ?
ReasonML it is. But it is a bit raw (not ready for production) for my taste
But there already are strongly typed languages you can use to write frontend code and V8 (and other VMs are more or less on par) is fast.
You just need to give them a try instead of waiting for the "perfect" solution ;-)
Pure JavaScript apps -- lightweight, no frameworks or libraries.
Can you explain more? What so exciting about that? (or is it a response to another comment; seems not)
Not Marvin, but I can think of two reasons:
The Web specs are a lot more stable than any libraries. Most of what's in the browser platform now will still be there ten years from now.
If it's already in the browser, then it doesn't need to be downloaded, and it can be optimised for speed instead of optimised for size.