Choosing the Right JavaScript Framework

Thanks for joining me @pluralsight to talk about javascript frameworks. We had 150+ awesome questions, so I'll try to answer the ones I couldn't get to online right here in a tweet stream

Watch the video -->
https://t.co/G7zeiKhXme

Q. Do arrow functions really make dealing with JavaScript's "this" keywords easier?

A. Yes! When using arrow functions, the scope of "this" is effectively passed in from the outer scope. See here in this REPL

1/n
Q. Where does Polymer fit in? Is it considered a framework like the others?

A. @Polymer is an excellent way to create web components, which are ideal for creating sets of interactivity that can be shared in web apps.

2/n
Q. Have we gone framework crazy?

A. At one time, quite possibly. A few years back we literally had framework overload. I feel it really has solidified into a few very strong choices.

3/n
Q. [Is] there no more need for @polymer?

A. See my previous question on this ... but in general, I think there is a lot of room for Web Components with frameworks.

4/n
Q. What about Material Design?

A. Great for UI constructs, themes, styling, and experience.

5/n
Q. What is your favorite language and why is it TypeScript?

A. Ha! My favorite language is JavaScript. I love the ease of jumping in, the flexibility, & how it works in all major browsers. @typescriptlang is awesome too. with it we get great tooling in editors like VS @code

6/n
Q. Assume prior knowledge and experience is equal between the frameworks, what would you recommend for rapid prototyping - priority is to get a working prototype fast?

A. The CLI's for @vuejs @reactjs & @angular means all of them. Pure coding for a PoC in a few hours? Vue.

7/n
Q. if observables become accepted in the JavaScript ecosystem, then the third-party library (RxJS) -- for using observables in Angular -- will become unnecessary. And so one needs to refactor.

A. not a question, but true that the space is evolving. And that is good!

8/n
Q. what would be a good strategy to move from angular 1.5 to react?

