Live data from Hacker News

Web frameworks are transforming from runtime libraries into optimizing compilers

tomdale.net

101–110 of 231 posts

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#101

Whilst I am in favour of the optimisation of resources (and use these sources) we are willingly moving the "View Source" model to for profit entities like github. In the way the internet has evolved we really should look hard it the elephant in the room: the DOM is for documents - not for interfaces. IMHO optimisation for javascript is just a short term fad (hopefully) and browsers will adopt a more open approach to…

> If the whole community effort was spent creating a better UI/UX standard (a standard web front end) What do you mean by standard? HTML already has a UX/UI standard (technically standard and with some deviations in terms of design implementation depending on the browser). A is always a button and looks like a button in any browser. The problem is that it looks awful if you are not Stallman. Both Android and iOS have…

HTML has a UX/UI standard for iterating documents. Applications however, are not explicitly catered for. HTML standards for web application development are a bit like putting F1 wheels on a bus.

For example : a dashboard is a common interface pattern, but this would (and should) probably never enter the Document Object space.

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#102
post #63

> When it comes to eking performance out of hand-authored JavaScript and accompanying runtime libraries, we’ve reached the point of diminishing returns. Are you saying that web developers are writing the best code that they can? That future gains are going to come from more advanced js preprocessors instead of more informed developers? I strongly disagree that we have reached any sort of diminishing returns when it c…

> my advice for anyone who wants to make a dent in the future of web development: time to learn how compilers work. Many people in web development went there because it's the one place in IT development where they don't need to learn CS stuff like parsing, compilers, and assembly code.

It's far simpler than that. The reason is that there are far more web development jobs.

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#103

"The trend started by minifiers like UglifyJS and continued by transpilers like Babel will only accelerate." Those were predated by Closure Compiler, which was started with Gmail, and Closure Compiler in some ways still doesn't have an equal. Besides being a fully optimizing compiler, it also has a module system for code splitting, and optimization passes designed to move code at the method/property level from initia…

I remember the first publicly available being Dojo's minifier which used Mozilla's Rhino to determine which symbols could be safely obfuscated. It's primitive by today's standards, but it was a huge step forward at the time.

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#104
post #85

Earlier quoted context omitted.

How do non-nerds become nerds? "View source" can be the lid of the pandora's box for lots of young people who become inspired to be developers. Alos the web is not just for nerds! HTML is a language that lots of everyday people can write now - it is empowering.

We were already nerds for a few decades before the browser was invented.

What about the newer nerds who don't have grey beards?

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#105
post #17

"The trend started by minifiers like UglifyJS and continued by transpilers like Babel will only accelerate." Those were predated by Closure Compiler, which was started with Gmail, and Closure Compiler in some ways still doesn't have an equal. Besides being a fully optimizing compiler, it also has a module system for code splitting, and optimization passes designed to move code at the method/property level from initia…

This was also predated by the Opa "framework" which is indeed a compiler for the web platform, announced in 2009 and released a bit later. At the time, people didn't want to hear about a new language so we had to hide behind a framework. But one of the ideas was that there is no sense in bundling libraries at runtime instead of generating exactly the application code that should run. Cf. http://opalang.org (disclaime…

I was just thinking about Opa the other day - it looked nice but I never used it. People were worried about debugging through the layers of abstraction. Is it still "alive"? You write in the past tense...

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#106

Whilst I am in favour of the optimisation of resources (and use these sources) we are willingly moving the "View Source" model to for profit entities like github. In the way the internet has evolved we really should look hard it the elephant in the room: the DOM is for documents - not for interfaces. IMHO optimisation for javascript is just a short term fad (hopefully) and browsers will adopt a more open approach to…

> optimisation for javascript is just a short term fad

WebAssembly should offer the best of both worlds...optimized for performance and with at least an answer to the view source complaint. And, perhaps the best benefit, the ability to write in a language other than JavaScript. These compilers have turned a (semi-)human-readable programming language into what is essentially a textual binary format. It makes sense to just embrace that reality with a fully-binary format.

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#108

Svelte( https://svelte.technology/ ) is one similar idea. It’s a framework that compiles down to plain JS before being shipped out to browsers. There’s a couple of concerns though: #1 How are we going to manage browser inconsistencies? We are very much better than what we were when jQuery came out. Yet we aren’t 100% there either. Browser inconsistencies, still do exist and runtime frameworks try to deal with it. #2…

Svelte author here. If you're using a bundler integration like rollup-plugin-svelte or svelte-loader (for webpack), those repeating lines of code are deduplicated across components. There's a bare minimum of repetition, and we're in the process of reducing it further. You'd be surprised at just how well it scales! Browser inconsistencies are much less of an issue than they used to be. There are only a couple of place…

Just wanted to say that I've been using svelte a bit at work to create widgets that our clients can embed on their websites, and I absolutely love it. Creating svelte components is super easy and consuming them is even easier.

Thank you for having the vision, thank you for making it, and thank you for continuing to improve it.

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#109

Earlier quoted context omitted.

> If the whole community effort was spent creating a better UI/UX standard (a standard web front end) What do you mean by standard? HTML already has a UX/UI standard (technically standard and with some deviations in terms of design implementation depending on the browser). A is always a button and looks like a button in any browser. The problem is that it looks awful if you are not Stallman. Both Android and iOS have…

HTML has a UX/UI standard for iterating documents. Applications however, are not explicitly catered for. HTML standards for web application development are a bit like putting F1 wheels on a bus. For example : a dashboard is a common interface pattern, but this would (and should) probably never enter the Document Object space.

I think you're preoccupied by the word "document". There are many ways that applications are catered for. WebSockets are of no use to documents, only applications, as one example.

Re: Web frameworks are transforming from runtime libraries into optimizing compilers

#110

"The trend started by minifiers like UglifyJS and continued by transpilers like Babel will only accelerate." Those were predated by Closure Compiler, which was started with Gmail, and Closure Compiler in some ways still doesn't have an equal. Besides being a fully optimizing compiler, it also has a module system for code splitting, and optimization passes designed to move code at the method/property level from initia…

Douglas Crockford is the guy who pushed JavaScript into this world. He wrote the first jslint which put JavaScript in the build pipeline on it's own. Also the YUI compressor and minifier are old enough to be deprecated.
Post reply on HN