IKEA wardrobes and Graphs: a perfect fit! by Rik Van Bruggen.
The idea for this blogpost was quite long in the making. We all know IKEA which is, like Neo4j, from Sweden. Most of us have delivered a daring attempt at assembling one of their furnitures. And most recently, even my 8- and 10-year old kids assembled their Swedish bedside tables themselves. Win!
In the past year or so, ever so often does someone approached me to talk about how to use Neo4j in a manufacturing context. And every single time I thought to myself: what a great, wonderful fit! We all know “reality is a graph”, but when you look at manufacturing processes – and the way different process components interact – you quickly see that these wonderful flowchart diagrams, actually represent a network. A graph. And when you then start thinking about all the required parts and components that are required to deliver these processes – then it becomes even more clearer: the “bill of material” of manufactured goods can also, predictably, be represented as a graph.
So there you have it. Manufacturing processes and bills or materials can be represented as a graph. And IKEA cupboards, wardrobes, tables, beds, stools – everywhere. How to make the match?
Rik does a great job of demonstrating the use of Neo4j for the familiar task of assembling furniture. And suggests that a similar graph could be used by the manufacturer of such products.
I think it is implied that creating the graph for components and the assembly process is also a way to delay the onset of assembly itself.
Rik’s mention of Sweden, however, is a tip-off this example is culturally bound. To Sweden that is.
A graph of assembly instructions in the United States, particularly during the holiday season, would be substantially different than Rik’s.
Tracking the assembly instructions, the graph would follow these rules:
- Number of nodes must not match number of parts
- Labels on nodes might match part names and/or differ by one letter.
- Labels on arcs would be correct no more than 80% of the time.
- Assembly arcs would include arcs for other models.
Perhaps a new holiday tradition?
Creating an assembly graph for a randomly chosen set of instructions?
😉