CoreNLP is a <i>very</i> good baseline for any NLP work. If you can build something that beats it on a specific benchmark it&#x27;s a pretty good bet you have something that&#x27;s pretty close to the state-of-the-art.<p>But.. there are problems. As software engineers, the (many) authors make great researchers.<p>CoreNLP is wonderful in the <i>many</i> different ways it <i>almost</i> lets you integrate into it without hacking the code. Changing the config of the various components is fantastic, because you get a very comprehensive view of many different ways people can configure almost the same thing. Environment variables? System properties? Properties files in a specific location? In the classpath? Json config? YAML? It almost supports them all - or rather different parts use different ones, and the only way to work out exactly how it works is to read the code.<p>Also, the licensing is annoying. Everyone doing commercial stuff with it just puts it behind a web service anyway, so they should just embrace  non-viral license and get some input from the community.<p>Also SUTime. Yes, it works mostly, but wow :(<p>(Sorry for the rantish post. I use parts of CoreNLP a lot, and I&#x27;d love to see it improve.)