Podcast Episode 58: Episode 32: Special Edition Mike Peterson

Description

Don't miss this special edition episode where we will talk with and learn about Mike Peterson, what he's worked on and what he's excited about that's still coming up!

Transcribed Content

This episode of Rockcast is brought to you by Rock partner Triumph Tech, a full service specialist partner. Rock partners provide crucial support for Spark Development Network and important services for the Rock community. Connect with Triumph Tech today at rockrms.com/partners. Welcome to our first special edition Rockcast profile. This episode will be one of many, hopefully in the future, where we get to interview someone who's a member of our team or who's doing great things in the Rock community, providing some interesting products and services. And we'll have a chance to highlight some really cool things, go behind the scenes a little bit, and give you a little bit more of a look into what it is the Core Team's all about. So today we're really excited to have Jon Edmiston and myself are here, but we're also bringing Mike Peterson in. Mike is one of our senior developers at Spark. And he's been working on Rock for how long Mike? About five years. About five years. Here and at a previous location. But we'll get into all of that. We just really wanna welcome Mike here today and and find a little bit more out about what makes Mike Mike. So, Mike, before we talk about Rock and your involvement with that, what what were you doing before you started working on Rock? So I started my career in 1995 in Brookings, South Dakota. And it was a little tiny company that eventually became part of Blackboard, which is an education company making software and and transact transaction systems for college and so forth. So I was there for about seventeen years and I was a eventually became a senior developer there and database administrator and so forth. And that's what I was doing before I came into the Rock University management system. Yeah. Same kind of thing. Track people, track transactions and Yep. Cool. And so then you joined us when we were working at at CCV. Yeah. And you're really part of that that really small small team that kinda got Rock where it where it is today, , working at CCV. And then we had some people working at NewSpring helping us. But so you you've been there since almost the beginning. Yeah. I think we Rock was just in its infancy. , it was maybe a year in or so to development, and then we're just starting to spend full time at least part of our full time on it. So Yeah. I know one of the features you really helped us with was the the data views and making those filters the way they operate is pretty crazy. Yeah. I'm I think that's a lot of fun to build that kind of stuff. Yeah. And when whenever we get one of those, I'm , oh, what's Mike doing? Because he gets those and he he just has that understanding. So then from there, we we kinda split off and and we're doing Spark stuff because it just got got to be too big for just working at at one church. And so but you were at CCV and at a certain point, you just felt you wanted to try something else. And Yeah. So I was when I started at CCV, I got to work on Rock full time, which is kinda nice because you guys still had your your IT jobs and and so forth, and you couldn't really spend all your time on Rock. So I was I was really fortunate that I could spend, , all week on Rock. And then about and then when Rock had to split off into a separate company, I was I stayed behind at that church and helped implement Rock for about the next year. But I do really didn't get to work on the hardcore Rock stuff that I really to do full time. And I wasn't able to join the Spark team because of financing and so forth. So and I didn't think it was gonna happen anytime soon. So I thought, well, I really, really programming, , and not implementation. So maybe I'll go back to the corporate world and get a a job, , I used to. So I did find a job at a company called U Haul, which is big in this town. Yep. And it was gonna be similar work that I've I've always loved, , developing framework type code, csharp,.net, all that kind of cool stuff. And so I announced to the church that I was gonna find a new job and gave them two weeks notice and then I came to visit you guys, which I thought was a one last time. So I well, we'll just have let's have lunch, and that'll maybe the last time we ever see each other. So we came to that lunch, and I was thinking about a week away from going to U Haul. And you guys approached me and said, hey. We can probably hire you now. I think the finance is gonna work out. So that put me in a dilemma because I already said yes to this one company, but I really wanted to work for Rock and so prayed about it and thought about it and end up being the right decision to to work for Spark again. So Yeah. That was a pretty amazing story just how the funding just kinda showed up. But so it's amazing. And it's funny because back then, it's , well, gosh. , we can have enough money for this. And, , I know there's enough work, but is it , is this is this the right decision? And now looking back, it's , my gosh. We would have been dead in the water if if all those things didn't come together. I mean, we would have been overwhelmed by a huge wave. Because I think that , one of the things that I don't think most people know is, , who does what within our team? And that's why we're doing these these podcasts. So in v seven, I mean, Mike, you did a lot of the features in v seven. Can you kinda cover some of the features that you worked on? Yeah. So I got to work, , full time on on most a lot of core code and so forth and so that frees you guys up to do other things. So some of the features were the new communication wizard, a lot of the BI stuff. I worked on that quite a bit. Problem is v seven's so big and Yeah. It's it's been, , a year. It's hard to remember all forget all the features, but, yeah, it's a lot of things. So Well, I know those are two big ones. I mean Yep. How those BI tables work behind the scenes and they're very dynamic and fluid, the the structure of those tables. I mean, that was that was some pretty pretty difficult programming, I know, to get that working. Yeah. There's a lot of heavy lifting that the database has to do to get, , potentially millions of transactions from live tables into BI tables. And if it's gonna do that on a regular basis, it has to perform well and be accurate. And so that was a challenge. It was a fun challenge, and I think it'll be a nice feature for people. Yeah. Or even things I think some people take for granted, , when we in v seven, we moved all the page views and the communication history, who opened what, into new interaction tables, which are a great place for them. These interaction tables are awesome. I love them. But we had to move all that data. And I think it it's it's one of those things you wouldn't think would be hard, but I know you had to write the job that actually moved, , millions and millions of rows over and then cleaned up after itself and deleted those old tables that we didn't need anymore. And and so that's that was that's difficult. Yeah. It was it was tricky because you want you don't want the system to be down when that's happening, and you want the system to be usable. So how do you move all that data without any downtime and some of the data was stored in a way that wasn't exactly compatible with the new tables because we thought of some new ideas that were gonna work. And so we actually had to parse a few fields, and that's always a good idea trick to figure out how to do that. So but we got it figured out. Yep. So a lot of of Mike was in v seven and and already you're you're already working on v eight. So Mhmm. What are some of features in v eight that you're already working on right now? I think one of the more exciting ones is the persistent data views. So one of the things that a database has to spend a lot of time on is when you make a, , a where clause and it involves a lot of lookups and so forth. It takes a while to compile that and to actually figure out which data retrieves on database. So what we did in v eight is, well, once we figured that out, why don't we just store the result off to the side. So all of the row IDs that we would result from that database, just store those off to the side. And then the next time that data view comes up, read it that way. So it's really, really fast, especially when something is involves a lot of special filters. So it can bring something that might have take up to a minute to a second. So that's pretty cool. Yeah. When we made data views, we kinda just thought, well, this would be a way for people to do reporting. But then data views are used all over the place. I mean, we use it to filter for communications, for you can do it in lava. I mean, data views are all over the place. So just seeing how the community does these crazy things with crazy good things with with data views and the complexity that they put into them, it just makes sense to Mhmm. Store that. So I know now you're working on some notes upgrades. Yeah. Notes upgrades Some of the features for the notes upgrade are is be able to reply to notes and maybe do mentions and follow notes. Kind of more what you would get used to in, , a commenting app Facebook or or some of these Internet, , commenting systems. So Yeah. And so right right now, , v eight, we're trying to knock out some of these , notes is not a small thing. It's a big thing, but there's a lot of other smaller things we're working on too as we work with the community to finalize the requirements for the big huge features, the two huge ones, group history and and volunteer scheduling. Trying to knock out some of this other stuff so that once we finish those two big ones, we can release that. And, hopefully, eight does not become in size and scope v seven. Although these two big features are huge, much bigger than I originally thought. But so we're already getting a a good start on that, and Mike's you've been a big piece of that. Yep. And let's not forget release packaging. Mike's taken that on lately, and he's doing a great job for that as well. Yeah. It takes a chunk of time. And I think when you get a new task, it's always good to just repeat it several several times. So yeah. We've been making making so I think you did, , what was you did six ten. Yeah. I did six ten and then the big six to seven, which since there is almost a year between those, there is lots of little things to be aware of. And all of the safety, the code that needs to be written to make sure that anything that would have happened during six is still gonna be compatible with seven when you upgrade. Yeah. So that big that seven one is huge. And then we thought, well, gosh, , let's give him some more practice. Let's do seven one. And then we thought, well, what? Let's do 722. That's right. Yeah. We're gonna on 72 right now. That's right. It's a machine gun. One after another two. So that's good though. I mean, it's it's good to have that. We we want every single one of our major features or functions to be able to be done by by at least two people so that there's continuance and and just backup if if needed. Right. And I really love the fact that Mike adds a lot of problem solving to our team. He really approaches things with the perspective of, hey, is this the best way to do this? And asks a lot of questions and just really contributes in that way a lot. So that's that's really great. And he's one of my favorite people here because he built me this awesome communication tool that we all know is my favorite. So I that too. And also, he's well known for his puns. He is well known for his puns. The the staff here and sometimes it leaks out onto the community. So that's always a good thing. And, , on a serious scale too, when we talk about technical debt within any project, there's always gonna be technical debt. But that's one thing Mike is always pushing us on is , okay. , we can't just kick kick that can down the road. That that's something that we should clean up right now and and get that fixed. I mean, we can never have it perfect, but he kinda keeps us raising the bar on making sure that we don't let that stuff lag. Yeah. I've I think one of the benefits of working at Blackboard for so long is I got to see the life cycle of a project. And as it gets older and older, it can technical deck can really slow you down on any long, long project. So I kinda joke that sometimes software could turn into a doctor Seuss house is that if you keep on just making adding one more thing and not really thinking about the big picture, you just end up being this whole doctor Seuss house with a, , a bathroom kind of winged off one way and something winged off the other. So you kinda have to think of the whole software as as a as a structure that has to kinda be maintained as you go along and and thought out. So that makes things features come out faster when that structure kinda stays in place over the long term. Yeah. It's a good point. I mean, I was just looking at a really old block yesterday, and I was , what? Why did we do that? And so we got we got that all fixed up and but there's not a lot of that, but it's a a lot of the reason is because of Mike and and and other people on the team who are just , , let's fix this now. Let's not kick this can down the road. And I love that because, you said, you it's either pay now or pay a lot more later. Mhmm. So let's just pay the the the the time right now to get it fixed. Well, Mike, we're so glad you're part of the team. And, , we couldn't we couldn't do what we do without you. Oh, thanks a lot. It's great being here. Yep. Alright. Thanks for joining us for this special edition of Rockcast. And today's show was produced by Emily Forman. And Nick was our audio engineer, and he does all the post processing of putting out his social media. And Jim Michael does all the editing of the audio. And our amazing show notes are typed up and put together by Michael Garrison. Do a church that loves the idea of using Rock but hasn't taken that leap yet? With managed hosting, churches of any size can get access to Rock's amazing technology, hassle free. With just one click, Rock's managed hosting removes the roadblocks that might stop a church from switching to Rock by making the process simple. Churches get the ease of a SaaS church management system without losing any of Rock's powerful features. Are you ready to take the next step or share with another local church? Visit rockrms.com/hosting today.