Episode 183 ·
Rocky Lhotka - CTO at Magenic
Today we are talking to Rocky, the CTO at Magenic. And we discuss the concept of A, B and C Developers, new cloud trends that we’ll see in the future, and the benefit automated testing has played in shaping the quality of software.
All of this, right here, right now, on the Modern CTO Podcast!

About Rocky:
Rockford Lhotka is CTO at Magenic and is the creator of the open source CSLA .NET development framework. He is the author of numerous books, and regularly speaks at major conferences around the world. Rockford is a member of the Microsoft Regional Director and MVP programs. Magenic (www.magenic.com) helps you deliver your digital products to market faster.
ABOUT Magenic:
Magenic is the digital technology consulting company built for speed. We have the right digital strategies, the right process, and the right people to get our clients digital products to market faster.
Transcript
(Joel Beasley at 00:00:00) Hello, my friends. Today we are talking to Rocky, the CTO at Magenic, and we discussed the concept of A, B, and C developers, new cloud trends that we'll see in the future, and the benefit automated testing has played in shaping the quality of software. All of this right here, right now on the Modern CTO podcast. Here we go. This is the Modern CTO podcast.
(Joel Beasley at 00:00:33) Rocky.
(Rocky at 00:00:35) Hi. How are you doing?
(Joel Beasley at 00:00:36) Look at that setup you've got going on. You got microphone, the headphones, everything.
(Rocky at 00:00:42) Yeah. Well, I do a fair amount of this stuff, so create training videos, all sorts of things.
(Joel Beasley at 00:00:51) Oh, yeah? You get to create some training videos?
(Rocky at 00:00:54) Yeah. One of, hey, yeah, I'm the CTO at Magenic, but then I also am a professional speaker and author, and I've been doing that for about twenty years. So I have a kind of a varied career, I guess, is the way to put it.
(Joel Beasley at 00:01:10) Are you writing a book right now?
(Rocky at 00:01:12) I just finished one, actually, on the new Microsoft Blazor technology.
(Joel Beasley at 00:01:17) Oh, what's that?
(Rocky at 00:01:19) That's a new way of building web apps. So it's based on top of a thing called WebAssembly. So it allows languages other than JavaScript to be used for building web applications.
(Joel Beasley at 00:01:31) Does it run on more than Internet Explorer?
(Rocky at 00:01:34) Yeah, actually, it comes from Firefox originally. It's a Mozilla project. Well, the Blazor part is Microsoft, but WebAssembly is Mozilla. But they managed to even get Apple on board. So that was the sticking point, actually. Everybody else was like, yeah, yeah, this is a great idea. And Apple's like, wait a minute, it might undercut my store revenue, which it might, because this lets C, C++ programs run in the browser. So the need to actually build an app and deploy it through a store, you know, it's a big deal.
(Joel Beasley at 00:02:10) It's exciting. Right? That's something that I don't think I've seen before. This is something brand new, being able to run that in the browser.
(Rocky at 00:02:16) Yeah. You know, it's something that I think a lot of us, myself anyway, have been lobbying for since around 2000, probably. But it's finally actually here. And so now it's just a matter of seeing how it changes the industry over time.
(Joel Beasley at 00:02:36) So what's the title of the book? We'll give it a shout out here.
(Rocky at 00:02:41) It's, well, it's also tied in with my, the open source framework project that I've been working on for twenty three years. So it's called Using CSLA, Blazor, and WebAssembly.
(Joel Beasley at 00:02:53) And CSLA is the project you've been working on?
(Rocky at 00:02:59) That is a business logic framework. Everybody has access to all sorts of UI frameworks and all sorts of ways to talk to databases, but there are almost no formalized ways to create and organize your business logic. And that's what CSLA is all about.
(Joel Beasley at 00:03:20) That's pretty interesting. So you formalize your business logic through this framework. Why did you, where, what was the moment that you said, hey, I'm frustrated enough. I need to build this thing.
(Rocky at 00:03:35) So yeah. My first real job after I graduated from college in the late eighties, in a recession, so it took a while to find a real job, but I did. And the guy that I worked for was just super rigorous, I guess you'd say, about having everybody's code be the same. And I rankled, you know, right out of university, and I'm like, you're harshing my mellow or, I don't even know what the terms were back then. But, you know, basically, code is art. Right? And he's like, no, no, no. If you're working here, your code looks exactly like everybody else's. And then we got bought by a company who had no standards at all. And so my attitude changed. I did a one eighty, because seeing all the code of our new employer, it was horrible. Oh my God. I mean, and I'm like, wow. And, yeah, so then, you know, fast forward a few years, I ended up on this big project working in the Microsoft technology stack. And it was clear there had to be some way to get some consistency in the way that things were being built across our team. And so that was really the kernel of what became this CSLA framework.
(Joel Beasley at 00:05:10) And then it kind of exploded. Right? It's a pretty popular framework out there.
(Rocky at 00:05:15) It is. Yeah. And I think because it's relatively unique, there's not a lot of competition. Very, very few people or companies have ever even tried to create any formalized business logic layer support. They just assume, oh, developers are gonna figure it all out. And it's been around now for, you know, the original COM version before .NET came out in '97. So it's twenty three years ago. And it really became popular when .NET showed up, you know, in the 2001 to 2003 time frame. Yeah. I think it was a confluence of things. That was also the point that the Internet as we know it had finally started to really gel. You know, back when I started, the code was available on a CD if you bought my book. And you could email me, and I would send it to you, but there was no real, the websites didn't exist the way we think of them until the late nineties. And even then, the Internet as we know it kind of gelled in the early two thousands. Right? So, yeah, I remember working at a biomedical manufacturing company in the early nineties, and I've always been interested in leading edge, interesting new technologies. And so I managed to get our corporate minicomputer set up with, jeez, I want to say it was like a 1,200 baud modem that would dial up once an hour to another company here in the Twin Cities that was gracious enough to do relays. So we were able to get email relays and also what at the time was called Usenet, which I think maybe still exists. But, basically, it's like a predecessor to online web forums is the way to think about it. And, yeah, so that was our connection to the outside world at that time was this hourly, yeah, we would send emails, and then an hour later, they would actually go out into the rest of the world, and it was interesting.
(Joel Beasley at 00:07:47) Back in the day, man. I love it, and I love the progression of technology. And I have taken a positive mindset, although, I think it's harder to have a positive mindset. I think it takes more effort, but I've taken a positive mindset towards the future with all the rise of technology.
(Rocky at 00:08:07) Well, I think it has changed the world for the better on the whole. The Internet in particular. But, you know, I think a lot of other technologies, aircraft, medicine. Yeah. But I think if you look at the Internet as a whole, it's not an unmitigated good. It's a tool, and it has been used for some good things and some bad things. But on the whole, you think about the whole thing that's going on now with the pandemic, and my wife and I talk about this from time to time. You know, just think if you were back ten, fifteen, twenty years before video conferencing, before the, you know, just immediacy of communication that exists. And back then, it was all telephones. Right? And you only talk to the people that you knew, and you talk to them one at a time. And the idea of being able to work from home and collaborate with, you know, teams. At Magenic, we frequently have feature teams, development teams for our clients that have members that are in Manila and then some that might be in California and some in Boston and some in the middle of the country. Yeah. And this is not new because of the pandemic. This is just the way we've done business for years. But that's why we're largely unaffected by the pandemic is that our teams have at their disposal tools, you know, like Microsoft Teams or Slack or Zoom, and, you know, all sorts of developer productivity tools that are enabled by the Internet that we have today. And, yeah, you stop and say, boy, if we didn't have all these things, this would be really rough. I mean, it's already really rough. I don't mean to diminish what's the impact, but it's just staggering to think how bad this could have been if it were twenty years ago.
(Joel Beasley at 00:10:11) And so were your sales teams pretty much remote too?
(Rocky at 00:10:15) Well, that's our biggest challenge, honestly, is our sales teams weren't remote. And, you know, sales is a high touch business, very personal. You know, it's, yes, you get good communication by video chat, but you just don't, all the body language, you know, you only see people from their shoulders up.
(Joel Beasley at 00:10:38) Right? I know. They'll see my hands.
(Rocky at 00:10:42) Yeah. Yeah. That's right. So, no. Our salespeople, it's difficult for them. I mean, they're the kind of people that like to be interactive with other people. That's why they're in the job. And their job is almost infinitely harder by not being able to have that high bandwidth communication.
(Joel Beasley at 00:11:03) Dude, I'm struggling too because I mean, I know I get to talk to a lot of people and I do the podcast and, you know, 90% of the interviews are remote. Right? But usually, I'm doing remote interviews and then I'm going and speaking on stages and getting out or I'm visiting companies. I'll come visit a company after I talk with them. So I'm out talking to teams and I'm always, you know, either talking on here or out talking in the world. And then I just cut off that in person exposure, and then it's a 100% Zoom. And it's more difficult. But right now, the way things are going, at least in Florida where I am, it seems like what pandemic? There's some weird stuff at the gym, every other machine's off, but no one's wearing masks at the gym. Pretty much the grocery store, it's 20% of the people are wearing masks. There's still the arrows on the grocery store. But in large, it's starting to feel like it didn't happen, which is great.
(Rocky at 00:12:02) Yeah. I'm not sure that's great. That's, I'm less optimistic because I've really read through a lot of the 1918 swine flu. Yeah. I'm quite concerned that the, yeah, what happened back then is that we got through the first wave, and then the second wave hit and was several times worse.
(Joel Beasley at 00:12:25) Which is probably going to happen. It's probably going to happen. Right? When, especially, it looks like timing wise, the second wave will be in the winter area where we have bad cold and flu seasons. Right?
(Rocky at 00:12:39) Mhmm. Yeah. You know, I mean, our world is a lot more immediately connected, and we're more mobile than people were in 1918. So, you know, back then, it took almost a year for the second wave to come. It's more likely, I think, this will just take a few months. It could be this fall. Right?
(Joel Beasley at 00:12:59) Yeah. And I would also like to point out that the area I live is a rural area. Okay? So I do not live in a big city. I live in a small town. We have 50,000 people. You know? That's not...
(Rocky at 00:13:12) That's not... I grew up in a town of 1,200 people. So...
(Joel Beasley at 00:13:17) Oh, okay. Well, I think when I was growing up...
(Rocky at 00:13:19) Your town's big, man. Big.
(Joel Beasley at 00:13:22) It's big now, though, because I'm a native here. And when I was growing up, it was small. Now I was like, oh, this is a big city, and I started traveling to big cities. I was like, nope. It's not a big city.
(Rocky at 00:13:32) Right. Right. It's all relative, isn't it?
(Joel Beasley at 00:13:35) Yeah. It is. But I personally like the density I grew up in was very, it was not dense at all. We would drive for twenty minutes and not see anyone. I just kind of grew up in Florida woods. And that's what it was like for me, at least. And I know you live out, you live in Minnesota. Right?
(Rocky at 00:13:58) Yes.
(Joel Beasley at 00:13:59) So do you have some property out there? Are you pretty self sustaining? Do you do any farming or anything like that?
(Rocky at 00:14:04) Well, we live in a suburb now, you know, because, of course, it's difficult. I grew up in the middle of Minnesota in the middle of several hundred acres of forest and on a lake, and our nearest full time neighbors were a mile away. So, pretty remote, and we still have that property. And it's kind of a hobby farm, although it's heavily forested. But it's still challenging because there's no Internet there. I think about three years ago, AT&T finally put in a tower, so there is cell phone, but only one carrier, but there is cell phone in that area.
(Joel Beasley at 00:14:48) Just wait until Musk gets that Starlink going, man. Then you'll have what you need.
(Rocky at 00:14:53) Well, I had looked at one point into the, what is it? HughesNet, I think. But at the time, at least, that required a phone line. And it's also, getting a reliable phone line out there is not easy either. It's pretty rural.
(Joel Beasley at 00:15:09) But at least you have a fallout area. Right? You can get your bug out bag, you can go out there, and you can survive off the land?
(Rocky at 00:15:15) Yeah. No. It's a beautiful area. We still go up there quite frequently because it's just, for me, there's, of course, a lot of memories. I grew up there. But in addition, it is just very calm and peaceful and an enjoyable place to be. And now I could actually go up there and at least do some limited work thanks to the cell tower being nearby, but it used to be a great place to go to unplug. Um, it's like, yeah, I'm sorry I missed your call, but I literally had no service. You know? It's a great way to answer that problem.
(Joel Beasley at 00:15:52) It's tough. You know, I've recently started experimenting. I'm on month, I think I'm on month two or three. Jake can comment if he knows a better one on the chat, but I'm on month two or three of no notifications. Zero. I mean, I have it so my wife can barge if she calls me multiple times. Okay. She can get through, but I live with my phone on do not disturb and zero notifications. And I just, I got the idea from someone or something a few months ago, and I tried it at first with a couple apps, the apps that bother me the most. And then, and what that forced me to do is it allows me to work differently. Now it's like, okay, I have periods of focus, and in this period of focus, I'm only doing this thing. And I feel like that discipline, which is kind of hard to do, but that discipline of doing that gives me so much freedom because I don't have notifications bothering me twenty four seven. I know that I'm gonna go into this work block for two hours, and there's not a thing in the world that's going to bother me. And I get my best work done like that. I'm always experimenting with productivity things.
(Rocky at 00:16:58) Sure. And that's a good one. I think you're on to something. I should do that. I have my phone set so that it only rings for people I know.
(Joel Beasley at 00:17:08) Oh, that's good.
(Rocky at 00:17:09) So I guess I'm halfway to where you are. You know, if anybody who tries to call me, they can leave me a voice mail, unless it's my wife or my kids or, you know, my dad, somebody that I actually want to have their call. I get, you know, but I get, you know, being in my role, I get just constant calls from vendors that want to sell products or services or recruiters that think that I need to hire people or, you know, my phone is just lit up almost constantly with inbound telemarketing, basically. You know?
(Joel Beasley at 00:17:49) Oh, yeah.
(Rocky at 00:17:49) Plus, of course, it's my actual cell phone too in addition to being my work phone. So then I, just like everybody else, you know, I'm getting calls so I can consolidate all my credit cards or not send my Social Security number to the IRS or, you know, whatever it is.
(Joel Beasley at 00:18:08) Rocky, my grandma, alright, in Peru, she just inherited $10,000,000.
(Rocky at 00:18:13) Oh, nice. Nice.
(Joel Beasley at 00:18:16) And I just need, like, $50 for the legal fees, and I'll give you 200 back.
(Rocky at 00:18:22) I clearly, you should take up that offer.
(Joel Beasley at 00:18:25) Yes. So let's talk a little bit more about nature. I have found, and I know I've said this a couple times, but I found that I go out to Colorado. Well, first, I hiked all of the available, like, known mountains in the North Carolina, Georgia, tri-state area. And so my wife and I, we started with one, then we did two, and then we went back the next year and we're like, let's get, like, five done. And we just kept doing all the major hiking trails up and down. Then we were gonna plan our hike, like, year five, and we're just like, we've done them all. Let's go to Colorado and do those. And what I've learned doing those hikes on the mountains and doing something difficult is an entirely different experience than sitting down and learning from a book or taking a workshop or a class. And I found that spending time out in nature, whether it's climbing a mountain or going to a place where it's particularly clear and looking at the stars, I find that those moments are impactful on my journey. And you seem to spend a lot of time in nature and grew up around it and got that exposure. What do you think of that?
(Rocky at 00:19:32) I agree. I think regardless of whether you grew up in it or not, just being in, I don't know, even in a park, I think, is rejuvenating at some kind of deep fundamental personal level. And you're right. I grew up, my youth was pretty unusual in that my dad was a game warden, a conservation officer. And so we grew up surrounded by fishing and hunting and canoeing and boating and, you know, forest, basically, just everything like that. And so I read old books, I think, you know, like, from, you know, a hundred, 150, 200 years ago. And I think, wow, you know, we did those things. Maybe easier because we had better tools, but, um, and I still do. We still spend a lot of time on the water. Minnesota has lakes everywhere and a lot of time in the forest. And now my wife and I, over the last several years, have started RVing and going, especially in the winter, we go somewhere warmer. And so, like, two years ago, we went to a place called Amboy Crater, which is between Palm Springs and Las Vegas, basically, in the middle of the desert. And it's an extinct volcano, and we spent the night there, and it was phenomenal. I have not seen stars like that since I was a kid because we would go out in the winter on the ice because our lake would freeze over, which not everybody understands. But in Minnesota, the lakes freeze with enough ice that you can drive large trucks on them. But we would go out and lay in the middle of the night on the ice and stare up at the stars because there was no light pollution of any sort. And that's hard to find. And out at the Amboy Crater, it was at least as good. It was absolutely phenomenal, and the air was dry, I suppose, so that helped.
(Joel Beasley at 00:21:46) So I'm gonna write that down as a recommendation. Earlier this week, I was talking with the CTO at T-Systems, which is, like, T-Mobile, Deutsche Telekom. And he actually, one of his hobbies, fascinating guy too. I can send you some information after the show to look him up. But one of his hobbies is actually astrophotography. Like, he goes out and he takes these pictures of, like, the stars and the Milky Way and stuff. And so he was sharing with me a couple different spots. He goes, there's actually, like, these communities where they don't allow the light. Like, you can only use red light when you're out there. They're, like, anti-light pollution areas so that you can see the stars really well. And so it's just, you know, Googling for it and finding it. But if you're on your RV stuff, even if you're cool with boondocking and stuff like that to get, like, a cool night out somewhere, there are these collections of places where they have that. Like, you can only have certain color lights and so you can see the stars really nice.
(Rocky at 00:22:39) Nice. Yeah. Yep. That would be fun. And we do, yeah, a limited amount of boondocking. We're not set up for, and for people listening that don't know what boondocking is, it's, you know, just self-sufficient. You go out in the middle of usually the desert, some sort of public land and just, you bring your own water, you bring your own propane, and whatever else you need and pack in and pack out. And there are people that do it a lot. We only do it a little because we're not, we don't have a...
(Joel Beasley at 00:23:11) It takes a lot of work.
(Rocky at 00:23:12) Takes a lot of work.
(Joel Beasley at 00:23:14) Yeah. It's not meant to do for, like, two weeks. You, like, you know, you, it's basically, I guess, yeah, you explained it well. Boondocking is when you're RVing at night, but you're not hooked up to services. Like, you're not hooked up to the water, you're not hooked to electricity. And so you just go out for a night and, you know, the RV is pretty, you could be pretty normal, like, a night or two on the resources. And that's all you really need, really. I mean, right?
(Rocky at 00:23:37) Mhmm.
(Joel Beasley at 00:23:37) Right?
(Rocky at 00:23:38) Well, and we do, yeah. And that's the level we do. But if you really get into it, people live full-time boondocking. They'll... Oh, yeah. Yeah. And they'll just stop into a place where they can refresh their water and empty their sewer, you know, once every week or two. And I'm like, wow. That's dedication.
(Joel Beasley at 00:24:00) It's dedication. Yeah. We don't wanna say extreme. No. It's dedication. It's passion. Dedication. Passion.
(Rocky at 00:24:06) Well, and I understand it because it is, you know, just being out and knowing that you're probably the only people for miles and miles, and it's peaceful. It's just really, really refreshing.
(Joel Beasley at 00:24:23) It will help with that clarity of mind, and I think it's something that, well, I know it's something for myself I've scheduled. I do at least twice a year and go out, spend a week somewhere, spend it quiet, and spend it walking around. And then I definitely, like, will check in because I'm an entrepreneur and I have an emerging business and things like that. So I'm definitely spending an hour a day checking in because you just, I don't have that, I'm not Bezos, right?
(Rocky at 00:24:47) Yeah.
(Joel Beasley at 00:24:47) I don't have that luxury. Right? But let's talk a little bit more about technology. So one thing I was somewhat impressed with about Magenic is you guys sent me over some of the, something like PDFs, right, that had, like, white papers, I guess you would call them. Mhmm. That had the difference here was I found these white papers, like, pretty useful. I didn't find them filled with a lot of fluff. I found them actually, like, pretty actionable and useful. And so I wanna talk a couple about them. I wanna talk about this concept of DevOps and what's going on in DevOps from your perspective.
(Rocky at 00:25:23) Well, I think what you just said is interesting because at Magenic, for years, we've had this back and forth between me and the marketing group because I really don't like fluffy content. And marketing is always trying to, you know, get more marketing content. And I'm like, oh, I, you know, it's just, it's such a struggle to create content that actually has some meat to it and yet is not technical. And I am not gonna claim to have perfected it, but we've, I think, finally arrived at a compromise. And I'm glad to hear that you found the content useful. And yet, we've heard other people say that it's accessible to folks that are not super technical. So that, you know, yay. That's a win. You know, specific to DevOps, you know, it's interesting because a lot of the core concepts in DevOps have been things that people, like myself and others, lots of others, have watched over our careers and said, man, it would be so much better if X, Y, or Z happened on a regular basis. And, yeah, usually, those things were so hard to do that, you know, like, man, I wish we could have continuous integration builds or automated testing or, you know, automated security scans. But the expense of setting, acquiring a product, setting them up, keeping them running, for decades has been higher than the value you would get out. At least a lot of us felt that way. And so I think it's a combination of things where we're finally at a point that it's cost effective to do a lot of these things, partially because of commercial products, and a lot of it is because of the growth and acceptance of open source. And also, the marketing, for lack of a better word, you know, the term DevOps captured imaginations of people that are semi-technical or non-technical. And somehow, we were able as an industry to convince people that this DevOps thing was worth doing. And so, yeah, some of our clients are very, very good at it and have really invested in it. Others are not yet there, and still others are on a journey. And that's all good, though. Just the fact that, compared to, you know, ten, fifteen years ago, where it was like pulling teeth to get most organizations to invest in unit testing, for example, that's rarely a discussion anymore. Sometimes it is.
(Joel Beasley at 00:28:28) With the customers you wanna work with. Yeah.
(Rocky at 00:28:30) Well, I guess maybe that's true too. Right? It's a self-selected, self-selection perhaps. But it, yeah. I think back, boy, you know, I mean, without unit tests and I'm not even talking about test-driven development because that's a thing unto itself. Right? I'm just saying just having unit tests fundamentally changes the way that you can approach a lot of problems.
(Joel Beasley at 00:28:57) I think it's daunting to people because the people that don't, well, I mean, first of all, I fully agree with you that today, it's commonplace, at least if you're working at any technology company worth their salt. Right? But when I do get to talk to companies who are trying to make the transition or interested in making the transition, what I find is that it's difficult for them to see. Like, they just see this big block of testing. Right? And they're not, and they know test-driven development and unit tests and when to test and how to test and do you rewrite the whole application or do you do, so they, so usually when people come to me with that, I refer them out to consultants that know how to, like, tease out one section of test to bring them some business value. Right? Because it's hard to get into testing when you haven't been into it formally as a company. So that's a big transition for certain companies.
(Rocky at 00:29:52) It can be. And I think the way I always talk about it and I stole this idea or borrowed it, whatever, from the guy that created NUnit originally, which is a .NET, probably the first .NET unit testing framework. And he and I, years ago, spent a lot of time speaking at conferences together. So we had some great conversations. And his point, and I think it's such a great point, is that every developer tests their code. Most developers, at least, used to just throw their tests away afterwards. Right? You'd write a little console app or you'd write a little web app or you'd write a little, you know, some little thing, make sure your code works, and then you're like, woo hoo. It works. And then you throw away your little test harness because you were done. And if all you do is use a unit testing framework to do those tests instead of writing a little console app, just do it in a unit test, and then don't throw that code away. You are infinitely better off than you were before. And it's a super low bar for entry and not so intimidating if you think about it that way as opposed to, oh, I have to have a testing strategy and, you know, I have to have stories and, you know, all the other things that come along with, like, capital T testing. Right? You're just like, no. No. No. It's, you know, just as a starting point, if all you do is capture the tests that you already wrote because every developer writes them anyway and just keep them around, then over time, you build this big library of, with no extra effort. Right? You end up building this library of regression tests that help stabilize your code and make it possible to change things without being paralyzed with fear that you're gonna break something that, you know, was written eight years ago or something.
(Joel Beasley at 00:31:54) I fully agree. I mean, when I found testing, I was excited about it because I was doing that. I was writing the code and then writing little console app, you know, to test it and get the result. And then I would be, like, hitting up, trying to get my stuff back or reloading it or whatever I was doing. And then I saw, I think I saw this, like, rail, I was in Ruby at the time, and I saw, like, RailsCasts. And he was talking about testing, and he gave the example. And when I saw someone else do it, and I said, oh, it's like a persistent test. It's like the same thing I'm doing over here. I just type it over here, and then I set up an environment where, like, it auto-runs when I hit save and the file names are coordinated. And then you just get that little bit done, and then you get it into your template project. Right? So when you make new projects, it's like you understand the testing suite and how it works. And, uh, and then it just gives you confidence. It gives you deploy confidence. Like, I can't imagine how, like, none of my projects that I did early on before testing got really big, but I couldn't imagine how I would have a product that's big that doesn't have test. Like, where's the confidence when you hit deploy?
(Rocky at 00:33:05) Yep. Exactly right. And now we're at a point, you know, I mean, that's unit testing. And then the same thing over the last several years has really happened to user acceptance testing as well, where it used to be extremely manual. And a lot of orgs still hire testers to do manual testing, but increasingly using tools like Selenium and, like, Magenic has an open source tool that sits on top of Selenium that helps manage your test suites and make them, because that's the other thing. Right? The more tests you build, that's code you have to continue to maintain over time. Right? But it's night and day. You know, if you take your app, especially a complicated business app, and you build it and put it out into a test server, you know, it could take weeks before humans can test all of the app by hand, whereas it takes minutes or hours to run these automated tests, and they can be run automatically as part of your build process. And you, not to say that it 100% replaces manual, but it probably can do 80% of the job. And then if they all pass, only then do you actually ask humans to do that extra 20% that's hard to automate. And it's a transformative thing. And then, over the last, well, decade, I suppose, it's become such a commonplace deal that from our perspective, we have as a company, Magenic is all about software development, building custom apps for our customers. But over the last decade, we, it turns out, sell direct testing, automated testing services almost as much as we sell app dev just because companies, you know, companies that even are building their own software, like, oh, yeah. We could have you guys come in and automate the testing. That would be great.
(Joel Beasley at 00:35:17) So you guys will build custom apps for companies, but you will also come in and build up tests for them too?
(Rocky at 00:35:25) Yeah. Exactly. Right. Yep. So we'll obviously build tests for the software that we build, but we'll build tests around software that we don't build too because the automation of tests is a field unto itself. Right?
(Joel Beasley at 00:35:42) Oh, nice. So the guy I was referring to before that I'd give test stuff to, he actually got a job and is not doing that anymore as consulting. It was just one person I knew that could, because I can't get that deep with everybody who reaches out and asks about testing. But now when people ask about that stuff, I can just push them to you. Would that be okay?
(Rocky at 00:36:02) I can't say no to that. That sounds awesome.
(Joel Beasley at 00:36:05) It's hard because you can find these magical people, but then you have to really find companies that are magical and have a bunch of magical people at the top. And the reason why is I find an individual and they'll go back and forth between jobs and doing it and kind of not doing it. So I get hesitant about referring stuff to them. But then I found through these types of conversations, through doing the podcast, I can find these companies and figure out how they think and what their executives—because it's almost like, it's going to be kind of a lame reference here.
(Joel Beasley at 00:36:37) It's almost like a garden. I understand the gardener and their principles, so I know what's going to be growing in there is good stuff. And once you can understand the gardener's principles and how they operate their garden, then it just gives you confidence to be able to do that, to refer people to them.
(Rocky at 00:36:55) Sure. I can't argue with that. That's true. Yeah. Following this train of conversation, I think I'm hopeful, crossing my fingers, but the third big area that I think DevOps hopefully will impact—because really, a lot of the things we've been talking about have become mainstream because of this whole DevOps movement.
(Rocky at 00:37:21) And the third one that I really hope becomes commonplace is secure code, or security around code. Organizations have, I think, always invested in security for infrastructure—networks and everything else. But there's been very little true investment around secure coding and making sure that developers don't make a mistake that opens up a vulnerability and all that sort of thing. And the same thing with everything else we've been talking about, we're at a point now where there are tools, either commercial or open source, that can do pretty comprehensive scans of your code and scans of your dependencies.
(Rocky at 00:38:04) And you can build these into your DevOps pipeline so that you have a—nothing's perfect, but a much higher degree of confidence that your software doesn't have a SQL injection vulnerability. And we say, "Oh, we train our developers constantly not to do that sort of thing." But people are human. They make mistakes. They're under tight deadlines, and things slip through, and that happens everywhere.
(Joel Beasley at 00:38:35) Well, it's order of operations, right? It's like, well, you can either train people and hope they implement this at a later date, or you can just put a check in place that guarantees every time it will be scanned. It's so obvious which is the right answer.
(Joel Beasley at 00:38:46) So are you telling me—because I don't have experience with these. What I do now is I've got a third-party pen testing company, and every couple months, we do a new pen test for our product that we have over here. And so what you're saying is I've got—I happen to use CircleCI for my deployments. So you're saying I could, there's a product that I could hook into the CircleCI that would do security scans?
(Rocky at 00:39:10) Yeah. Exactly. And I mean, there are several. One of the more common ones is SonarQube, just to toss an example out. And so you can either use SonarQube as a service in the cloud, or you can set up your own SonarQube server.
(Rocky at 00:39:25) And there are many others. That's why I'm not trying to endorse this one necessarily.
(Joel Beasley at 00:39:31) But do you like it, though, personally?
(Rocky at 00:39:33) We do. We have our own SonarQube server running at Magenic that we use for some of our customers, and some of our customers use the SonarQube cloud service. And some use a different tool, competitive tools. But yeah, it basically does static code analysis where, as part of your build process, this thing analyzes the code and looks for common vulnerabilities or common anti-patterns in your code and flags them. So it's powerful.
(Rocky at 00:40:07) Right? And it runs against many different languages, programming languages and so forth. So it's not—you look at Microsoft inside of .NET has, over the last few years, built this concept called analyzers, which are super powerful. And you can build analyzers that look for patterns or anti-patterns in your code that you want to look for. And so one of my colleagues has written a whole bunch of them for my CSLA open source, and he contributed them into the open source project, for example.
(Rocky at 00:40:45) So if you're using the CSLA, these analyzers will help you avoid common mistakes and that sort of thing, which is thumbs up. But that's very platform specific, right? That's all about .NET, whereas SonarQube and a lot of these other tools are—well, I'm sure they don't support everything, but they support .NET, and they support Java and Ruby and Python and JavaScript. And so they're pretty comprehensive.
(Joel Beasley at 00:41:18) I want to talk a little bit about the name. Do you know the story of how the name came about?
(Rocky at 00:41:26) The company had a different name originally.
(Joel Beasley at 00:41:32) It wasn't Magnetic, was it? I called it Magnetic earlier. No. I was like, "Oh, no."
(Rocky at 00:41:36) There was so much energy in the conversation, Rocky.
(Joel Beasley at 00:41:39) Our relationship was magnetic.
(Rocky at 00:41:41) It's Magenic. Magenic. It's, you know, the company had a different name, and then we opened our office in California, and a defense contractor had the same name. And so the decision at that time was made to not fight with the people that had missiles and instead to change our name. And so there was a brainstorming session that involved trying to take syllables out of different words, like magic, technology, innovation. And so Magenic is kind of a mashup of some words.
(Rocky at 00:42:22) And I don't remember the specific words off the top of my head, but it includes magic and technology, innovation.
(Joel Beasley at 00:42:32) It sounds right, though. When you hear that, when you hear Magenic, it's like, that's a word. It feels like that's already a word. It feels good. Yep.
(Joel Beasley at 00:42:40) That's what you want.
(Rocky at 00:42:40) But there is no T in it. It's Magenic.
(Joel Beasley at 00:42:44) Magenic. Yep. Magenic. I will get this. I promise.
(Joel Beasley at 00:42:49) I'm going to nail it on the intro.
(Rocky at 00:42:51) I've got to say that if any of our salespeople in particular listen to this, they're going to laugh their butts off because, of course, almost nobody does pronounce it correctly.
(Joel Beasley at 00:43:05) It's just how we work as humans. You know? We see the—our eyes. I love those memes you'll see or the graphic examples online where it'll actually be the words, but they're all misspelled or the letters are out of order, and your brain can read it fine. It's strange how that works.
(Joel Beasley at 00:43:22) It's kind of beautiful in a way.
(Rocky at 00:43:24) Yeah. Oh, I agree.
(Joel Beasley at 00:43:25) It's Majestic. Oh, very nice.
(Rocky at 00:43:28) Well played, sir. Well played.
(Joel Beasley at 00:43:31) Okay. We got to talk earlier a couple weeks ago, and you alluded to this concept of the A, B, C developers. Can you break that down for me?
(Rocky at 00:43:41) Yeah. This is basically, if you look at the industry as a bell curve and then divide the bell curve into three parts, which is fairly standard. So you start out on the leading edge with Type A, and then the center is B, and then the trailing edge is C. And you can use that as a model for a lot of things, including, more or less, the distribution of the developers in our industry. And so the vast majority of developers, of course, are Type B and sit in that high part of the bell curve.
(Rocky at 00:44:19) And Type B developers tend to be working with mainstream but not cutting-edge technologies. Technologies that are not old but yet are time tested, right? Proven. And they tend, on the whole, to have a lot of business knowledge as well as tech knowledge. I mean, they're the people that build business systems, and so they understand—and it's not just business, right? Science, whatever else it might be. They understand their problem domain, and they understand the technology they're using. And then if you get into the Type A folks, the further out you go, they like leading edge, and then they like bleeding edge.
(Rocky at 00:45:04) And then, you know, they like the stuff that hasn't even been invented yet, but they know it's out there. And they're always pushing the boundaries and innovating and trying to figure out new ways to do things or improve what's already being done. And then there are Type C developers that are using maybe not so current technologies. They got themselves into a good spot and, you know, the kind of common example these days are all COBOL or FORTRAN or developers that are using tools and platforms that might be many decades old that are still out there that in many cases run the very foundations of our world.
(Rocky at 00:45:53) Right? Especially like COBOL. Most big banks and credit card companies and airlines, their core systems very well might still be running COBOL. And you and I might never see that, but it's there. And without those people keeping it working, you end up like what was in New Jersey with their unemployment system, collapsed under the recent surge.
(Rocky at 00:46:19) And it turns out it was all written in COBOL. It's like, "Oh, yeah. Well, there you go."
(Joel Beasley at 00:46:24) Thanks. Florida too.
(Rocky at 00:46:25) Oh, yeah?
(Joel Beasley at 00:46:25) I mean, I don't know if it was written in COBOL, but it definitely collapsed. And I saw an article that said, "We're working. We've added 67 servers." And I'm like, I calculated the number of people in Florida. I was like, "What level—what do you mean 67 or 64 servers?"
(Joel Beasley at 00:46:43) Like, what are you doing over there? Why was there a need for 60-plus servers? I couldn't wrap my mind around it.
(Rocky at 00:46:53) Yep. I don't know. I've—a good friend and colleague of mine who's otherwise retired spent the last several weeks working for Alabama and getting theirs up and running again. And I think it's a pretty common deal, but these systems, like everything, right, it's part of the nature of being in a semi-capitalistic environment where we really work on optimizations of costs and throughput.
(Rocky at 00:47:28) And so you optimize—our economy and our society works, you optimize for the common load because it's not cost effective to overbuild because then you've got all that idle capacity that you just paid for that's doing nothing. Right? And that works great most of the time, of course, but then you hit these extraordinary circumstances like we're in now where the hospitals are overloaded and the unemployment systems are overloaded. And you can't easily ramp some of these things up to five or 10 times or a hundred times their normal capacity because they were just never built that way. It was never cost effective to—you know, like, where I grew up, the hospital there might have an ICU bed or not.
(Rocky at 00:48:19) I'm not sure, to be honest. And it was never cost effective to have one because you could just, if somebody needed one, you'd airlift them to a bigger city. Well, all of a sudden, that's no longer realistic, you know, but literally, like, overnight.
(Joel Beasley at 00:48:35) No. You make some good points because, like, for example, the fire station. You know, even if we take it away from digital to something physical, like, the fire station has a capacity. And if there were wildfires, you would have to bring in—you wouldn't build up for that thing. You'd have to bring in other trucks from other places to help fight the wildfires. We see that type of stuff happen all the time. Or when all the—well, I'm in Florida, so we get hit by hurricanes a lot. So we see all the power companies come down, you know, I-75. The interstate's just got a bunch of power trucks from other states coming to help us rebuild our power infrastructure.
(Joel Beasley at 00:49:07) But I do think that they're—I hope at least that some good comes out of this as far as us looking at these systems and ensuring that they do have some sort of technological requirements that allow for surge capacity. I think that would be important, or some way to make sure our government systems have some certain level of resilience or accountability. I'm not sure if there is. I'm completely out of my zone here.
(Rocky at 00:49:42) Yeah. It's complicated. There's a lot of factors, some of them technical and a lot of them that are not technical. I think we are in a spot today that is kind of nice in that the idea of what we now would call the cloud, right? AWS, Azure, Google, you know, the public clouds. And they're—it turns out, what we've seen, that they're not infinite in their scaling. But, you know, for most of us, they're able to handle any surge that we can throw at them.
(Rocky at 00:50:22) Right? Unless, again, like the pandemic threw such big surges that from everybody, it was hard for, like, Microsoft. You know, it was unable to build out as fast as they wanted to in order to handle it.
(Joel Beasley at 00:50:28) Zoom's bank account got full too.
(Rocky at 00:50:30) Yep.
(Joel Beasley at 00:50:30) Their bank says we can't take any more of your money. It's filled.
(Rocky at 00:50:36) But I think, you know, from a technical perspective, unlike in the past, we're closing in on the point where computing power is not unlike an electrical utility. It's not infinite. But in any given situation, you're probably going to be able to surge or boost into elastic capacity. But that assumes that you've written your software to be able to do that, and that's where it gets tricky.
(Rocky at 00:51:06) Right? And just because we can do something, building software that can take advantage of cloud elasticity is more expensive than building software that is done in the kind of old-fashioned monolithic approach. And so some businesses are building new systems that do that, and some are looking at it going, "Ah, it's just cost prohibitive. We—it'd be awesome, but it's not worth it to us." And, you know, then you get into the government space, and government generally ends up, for a variety of reasons, some are good and some are bad, but they go for low-cost bids and so forth. And so I'm less than thoroughly optimistic that government systems, for example, are ever going to be built for true elasticity just because it is.
(Rocky at 00:52:01) It's expensive and hard to build those systems.
(Joel Beasley at 00:52:05) How did you get involved with Magenic?
(Rocky at 00:52:08) So my career, I started in a small company that built software for concrete ready-mix companies. And that's what we did. We built software for tracking and making sure all the trucks got there on time and taking orders. And from there, I moved into a company that was a biomedical manufacturing company. And, you know, totally different deal, because I went from being somebody who literally was building the product that was being sold into a traditional IT role where we were just keeping the company running, and the company did stuff that had nothing to do with computers.
(Rocky at 00:52:53) And after that, I got into consulting, and I worked at a consulting firm for, I think, almost seven years, six and a half years. And that's when I started, got into professional speaking and started writing books and that sort of thing. So this is, by that point, we're in the mid-'90s. And the company that I worked for at the time was starting to see some measurable benefits from my activities.
(Rocky at 00:53:23) Because I was out speaking at some pretty high-profile conferences, and one of my books became extremely popular. This was in the late nineties. It sold, you know, I think over a hundred thousand copies, which for a computer book is pretty amazing. And they were like, "Yeah, we love the fact you're doing that, and you can keep doing it. But, you know, you need to make sure you're taking vacation when you speak at these conferences and, you know, get your fifty-five to sixty hours of work in, and you can continue to write books in the evenings all you want." And this was also the point when my wife and I had two young kids just then. And, you know, basically, it was unsustainable to essentially have two jobs and have a family. And so there's a guy in the community—you know, you get involved in any regional community, and they're not very big. Right? The number of people in Atlanta or Minneapolis or even New York that are actively involved is not a huge pool of people. And so anyway, I got to know this guy. His name was Greg, and he started coaching me, you know, mentoring me on just ways that I might try and convince my employer to recognize my value.
(Rocky at 00:54:43) And after trying this sort of thing for, you know, a year, year and a half maybe, and getting nowhere, I finally went back to Greg, who also owned a competitive company. And I said, "Hey, Greg, all that stuff you've been, you know, suggesting and trying to coach me to do, you actually believe that?" And he said, "Well, why?" I said, "Well, because it hasn't been working over here, but maybe I could come work for your company."
(Rocky at 00:55:12) And he's like, "Oh, yeah." And so that's what ultimately happened because he was one of the cofounders of Magenic. And so I ended up going to Magenic because the owner of the company—and to this day, it kind of boggles my mind—he was coaching me on how to be more effective for his competitor. And, I mean, that's a level of integrity I don't think you see every day.
(Joel Beasley at 00:55:40) He was building a relationship with an intelligent person.
(Rocky at 00:55:43) Well, I think that's how he sees it. Sure. Yeah. But a lot of folks—I don't know—a lot of people wouldn't help build up somebody that was working for a competitor.
(Joel Beasley at 00:55:56) You know, I agree, especially ten years ago or, like, fifteen, twenty years ago when coopetition wasn't as prevalent as it is today.
(Rocky at 00:56:06) Right. Yeah. I mean, today more—
(Joel Beasley at 00:56:08) Campy back in the day. Totally true.
(Rocky at 00:56:11) It was. It was. I agree. And, yeah, I think our industry is healthier now in that regard than it was back then. But, yeah, in the end, I did. I came to work for Magenic, and Magenic has been extremely supportive over the years of me, you know, writing and speaking and being a public persona and thought leader, and also working in various roles inside of Magenic. So it's been a lot of fun.
(Joel Beasley at 00:56:44) Yeah. I encourage people constantly. I had a couple authors on the first year I was doing this podcast, and one of them had said, the best way to learn a topic is to write a book about it.
(Rocky at 00:56:57) Yeah. I mean, I often have people—because at this point, I've written, jeez, I don't know, well over twenty books—and people are like, "Hey, you know, should I write a book?" And I'm like, "Well, you know, the first book I wrote was a big learning experience, and it took ten months. And I literally lost friends over it." It's not for the faint of heart. And so, but I think you're right. I mean, you can broaden that topic too. If you really want to know something inside and out, you have to, you know, teach it. And so whether that's teaching through a blog, teaching through a book, teaching by speaking or creating classes online or whatever, but for you to teach a topic, you have to understand it in such a deep way that, obviously, you're going to become an expert yourself.
(Joel Beasley at 00:57:54) Yeah. I should have, like, put an asterisk there: to write a good book. Right?
(Rocky at 00:57:59) Yep.
(Joel Beasley at 00:57:59) Yeah. So have you—do you have any personal authors that you follow in technology that you've followed for a long time?
(Rocky at 00:58:08) Yeah. Believe it or not, I don't read very many technical books. Back when there were still bookstores—and, yeah, I know they still exist—but, you know, I would go and browse through books. And what I found usually more often than not is that, you know, you've got a three hundred page book or two hundred page book, and somewhere in the middle of it is the solution to the problem that you've been wrestling with. And, you know, and then you buy the book. At least I used to. And I probably would never actually read the book, but I would buy it because that, like, three pages in the middle that solved my problem was totally worth the cost of the book. Right? But now, you know, you can't do that through Amazon. There's no way to browse through the book to find the three pages and then go, "Thank God. I'll buy the book." And so, you know, nowadays, you just search the web and probably end up on Stack Overflow somewhere like that. And, hopefully, the three pages—you know, the kernel of what you needed—is available on somebody's blog or something. Right? And so—
(Joel Beasley at 00:59:20) Pay for it on Stack Overflow.
(Rocky at 00:59:22) Yeah.
(Joel Beasley at 00:59:23) It's just not with cash.
(Rocky at 00:59:24) You pay for it with time or whatever. Yeah.
(Joel Beasley at 00:59:28) We'll say time.
(Rocky at 00:59:31) Trying to be nice. But it is, yeah, the world has definitely changed. And so I don't, you know, I still write books, but I don't do traditional publishing. I write everything and publish it myself online, you know, because, yeah, I guess for a variety of reasons.
(Joel Beasley at 00:59:52) Why? Because, like, the publisher has the usefulness of distribution or helping invest in someone that doesn't already have an audience. But if you've built an audience and you write and the audience will purchase it and that's useful and you're providing to the economy and the industry, then it basically just cuts that resistance out.
(Rocky at 01:00:15) You said that very well. I wasn't sure I wanted to dive into that, but, yeah, it's exactly right. And if you don't yet have an audience and or a marketing platform, you almost have to have a publisher. But, you know, I went through, I think, three or four different publishers over time. And, you know, over a period of fifteen years and built up a market and a name. And so the value that a publisher brings to me isn't as great as it used to be. There's no doubt.
(Joel Beasley at 01:00:48) Yeah. I do Amazon. I use the Amazon publish. It was called, like, CreateSpace, but I think Amazon kind of bought them. But it's beautiful because people buy the book, and then it gets printed on demand and shipped to them, and then they handle returns—they handle everything—and I just get checks at the end of the month. I get seventy ACHs. Do you have Amazon? Do you get that too?
(Rocky at 01:01:11) No. I actually run my own store, and so everything comes through PayPal.
(Joel Beasley at 01:01:15) So are you shipping it too?
(Rocky at 01:01:17) Well, it's all PDF. I don't even print—
(Joel Beasley at 01:01:20) All PDF?
(Rocky at 01:01:20) Print a book. What? These days, yeah, I'm not sure that the value is there in having a paper book anymore. Especially for text stuff, because you can just bring it up in PDF, hit Control-F, and find what you want. Right? Just start searching. So—
(Joel Beasley at 01:01:38) And you could copy and paste in the—
(Rocky at 01:01:39) Copy and paste. Yeah. It's just—it's hard to beat.
(Joel Beasley at 01:01:43) But what am I going to do with all that time I was going to spend typing it in? Oh, we didn't cover cloud trends.
(Rocky at 01:01:53) No. What's going on in the cloud? What are some of the top trends going on there?
(Joel Beasley at 01:01:54) What are some of the top trends going on there?
(Rocky at 01:01:58) Yeah. That's some content that we just put together fairly recently and put out on the Magenic website. And it's—and I've done a couple online webcasts around this topic as well—really looking at the fundamental nature of the cloud as it is today and then where it seems to be going just in the next few months, right, next six to twelve months. And, yeah, I think about these trends and look at what we're seeing is the expansion of, or maybe broadening of, the definition of cloud to include private clouds that are in your data center as well as public clouds. You know, in most cases, when people hear "the cloud," they think AWS or Azure, and maybe Google. And but, increasingly, what we're starting to see is it's become cost-effective to really run your own cloud in your own data center. And be that by buying an appliance, like an Azure Stack appliance or an AWS Outpost appliance—like, literally just wheel in the hardware and plug it in—that's one way. Or, you know, using, like, Red Hat or Canonical or VMware—all have offerings that allow you to set up a Kubernetes cluster in your data center. And that's really the—so that second big trend is this idea of we're all shifting slowly but surely into a container-based deployment model for servers, and Kubernetes seems to be the de facto winner for the way that you orchestrate all of these things. And now, like I said, you know, the private cloud vendors like VMware offer you a managed Kubernetes. You just, you know, say, "I need a cluster," and, you know, voila. You've got a—a few minutes later, you've got a cluster. And the public cloud does the same thing. You go up to Google or Microsoft or Amazon and say, "I need a Kubernetes cluster," and ten minutes later, you've got one. And it is kind of becoming the universal base fabric for, you know, building cloud solutions. And so those two trends, I think, tie together to create this idea that, well, maybe I should have a hybrid cloud where I am running some of my stuff in my own data center, and when I need to, I run some of it in the public cloud. Or maybe I'm always running it in the public cloud except for certain pieces due to regulatory or privacy concerns that I need to run in my own—you know, there's different motivations for this. But—
(Joel Beasley at 01:04:49) HIPAA and, yeah.
(Rocky at 01:04:50) Yep. Yep. And, or—I'm drawing a blank on the acronym—but the European privacy laws, GDPR, that sort of thing. So we—you and I already talked about my hopes for security, but that's another cloud trend is—at least in the paper that we put together—is this idea that as you migrate your code and modernize your code to work in the cloud, that, ideally, you're also taking this opportunity to do static code scanning around security and really building security into your process. So that, knock on wood, I really hope that turns out to be the case.
(Joel Beasley at 01:05:41) So have you noticed that you have a certain type of niche customer, like, niche customer? I don't know how to say it. But have you noticed you get, like, a certain cluster of customers in a specific area?
(Rocky at 01:05:57) We really don't. You know, because our focus has always been—you know, what are we, twenty-five years old now as a company—but we've always been focused on technology and being technical, providing technical expertise and the capability of building complex software. And we care less about specific verticals like finance or manufacturing or healthcare. And so we have done a lot of work in the financial space, and we've done a lot of, you know, FinServ and FinTech and insurance. But we, at times, have done huge amounts in online retail, for example, or healthcare. And, you know, so we have business analysts, and some of those folks have a lot of specialization in certain verticals because that's their background. But from a technology perspective, to a really large degree, you know, when you sit down to build a Java enterprise app in healthcare and you sit down to build a Java enterprise app in FinTech, the actual Java enterprise parts don't change. Right? The technology, the understanding of how to make the cloud work—you know, all these things are unaffected by the vertical business that you're operating in.
(Joel Beasley at 01:07:25) And so they're usually customers, like, their mindset when they're coming to you or they first call you up is, "Help us with this Java environment," or what are they usually calling about?
(Rocky at 01:07:36) No. They're usually calling because they have a business problem that—yeah, it's—we need to solve this problem. We don't have the expertise, or we don't have the bandwidth, or some combination thereof. And we're looking for some help. And so sometimes, you know, we'll come in at a very high level and help with envisioning of and fleshing out of the problem itself. And that's—we call digital services—which, that's a smaller part of our overall work, but it's a nice area to be. More commonly, the customer already pretty much knows what they want to do. They just don't know exactly how to get there because maybe they haven't yet used the cloud, and they want to tap into our expertise because we have a lot of that expertise. Or they have used the cloud, are using the cloud, and they just need feature teams. You know, I mean, like, we've got one of our bigger projects right now. I'm not even sure how many feature teams are on it total. I think we've got eight or nine from Magenic, and then there are other feature teams from the client, you know? And so we're basically providing a combination of expertise, but also probably more importantly, just plain old, you know, labor bandwidth—get things done.
(Joel Beasley at 01:09:05) And so have you noticed any, like, trends in the business problems people are calling up about? Or is it like, "Hey, how do we move our business to cloud?" Or is there a trend in the problems?
(Rocky at 01:09:16) There definitely is a trend around cloud. And I think it's—for, I'm sure, companies like Microsoft and Amazon, it's been a slog. Right? Azure just turned ten years old recently, which is hard to imagine. This whole cloud thing has been going on for more than ten years. And it's really only maybe in the last three that companies—pretty much all companies at this point, I think—are seriously considering and or are actively moving things into the cloud. And, you know, there's a lot of resistance. It was too expensive or it was too risky or, you know, a variety of concerns or regulatory issues. And I think we're at a point now where all of the big public clouds have a fair number of certifications from a, you know, legal perspective and liability perspective. And enough of the—you know, we talked about the type A, B, and C developers—that applies to companies too. So there's been enough type A companies that have actually said, "Oh, we'll take the risk. We'll make it happen." And now we can look at them and say, "Hey, they succeeded." You know, maybe they had some pain because that's what you get with being a type A. But they succeeded. And so now the type B—which is, of course, the center of the big part of the bell curve—right? The type B organizations and type B developers are looking at that going, "Yeah. Okay. The cost is low enough, the value is high enough, and the risk is controllable enough that now is the time." And so, yes, that is probably the single biggest trend going on in the industry right now is looking at existing apps or and or new apps, and figuring out ways to build them—either get them running in the cloud or to build them to be truly cloud-native.
(Joel Beasley at 01:11:15) It's exciting. It's like the early adopters, the A's, you know, they came in, and then the B's—I mean, it's been around for ten years. Right? So I mean, it's like you just get comfortable with the fact that it's around, and it's not a new trend anymore, and it's just like everybody's doing it now.
(Joel Beasley at 01:11:32) It makes it really easy for the companies who aren't the trendsetters to start asking the questions of discovery. Like, why is this so successful for everybody, and why are we not there?
(Rocky at 01:11:46) Yeah, it's exactly right. And one thing, I've been in the industry long enough that when I was a young developer, everything seemed to move so slow. It's like, why aren't we adopting this tech?
(Rocky at 01:11:59) I mean, this new technology would make things so much better. And after a while, you start to realize that enterprises move at a, let's say, stately pace.
(Joel Beasley at 01:12:12) You're being nice to people.
(Rocky at 01:12:13) I am being nice. It's, but I do. I mean, yeah. And so, and I think it's funny because when you get vendors, like Microsoft or Google or anybody else, that they come out with a new product or a new version of Windows or a new development tool, and they're like, oh man, this is gonna be awesome. It's gonna change the world. And I'm like, well, it might, but it's gonna change it over a five to ten year period because that's the speed that enterprises work in. And, you know, when you build enterprise software, you build something that costs millions of dollars, and it's gonna have to run for ten, fifteen, twenty years largely unchanged to recoup that huge investment. And that means that during the life of that app, you know, it's not gonna be, it's unlikely to shift onto a new major platform or a new major tool because it's just not cost effective. And, you know, the, and every generation of new developers that comes in, of course, was just like I was.
(Rocky at 01:13:19) And we're like, oh, why are we moving so slow? If you were to rewrite this using the new modern technology, it would be so much better. And that's probably true, but we're still recouping that $10 million it cost to build the thing in the first place. So.
(Joel Beasley at 01:13:36) And then you notice that, you know, some edges of the conversation get farther ahead when the closer they are to business value. So, for example, if I can deliver something that's valuable to the customer and we don't have it today and it can only be done with this new technology, then that's like a quick pass. Right?
(Rocky at 01:13:55) Yep. Yeah. Totally right. Good analogy. I have Florida coming through right there.
(Joel Beasley at 01:14:00) The one good thing from Florida today.
(Rocky at 01:14:02) Quick pass.
(Joel Beasley at 01:14:04) Hey. Good analogy. But,
(Rocky at 01:14:08) You're absolutely right. I mean, that's at the end of the day, it always comes down to this stuff costs a lot. Building software costs a lot of money, and so either I've gotta save a lot of money by, you know, the software is gonna save me a bunch of money, or it's gonna make me a bunch of money, or both. And at the end of the day, the business people are the ones that are paying us to do, you know, hopefully, stuff that we love doing, but we have to provide value.
(Joel Beasley at 01:14:41) I love it. I think that's a great way to wrap it up. What do you think?
(Rocky at 01:14:45) Sounds great to me.
(Joel Beasley at 01:14:46) Man, this is awesome. Rocky, this is such a good conversation. I really enjoyed hanging out with you today.
(Rocky at 01:14:52) Yeah. I enjoyed it too. So thank you very much.