by kp25 on 12/18/16, 4:38 AM with 114 comments
by dictum on 12/18/16, 11:32 AM
Unless you're already familiar with a tool, I'd suggest starting with the very Hello, world basics.
For Webpack, that's creating an empty project and incrementally adding config, starting with just an entry point (use a simple script importing some modules) and an output filename. Add one loader/plugin at a time. Move into boilerplates once you're familiar with the basic concepts.
(I wish more projects had a Concepts page like Webpack now has: https://webpack.js.org/concepts/)
A boilerplate is another person's code, and while it's good to avoid NIH, unless it's superbly documented, it contains tricks and workarounds that only cloud real understanding.
---
Eric wisely started the article with JavaScript & DOM Fundamentals. For people like me, who were familiar with pre-ES6 JS but weren't actively writing JS lately, the basics themselves have changed a bit.
by eranation on 12/18/16, 5:19 AM
by fenomas on 12/18/16, 1:28 PM
Hugely disagree with this. I really like Vue - but in my (very limited) experience, its appeal is that even though it's not as powerful or flexible as React or Angular it's way easier to learn and get moving with. Fewer new concepts, less new tooling, no ecosystem of related stuff to consider, etc.
I'd have suggested learning Vue first, and sticking with it until you outgrow it. If you start with Ng/Rx, and get to where you're comfortable and have a tooling/workflow around them that works for you, then sure you could still learn Vue afterwards but I'm not sure what it gets you.
by moxious on 12/18/16, 5:02 AM
by daenney on 12/18/16, 7:07 PM
I don't see how using Node server-side has anything at all to do with user's capability to store data in the cloud.
by alistproducer2 on 12/18/16, 7:55 PM
I understand that as we have moved from web pages to web apps the increase in complexity was inevitable, but I question a lot of the tools being used now. For one thing, once we moved to creating full applications using JS, one of the concerns that tooling moved to address was maintainability. This is why MV* caught on and destroyed JQuery as a viable option for many projects. That being said, Angular pretty quickly swapped one kind of maintainability problem (refactorability) for another (over-abstraction and cyclomatic complexity).
As for the dev tooling (webpack and company), one of the reason I avoid a lot of them is in my experience they can get in the way of maintainability. For example, I recently tried to pick up a 3 month old project in Android Studio and it took me around 3 hours just to get it to compile again because of updates and other tooling complexity. This NEVER happened using Eclipse. The same thing is happening and will happen when the apps being built today get dumped on some poor sod 3-5 years from now.
Lastly, an example from my job. I was recently asked to update the verbiage on a sign in form built ~13 years ago. The devs decided to use some java framework that had buzz at the time named JATO. Jato literally doesn't exist anymore and building it is basically impossible. This is to say nothing of modifying it as all documentation has literally disappeared from the web. The devs picked JATO b/c they thought it would be easier to modify and maintain. Exactly the opposite has happened. They could easily have written the form (literally two input boxes and a submit) using plain JSP. If they had, that code would still be useful today.
by heavenlyhash on 12/18/16, 8:44 AM
Are there any options for this? Are there even keywords I can search for that discuss this?
Sure, this files under "anything is possible", but honestly, I'd like a javascript framework that doesn't actively fight me also having static content. Any of these libraries that put their document derivation logic front and center are ipso facto refusing to compose well with a simple static first page load that renders fast and then gains progressive enhancement from the JS.
by doomtop on 12/18/16, 5:31 PM
by aeosynth on 12/18/16, 5:37 AM
by jaseemabid on 12/18/16, 6:49 PM
JavaScript as an ecosystem needs mature robust solutions rather than a new way to do things every other week.
by Kiro on 12/18/16, 10:03 AM
by andretti1977 on 12/18/16, 9:19 AM
by andrew_wc_brown on 12/18/16, 5:42 AM
by ExpiredLink on 12/18/16, 12:12 PM
by adamnemecek on 12/18/16, 6:07 PM
by ClayFerguson on 12/18/16, 11:57 PM
by voltagex_ on 12/18/16, 11:55 AM
by jim_d on 12/19/16, 3:57 AM
by macpete on 12/18/16, 10:52 AM
by jgord on 12/18/16, 11:46 AM
I would say Ramda.js is most deserving of much wider adoption.
by catshirt on 12/18/16, 5:16 AM
by na85 on 12/18/16, 1:44 PM
by enraged_camel on 12/18/16, 8:58 AM
by FrancoDiaz on 12/18/16, 2:54 PM
by d13 on 12/18/16, 1:30 PM