6 ms·
Facebook has a terrible track record when it comes to open-sourcing their internal tools. See: Phabricator, HHVM, Flow, Jest, ... Even React, which is their mo
by travisd 5y ago
Facebook has a terrible track record when it comes to open-sourcing their internal tools. See: Phabricator, HHVM, Flow, Jest, ...
Even React, which is their most popular library, is not actually "open source." They're very transparent about the fact that their priorities are Facebook's needs -- even if they do take community input.
None of this is per-se bad, but you should definitely treat an open-source project out of Facebook with skepticism when it comes to adopting it for your own use cases (possibly making sure you're not too locked in when an incompatible v2 comes out with virtually no warning after FB's internal implementation drifts).
- folkrav 5y ago> Even React, which is their most popular library, is not actually "open source." How do you define "open source"? It typically simply means the source code is available. By any definition I can think of, React is definitely both free and open source. How they design the software or if they take contributors isn't really relevant.
- xcambar 5y agonowadays, it is expected that open source is also a synonym for “community-driven”, which is a very bold assumption. I don’t know how we got to this point but it’s interesting to notice that the terminology drifted.
- picardo 5y agoBy that definition, any software project that is driven by a BDFL wouldn't be open source, including Linux. The terminology hasn't drifted that much. I think there is a small and vocal group of people who are trying to take back "open source" by reframing what it means, so as to exclude corporate projects. It doesn't make sense to me.
- xcambar 5y agoI was probably too implicit but when I wrote "which is a very bold assumption ", I also meant that I am in disagreement with the statement. For me, open source and community-driven are not similar and I don't understand why people seem to expect it.
- ksec 5y ago>any software project that is driven by a BDFL wouldn't be open source, including Linux. There are certainly a push in that direction. And that you need a group of people, core or council to be considered as Open Source. And Linux has that. >The terminology hasn't drifted that much. It depends how you measure it, but Twitter and HN are at least two places where lots of developers are suggesting Open Sources equals to Community driven. And yes, there are also some movement towards MIT, BSD or Apache 2.0 as being not considered as Open Source because they do not contribute back changes. Although that hasn't gotten any traction. ( yet )
- naikrovek 5y ago> How do you define "open source"? It typically simply means the source code is available. that is not what that means. "source is available" and "open source" are very different.
- colinmhayes 5y agoDisagree. We need to stop trying to cram meaning into phrases that are already defined. Open source means the source code is freely available. Adding anything else requires a different name.
- naikrovek 5y ago"open" already has meaning. > Disagree. well, fortunately your agreement is not required. "open source" already has a definition and it requires openness.
- TheDong 5y ago> How do you define "open source"? It typically simply means the source code is available. I agree with you that react is definitely open source, but I'd also encourage you to use more specific wording around what "open source" means. I think wikipedia gets this right: https://en.wikipedia.org/wiki/Open-source_software https://en.wikipedia.org/wiki/Open-source_software "Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose" The license is the key bit. On the other hand, there's "source available" software (also on wikipedia https://en.wikipedia.org/wiki/Source-available_software https://en.wikipedia.org/wiki/Source-available_software ), which is what your definition equates to, and I personally don't want to see confused with open source or free software.
- naoqj 5y ago>Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose ??? Isn't React licenced under the MIT licence? It seems to me that it tickes all boxes?
- TheDong 5y agoAs I wrote at the top of my comment. "I agree with you that react is definitely open source" (and no, I did not edit that in, it was there when you read it) I'm aware react is licensed under the MIT license. I was just talking about how the parent comment chose to define "open source".
- folkrav 5y agoReact is MIT, which is pretty much one of the least restrictive ones, granting basically no rights to the original publisher. That Wikipedia definition sounds more like what typically gets described as "Free and Open-Source Software"/FOSS, no?
- TheDong 5y ago
- renewiltord 5y agoEveryone is going on tangents, but yes React is as open-source as they come. What people are conflating are the notion of community-driven and open-source. React is a successful Facebook OSS project. An example of one which went poorly is Thrift. Facebook open-sourced it and then internally used fbthrift which diverged drastically. OSS Thrift isn't that popular these days any more.
- disgruntledphd2 5y agoHive is another good example of the same issue.
- lala45 5y agoFree Software is an established term, and React certainly is not Free Software, due to its patent. I very much doubt that React is Open Source either, for the same reason.
- galaxyLogic 5y agoSo react is MIT-licensed and has a patent. How do those two work together? If I modify React's source-code might I not infringe on the patent and then get sued by Meta?
- lala45 5y agoI’m not a lawyer, but from my perspective, that’s indeed a concern. And perhaps you could get sued just by using React. It could differ between jurisdictions as well. A standard open source license with a patent grant, like the Apache license, would have been a lot clearer, but Facebook has so far refused to license React in that way. A problematic patent grant was offered for earlier versions of React but that’s not the case anymore (and didn’t really fix the problem anyway).
- galaxyLogic 5y agoI'm not a lawyer either and I wonder about the scope of Apache patent grant. Does it give you the right to use any patents the software in question "uses" in any possible context? Or does it simply allow you to modify the software any way you like and not get sued for infringement? But then how much can I modify it and still retain the right to use those patents? I mean if I create a totally unrelated software package which however shares some code with the original work, can I keep on using those patents anyway I want?
- sneak 5y agoNo, open source means that the software is free software. The source code to Windows is available.
- folkrav 5y agoUrgh. Typical reminder never to let engineers name things. Whoever thought using "open source" for something else than "source is open"...
- peterhunt 5y agoThis is not a fair characterization of React. The tech lead of the project doesn't even work at FB anymore.
- tptacek 5y agoReact is MIT-licensed. It is, of course, open source. If you don't like their decisions, fork it.
- lala45 5y agoReact is patented and Facebook is actively choosing not to offer a patent grant, so unfortunately that’s not the whole story. A fork may not be an option. Perhaps a given organization may not even be allowed to use React, if Facebook decides against it for some reason. Jurisdictions can differ as well. In my opinion, the best thing would be if Facebook simply made the terms clear by using the Apache license or similar. But hey, it’s Facebook, so I’m not expecting much…
- hn_throwaway_99 5y agoWhat's wrong with Flow, Jest or Graphql? I think these are all fantastic projects. I mean, Flow "lost out" to Typescript, but, it's usual for one winner to emerge from competing frameworks.
- cheeze 5y agoSeriously. FB chose to open source these things. They could have kept them private but wanted to give back where they could. IMO that should be celebrated, not shitting on fb for their poor track record of going out of their way to open their source code to the public. I hate meta as much as the next, but come on.
- paulhodge 5y agoGraphql is great. With Jest, that project feels a little abandoned because the Typescript support (ts-jest) is pretty janky and has bad performance. Meanwhile in the ecosystem in 2022, it's becoming the norm to have first-class Typescript support.