Note: I recorded this with Michael before our fantastic GraphConnect conference in New York a few weeks ago - but did not have the time to publish it earlier... apologies...
Here's the transcript of our conversation:
RVB:00:00:00.000 Hello, everyone. My name is Rik. Rik Van Bruggen from Neo4j and here I am again recording another Graphistania Neo4j podcast. And today, I have a wonderful community member on the other side of this Google hangout and that's Michael McKenzie from Washington, D.C. in the US. Hi, Michael.Subscribing to the podcast is easy: just add the rss feed or add us in iTunes! Hope you'll enjoy it!
MMK:00:00:20.188 Hi, Rik. Thanks for having me on here.
RVB:00:00:22.446 Yeah. No, it's great to have you here and really looking forward to having a chat because I understand that you are one of our community members that is actually driving some of the meetups in the Washington, D.C. area, right?
MMK:00:00:38.239 Yes. I started that a few months ago. Kind of a revamp of a previous meetup group. I'm just kind of super into it and wanted to take the next step to kind of keep growing and expanding.
RVB:00:00:52.904 So tell us a little bit about that. How did you get into Neo4j and what's the story there?
MMK:00:00:59.497 Sure. Well, my background is I work currently as a civil structural engineer. And through my education and kind of work, I had come across a few different topics or areas that interested me, but I found kind of confusing and wanted to dive more into solutions of how to approach it. And they kind of became a bit of a personal passion projects that I did in my free time to kind of learn more. And in trying to find solutions for that, I discovered Neo4j and graphs. And they basically lined up perfectly, and I ended up diving head first into Neo4j and Cypher and everything that comes with it. That was about two and a half years ago. And at that time, I was actually living in Minneapolis. I now live in Washington, D.C. And when I relocated out here, I wanted to connect and become more involved with the graph community. And through communicating with fellow enthusiasts in the area, I ended up kind of taking on a co-organizer role and a reboot of a new GraphDB DC meetup here in the Washington, D.C. area.
RVB:00:02:16.318 And so Michael, the interest was spiked by something in your natural domain like civil engineering? Is that what I'm understanding? You were trying to solve a problem in that domain specifically or what was it exactly?
MMK:00:02:31.620 Yes. One of the big things that engineers: civil, electrical, mechanical-- it really extends into a lot of the different areas of engineering, but we often work with building codes. And with building codes, there's lots of variations depending on location, whether it's an international code, a state code, a material code. But all of these engineering codes and texts are interrelated, and they can be very confusing and complicated. And I wanted to have a better way of understanding how they are tied together and essentially break that down into-- that becomes an information graph of how a state code affects an international code but is tied into material codes and then local ordinances. And it just kind of grows and grows into a massive web of information.
RVB:00:03:28.519 When you say code you mean a regulation, right? A building regulation. Is that it?
MMK:00:03:34.239 Yes. Yes. A building regulation. I know that's one common difficult part to talk about with when you get into programming is there's programming code and then building codes. But yes, it would be building regulations.
RVB:00:03:52.052 Okay. And I understand that there's different geographical levels in there. Is there also a temporal aspect in that? Does it evolve over time as well? Is that also a part of the complexity?
MMK:00:04:06.561 Correct. Yes. So there's multiple different layers. One of the easiest ways to kind of break it down is the highest level is generally an international building code. And that is the overarching governing regulations. But then here in the United States, oftentimes states have modifications that more readily reflect the climate and the temperatures and other aspects that they have to modify and adjust. And then within those, they all reference material specific regulations such as the design for steel and concrete and masonry. And every so often, every approximately three to four years, you get a new release of these regulations. And depending on how a state and the international code chooses to adopt them, they all get adopted at different times and then modified per local regulations, state, city. So with that, you're getting kind of a base guideline of regulations. But then you get sub-modifications depending on location and time as to what's being essentially required for the design and implementation of engineering concepts.
RVB:00:05:29.805 That sounds really, really interesting and complicated as well if I'm honest. And a great application for like you said, a web of information and graph of information, right?
MMK:00:05:41.579 Yes. Yeah. It gets complicated very fast. And the most challenging aspect was I had been thinking about it for years, but never had a good way of representing how all of this is tied together. And I think that's where once I discovered Neo4j and graphs it was a light bulb that turned on and everything clicked.
RVB:00:06:06.526 Super nice. Did you ever write anything or publish anything around this, or is this still a work in progress?
MMK:00:06:12.725 It's still a work in progress. I think only recently have I kind of made some jumps in developments of how to present it that's been kind of helping move the project forward. But a lot of it's really just been on the side kind of using it as a tool to learn more about Neo4j.
RVB:00:06:33.770 Cool. Well, I mean I think that's a perfect introduction to kind of ask you my second question which is what makes it so appealing? Why did you get into this wonderful world of graphs? And also, why did you become an active community member I suppose? What's the story there?
MMK:00:06:52.724 Yeah. I mean the coolest part about Neo4j and Cypher was the syntax. I have experience doing some programming through school and work. You kind of dabble a little here and there. But there is a lot out there and it can be easy to get overwhelmed. But once I found the concept of graphs, the thing that really brought me in and kind of captivated me was the Cypher's query language. The idea of essentially breaking it down to parentheses and arrows really simplified the understanding and application and how to implement the concepts that I had been thinking about for a long time. I guess the-- what's the common phrase is whiteboard friendliness?
RVB:00:07:46.809 Yeah. Yeah. Absolutely. Yeah.
MMK:00:07:48.401 That right there is what really made it easier to jump into and want to try and sketch out ideas and kind of play with it. And once you take that and you combine with-- there's a really great online documentation. And then connecting with other community members, I just kind of got sucked in and have been going full steam ahead ever since.
RVB:00:08:13.936 Very cool. And then how is the community going? Have you had a good take up? Have you had a good group of people showing up and stuff like that?
MMK:00:08:24.095 We have. So far, with the new meetup, we had one meetup a few months ago and it was okay. It was the first one. A little rough learning patches. We had some unfortunate weather the day of that I think reduced the number of people. But we’ve got actually a new meetup happening here shortly in the next couple days that we’re really excited for. We’re teaming up with another meetup here in the D.C. area to get a really good presentation. So I'm really excited about it. I think now that the first one's under the belt, the next ones are going to come faster and easier.
RVB:00:09:01.407 And what's the reservation for you there? Is it just learning more about these other users? What's driving your engagement there?
MMK:00:09:13.999 Absolutely. I have a natural curiosity, which is one of the reasons why I love learning how other people are using it. Connecting with people and seeing how they are attacking the problems that they see and finding new solutions. I think that has always been kind of my driving force is learning new technologies because I like to see how other people are using it. And to learn what sort of problems exist in the world that I'm not aware of. And that's really the driving force of trying to be an active community member is to also share the interests and the sheer coolness I would say that Neo4j has and provides.
RVB:00:10:03.767 Super nice. Yeah. No, I think it's sort of inspiring, right? When you see kind of like-minded people who think in connected graphs and who think in parentheses and arrows [laughter]. Then it's actually really cool to hear their stories. And you always learn something from it, don’t you? So--
MMK:00:10:23.543 Absolutely. The more I've learned about it, the more I see and recognize that graphs are everywhere. I know that phrase gets tossed around a lot, but you can see that the information, especially in this day and age, everything is connected. And you're looking for the complex relationships between bits of information to try and find a solution. And graphs just seem like the logical way to model it and analyze it.
RVB:00:10:54.421 Very cool. So what does the future hold, Michael? Where do you see yourself and where do you see the technology going in the next couple of months and years? Look into your crystal ball and tell us what you see [laughter].
MMK:00:11:06.905 Sure. Yeah. Well, in relation to some of my personal passion projects, I think the one thing I've kind of been focusing on and taking the next step with is I've been utilizing the GRANDstack that Will Lyon has kind of put together to take those concepts like the code project, and a few other personal passion projects that I have to build out web-based applications. It's a good platform to learn full stack development and make some really cool tools. I'm also going to be attending GraphConnect here in 2018 which I'm really excited. In New York City to kind of meet a bunch of the fellow enthusiasts from around the world and see what other people are using with it.
MMK:00:11:54.987 And then I think as for the growth of Neo4j, I expect it to continue to grow and expand. It's one of those technologies that as I meet and talk with people, that seems as though it's present in the world and in a lot of places, but people aren’t yet fully aware of it. I think the mainstream exposure is going to continue to grow, especially with the-- Oh, I'm drawing a blank. Bloom with the release of the Bloom addition to the browser. That really gives people some opportunities who may not be programmers or coders to dive in and explore and play with the power of graphs. So as all of that technology becomes more exposed and mainstream, I think you're really going to start to see a growth and understanding of graphs in the world.
RVB:00:12:50.326 Let's hope so. I mean I think GraphConnect is going to be a fantastic place to connect at. I look forward to seeing you there. But it's also-- Yeah. It's a place where we can really show people how to make these connections and to use graphs in a meaningful way, right? So I'm looking forward to that as well.
MMK:00:13:10.453 Well, and along with that, as I've tried sharing it with people who are involved with-- their jobs are involved with the large sets of data, is trying to tell them and show them that it's not intimidating and it's not scary. And whenever you get involved with anything related to programming, it can be overwhelming. But again, that takes us back to Cypher and the whiteboard friendliness and the ease of understanding what you're creating I think makes it much more approachable for those individuals who may not consider themselves coders, but you can pick it up pretty fast. And I think that's another strong advantage that Neo4j presents.
RVB:00:13:54.497 Super. Well Michael, thank you so much for [inaudible] this on the podcast. We’ll put some links to some of the stuff that we’ve discussed in the transcription. But yeah. For now, I want to thank you so much for taking the time, and I look forward to having a beer with you in New York.
MMK:00:14:12.976 Thank you so much for having me on. Yes. And I look forward to meeting you in New York in a few weeks here.
RVB:00:14:18.732 Absolutely. Thank you, Michael. Talk to you soon.
MMK:00:14:20.746 All right. Thank you.
All the best