Live data from Hacker News

React v15.5.0

facebook.github.io

151–160 of 209 posts

Re: React v15.5.0

#151
post #114
post #100

Earlier quoted context omitted.

As someone who talks quite (very?) fast and has to carefully slow down for public speaking... ... I found Lin's style of speaking very difficult to listen to. I appreciate the professionalism of the approach (if that's what it is), but if only by a small margin (perhaps 10-20%), I found her speaking too slow to the point that I wanted to skip forward constantly and would have found it difficult to pay attention to in…

Youtube player has a setting for playback speed. I almost always watch YT videos in 2x speed or more.

There is also a minimal Chrome extension called 'Video Speed Controller' that brings this functionality to all HTML5 videos with a bit more granularity. It's invaluable.

Re: React v15.5.0

#152
post #113

Earlier quoted context omitted.

I agree, I am really concerned about this change. But unfortunatly I do not think my feedback via twitter was well taken: https://twitter.com/wesleytodd/status/850550711804989440 EDIT: I should add, that I didn't want to say that I completely disagree with the change to remvoe this api entirely on twitter to the maintainers. I am sure they get enough crap from people.

Thanks for the feedback, we do appreciate it.

Well thanks then! I know social media sucks for this kind of stuff. And I am sorry for my contribution to that. And know we really all do appreciate it, we are just passionate and opinionated people.

Personally I am more concerned about keeping my team building cool features than updating react. This has led to us having two distinctly non-interoperable code bases, one with react 0.12 and one with react 14-15. This makes me worried that now we will have a third with react >15.

I think we can all agree that many of the ideas, while not new, were revolutionary to front-end web developers. And that is what I love about working in this stack. But other than these ideas, the projects themselves are just stumbling along trying to catch up with some perceived "modern" way of coding, and it is the dev teams and projects that suffer.

Re: React v15.5.0

#153

Earlier quoted context omitted.

Agree. This is Maker's Triangle stuff (Good, Cheap or Fast, pick two). Everyone is picking Cheap and Fast, and not only Cheap, but Free, so the amount of Good left in this stuff is non-existent. If there's no Good chosen, then it all gets crufty and full of tech debt. So someone else thinks they can do better, and starts developing a replacement. In order to get traction, though, they need to make it Free and develop…

I'm unsure if this Maker's Triangle thing applies to OSS. But if it does, it's my impression that it's usually the "Fast" that is abandoned, not the "Good". But how does that apply to Chrome, or React? Is there any indication that Chrome carries more technical debt than, say IE7? Similarly, in what way does Facebook need people to adopt React, and would that matter enough to accept such compromises? Is there any indi…

To continue the analogy, the JavaScript community doesn't believe in technical debt. It just declares itself bankrupt every few weeks and moves on, leaving anyone who was relying on earlier arrangements to cover the costs.

To extend it further, this is why you should be very careful who you give credit to in the JavaScript ecosystem. If you're trying to build anything robust and potentially long-lived, relying on anything but the largest and most established dependencies is usually unwise, and even then relying on any any aspect that isn't in mainstream use is a risk.

Re: React v15.5.0

#154

Earlier quoted context omitted.

Mild rant: I'm not convinced ES6 classes are better than components created the old way. First, the lack of autobinding callback functions for child props is not ideal. I don't even have to think about it with createClass, and it requires at least one extra step with ES6. It's less convenient. Second, I don't think HOCs are necessarily easier to reason about than mixins in many situations. React is already quite defi…

I was the guy who came up with autobinding in older Reacts and I'm glad to see it gone. It might save you a few keystrokes but it allocates functions that'll never be called in 90% of cases and has noticeable performance degradation. Getting rid of autobinding is a good thing.

As much as I agree with the performance side here, I believe the usability for devs is an important factor. Let the users who really need that last bit of perf opt-in, and let everyone else just go along in blissful ignorance. And I am honestly alright if "opt-in" means use preact or some other project.

Think about the reasons jQuery and WordPress were popular, despite performance issues, they JUST WORKED for people. React is the jQuery of vdom projects, don't try to make it the something it is not.

Re: React v15.5.0

#155

Earlier quoted context omitted.

"extends" is often a bad idea. https://en.wikipedia.org/wiki/Composition_over_inheritance It's sad to see how new generation can't learn lessons of the past.

Yes and in fact it is right in our docs. https://facebook.github.io/react/docs/composition-vs-inherit... >So What About Inheritance? >At Facebook, we use React in thousands of components, and we haven't found any use cases where we would recommend creating component inheritance hierarchies. We dislike inheritance as much as you do, but we also dislike ad hoc class systems that have worse performance.

Example with "extends" is also in your docs (exactly by link of this post), so I'm not sure what it proves.

Re: React v15.5.0

#156

Just curious: did Facebook change the license? AFAIK they can revoke permission to use from 3rd parties. Am I mistaken? If not, isn't this a huge risk for startups?

https://code.facebook.com/pages/850928938376556

It's purely defensive, they'll only revoke your license if you sue them for patent infringement. And they only revoke the patent-grant of React as far as I can tell, not your license to use it (and there aren't any patents related to React as far as the internet claims).

Re: React v15.5.0

#157
post #67

Earlier quoted context omitted.

Agreed 100% about JSX. Especially since the only alternative anyone uses is opaque stringly-typed template nonsense (Angular, Vue, Ember, etc).

Humm no, JSX is just a DSL. I much, much prefer virtual DOM over String templates but I also prefer hyperscript over JSX: h('div')

JSX is a macro (it's expended to plain JS at compile time). Almost every other major framework uses DSLs (strings are evaluated and transformed into code at run time).

Re: React v15.5.0

#158

Earlier quoted context omitted.

Yeah I still use `React.createClass({})` because... autobinding. Also wish someone would explain the draw of ES6 classes. React is about composition, not inheritance. Have never seen a `React.Component` extended.

ES6 classes are a complete mess brought by corporate people loving OO, even in a setting that doesn't make sense. You can "autobind" with this notation: myMethod = () => { } but it doesn't look as good as myMethod() {} and you have to remember this EVERY TIME you add a method. Also, you never need to use the constructor in React. Just do: state = {} in the body of the class. You may need babel presets #918718$$&ééàdi…

Classes and inheritance are features of type systems, not OOP. Plenty of functional programming JS libraries use classes for testing types (for example, the Either monads' Left and Right).

Re: React v15.5.0

#159

Earlier quoted context omitted.

Yes and in fact it is right in our docs. https://facebook.github.io/react/docs/composition-vs-inherit... >So What About Inheritance? >At Facebook, we use React in thousands of components, and we haven't found any use cases where we would recommend creating component inheritance hierarchies. We dislike inheritance as much as you do, but we also dislike ad hoc class systems that have worse performance.

Example with "extends" is also in your docs (exactly by link of this post), so I'm not sure what it proves.

That's extending the base react component class, not an existing component class.

Re: React v15.5.0

#160

Just curious: did Facebook change the license? AFAIK they can revoke permission to use from 3rd parties. Am I mistaken? If not, isn't this a huge risk for startups?

https://code.facebook.com/pages/850928938376556 It's purely defensive, they'll only revoke your license if you sue them for patent infringement. And they only revoke the patent-grant of React as far as I can tell, not your license to use it (and there aren't any patents related to React as far as the internet claims).

Which in turn means they can infringe on any of your patents with no consequences. If they do, your only choice is to rewrite your entire application in a hurry, and only then you can sue them.
Post reply on HN