Definitely need a comment about what this returns, how it works and what the node_list and _ring variables actually contain.