GraphGists

Wasting time as a boothbabe

The Øredev Schedule in a Graph

What do you do when you have to spend a day on a booth at a (lovely) conference like Oredev - you try to make the most of it! So somehow I got it into my head to try and get the conference schedule into Neo4j - and see what would happen! So here goes!

The Model

Here’s what the model looks like:

model

Very simple - but it’s so much nicer when you can make it interactive and load it into Neo4j. Let’s do that.

:et’s load that data into this graphgist.

Let’s see what we have added. Here is the schedule:

Let’s look at talks with 2 speakers

//talks with 2 speakers
match (s1:Speaker)--(t:Talk)--(s2:Speaker) where id(s1)<> id(s2) return t.name, s1.name, s2.name

Or let’s look at it as a network:

//talks with 2 speakers
match (s1:Speaker)--(t:Talk)--(s2:Speaker) where id(s1)<> id(s2) return t,s1,s2

Look at the path between two speakers - interesting!

//link between speakers
match (s1:Speaker {name:"Mattias Ask"}), (s2:Speaker {name:"Oren Eini"}),
p=AllShortestPaths((s1)-[*]-(s2))
return p

Or let’s see if we can recreate the "square" schedule table structure that I started from:

//collected talks per timeslot
match (t:Timeslot)--(ta:Talk) return t.name, collect (ta.name) order by t.name asc

Just a start…​

There are so many other things that we could look at. Use the console below to explore if you are interested in more.

I hope this gist was interesting for you.

This gist was created by Rik Van Bruggen