If you’ve got any ideas for things we should cover in future editions, I’m @markhneedham on Twitter or send an email to email@example.com.
WordPress Recommendation Engine
Adam Cowley has been busy over the last couple of weeks building a Neo4j-based recommendation engine for WordPress.
The WordPress graphYou can follow his work in a three-part blog series:
Social Network Analysis, Software Analytics and RDBMS-to-Graph
- In February, I somehow missed an excellent post by Romain Thalineau where he shows how to monitor the French Presidential Election on Twitter using Python and Neo4j. Romain shows how to load Twitter’s streaming API into Neo4j and then does some geospatial and time-series analysis. Michael Hunger‘s neo4j-twitter-stream project is also worth looking at if you’re interested in loading Twitter data into Neo4j.
- Andrii Soldatenko presented Building a Social Network with Neo4j and Python at PyCaribbean 2017 in which he compares 3 Python libraries for interacting with Neo4j: neomodel, py2neo, and the neo4j-python-driver.
Markus Harrer, who was also featured last week, has written another couple of interesting blog posts. In the first, he shows how to combine Neo4j and Python’s pandas library to find the top committers in a GitHub repository with a lot of data wrangling and cleansing along the way.
- In his second post, Markus summarises his experiences working with jQAssistant. It’s a good resource for all things software analytics. Michael Hunger also has a blog post from a few years ago where he shows how to use jQAssistant and other OSS tools to do software analytics.
Ryan Boyd wrote a blog post about moving RDBMS data into the graph using the apoc.load.jdbc procedure. Ryan also presented a webinar on this topic late last week:
- Ben Rund wrote The Good, The Bad and the Hype about Graph Databases for MDM in which he makes some good points about the merits of using graphs for master data management and where you might want to use a custom MDM tool. Aaron Wallace from Pitney Bowes presented a talk “Mastering Customer Information” at GraphConnect Europe 2015 which combines both!
What’s happening on GitHub?
This week I decided to do some exploration of Neo4j projects on GitHub that haven’t necessarily surfaced on Twitter. I queried the Neo4j community graph to find the most recent Neo4j-based projects.
These were the most interesting ones I found:
- Seb Insua created graphviz-config-template which converts dot syntax into Cypher queries that create a graph. This could be a fun one to play with if you’ve got any architecture diagrams lying around.
- It’s been a while since I read any Visual Basic code, but Kmahmoudi has created a small project where he combines Visual Basic and Neo4j using the Neo4jClient driver.
- Alfred Dobradi has been experimenting with loading the Twitch API into Neo4j and created the twitch-graph project complete with Docker scripts to get it up and running.
- Nathan Danielsen created fec-2016-neo4j in which he loads US Elections, campaign finance, and US Congress data into Neo4j.
- Gert Sallaerts created neo4j-retried, a Node module which allows the user to automatically retry queries and handle DeadlockDetected exceptions more cleanly.
- Tom Shafer created neo4j-db-manager, a neat little tool for working with multiple local databases.
So what’s there to look forward to in the world of graphs next week?
- On Tuesday March 21st, 2017, Will Lyon will be presenting Analyzing The TrumpWorld Graph: Applying Network Analysis to Public Data at NYC Neo4j.
- On Wednesday March 22nd, 2017, Amanda Schaffer will be presenting an Intro to graph databases at pyladies Seattle.
- Also on Wednesday, Rik van Bruggen will presenting “Graph Databases and TrumpWorld” with Neo4j at Data Scientists Ireland in Dublin.
Tweet of the Week
We’ll finish with my favourite tweet of the week by Tobias Zander.
If you’re having fun playing with Neo4j, tweet with the #Neo4j hashtag and maybe you’ll feature in next week’s post.
Great introduction to @neo4j. Looks like my plans for the weekend now changed.— Tobias Zander (@airbone42) March 15, 2017
Have a good weekend!