As the founder of GraphAware, Michal Bachman has helped dozens of customers implement Neo4j. GraphAware started using Neo4j to do natural language processing on unstructured text in 2014, and Michal predicts that machine learning and AI play a major role in the future of graph technology.
In this week’s five-minute interview (conducted at GraphTour NYC 2019), we caught up with Michal and spoke with him about everything from Neo4j 4.0 to funky use cases.
What does GraphAware do?
We help people work with Neo4j. We help them with data modeling and implementations and graph visualizations and all the rest of it.
In the last two or three years, we’ve been focused on knowledge graphs. And we started building a product called Hume, which is a graph-powered insights engine. It’s a platform that turns your data – unstructured data specifically – into knowledge.
What is your favorite aspect of Neo4j?
So there’s a lot of things I like about Neo4j. But the first thing that comes to my mind is all the new features in Neo4j 4.0. I was very fortunate to be able to try some of the features. I love the multi-database feature. But what’s closest to my work is the ability to apply security on nodes and relationships in a very flexible way. I love that, and I’ve already shown it to some of our customers, and they will love it as well. So I’m sure: that is my favorite thing.
How has the graph landscape changed since you started working with Neo4j?
That’s a long story.
In the beginning, Neo4j was really a library for Java developers. And so it’s obviously grown and advanced very much from that point.
What we’ve seen is enterprises and analysts and all these influencers paying attention to it. What I like about this is that, in the process, the community wasn’t forgotten. There’s still a very strong and vibrant and fun Neo4j community out there.
Neo4j is becoming an enterprise-ready product, and funny enough I get asked a lot to identify the biggest competitors of Neo4j. I struggle with answering that because, if I say there are no competitors, for a lot of people, that’s a sign of an immature market. But I have to say, for a production-ready, enterprise-backed native graph database, there are still no competitors, but that may change, we will see.
What is your favorite part of working with people implementing Neo4j?
My favorite part is seeing how big of a smile it puts on people’s faces once they finally get it.
It’s transformational and game changing. And that’s what makes it cool. And that’s what makes us passionate about it, for the last 6, 7, 8 years, and hopefully for many years to come.
What is your favorite use case for Neo4j?
We’ve seen a lot of different use cases. I’ve talked at conferences about recommendations but I think everybody talks about that. I think my favorite use cases are the funky ones, the unusual ones.
We once worked with a university to create a curriculum authoring system in Neo4j. I enjoyed it just because it was so complicated, all the relationships in that domain. It was truly mapping something complex into the graph.
We’ve built a couple of rules engines where decision-making is encoded in the graph, which was quite interesting and mentally challenging.
I like all those geeky recursive use cases like time trees and infinite trees and forests. Those are the ones I like – the unusual cases.
What advice do you have for someone getting started with Neo4j?
Don’t be afraid – just start. There’s a lot of excellent material on both Neo4j.com and GraphAware.com.
I think data modeling is very important. We’re still doing quite a lot of speaking and writing about how to model your data properly as a graph. It’s a skill that’s learned through experience. So that’s one area where I would get a consultant. If I were serious about putting Neo4j into production, I would want to get reviews of my data model.
Other than that, just get your hands on it. It is super easy to use, and you’ll love it. We’re sure about that.
Why did you decide to create Hume?
That’s a very interesting story. We were asked by a nonprofit organization in the United States to help people from underprivileged backgrounds and from rehabs and prisons get back to normal life. And the way we were asked to do it was to look at their life stories. Not their CVs but really a textual description of what they’ve gone through. And based on that free text, we were asked to recommend where they should go to school or where they should try to get a job or who they should talk to who has a similar life story.
That project was the first time – this was back in 2014 or 2015 – where we realized that there’s actually structure in unstructured data and that there’s structure in text that can be harvested. And the best place for it is the graph. So we started experimenting with natural language processing (NLP) and storing the result of that in Neo4j, along with all the other structured data we had. And out of that came the first version of GraphAware NLP plugins into Neo4j. And then it went from there to full-blown knowledge graph building and Hume as a platform where it is today and where it’s headed, which is really an end-to-end platform to build knowledge graphs out of structured and unstructured data.
What does the future hold for graph technology?
The future of Neo4j and graphs is the underpinning layer of machine learning. When I was asked this question a couple of years ago, I said that I expected graph databases to be a mainstream technology; when you’re picking up a new database for your project, it will be one of the databases on the menu, together with all the relational and NoSQL databases. I think we are there; I think this prediction came true.
The next step is for people to realize that machine learning works best with context because it performs better and it’s explainable. We believe graphs are the underpinning fabric for any machine learning and AI application. I think Neo4j as a database and as a platform will move in that direction. We’ll see more and more algorithms baked in, and we’ll see more and more people doing graph-based machine learning. And this is also the reason why my colleague Alessandro is writing a book called Graph-Powered Machine Learning.
Want to share about your Neo4j project in a future 5-Minute Interview? Drop us a line at firstname.lastname@example.org
Show off your graph database skills to the community and employers with the official Neo4j Certification. Click below to get started and you could be done in less than an hour.