Hacker News new | ask | show | jobs
by KrestenKjaer 4107 days ago
https://www.apache.org/foundation/thanks.html

Apache offers stewardship for projects of a certain size. That is they have to be big enough to accept the overhead of having for example a vice president of the project.

Big companies create big projects. Big companies create projects written in Java.

Big companies wants a steward for their projects to welcome outside contributors.

  Project - Company - Commercial Product
  Geronimo - IBM - Websphere (parts)
  JackRabbit - Adobe - Adobe AEM
  Felix - Adobe - Adobe AEM
  Apache CXF, Apache Camel - Red hat - Fuse
  Apache Sling, Adobe, Adobe AEM
I am sure there are other examples.
5 comments

Also, Apache has a pretty good framework for "crossing the t's and dotting the i's" in legal terms for code contributions, so that big companies know that all the code is accounted for and there are no nasty legal surprises lurking - in theory.

For a while, I was part of one small non-Java bit of the ASF: https://tcl.apache.org/rivet/ but I haven't been active for a few years, and indeed, as of last weekend, decided to resign from active membership in the ASF and 'go emeritus'.

It's a good group doing good work.

  Apache has a pretty good framework for "crossing the t's and dotting the i's" in legal terms for code contributions, so that big companies know that all the code is accounted for and there are no nasty legal surprises lurking - in theory.
That sentence exactly summed up the point I was trying to make.
Not "exactly". You also expressed tired cliches such as "Big companies create projects written in Java."
Just because its tired, doesn't mean it isn't true.
I have actually audited systems by "big companies" written in other, e.g. C#, languages.

(p.s. Try "it's")

I have actually authored systems at big and small companies in: C# VB Pascal Java Python Ruby JavaScript

My point was not that big companies don't use languages other than Java. My point was that the tired cliche of Java dominating at big companies is entirely warranted. If I implied that Java penetration at large enterprises is 100%, then there is a lot more wrong with my writing than a missing apostrophe.

C# is Microsoft's Java. How many Python, Go, Ruby or Haskell projects have you audited at "big companies"?
Big companies create a lot of projects, some of them are bound to be in Java. I in no way intended to state Java was the only language for business applications.
Everyone always considers Apache as being synonymous with old school Java technologies. But they have a set of newer big data tools that are integral components at almost every major corporation or serious startup these days:

Accumulo, Ambari, Avro, Cassandra, CouchDB, Falcon, Flume, Hadoop, HBase, Hive, Kafka, Knox, Oozie, Phoenix, Pig, Samza, Spark, Sqoop, Storm, Tez, Zookeeper.

I can imagine many database companies in particular Oracle and Teradata wishing Apache wasn't as fantastically competent as they are.

But to the OP's question, many, if not the majority, of those technologies are written in Java. Definitely the majority are on the JVM, since a few of the non-Java ones are Scala and Clojure.

I think the simple answer is that while lots of people do not love programming in Java, it can be attractive for projects that want relatively good performance without trying to implement a system in C++. There are also a lot of tools and companies that have investments in deploying JVM applications.

This is pretty much exactly what I expected to see, once I figured out the potential for most of the hardest portability concerns to be isolated into the JVM. Building the future has always been about stable platforms.
Add Lucene (and by its extension, Elastic Search) to that list. In retrospect, I don't know how we did things before some of these projects came out.
Don't forget about Solr!
Avro is awesome, and I miss working with it.

At my last company, our main method of IPC was sending Avro messages over AMQP (using Apache Qpid). It was the best IPC I've worked with.

To add a little bit more to this, IBM promotes Java pretty heavily and has invested a fair bit optimising Java on POWER. So for them it's an "easy" path to get projects to migrate from x86 to POWER.
> Geronimo - IBM - Websphere

I think you mean WebSphere Application Server Community Edition which has nothing to do with WebSphere Application Server (what is commonly known as Websphere). Quite frankly I don't understand why Apache didn't kill off Geronimo over half a decade ago (other than IBM $$$): it is essentially dead, has no users and only IBM committers. But at least it will end soon, IBM as already announced that they will kill WASCE in favor of Liberty Profile.

> Apache CXF, Apache Camel - Red hat - Fuse

CXF is also the basis for the EAP SOAP stack. I don't know how "big" Fuse is compared to EAP.

> Felix - Adobe - Adobe AEM

Not so sure here. It goes back to Oscar from ObjectWeb. While it is certainly used by Adobe AEM it's also used by several other products even Eclipse Equinox these days.

I think you mean Adobe Flex not Felix XD
Incredibly no, he really meant Felix, as in Apache Felix the OSGi Container.

It seems that Adobe has a product built on that, AEM[1], and , afaik, employs at least one of the main committers of the Felix project.

[1] https://www.adobe.com/marketing-cloud/enterprise-content-man...

https://docs.adobe.com/docs/v5_2/html-resources/cq5_guide_sy...

Adobe is the main contributor to Apache Sling, which uses Apache Felix and Apache Jackrabbit (and Oak since AEM 6). And Lucene is the default index for AEM (formerly known as Day Communique). There are other Apache projects used, too, like Tika.
And not unrelatedly, Roy Fielding is now at Adobe (formerly at Day), who started Apache the webserver and was chair of the Apache foundation.