The trailer's actually quite well done! Might watch it when it does come out, seems like it could be interesting or motivational at least :)
I work on the backend side of things currently, but from what I've read React is more powerful/ sought after currently, so that's what I'm going to be dedicating my tie to learning, wonder if this documentary might make me reconsider!
Both React and Vue will do what you want. React is more popular, but Vue is generally considered more pleasant to develop for. They're all third wave/ virtual DOM based frameworks (after jQuery (first gen) and the original data-binding frameworks like Backbone (second gen) ).
If you want to make an educated bet about where things are going, you might want to learn Svelte, which abandons the virtual DOM approach for a compiler, allowing you to set values with a simple `=` and creating smaller, faster code (Svelte's output doesn't include Svelte, and there's no virtual DOM to keep updated). Svelte's actual coding experience is also pretty similar to Vue - single file components, etc. :)
In about 2 minutes after I read the two replies and checked out a link, the score of my comment dropped by 3, so I'm guessing someone's just mass downvoting everything for... Reasons.
Now that I'm not the downvoted one, I can say this: I'd want to force every downvote to have an explanatory comment (or at least, an upvote on one). If you can't explain why you downvote something, then you probably shouldn't.
I didn't downvote, but I'd say it's because of the statement that "Vue is generally considered more pleasant to develop for" which seems totally anecdotal and subjective.
I've heard of Svelte, but didn't understand what set it apart from the others, so thanks for the pointer! Do you think it will gain much traction, or will there likely be another one inspired by it, but driven by a megacorp that pushes it out of the picture?
My work has a react front end, not sure if there's lots of transferrable skills between the two. For one thing I'll have to learn basic web stuff like CSS, HTML and all, and that will transfer, at least.
> but Vue is generally considered more pleasant to develop for
If you live in the Vue bubble then of course you will get favorable opinions. I've been using both React and Vue for a couple of years and I don't think "Vue is generally considered more pleasant". Some people prefer one, some people prefer the other.
> If you live in the Vue bubble then of course you will get favorable opinions.
I'm not in the Vue community. When 'React vs Vue' was happening back in 2015 I was using a completely separate virtual DOM library (Ractive) so I'm relatively unbiased.
I've just been coding, writing, and speaking about JS for a decade and I know many people who've tried both. They might be wrong, but React having a steeper learning curve (JSX is harder to pick up than SFC), a more variable developer experience (depending on state management libraries used) and more complexity than Vue is definitely the common opinion.
> but React having a steeper learning curve (JSX is harder to pick up than SFC)
I don't know.
Templates might be easier for beginners than JSX but OTOH with Vue you need to learn a lot of abstractions (eg: watchers, reactivity is not obvious, etc). I think the complexity of getting started with React is that you need to add more third party libraries plus configuring your dev tools with Webpack/Babel/etc. CRA solves that for you but it's a huge black box if you don't know what you are doing.
I will agree that with Vue you can start directly with script tags a la jQuery and that is great for a lot of projects and beginner devs.
Not being able to use html closes a lot of doors. Have you ever wanted to just copy and paste html into a template script tag and have it render? With react you need to convert that first..
I want to grab a json list and display it in a li tag. With vue I fetch, assign to a variable and in the template v-bind it. With react I would write another component for the li maybe do a foreach.
Watchers existed in jQuery. Not sure they are so difficult one would choose react most people would just avoid them.
after much consideration i just recommended vue to a friend who is in a similar situation as yourself. apart from technical aspects, also consider that although there are currently more react jobs, there are also hordes of developers and bootcamp grads going into the react world, and it may be more difficult to differentiate yourself.
All of those are very different among them so it's difficult to say but generally speaking because all are faster and more light weight.
Mithril gives you components + vdom + router + http client in 10kB gzipped. Performance is faster than React + Redux. I think it's the most zen and elegant of all options since your state is basically vanilla JS but that's very subjective.
Inferno and Preact are very React-y. Inferno is much much faster than React. Preact is much much smaller than React. With both you can add a compat layer to use React libraries.
Svelte is another beast altogether. Instead of a vdom it compiles your code to super efficient impertive DOM manipulation code which produces extremely small and fast apps. I don't love the ergonomics but the results are super impressive.
See these benchmarks for my claims about size and speed:
Why do you care about optimizing perf so much? React and even Angular are fast enough that you should never need to worry about any sort of perf hacking, and I would argue that if perf is the number-one concern for your use case you shouldn't be using a framework at all.
The primary thing I care about when comparing frameworks is developer productivity. Bundle size is a moderate concern, saving 50-100ms to re-render a giant table doesn't even make the list.
For general use-cases, I doubt the performance benefit matters as much as engineers claim that it does.
But there are more specific use-cases where it would indeed matter. Hand-held devices, high calculation loads, etc.
Even Dan Abramov's popular talk on React Suspense shows that even the newest versions of React begin the chugg under the influence of an extreme performance situation.
Remember react is in it's own ecosystem with their own language/acceptable approaches. The framework will allow you to do more than the community so you need to align how you write with what is acceptable. Last year the might mean classes this year hooks. React is more of a religion or a way of life compared to other frameworks.
Because of this there is a moat around react if you are looking to be hired. You need to stay upto date and involve yourself with the community. You can easily dip your toe in react and the coding is simple. The ecosystem is where the complexity lives and this is as important to understand/accept if you plan on moving into it.
Vue is more like jQuery when it came out. It immediately makes sense with what you have been doing and allows you to use as much or as little as you want.
I think react is great for someone who knows nothing (it provides a community / approach) or for someone who knows too much (those who pushed angularjs too far and got burned) but for the masses in the middle it demands you forget much of what you know works to accept this new way of life. It's too much for many. This is where Vue shines, it allows you to build in whatever way you want which allows you to leverage what you already know.
They are not interchangeable unless you do things the react way. Drop one html tag like < <div class="main"> in react and it breaks.
Being popular has no bearing on cult-ish status. Popular places like Starbucks can be described that way where a special language is required to order a cup of coffee.
class is a perfectly valid property in jsx, as it just gets mapped to `{"class": ...}`, however react adopts to use className instead because of the dom api `el.className = ...`, but also some stuff like older versions of IE.
most other jsx-based things like hyperapp accept `class` just fine from what i know
As someone that doesn't do much frontend I was pleasantly surprised by Vue after playing with it last weekend. The only thing that confused me is that the Vue community talks about Vue 3 as it's already been released, but I couldn't find a single trace of even a v3 beta on their website or Github. The reason is probably easy to find with a search engine, but still weird (as an outsider) that it's so well hidden on the official channels.
I found that Vue 2 was very nice when I was playing with it for simple things as a toy. But as soon as I started to try more complicated things, the reactivity system just fell apart. There are just some fundamental mismatches between how JS references work and how the Vue 2 reactivity system works. Once you learn the pitfalls however (like never de-reference in data, only access shared state through computed, dont bother trying to use data structures like Map or Set), it becomes nice again although in the process it loses its luster.
I believe Vue 3 is supposed to fix much of this, but its unclear whether its going to be backwards compatible.
I agree. I’ve been burned by the reference management and reactivity. Vue 2 doesn’t let you manage your data separate from Vue it’s self, the data tree needs to be inside Vue.
yep. thats intentional... you can have multiple instances of vue going and it also plays nice with jQuery so that you can add Vue into your project without messing everything up.
Also worth noting its not 100% true you can't manage your data separately you just need to manage the reactivity yourself.
I don’t understand how (or why) managing the reactivity of data and having multiple instances are coupled.
Also, implementing your own reactivity is very unintuitive. You need to implement your own “diffing” (is this change worth rendering) to know when to force Vue to render. This is definitely not how Vue was intended to be used.
React will simply render the object you give it. That means that React doesn’t need to know when data changes, it simply renders the ui, diffs it to the current ui and applys the changes.
Unless your using component state but even then, it’s the rendering that measures change. The act of updating the state just lets React know “time to see if anything important changed”. Vue seems to tra Co data changes granularly which means it needs to understand the change at the point if mutation. This means it needs control of the data you want to render.
I find the limitation to only use dumb pojos much worse. AFAIK that is going to be fixed in Vue 3 since the reactivity system will use Proxy instead of getters and setters.
It is possible to keep the data inside of a seperate class.
I have an app where I needed to observe a few properties of a class but wanted to keep it completely standard js so it could be used outside of a Vue app. I created an object in Vue's data and referenced some of the class properties, it works fine and changes are reactive in both directions.
The issue is references, if you de-reference in the data function, you can now never change that reference because Vue's reactivity won't see the change.
This is fine if there is a 1-1 relationship between the data object and the components (though persistence becomes interesting to manage then). But if you have hierarchies with lists of data that often change this doesn’t work. Vue2 doesn’t track changes across array access or objects that didn’t exist when the heirarchy was built.
One big issue for me has been that your data layer needs to know about and use Vue, which seems unintuitive as Vue is a UI library.
In all honesty, the pitfalls are not that many, easy to understand, learn and avoid or get out from.
I spent way more time trying to figure out doing even basic things in react than debugging reactivity in vue. Espacially since the later has a fantastic doc and a small api.
The problem with Vue.js is that React is almost exactly the same from a developer standpoint with thousands more modules you can use. With Vue, you'll be reinventing wheels that already exist with React.
I am not really a front end dev, but recently I begun to toy around with some front end work and after a few hours of research I decided to go with Vue. My reasoning was that it seemed "lightweight" enough that you could use as much or as little as you needed.
From those who know more, is this a correct appraisal? Do the other frameworks also allow you to pick and choose and only use small parts as needed?
You can use other frameworks the way you use vue but it's not advertised much.
E.G: I teach reactjs by first starting with a simple script tag like you can do with vue. No webpack. No JSX. Suddenly students get it. No magic. It just makes sense.
But this approach is not common nor first class citizen.
What I like with vue is that the authors understand the value of scaling up, as well as scaling __down__. You can feel it in the doc, the API, the community...
So yes, all in all, vuejs will be lighter to use, not because the others can't be, but because it doesn't judge you for wanting to.
i am not a frontend person but i had tried multiple times to learn react and angular. every time, i became frustrated in the tooling phase and gave up. like... geez, i'm having this much trouble already and i haven't even learned the first thing about syntax or reactivity.
then i learned vue, and was able to build something in an afternoon. and, at the end of the afternoon, i had the tooling too. but the vue learning path doesn't teach tooling until after you get a feel for why and how vue can solve your problems.
how it is taught is 100% of the reason vue found a place in my life. HUGE missed opportunity by the other frameworks, which are so eager to prove that they have the bells and whistles that they trip over their own feet trying to get people started.
had i learned from you rather than from docs, i would be using react in my personal projects and never would have looked at vue.
Yea, that's why I choose it, too. It isn't as opinionated as Angular, but it has enough structure that you know where to look to find most things in an unfamiliar project (my gripe when working on inherited React projects).
Rarely do I ever have to think about performance, and when I do, it is always complexity in the non-vue code, not the framework itself.
> Do the other frameworks also allow you to pick and choose and only use small parts as needed?
Generally yes.
Vue is on the lightweight side of things until you start adding more stuff (Vuex, Vue Router, http client, etc).
If you want a truly lightweight champion and are comfortable with vanilla JS check Mithril. In less than 10kB gzipped you get components, router, and an http client. By default it uses a hyperscript notation but you can use JSX too which is much better IMO.
> I see why Vue was created, but I don't see why it's still around.
Because a lot of devs in FE-land have little experience, so they still have to find out the hard way how some stuff breaks.
Like the "stringly typing" (a.k.a. no type safety because we use strings to refer from one bit of code to another) you see a lot in Vue: it is plain evil and can only be fixed by a really clever IDE or a new version of Vue that breaks compatibility.
I'm in the same camp, Vue is a nice stepping stone for some but it is almost anti-programming. I don't believe it will be a transferrable skillset going into the future.
A React code base feels like real programming comparably. I always recommend it much more.
> I see why Vue was created, but I don't see why it's still around.
React does not have low barrier entry. you can't just open notepad, edit blank index.html, include react.js via script tag and tinker with your html in 10 minutes to create simple widget - you need additional tooling, typescript compiler, etc. Vue is for people who used jQuery before and want to go reactive in shortest time possible.
I'm a Full-stack developer and I love Vue. The biggest thing that I love about Vue is your HTML doesn't need to be tightly intertwined with your JS.
If someone needs to change an H1 tag of X-component I don't have to do it and I trust that an HTML (I don't even know what you call someone who exclusively uses HTML at this point) expert, can do it.
I haven't developed much with React, but I suspect it has the same issues as template engines; pug, mustache, etc. That is, it's so intuitive to JS devs that simple tasks can no longer be performed by low-level HTML developers. Which means that some FE or FS developer is going to get tasked with menial data entry work when we need to rephrase a paragraph or header.
I don't use TypeScript either. I don't really have issues with typing. I've been developing for almost 8 years, primarily with JS but also GOLang and PHP. Not sure if I'm doing something terribly wrong or what. But I haven't had a typing bug that takes more than like 10 seconds to solve, and they're rare.
I do agree, the job market is overwhelmingly React. Might be because of React Native.
Using the VanillaJS framework you can accurately estimate your target uncompressed package size after picking just the features you need. It has a handy estimation tool on their homepage - Give it a try! http://vanilla-js.com/
I think its really cool that we are now making movies / documentaries of people in our field / industry that have done good work. I love to see our industry evolve to a place where the developers themselves can self fund a whole entire platform and make it sustainable long term. This documentary about the life of Evan You and how he succeeded in doing it is an inspiration to us all. Let the show begin !
I would say the hero worship and the "win the popularity lottery" model for software success are two of the attributes of the industry I like the least.
Self funding for indie developers would be great but I don't see this helping. We don't have enough filmmakers or (I bet) enough audience attention and desire for many more of these.
> I would say the hero worship and the "win the popularity lottery" model for software success are two of the attributes of the industry I like the least.
Completely understandable. It's an unfortunate aspect of humanity in general: the need for God(s) to worship and follow, as well as the need to be part of a group.
If we can't change human nature at its core, we might as well leverage it for something good.
While I do like documentaries, the focus on popularity is perverse. And it's easily gamed by fake stars/collaborators , news puff pieces, and cheering crowds.
Two I liked a lot were 'get lamp' about adventure/infocom folks, and ... I can't remember the other name, but it was a documentary about Commodore.
Agreed - there's probably loads of interesting documentaries that could be made with people still alive. A movie on game consoles of the 60s and 70s would be great, imo. And there's probably some out there I don't know about.
On the other hand, it's nice to put a face behind the tools that we use everyday.
It also helps to recognize the "human factor" behind the decisions being made with these tools (although YMMV on whether this documentary will succeed in doing so).
Tangential, but I think that's one thing "Indie Game: The Movie" did really well - it covered the indie game devs while also really humanizing them and their weaknesses.
Why do u think angular has a high barrier to entry? In my experience 40% of angular knowledge gets you 80% of what you need to do and this 40% isn't that time consuming or difficult to learn.
I mostly think it's because Angular is the whole package, it comes with a set of standards and concepts that you have to stick too. Where React still kinda lets you do whatever you want, it has the concept of components, but other than that there's not much to it.
We use Angular at work, just because it comes with that set of standards, we don't really have to introduce our own rules, but they're already there.
I've been hooked on Vue since hearing about it on Laracasts in 2016.
What's extra impressive about Vue.js is that fact that it appeared at a time when everybody was suffering from 'framework fatigue', and when React was the framework to be seen with, and still rose to the top.
Goes to show that there's always room for better (and easier).
I, for one, look forward to the part where Evan You begins to struggle with his newfound fame and industry glory, entering into a self-destructive spiral of booze, women, and drugs.
102 comments
[ 0.19 ms ] story [ 166 ms ] threadI work on the backend side of things currently, but from what I've read React is more powerful/ sought after currently, so that's what I'm going to be dedicating my tie to learning, wonder if this documentary might make me reconsider!
If you want to make an educated bet about where things are going, you might want to learn Svelte, which abandons the virtual DOM approach for a compiler, allowing you to set values with a simple `=` and creating smaller, faster code (Svelte's output doesn't include Svelte, and there's no virtual DOM to keep updated). Svelte's actual coding experience is also pretty similar to Vue - single file components, etc. :)
My work has a react front end, not sure if there's lots of transferrable skills between the two. For one thing I'll have to learn basic web stuff like CSS, HTML and all, and that will transfer, at least.
Svelte was developed by Rich Harris, who works at the NY Times.
Apple is hiring Svelte developers https://twitter.com/mansur_ashraf/status/1204542852581273600....
I personally think it will be OK. :)
Yes, several actually.
They are Chinese though, not American, so you might not know them as well.
If you live in the Vue bubble then of course you will get favorable opinions. I've been using both React and Vue for a couple of years and I don't think "Vue is generally considered more pleasant". Some people prefer one, some people prefer the other.
I'm not in the Vue community. When 'React vs Vue' was happening back in 2015 I was using a completely separate virtual DOM library (Ractive) so I'm relatively unbiased.
I've just been coding, writing, and speaking about JS for a decade and I know many people who've tried both. They might be wrong, but React having a steeper learning curve (JSX is harder to pick up than SFC), a more variable developer experience (depending on state management libraries used) and more complexity than Vue is definitely the common opinion.
Vue was heavily inspired by Ractive though.
(btw I didn't downvote you)
Edit:
> but React having a steeper learning curve (JSX is harder to pick up than SFC)
I don't know.
Templates might be easier for beginners than JSX but OTOH with Vue you need to learn a lot of abstractions (eg: watchers, reactivity is not obvious, etc). I think the complexity of getting started with React is that you need to add more third party libraries plus configuring your dev tools with Webpack/Babel/etc. CRA solves that for you but it's a huge black box if you don't know what you are doing.
I will agree that with Vue you can start directly with script tags a la jQuery and that is great for a lot of projects and beginner devs.
Not being able to use html closes a lot of doors. Have you ever wanted to just copy and paste html into a template script tag and have it render? With react you need to convert that first..
I want to grab a json list and display it in a li tag. With vue I fetch, assign to a variable and in the template v-bind it. With react I would write another component for the li maybe do a foreach.
Watchers existed in jQuery. Not sure they are so difficult one would choose react most people would just avoid them.
Bold statement. To me, more pleasant development is having everything typed.
I couldn't imagine not having my props, styles, and state protected.
The premise of the podcast is quite interesting. If you follow it, do you have any episodes you'd recommend in particular?
1. https://www.indiehackers.com/podcast/137-taylor-otwell-of-la...
2. https://www.indiehackers.com/podcast/131-tyler-tringas-of-ea...
3. https://www.indiehackers.com/podcast/086-lynne-tye-of-key-va...
It's just different, not better. Maybe you will prefer one over the other but that is a very subjective thing.
I've been using both for 4-5 years and I much prefer other libraries these days like Inferno, Mithril, Preact, or Svelte.
As a lover of React, and not having used the others you mentioned here...what is it about them you like over React?
Mithril gives you components + vdom + router + http client in 10kB gzipped. Performance is faster than React + Redux. I think it's the most zen and elegant of all options since your state is basically vanilla JS but that's very subjective.
Inferno and Preact are very React-y. Inferno is much much faster than React. Preact is much much smaller than React. With both you can add a compat layer to use React libraries.
Svelte is another beast altogether. Instead of a vdom it compiles your code to super efficient impertive DOM manipulation code which produces extremely small and fast apps. I don't love the ergonomics but the results are super impressive.
See these benchmarks for my claims about size and speed:
https://krausest.github.io/js-framework-benchmark/current.ht...
The primary thing I care about when comparing frameworks is developer productivity. Bundle size is a moderate concern, saving 50-100ms to re-render a giant table doesn't even make the list.
But there are more specific use-cases where it would indeed matter. Hand-held devices, high calculation loads, etc.
Even Dan Abramov's popular talk on React Suspense shows that even the newest versions of React begin the chugg under the influence of an extreme performance situation.
Remember react is in it's own ecosystem with their own language/acceptable approaches. The framework will allow you to do more than the community so you need to align how you write with what is acceptable. Last year the might mean classes this year hooks. React is more of a religion or a way of life compared to other frameworks.
Because of this there is a moat around react if you are looking to be hired. You need to stay upto date and involve yourself with the community. You can easily dip your toe in react and the coding is simple. The ecosystem is where the complexity lives and this is as important to understand/accept if you plan on moving into it.
Vue is more like jQuery when it came out. It immediately makes sense with what you have been doing and allows you to use as much or as little as you want.
I think react is great for someone who knows nothing (it provides a community / approach) or for someone who knows too much (those who pushed angularjs too far and got burned) but for the masses in the middle it demands you forget much of what you know works to accept this new way of life. It's too much for many. This is where Vue shines, it allows you to build in whatever way you want which allows you to leverage what you already know.
Also I really think you're overselling the differences between React and Vue. I generally think of them as interchangeable.
They are not interchangeable unless you do things the react way. Drop one html tag like < <div class="main"> in react and it breaks.
Being popular has no bearing on cult-ish status. Popular places like Starbucks can be described that way where a special language is required to order a cup of coffee.
Can you explain? That is entirely valid JSX and you should be able to drop it in any React component.
most other jsx-based things like hyperapp accept `class` just fine from what i know
Good on the core team, they made something super nice.
https://www.youtube.com/watch?v=783ccP__No8
I believe Vue 3 is supposed to fix much of this, but its unclear whether its going to be backwards compatible.
Also worth noting its not 100% true you can't manage your data separately you just need to manage the reactivity yourself.
Also, implementing your own reactivity is very unintuitive. You need to implement your own “diffing” (is this change worth rendering) to know when to force Vue to render. This is definitely not how Vue was intended to be used.
E.g: redux uses a react provider to inject the data into the component tree because of this. Vuex does the same for vue.
React will simply render the object you give it. That means that React doesn’t need to know when data changes, it simply renders the ui, diffs it to the current ui and applys the changes.
Unless your using component state but even then, it’s the rendering that measures change. The act of updating the state just lets React know “time to see if anything important changed”. Vue seems to tra Co data changes granularly which means it needs to understand the change at the point if mutation. This means it needs control of the data you want to render.
I find the limitation to only use dumb pojos much worse. AFAIK that is going to be fixed in Vue 3 since the reactivity system will use Proxy instead of getters and setters.
One big issue for me has been that your data layer needs to know about and use Vue, which seems unintuitive as Vue is a UI library.
In all honesty, the pitfalls are not that many, easy to understand, learn and avoid or get out from.
I spent way more time trying to figure out doing even basic things in react than debugging reactivity in vue. Espacially since the later has a fantastic doc and a small api.
From those who know more, is this a correct appraisal? Do the other frameworks also allow you to pick and choose and only use small parts as needed?
E.G: I teach reactjs by first starting with a simple script tag like you can do with vue. No webpack. No JSX. Suddenly students get it. No magic. It just makes sense.
But this approach is not common nor first class citizen.
What I like with vue is that the authors understand the value of scaling up, as well as scaling __down__. You can feel it in the doc, the API, the community...
So yes, all in all, vuejs will be lighter to use, not because the others can't be, but because it doesn't judge you for wanting to.
then i learned vue, and was able to build something in an afternoon. and, at the end of the afternoon, i had the tooling too. but the vue learning path doesn't teach tooling until after you get a feel for why and how vue can solve your problems.
how it is taught is 100% of the reason vue found a place in my life. HUGE missed opportunity by the other frameworks, which are so eager to prove that they have the bells and whistles that they trip over their own feet trying to get people started.
had i learned from you rather than from docs, i would be using react in my personal projects and never would have looked at vue.
Rarely do I ever have to think about performance, and when I do, it is always complexity in the non-vue code, not the framework itself.
Generally yes.
Vue is on the lightweight side of things until you start adding more stuff (Vuex, Vue Router, http client, etc).
If you want a truly lightweight champion and are comfortable with vanilla JS check Mithril. In less than 10kB gzipped you get components, router, and an http client. By default it uses a hyperscript notation but you can use JSX too which is much better IMO.
Here is a starter kit I made for Mithril with Webpack to get you started: https://github.com/PierBover/mithril-jsx-starter-kit
Vue is on the average weight side of things.
Frameworks like HyperApp and Preact I'd consider lightweight.
I'd use React too if I had to work on a big project where there are more important factors than performance and bundle size.
https://en.howtruthful.com/o/react_is_a_better_framework_tha...
I see why Vue was created, but I don't see why it's still around.
React has solved the complexity pain points, it's easier to develop in React than Vue now (imo), and Vue has just been copying features.
Not to mention the massive environment and cross-platform access (I don't see Microsoft making a react-windows-vue fork).
Also, if you want a job, React is far more popular (look at the hiring threads)
I would recommend Create React App using a TypeScript template.
> npx create-react-app demo --template typescript
edit: you guys can downvote all you want, I'm simply showing you the other side. I already use React, I don't care if you do or not.
Because a lot of devs in FE-land have little experience, so they still have to find out the hard way how some stuff breaks.
Like the "stringly typing" (a.k.a. no type safety because we use strings to refer from one bit of code to another) you see a lot in Vue: it is plain evil and can only be fixed by a really clever IDE or a new version of Vue that breaks compatibility.
A React code base feels like real programming comparably. I always recommend it much more.
React does not have low barrier entry. you can't just open notepad, edit blank index.html, include react.js via script tag and tinker with your html in 10 minutes to create simple widget - you need additional tooling, typescript compiler, etc. Vue is for people who used jQuery before and want to go reactive in shortest time possible.
You can choose how much React you want. You don't need tooling or JSX even.
If someone needs to change an H1 tag of X-component I don't have to do it and I trust that an HTML (I don't even know what you call someone who exclusively uses HTML at this point) expert, can do it.
I haven't developed much with React, but I suspect it has the same issues as template engines; pug, mustache, etc. That is, it's so intuitive to JS devs that simple tasks can no longer be performed by low-level HTML developers. Which means that some FE or FS developer is going to get tasked with menial data entry work when we need to rephrase a paragraph or header.
I don't use TypeScript either. I don't really have issues with typing. I've been developing for almost 8 years, primarily with JS but also GOLang and PHP. Not sure if I'm doing something terribly wrong or what. But I haven't had a typing bug that takes more than like 10 seconds to solve, and they're rare.
I do agree, the job market is overwhelmingly React. Might be because of React Native.
(...which is not a knock on Vue! I still love Vue. But I'm starting to love Svelte even more.)
https://litedom.js.org/
Self funding for indie developers would be great but I don't see this helping. We don't have enough filmmakers or (I bet) enough audience attention and desire for many more of these.
Completely understandable. It's an unfortunate aspect of humanity in general: the need for God(s) to worship and follow, as well as the need to be part of a group.
If we can't change human nature at its core, we might as well leverage it for something good.
There are plenty of computer things and people from the 70s and 80s which would make great documentary subjects.
Agreed - there's probably loads of interesting documentaries that could be made with people still alive. A movie on game consoles of the 60s and 70s would be great, imo. And there's probably some out there I don't know about.
It also helps to recognize the "human factor" behind the decisions being made with these tools (although YMMV on whether this documentary will succeed in doing so).
Tangential, but I think that's one thing "Indie Game: The Movie" did really well - it covered the indie game devs while also really humanizing them and their weaknesses.
React - yes, as long as you don't have to setup the compiler (ie: use create-react-app) and you know javascript (specifically ES6+) reasonably well.
We use Angular at work, just because it comes with that set of standards, we don't really have to introduce our own rules, but they're already there.
While the react API is comparatively simpler/smaller...
I should declare an interest; I wrote the history of the Definitely Typed project last year:
https://blog.johnnyreilly.com/2019/10/definitely-typed-movie...
It's exactly this sort of vibe I had in mind as I was writing it. I'm really looking forward to watching the full documentary!
What's extra impressive about Vue.js is that fact that it appeared at a time when everybody was suffering from 'framework fatigue', and when React was the framework to be seen with, and still rose to the top.
Goes to show that there's always room for better (and easier).
Like with a typical musical biopic.