- 00:00:01 hi and welcome to this video in this
- 00:00:04 video I want to have a look at a topic
- 00:00:06 where I want to share my thoughts on a
- 00:00:07 topic which is JavaScript framework
- 00:00:10 churn and with that I mean that that
- 00:00:13 idea or the feeling that you have a lot
- 00:00:17 of JavaScript frameworks available and
- 00:00:19 with that I mean frameworks for
- 00:00:20 front-end web development and there's a
- 00:00:23 new framework coming out every week and
- 00:00:25 therefore at the point of time you learn
- 00:00:27 framework hey you already have to learn
- 00:00:29 a new one in this video I'll share my
- 00:00:31 thoughts on that I'll share why I don't
- 00:00:34 really think that this is what's
- 00:00:36 happening and I'll also share why I
- 00:00:38 think that's a good thing that we have
- 00:00:40 more and more alternatives
- 00:00:48 so what's the problem the problem is
- 00:00:51 that over the last seven years seven
- 00:00:55 eight nine ten years we had a lot of
- 00:00:57 JavaScript libraries and frameworks come
- 00:01:00 up that helped us build modern user
- 00:01:02 interfaces for the browser so with that
- 00:01:05 as I just said I mean frameworks
- 00:01:07 libraries that help us in on the browser
- 00:01:10 side so not node.js frameworks like
- 00:01:12 Express of course we had jQuery jQuery
- 00:01:16 is really old then we had tools or
- 00:01:19 frameworks like angular 1 then react
- 00:01:22 then angular 2 then all the other
- 00:01:24 versions of angular and then we had view
- 00:01:27 and we have swelled and Inferno chase
- 00:01:30 and aralia and stance ljs and Palomar
- 00:01:34 and so many tools that's at least a
- 00:01:37 feeling many people have and actually I
- 00:01:39 don't think that's really appropriate
- 00:01:43 oror I don't think well the feeling of
- 00:01:45 feeling is always appropriate obviously
- 00:01:46 but I don't think that this is the right
- 00:01:48 way to look at this it's not a problem
- 00:01:50 that we have all these options and
- 00:01:52 here's why now first of all it's
- 00:01:54 important to understand the JavaScript
- 00:01:56 the language has come a long way since
- 00:01:59 two thousand six seven and so on
- 00:02:02 back when I learned it which is even
- 00:02:05 longer ago you couldn't do anything
- 00:02:08 reasonable with JavaScript and nowadays
- 00:02:10 it's the most important language in
- 00:02:13 front-end web development maybe in
- 00:02:16 overall web development and that of
- 00:02:18 course is the case because a lot of new
- 00:02:21 features have been added to the language
- 00:02:22 it's now more stable across browsers so
- 00:02:26 all browsers implement the same features
- 00:02:29 and you don't have to implement
- 00:02:30 thousands of fallbacks to make your app
- 00:02:33 work in free different browsers and that
- 00:02:36 all helps us with building modern
- 00:02:38 JavaScript a driven user interfaces
- 00:02:41 now when jQuery came out it fixed a lot
- 00:02:44 of problems Giles looked head back then
- 00:02:47 it made sure that you had one API is a
- 00:02:49 one language so to say one syntax you
- 00:02:52 could use that worked across all
- 00:02:54 browsers by abstracting the different
- 00:02:56 implementations for different browsers
- 00:02:58 away from you it gave you a convenient
- 00:03:01 a way of traversing the Dom tree of
- 00:03:03 editing that Dom tree and of adding CSS
- 00:03:07 classes to elements and so on that's all
- 00:03:10 cool these were all cool things which
- 00:03:12 jQuery did now with more and more of
- 00:03:15 these features added to JavaScript
- 00:03:17 itself so to the language itself of
- 00:03:19 course jquery became a bit redundant now
- 00:03:23 first of all I still want to say if you
- 00:03:25 are using jQuery and if you're happy
- 00:03:27 with it if you can achieve your goals if
- 00:03:29 your website is performant performant
- 00:03:32 and if your users like your website
- 00:03:34 there's of course no reason to switch
- 00:03:36 away so no one's taking jQuery away from
- 00:03:39 you but it certainly was more important
- 00:03:41 than the past than it is today
- 00:03:43 now with the JavaScript language
- 00:03:45 becoming more important portent new
- 00:03:47 libraries and frameworks came up simply
- 00:03:50 because you could now solve different
- 00:03:52 problems back in a day with jQuery of
- 00:03:55 course we targeted h1 tag and changed
- 00:03:59 the text there manually in code when a
- 00:04:00 user pressed a button and for that we
- 00:04:03 had to add an event listener to the
- 00:04:04 button and manually managed the value of
- 00:04:07 maybe a counter that we were using in
- 00:04:09 our app and so on so you have to do a
- 00:04:11 lot of manual wiring up and especially
- 00:04:14 for bigger apps for more complex user
- 00:04:17 interfaces that's really hard to do an
- 00:04:19 easy to mess up that's why solutions
- 00:04:22 like angular one came up or why angular
- 00:04:24 one which was around tea the only
- 00:04:26 important framework back at the time it
- 00:04:28 came out why that appeared because it
- 00:04:30 made building more complex user
- 00:04:32 interfaces easier because it took a lot
- 00:04:35 of that manual dom node selecting part
- 00:04:38 and updating part away from you and gave
- 00:04:40 you a way of saying what the result
- 00:04:42 should be and that it would go ahead and
- 00:04:44 update the Dom appropriately now react
- 00:04:47 took that to the next level by using
- 00:04:50 even more refined approach of giving you
- 00:04:53 a declarative way of building your user
- 00:04:55 interface which means and react you you
- 00:04:57 build user interface how it should look
- 00:04:59 like with a couple of dynamic segments
- 00:05:02 in there so to say and then you just
- 00:05:03 managed the code that updates that the
- 00:05:06 values in this dynamic segments and
- 00:05:08 react us all the Dom updating and so on
- 00:05:10 behind the scenes for you in a very
- 00:05:12 efficient way and that's all
- 00:05:14 by angular 2 ends on came out because
- 00:05:16 that also is a desert and aware of way
- 00:05:19 more efficient way than angular 1 and
- 00:05:21 gives you even more declarative way of
- 00:05:23 managing your or your front ends or your
- 00:05:26 user interfaces and it's pretty much the
- 00:05:28 same for view chase and ever framework
- 00:05:29 so that's why all these tools came out
- 00:05:32 and until this point the story of one
- 00:05:34 tool replacing a number tool is of
- 00:05:36 course correct angular 1 replaced jQuery
- 00:05:38 react kind of replaced angular 1 or at
- 00:05:41 least kind of kicked off that transition
- 00:05:45 from angular 1 q modern frameworks like
- 00:05:47 react and like angular 2 and that's
- 00:05:50 basically where we are at now and we've
- 00:05:53 been at that point for two years now
- 00:05:57 angular 2 was released two years ago
- 00:05:59 good two years ago react and was
- 00:06:01 released even longer ago and of course
- 00:06:03 all these libraries and frameworks
- 00:06:04 themselves update we have angular 8 now
- 00:06:07 and a lot of people still mistake
- 00:06:09 angular 8 with oh god everything's new
- 00:06:11 again actually if these people would
- 00:06:14 start reading the change notes the
- 00:06:16 change log or watch mine you watch new
- 00:06:18 videos you would learn that basically
- 00:06:21 nothing changed since angular 2 small
- 00:06:24 improvements and new feature here and
- 00:06:26 there but overall angular 8 is angular
- 00:06:30 cume it's not a different framework but
- 00:06:33 this video is not about angular 8 that's
- 00:06:35 just a side note so we still have
- 00:06:37 angular let's forget the word numbers
- 00:06:39 because it's basically all the same with
- 00:06:41 angular we have react we have view and
- 00:06:43 that's been the case for over two years
- 00:06:45 now and that will very likely be the
- 00:06:47 case in two years and in three years
- 00:06:50 because of course we've got a lot of
- 00:06:52 other frameworks and libraries coming up
- 00:06:53 and all come back to G's in a second but
- 00:06:56 these big free frameworks are here to
- 00:06:58 stay they're under active development
- 00:07:00 they got committed teams to get a huge
- 00:07:02 fan base and base of developers that are
- 00:07:05 using it and these are all very strong
- 00:07:08 reasons why these frameworks will stay
- 00:07:11 here Facebook is back and react and
- 00:07:13 Google's backing angular and they will
- 00:07:15 continue developing this and of course
- 00:07:17 these frameworks will be developed to
- 00:07:20 adapt to new trends or implement new
- 00:07:23 features that are now possible with
- 00:07:25 JavaScript but the way you generally use
- 00:07:28 these frameworks and libraries will will
- 00:07:30 not change that drastically so you will
- 00:07:33 not have to learn a brand new framework
- 00:07:36 in a year from now what you know today
- 00:07:38 will still be highly relevant in a year
- 00:07:40 and in two years time I'm really
- 00:07:42 convinced by that now of course we got
- 00:07:45 other tools like swelled and Inferno
- 00:07:47 jazz aralia stands such as polymer
- 00:07:50 what's the idea behind all these tools
- 00:07:52 why do they exist if angular and react
- 00:07:55 and view are here to stay well of course
- 00:07:57 because there are always things you can
- 00:08:00 do better than these existing frameworks
- 00:08:02 and libraries are doing them because the
- 00:08:06 existing solutions like angular might be
- 00:08:07 targeting a broader audience or a
- 00:08:10 broader range of use cases and a new
- 00:08:13 framework that came up or that comes up
- 00:08:14 might target a very specific use case
- 00:08:17 might for example give you a very small
- 00:08:19 bundle size that might be perfect for
- 00:08:21 your next project so if you're working
- 00:08:23 on your own projects definitely dive
- 00:08:26 into such solutions and explore if that
- 00:08:28 these new tools might be better for you
- 00:08:30 but you don't have to even if we act as
- 00:08:34 one thing worse than a new framework
- 00:08:37 that does not mean that react as it
- 00:08:39 horrible that does not mean that an app
- 00:08:42 built with react will be worse than with
- 00:08:45 that new tool that new framework it
- 00:08:47 might be equally good it might be a bit
- 00:08:50 worse but such a small fracture there's
- 00:08:54 might be such a small difference that
- 00:08:56 you can't even measure it and measuring
- 00:08:58 performance ends on by the way is really
- 00:09:00 hard because there are so many use cases
- 00:09:02 and apps and possible users and so on so
- 00:09:04 that's a totally different chapter so
- 00:09:06 these new solutions might do some things
- 00:09:09 differently or in a better way
- 00:09:11 but that does not mean that the existing
- 00:09:13 solutions are doing it in a horrible way
- 00:09:15 it's good that we have all these
- 00:09:17 alternatives though because you can
- 00:09:19 learn something new and I personally
- 00:09:21 love learning new stuff you can use
- 00:09:24 these solutions for your new side
- 00:09:26 projects your personal projects or maybe
- 00:09:28 if you have a company you're a small
- 00:09:30 company you can use these frameworks for
- 00:09:32 your next project in a company and even
- 00:09:35 if not that applies to you and if you
- 00:09:37 hate learning new things which is not
- 00:09:39 that great if you're a web developer but
- 00:09:41 that's a
- 00:09:42 or anything even if that all is the case
- 00:09:44 you still benefit from these new tools
- 00:09:46 why simply because they drive
- 00:09:49 competition if something new is coming
- 00:09:52 up if a new framework is coming up and
- 00:09:54 that gains some traction or has some
- 00:09:58 interesting ideas not only you will
- 00:10:00 recognize it but all the developers
- 00:10:02 behind react triangular and view and if
- 00:10:04 there are some good ideas in that
- 00:10:06 framework that lead to a smaller bundle
- 00:10:08 or better performance easier a better
- 00:10:12 ease of use and so on then you can
- 00:10:14 definitely rely on these existing tools
- 00:10:16 picking up these ideas of course because
- 00:10:19 the Google team the angular team wants
- 00:10:22 angular to be the best framework for
- 00:10:24 every job you can use it for the
- 00:10:28 reacting ones react to win and the view
- 00:10:30 team wants you to win and therefore if
- 00:10:32 something new is coming up which has
- 00:10:33 some cool ideas these existing
- 00:10:35 frameworks will certainly look at these
- 00:10:37 ideas and see if they can incorporate
- 00:10:38 them so even if you're not learning new
- 00:10:42 frameworks and libraries you will
- 00:10:44 probably still benefit from their
- 00:10:46 existence these are my thoughts and
- 00:10:49 therefore my summary of course is that
- 00:10:51 it's not so bad that we have more
- 00:10:52 alternatives you don't have to learn
- 00:10:54 them that's not do you not but maybe
- 00:10:57 it's still interesting to learn
- 00:10:59 something you maybe it helps you even
- 00:11:01 with react if you learn about a new
- 00:11:02 feature in a different framework because
- 00:11:04 you then start thinking about how that
- 00:11:06 specific use cases handle and react and
- 00:11:08 maybe you did something wrong there or
- 00:11:10 you can write better react code and even
- 00:11:12 if that's not the case well the
- 00:11:14 competition thing still applies so these
- 00:11:17 are my thoughts on on this topic I'm
- 00:11:20 really interested in hearing yours so
- 00:11:21 please share your thoughts in the
- 00:11:23 comments and with that I hope you liked
- 00:11:26 the video bye