3 ms·
It's not that there was a complete reboot of IT. It's that web solutions are just now being applied to problems we already solved years ago in other industries
by tantaman 14y ago
It's not that there was a complete reboot of IT. It's that web solutions are just now being applied to problems we already solved years ago in other industries (telco, defense).
The web wasn't originally intended to be used to provide native like experiences and so the foundations for that just weren't there. So yes, people had to re-invent and re-discover all those desktop frameworks but this time in a javascript & html environment.
I think the obsession over desktop like frameworks in Javascript is due to the fact that there just isn't a clear winner yet and that is because the foundations required to support a clear winner just don't exist yet.
-We need the ability to scope CSS to a given section of the document. I want to be able to import someone's widget (or set of widgets) and not worry about style collisions.
-We need a better solution for storing templates (pre-compiling them into .js files or storing them in <script type="text/template"> just seems awkward)
-We need a better way to bundle CSS with its resources. I.e., if I have a css file in "components/bootstrap/styles" that refers to "../img/pic.png" it is going to break when I concatenate all my CSS files into one and drop them in "/"
-We need a better module system. Yes, requirejs is good but I'd like to say I depend on "package.name.x" and not care where it comes from or who provides it. It should just get loaded for me (this has been solved for years in the Java world via OSGi).
-We need a better build system. Yes, grunt is good but I have to put in all sorts of logic to handle the above problems.
-I should be able to place custom tags in HTML and have the browser create my user-defined component for me. I.e., <usr:combo> should find the correct template and backing javascript and construct the component.
There won't be a winner and the re-invention will continue until these foundations are put in place.
- MatthewPhillips 14y agoGood news! Many of these very problems are being worked on right now. The component issue you raised is being fixed with web components: http://www.html5rocks.com/en/tutorials/webcomponents/shadowdom/ http://www.html5rocks.com/en/tutorials/webcomponents/shadowd... which should be making its way into stable browsers in a matter of months. The module system is being fixed by ES6 modules which should be appearing in Firefox and Chrome within the year. I haven't heard anything about namespaced CSS and I agree that's something that we need.
- GnarlinBrando 14y agoEven as someone relatively new to development and a native of the web this seems so clear to me. The web was originally just a way of sharing documents. It is both a miracle and heresy that we have managed to do so much with it. We could very well do with some foundational rethinking of what the web is beyond all the web 2.0 buzzwords. That said, I have never understood the driving need for desktop like frameworks. The problems that ubiquitusly networked applications and communications technology face are nothing like those of kernel code, commandline applications, or modern applications like CAD Photoshop. All the things you mention that need fixing desperately need it, but I don't think a desktop like framework/library/standard for the web will ever 'win' because the web is not trying to solve the problem of a virtual desktop, it is trying to solve the problem of a non-homogeneous ubiquitously networked data exchange layer.