A. If you need to move (that's question 1) then it would be good to go to any of @vuejs @angular or @reactjs

9/n
Q. what about javascript for native mobile development?

A. I love PWAs. I look to those first. If an app is needed, then I look to @Ionicframework as it's very web focused and can create great apps. When all else fails I move to native.

10/n
Q. is your favorite pizza Papa Johns?

A. No. Not even close.

11/n
Q. If I need to produce a native mobile app, what are my options between the big-three frameworks?

A. Check out PWAs first. Then look into tools like @Ionicframework , @NativeScript or @reactnative

12/n
Q. Can you predict one that will become easier to learn/maintain. Vue seems light but I get a feeling that it will be problematic in a larger app? Angular seems to be problematic with updates. I have not tried React.

A. Easy is relative. They are all excellent. Try them.

13/n
Q. How fast should be considered fast?

A. Ask your stakeholders what their requirements are. Some apps can lose money if they are over a threshold. Some apps are ok with longer loads. While the solution may be technical, the experience holds the answer.

14/n
Q. I've got an https://t.co/ROCfUEWFUj MVC 5 app into which I'd like to integrate a JS framework. Is this not recommended?

A. I use @nodejs, but when i do use https://t.co/ROCfUEWFUj i use it for web api only, and the framework for views.

15/n
Q. Which framework is best to learn? Which framework is in demand for IT software jobs?

A. Spend a few days trying all 3. Cap each at a day. Then compare the experience that suits you. I see more jobs for React and Angular now, but Vue seems on the rise

16/n
Q. Which is the framework you have seen has grown at the fastest path?

A. Charts in my video show various answers. Angular paved the way & solidified a large field. React & Vue have risen strong and fast to join it. I'm not sure I would care about the fastest riser tho.

17/n
Q. how do we consider support? For most of the enterprises, they look for how the tool/framework is supported

A. Great question. The community support & resources are hugely important. Good news is that all 3 have a lot to offer here. It's a key reason they all rock.

18/n
Q. If a team has done traditional c#, and hates js with a burning passion, which of these would be the best new place to start?

A. Angular. TypeScript will look very familiar to C# devs, and Angular is excellent with TypeScript. However, Vue works very well in TS now too!

19/n
Q. Is any particular framework better for those people who don't do java script yet??

A. Hmmm, great questions. I first recommend learning javascript and the sliding into a framework. Vue can be a great first step (drop a script tag in a page and go)

20/n
Q. How much complexity is added when using React because of it not being a full framework like Angular?

A. Entirely up to you as the developer. With any of these frameworks, you can pull in more complexity as needed. They just have a different way to solve problems.

21/n
Q. Why is google keeping two frameworks? I love polymer but I tend to question what is its future having angular at the house too

A. I cannot speak for them, but Google is a big company, and I feel these tools (while have some overlap) solve different problems.

22/n
Q. How do you think Aurelia compares to the big three?

A. Technically, it feels solid. I don;t see as much usage and other data to support that it's anywhere near widespread as the other 3.

23/n
Q. React, Angular, and Vue. Which Star Wars characters best represent each framework?

A. Best question yet! Totally off my head ...

Vue 👉 Darth Vader
React 👉 Darth Maul
Angular 👉 Padmé Amidala

24/n
Q. Is Microsoft developing any framework?

A. Not that I am aware of. Why? Do these 3 lack for something you need?

25/n
Q. Meteor?

A. Comet. Asteroid. Shooting star. Oh ... you mean the framework! (I joke). Very cool, but I stick to the 3 I mentioned.

26/n
Q. What advice would you give a college student to familiarize themselves w/ the variety of js frameworks to prepare themselves for real world problems & projects they would come in counter within the workplace?

A. Try each for a day, build a proof of concept, then compare

27/n
Q. What is PWA?

A. Thanks for asking! You get points for calling me out on not explaining it earlier! Progressive Web App. https://t.co/lVYtJ5S9sY

28/n
Q. I started using JavaScript to build PWA's without using any frameworks, assuming you are going to give me advice, what do you recommend for me to jump into just only one JS framework?

A. Try all 3 for a day each. Then see which feels best to you.

29/n
Q. Are any of these frameworks better suited toward integrating into an existing app?

A. Assuming we have an app not written in one of these now, then I feel Vue may be easiest to slide a small piece of code into it. Angular elements too.

30/n
Q. If I am completely new to Angular, should I start with Angular 2 or is Angular 1 a prerequisite?

A. Welcome to the community! Go right to Angular (v6 is the latest). The docs are awesome at getting going.

31/n
Q. What would you recommend to do to gain confidence with any framework now a days?

A. Try each for a day, then compare your experience. Then build something awesome! Lean on the community and resources, someone has done it before

32/n
Q. In your view, Is it true that those familiar with C#/.Net will find it easier to pick up Angular than the other frameworks?

A. Only in the sense that @typescriptlang will be familiar. i think @angular and @vuejs work great with it.

33/n
Q. Do all 3 frameworks handle responsive design?

A. CSS all the way. So yes, but it's really CSS

34/n
Q. Do all these framework have good/built-in support to write test cases against the code?

A. They all support testing well.

35/n
Q. How do you see PWAs affecting these javascript frameworks in the near future?

A. It already is affecting them. They all have options for creating PWAs from their CLIs. I see this only becoming more prevalent.

36/n
Q. With all these options for js frameworks what is the best use case for using vanilla javascript.

A. If you mean ES5 ... Vue. If you mean modern standard ES 2017+, all of them. Classs, decorators, arrow functions ... all there.

37/n
Q. John, what do you think Knockout?

A. I like @knockout_js . I built a lot of apps with it, and it's excellent at handling the views and bindings. I prefer the 3 I mentioned for full apps these days.

38/n
Q. Hearing the NodeJs 's performance is better Than java now.

A. Sigh ... lots of great places to check out data on this. Me? The perf on these for 99% of the apps I see is fine in either of them.

39/n
Q. What is the strategy to go from Angular v4 to v6?

A. Not so bad. They guide you on this. See this awesome guide from the Angular team's @stephenfluin https://t.co/UvZFvVM8As ... Also, for the future, the CLI will do a lot of it for you!

40/n
Q. When building enterprise app how do we structure JS framework e.g. https://t.co/ttYncRSEzA MVC Area is a separate JS framework app?

A. I like to use https://t.co/ROCfUEWFUj web api with a framework for the views. I dont mix the views.

41/n
Q. Can I know which is the best framework for data visualization?

A. All of them. Vue specifically was built with this in mind, but they all do very well.

42/n
Q. I'm currently building an application using AngularJS. Should I be focused on upgrading to Angular 6? What are the benefits?

A. Performance, features, tooling, resources, modern build tool support, docs. if you are doing it from scratch, yes, look to latest versions.

43/n
Q. I am using angular 5, how about the browser capability other than Chrome. Getting lot of issues on Edge and IE. Please help me out.

A. Check out the polyfills file and see the docs on this. it will help you fill in any javascript gaps in browsers that have any.

44/n
Q. What do you think about web assembly?

A. Very cool and a lot of promise. it may help get folks from other platforms to the web.

45/n
Q. Do you think ngrx will ever get folded into angular core? I'm concerned that ngrx will be out of step with angular overtime.

A. I'm not worried. NgRx has some great core team members. One is on the Angular team (@robwormald).

46/n
Q. Is it possible to build mobile apps with Javascript frameworks [like Node.JS, AngularJS]?

A. Yes. PWAs, @Ionicframework , @reactjs , @NativeScript ... all good options. Or @electronjs for desktop apps.

47/n
Q. [I'm confused about the approach] ... Seems like only way is try and use these frameworks?

A. yes. features, community, resources ... pretty much everything is on par. It's like Java or .NET ... both are great.

48/n
Q. When you say all of these can scale what do you really mean?

A. People are successfully building small, medium, large apps with all of these without hitting major walls.

49/n
Q. Thank you for answering my ridiculous questions.

A. Thank you for asking ridiculous questions :)

50/n
Q. Silverlight REDUX?

A. Ha! I loved Silverlight ... the web changed ... a lot. I love html/css/javascript even more!

51/n
Q. Is javascript ready to replace all thick client apps that can be quite processor intensive / gui intensive

A. I don't think we need one thing to rule them all. Can you build a great app in javascript for a desktop app? Sure. But choose the right tool for the right job.

52/n
Q. After a beginner learns JS, do you have an opinion on a framework to start with that is beginner friendly or do you feel they should try them all which may seem daunting for a beginner?

A. I get it. But spend a day w/ each. You won't regret it. Always start w/ the CLIs

53/n
Q. Any certification path for the 3?

A. I'm not aware of any.

54/n
Q. What topics should I master in Javascript before moving to Frameworks

A. Great move! Grab a JavaScript book, video, or online course. There are plenty of great options.

55/n
Taking a break ... I tried to consolidate many of the questions as best I could. if I find more, i'll answer here.

I'm also working on setting up a follow up video with @pluralsight to address trying all 3
Q. Not JS, but what is your opinion of Flutter and Dart?

A. Flutter intrigues me. But I use neither.

56/n
Q. Which does best in the surveys?

A. See my video ... depending on which survey, any or all of them. Take all surveys as input, but don't accept any single one as definitive.

57/n


Original Tweet