11 ms·
Actually there are relatively few real (TM) open source projects driven by the community, at least if you look at important projects. Many open source projects
by cryptos 7y ago
Actually there are relatively few real (TM) open source projects driven by the community, at least if you look at important projects. Many open source projects are just commercial projects driven mainly by a single company. Look for example at Redis, MongoDB, MySQL, and Elasticsearch. They follow exactly the model described in the article. Technologies like these could have been developed by a community, too, but it is hard to form such a community and keep it alive.
For a community-driven project from the size of a database some serious sponsors would be needed. Good examples are Rust, Linux, and PostgreSQL. I wonder why so many companies are happily paying Oracle (and the likes) tons of money instead of sponsoring an open source project like PostgreSQL.
- ksec 7y agoIf we look at the Top 10 programming languages, I think only Ruby is community driven that has very little cooperate backing. All the other languages are driven by one (Apple;Swift), or multiple, (Javascript, Java) cooperate sponsors. I think the balance is hard, you will need lots of resources from Documentation, VM expertise, Library, etc.
- fnord123 7y agoThe top 10 according to Red Monk[1] are JavaScript, Java, Python, PHP, C#, C++, CSS, Ruby, C, Objective-C, Swift, TypeScript, Scala, Shell, Go, R, PowerShell, Perl, Haskell, Kotlin. Of these, Javascript (w3), Python (Python Foundation), CSS (w3), C++ (ISO), Ruby (community), C (ISO), Shell (Posix), R (community), Perl (community), and Haskell (community) are not bound to a single company. [1] https://redmonk.com/sogrady/2019/03/20/language-rankings-1-19/ https://redmonk.com/sogrady/2019/03/20/language-rankings-1-1...
- cryptos 7y agoKotlin is also no longer in the hands of a single company. https://kotlinfoundation.org/ https://kotlinfoundation.org/
- mxschumacher 7y agoThe JS standard is not worked on my w3, but by Ecma international https://en.wikipedia.org/wiki/ECMAScript https://en.wikipedia.org/wiki/ECMAScript
- fnord123 7y agoThat is correct. Thanks.
- ksec 7y agoI should have included in my first post. I think rather than splitting between Community or Cooperate, a more accurate representation would be how much Market Value are depending on those Languages. If you have a company dependent on OCaml, let say it is on 30th on the list, but the company is making billions in Net profits, you could bet the company will fund the development of Ocaml, even if it was driven by a Foundation, or Community.
- fnord123 7y agoI agree that a clever person such as yourself can construct a metric such that Ruby is the only language that comes out.
- saghm 7y ago> The top 10 according to Red Monk[1] are JavaScript, Java, Python, PHP, C#, C++, CSS, Ruby, C, Objective-C, Swift, TypeScript, Scala, Shell, Go, R, PowerShell, Perl, Haskell, Kotlin. Top 20?
- fnord123 7y agoOei, call me dany coz I cant count.
- ipsum2 7y agoI'm curious what the distinction is between Rust (driven by Mozilla) and Go (driven by Google).
- ncmncm 7y agoRust has largely broken out of Mozilla already. If it can maintain its growth rate (not guaranteed, but so far so good) it will have a future. Check back in five years.
- baby 7y agoIt's a very different language than Golang though, very expressive, generics, no GC, etc.
- ncmncm 7y agoYou say that like those are bad things. Yes, the borrow checker is a PITA vs. Go, but there are compensations.
- baby 7y agoThese are not bad things if you’re writing system code.
- spopejoy 7y agoIs there ever a plan for GC?
- remram 7y agoThere are garbage collection libraries in progress: rust-gc[1] and shifgrethor[2]. If you mean language support, then no, not really, though it was discussed in https://github.com/rust-lang/rfcs/issues/415 https://github.com/rust-lang/rfcs/issues/415 [1]: https://github.com/Manishearth/rust-gc https://github.com/Manishearth/rust-gc [2]: https://github.com/withoutboats/shifgrethor https://github.com/withoutboats/shifgrethor
- ncmncm 7y agoActually Mongo doesn't even look at pull requests. So, yes. Postgres (do we really still need the "QL" reminder?) has demonstrated staying power, and repays invested time in spades. Linux, obvs. Rust, it's still too early to be sure about. Learning it will be at least educational, maybe formative, and at worst it won't be taken away.
- tracker1 7y agoBeen learning Rust for the past few weeks.. absolutely love most of it. It's the first low-level language that actually feels right to me. Of course, I'm one of those weirdos who actually loves JavaScript. I also appreciate Go and C#. Rust just feels like most of the right trade offs, and once Futures and Async/Await stabilize, it'll be IMHO feature complete. As an aside: The community needs an abstraction for WebAssembly's File System that has something like fcntl/flock functionality. As it stand's the Node interface for emscripten targets isn't good enough. Would love to see a bit more collaboration on this regard for sync and async interfaces for FS I/O that supports file/record locking in a more abstract runtime. Though this has been a pretty big shortcoming with Node since early on imho.
- folkrav 7y agoProjects like Linux are "community" projects in the sense that there is not a single company backing it, sure. However, for Linux, only 7.7% of contributions were made by unpaid developers as of this 2016 report[0]. I have a hard time calling this a "community" project when the community is paid by corporations. Don't get me wrong, I'm not really complaining, as a project the size of a commercially viable operating system kernel is hardly a project that could be viable without corporate backing IMHO. [0] https://thenewstack.io/contributes-linux-kernel/ https://thenewstack.io/contributes-linux-kernel/
- chupasaurus 7y agoDon't forget that most of the kernel's codebase are drivers and some of the most impactful additions were made by employees of corporations (on top of my mind - cgroups and namespaces by googlers, and not only as a base for containerization).
- fetbaffe 7y agoFor community driven programming languages I would say PHP, large user base, mature & very active.
- rococode 7y agoI'd use this as an argument that if PHP is the gold standard for a community-driven programming language, I'd rather every popular language be backed by a large corp haha. Actually, even ignoring PHP, I'm vaguely convinced it's generally better for a language to be backed by a company. I personally feel more secure knowing that there are people whose full-time job is to take care of the language, and I trust community backlash to deal with any errant decisions. I can't imagine Google (or Microsoft, or Apple, or Facebook) making or blocking a change in a way that kills an entire programming language while they sit idly by ignoring the community response.
- pbowyer 7y agoHaving observed the decision-making process for 6 months and thought about PHP's direction, I'd agree. Either a foundation is needed, which sets a vision and sticks to it, or a company, or a BDFL. But with none of them, you get each language faction pulling in its own direction, bits of each added/retained, and no coherence.
- fetbaffe 7y agoVisual Basic was basically(!) killed by Microsoft albeit large protest, so no, putting your trust in one company does not always work. PHP has been developed very well the past few years as community project, there is an open RFC process with a codified voting process in place. Sure there have been some drama within the community, but that has not affected either the language nor the implementation. What makes PHP a great fit for a community driven project is that PHP is a pragmatic language in its core. If the general goal of a project is to design a perfect & consistent language then a community driven process is maybe not the best approach.
- pjmlp 7y ago
- henridf 7y agoPrometheus is a (rare) recent example of a significant, thriving open-source project that is community-based. Not quite as broad in scope as something like Elasticsearch though.
- bayesian_horse 7y agoDepending on what "community-driven" means, I'd like to add Python, Blender, Jupyter, Django ... I'd say "thriving community-based open source projects" are rare in the sense that most open source projects don't thrive (especially if you count every open-licensed repository on github), but there are tons of examples.
- koffiezet 7y agoBut it started out as a Soundcloud project...
- infinity0 7y agoDebian is 1000 developers with mostly decentralised decision making with some voting for project-wide issues using Condorcet.
- mcv 7y agoApache and Linux have always been the two big examples of community-driven open source projects. And Apache still hosts many community-driven open source projects, but they don't seem to be as visible as they were 10-15 years ago.
- fnord123 7y agoSome Apache projects, sure. But Spark is very much a Databricks project. Hadoop used to be fairly community as there were hands in it from Cloudera, Hortonworks, Microsoft, and a few others. But with the merger of Cloudera and Hortonworks, the expectation is that it will become guided by that organization.
- tragic 7y agoThere is a slight difference in that all those tools are the basis for their companies' commercial offerings. Google does not sell Go tools or consultancy hours etc. Its interest in Go is to have a programming language that's safe, fast, operationally undemanding and fits the mental model of a recent CS graduate (as per that notorious Rob Pike quote). This at least makes it easy to work out if incentives are aligned. Do I want to program in such a language? Yes? Then Google is probably not going to completely screw it up, even when they make decisions I disagree with. Do I like to wax rhapsodic about parser combinators? Not ever going to be a good fit.
- O_H_E 7y agoGreat non-language examples are Debian and KDE
- INTPenis 7y ago>I wonder why so many companies are happily paying Oracle (and the likes) tons of money instead of sponsoring an open source project like PostgreSQL. Well does PostgreSQL offer anything like Oracle's CDC? Edit: Nevermind, I just read up on using a WAL replication slave with triggers.
- User23 7y agoI hurd about a thing called GNU...
- pjmlp 7y ago> I wonder why so many companies are happily paying Oracle (and the likes) tons of money instead of sponsoring an open source project like PostgreSQL. Because that are plenty of nice enterprise features that PostgreSQL still doesn't cover.
- Twisell 7y agoCould you name some I’m pretty curious? For my use case it’s a no brainer because only PostgreSQL have a decent GIS extension, last time I checked Oracle was lagging well behind.
- pjmlp 7y ago- Distributed transactions across cluster nodes - The IDE experience with PL/SQL, including graphical debugging of stored procedures - Compiling PL/SQL to native code for better performance - Running bare metal without an underlying OS - Oracle RAC - The fine tuning options on their JDBC and .NET drivers - A proper C++ driver API
- sverhagen 7y agoI don't have the stats to back this up, bit that all seems very niche. I have to imagine you get downvoted because people don't recognize these as real requirements. I needed not a single one of these. Ever.
- jsty 7y agoCompiling SQL -> native I'm not sure deserves to be described as niche, since lots of analytical queries can benefit from that. Worth pointing out that Postgres has a JIT compiler [0]. [0] https://www.postgresql.org/docs/current/jit.html https://www.postgresql.org/docs/current/jit.html
- jacques_chester 7y ago> I needed not a single one of these. Ever. Enterprise software tends to have lots of features that the majority of folks will never encounter in their career. The enterprise market space is composed of around a thousand potential customers world wide, all of whom are large enough to have sophisticated and complex internal computing environments. They have varying norms, requirements, workloads, regulatory environments, industry standards and so on and so forth. Each has a lot of money and rejecting the requirements of one company often means you are effectively rejecting several, or perhaps even an entire sector. So you add something to cover them and before long, your software has the union set of features required solely by enormous companies. From a non-enterprise view a particular feature may seem like absurd overkill. But someone, somewhere, needs it and there is a long and often impressive story of how it was achieved.
- _trampeltier 7y agoThe simple and sad truth: -Nobody gets fired for buying Oracle. -It's easy .. explaining an investment in open source .. good luck
- trilobyte 7y ago"We'll save $500k a year in licensing costs and don't need to re-negotiate a contract to update our architecture" has worked for me.
- spopejoy 7y ago> Nobody gets fired for buying Oracle I can think of environments where you'd get fired. Oracle these days screams "legacy", and especially if you're working on low-latency projects like trading systems it would be a huge, expensive mistake.
- dragonwriter 7y ago> Nobody gets fired for buying Oracle. Nah, even when Oracle was more dominant than they are today, that wasn't entirely true: https://www.cnet.com/news/california-cancels-oracle-contract/ https://www.cnet.com/news/california-cancels-oracle-contract...
- castlecrasher2 7y agoCompanies pay Oracle because 1) PostgreSQL doesn't take you to lunch and 2) Oracle "just works." I mean, we all know #2 is effectively a lie but having the option to go to Oracle directly for issues (even if the response is just "pay a contractor") immensely reduces risk for executive leaders.
- jolfdb 7y agoYou can hire a Postgresql contractor for admin, bugfixes and features, and you can pay Postgresql corporate for bugfixes and features
- tracker1 7y agoLast time I was in a position to try, not so much. I emailed about 15 such contractors at least close to the SW US (I'm in Phoenix), and didn't get a single response. This was 5-6 years ago.
- jimbokun 7y agoAre they paying Oracle though? A quick Google found this: https://seekingalpha.com/article/4229086-oracle-growth-dead https://seekingalpha.com/article/4229086-oracle-growth-dead If Oracle revenue is no longer growing, maybe new development leans more towards Postgres and other open source offerings?
- JetSpiegel 7y ago> Revenue US$39.83 billion (2018) Even not growing, they are indeed paying Oracle.
- spopejoy 7y agoIsn't that mainly for integrations though? I would think straight Oracle RDBMS licensing would be on life support without some big ERP connector etc.
- slykar 7y ago> I wonder why so many companies are happily paying Oracle [...] instead of sponsoring an open source project like PostgreSQL. Corporate world is ruled by liability. When you are working on a multi-million dollar project and the database breaks, you want to be able to put as much responsibility on the 3-rd party as much as possible. Open Source projects come with no guarantee. If someone hacks into a system because of a flaw in the Open Source project you are screwed. If it's a software delivered by Oracle, then Oracle is responsible and needs to pay your million dollar fine. Of course I'm simplifying, because there's probably still a lot of legal process behind it depending on the country, but it's essentially that.
- geoka9 7y ago> then Oracle is responsible and needs to pay your million dollar fine Has it ever happened though? Genuinely curious.
- qpiox 7y ago> * is responsible and needs to pay your million dollar fine. This is not really true. AFAIK there is no commercial software that has a license clause making the manufacturer liable if you loose your data due to faults in their product. We lost a couple of TB due to bad OS/firmware in a NAS. The manufacturer did everything they knew trying to fix it, but in the end failed and we lost the data. Once we lost a crucial virtual machine and backups due to human error. It was not the manufacturer of the virtualization solution that helped us get it back, because they did not have such tools and did not provide such services. Hackers who were reverse engineering the software and publishing their reversed code on the net helped us get the VM image back. After these two and some other situations I am even stronger proponent for open source, because with open source you have the option to try help yourself if the manufacturer won't or can't help you. I am not just proponent, in fact if I was to be involved in decision making, it would be open-source solution throughout. Of course with support. If possible I'd pay for support services to the original developers.
- kbumsik 7y agoWhat about Python? AFAIK it is the best example of big community-driven project.
- mshockwave 7y agoLLVM is also an interesting examples: it was first driven by Apple but now it's driven by many different large companies. I mean it's not completely driven by community but i think it's better than dominated by single authority
- tracker1 7y agoAside from JS/Node and maybe C++, I can't think of any languages or platforms that are nearly as community driven. Java is probably the closest.
- antirez 7y agoI disagree about Redis. Redis Labs did a great job at creating an ecosystem of advanced things around Redis. But the Redis core project itself, that is what most people use, is surely sponsored for a big part by Redis Labs, but is executed as a completely OSS community driven project: 1. All the work is done in public, with a license that gives zero protection to the original authors. 2. The project leder (myself) only does OSS work and has no other roles in the sponsoring company. 3. The roadmap is decided by the community (myself with feedbacks from the community), not a company or some product manager or alike. 4. There are multiple people from multiple companies contributing regularly code to Redis: Redis Labs, Alibaba, AWS, ... 5. The main web site is handled by the community. In the case of Redis this was possible because of the minimality of the project, otherwise I agree that's a huge challenge. But still IMHO Redis deserves to be listed in such "purely community" OSS projects.