Deconstructing Monoliths With JJ Asghar

Posted on Tuesday, Oct 17, 2023
Working with older monolithic applications can be cumbersome, and many organizations have taken the journey to devolve their monolith into smaller individual services. That path isn’t for everyone, and JJ Asghar joins us to talk about when to just let your monolith keep on doing its thing.

Transcript

Mandi Walls: Welcome to Page It To The Limit, a podcast where we explore what it takes to run software in production successfully. We cover leading practices used in the software industry to improve both system reliability and the lives of the people supporting those systems. I’m your host, Mandi Walls. Find me at LNXCHK on Twitter. All right, welcome back to Page It to The Limit. This week I have with me JJ. JJ, the man. He’s awesome at IBM or .com. Sir, welcome to the show. Tell the people about yourself.

JJ Asghar: Yeah. Thanks, Mandi. It’s been a very long time since we actually sat down and talked so. Oh wait, hold on. Is my sound coming in? I’m sorry.

Mandi Walls: No, you’re good. Yeah.

JJ Asghar: It’s fine. It’s fine. Maybe I’ll bring me closer to mic. There you go. You know I’m serious when, I’m a serious online personality when I can’t figure out how to use the software.

Mandi Walls: Right. You have no idea. Oh, it’s in a browser and it’s really easy. I have no idea what’s going on. Yeah.

JJ Asghar: Exactly, exactly. But yeah. Hey everybody. So my name is JJ Asghar and I’m a developer advocate for IBM, and my job is to basically be a personable nerd. You find me around online places, I get to speak at conferences and I get to try to make really hard technical things easy for people to understand. I’m not going to teach you everything you need to know, but I’m going to get you to the place where you can be dangerous enough to be successful.

Mandi Walls: That was a great way of putting that, dangerous enough to be successful. You’re the friendly face on the team there. So you’ve been talking recently about folks who are sort of attacking their monolith and what that looks like over moving into the future, moving into new topologies and technologies and that kind of stuff. So let’s talk about that for a while. What are your thoughts now versus what maybe your thoughts were a few years ago when we first started this journey?

JJ Asghar: Yeah, obviously everybody knows what Kubernetes is, right? I’m not going to go into why cloud native is important and things like that.

Mandi Walls: But you could if you wanted to. That’s fine.

JJ Asghar: I could. I could, but I’m just going to assume your audience understands that the cloud native ecosystem is here to stay. We’re all moved to that world because we need velocity. The core conversation you have with most people, and especially when they’re going into this space or moving a monolithic app to the cloud native space is before you even start there, what are you trying to do? You’re trying to get a feature out quicker. You’re trying to win in the business ecosystem that you’re in. What is a business like? Goldratt says what is the goal, right? It is to make money, right? Well, you’re not doing this to do other stuff other than making money. So most likely you’ve identified a way to leverage the new technologies with an older app and you’re like, okay, how do I get to this point? Five years ago or however one say it was, there was a lot of people who was trying to do this, trying to get their old ecosystems into this cloud native space. Over these last few years, it’s been very obvious, especially with the world that existed a couple years ago where we couldn’t leave our houses.

Mandi Walls: Yeah.

JJ Asghar: People started really spending time looking at their technology stacks and people quickly realized that if you have an old application, what I don’t want you to call it, I’m just going to say old. I’m going to use that as a catchall term, but a monolithic application or something like that, and it is making you money. You’ve got to understand that migrating that application to the cloud native ecosystem, you will lose money. Right. If you are in the black making money off of this application right now, engineering time is real dollars.

Mandi Walls: Yes.

JJ Asghar: That is the core problem with this whole statement.

Mandi Walls: Yeah. I definitely understand and I have worked in monolithic applications in the past as well, but yeah, it is a huge undertaking to modernize those, to devolve them, to even think about the architectural changes, and then you have to reapply all of the things you’ve already learned about that monolith onto all those little tiny services. So from an operational standpoint, I have to relearn how to scale all that crap.

JJ Asghar: Exactly. I’m not saying don’t go into the cloud native space. That is also, I want to make it very clear from the get-go here. I’m telling you to use it for your next project.

Mandi Walls: Yeah.

JJ Asghar: Build it to fit in that space. Don’t migrate your, I’m going to use just a generic term of a Java app. Don’t migrate your Java app and then shove it in a container and put it on OpenShift and expect it just to work. There is so many more things around it. You have to spend your time and effort understanding. Now, you probably have an enterprise architect. Right. In your ecosystem, you probably have an enterprise architect that knows where all the skeletons are buried about this application. You now need to turn that enterprise architect into multiple people to understand all the different microservices that your application is working on. Now, that person’s probably been doing this job for five, 10 years, and now you have to [inaudible 00:04:53] them out to six or seven people. Now you have to transfer five to 10 years of knowledge into 10 or five or six people. That alone is a huge, huge undertaking. Now you’ve got to write a bunch of software underneath that also. When you start really thinking about it and really walking through this whole step, it is exhausting. You will lose real money doing this.

Mandi Walls: Obviously, there are trade-offs for it, but I’m going back to your enterprise architect and just thinking about, like in a greenfield, the concept of microservices and those kinds of environments is very tasty thinking. It’s very nice. I totally understand how you want to go about it. I’m going to have these little services. They do a couple of things. Maybe they do one thing and then I scale them out based on what they need to be doing, but then when I need to think about the entire architecture, it’s like trying to think about the national highway system. It’s like, okay, well, I’ve got even ones going East, West and odd ones going North, South and having a splinter roads that are all three digits, and then craziness happens.

JJ Asghar: Yeah, it becomes a murder mystery. Ken and Bridget and all them have a great story that all of a sudden when you start bringing in a bunch of microservices, you’re going to be figuring out who did it. Right.

Mandi Walls: Yeah.

JJ Asghar: Because things are going to go pear shaped really, really quickly when you finally get it to a production level. By the way, we haven’t even talked about the process of getting it to the production level. We’re just telling you when you’re finally here, when you migrated that monolith to that spot. Again, I work for a rather large company. As I said earlier, you might’ve heard of it.

Mandi Walls: Right.

JJ Asghar: We do spend a lot of time in these conversations and the most important thing to recognize is that I’m not telling you not to do it. I’m just telling you that there’s a lot of hidden work here that people don’t recognize, and even if you’ve started down this path, if you don’t understand how much time and effort is required to get to that nirvana that you’re going for, and I’m not telling you don’t use the software. I’m telling you, look at that next thing. You’re going to have to update your monolithic app to something new eventually, right? What’s the famous story? The only application you’ve ever write in your career is the hello world program. It’s only going to be version one and stay as version one.

Mandi Walls: Yes.

JJ Asghar: Because as soon as you release it, you’re already doing version two. Right. It’s the same thing with all software. You’re going to have to have that next version of that application out there and write it so it fits into the cloud native ecosystem instead of migrating it into the cloud ecosystem to be already a production stable application. Mandi, does that make sense?

Mandi Walls: Absolutely. So when we talk to folks, what’s their motivation do you think when they have this, some kind of cash cow. Right. Like you said, it’s making them money, it’s in their revenue stream somewhere, it’s something that they’ve maybe had for a long time and moving it into cloud or devolving it intentionally, right, we’ll say, into a cloud native ecosystem. What’s the motivations there? Are they looking for cost savings? Are they looking for the understanding? Is it just because it sounds fun?

JJ Asghar: I’m still convinced that we still have CIOs and CTOs that occasionally get in their business grade, a business class upgrade on the random airlines and find that CIO magazine and says, Hey, we should go with that new shiny. I’m still convinced that happens because it’s the only, like frankly speaking, you’re trying to beat your competition. You’re in business because you’re trying to, it is a competition. As much as we want to give everyone hugs and make sure everyone’s successful, your business exists to make money. And unfortunately, some people think the trade-off of engineering time to making more software is an okay trade-off, and I’m telling you, it’s not. I’m telling you that you will lose real money because those people who are migrating the application also, they’re going to have to be experts in this space.

Mandi Walls: Absolutely.

JJ Asghar: You’re going to have to train them on your original monolith application, the new technology you’re trying to build for and how to get their old technology into their new cloud native space. Those people are expensive. Wouldn’t it be better to spend those people’s time and effort on new features with a new application that can leapfrog your competition? And if your answer is no, then frankly, I’m very worried about your business propositions. Right.

Mandi Walls: Yeah, absolutely. You want to be working on the next thing that your customers want, not bringing along the old thing that they’re probably happy with.

JJ Asghar: Exactly.

Mandi Walls: The folks using your stuff have no idea what version of Java or Tomcat it’s written in. They just don’t have no reason to care so.

JJ Asghar: Hey Mandi, did you hear there’s a company that starts with an I ends with a BM that has a lot of companies that do this thing called COBOL that exists that runs basically our world that most people don’t even know exists.

Mandi Walls: No. Right, and that was the thing during the pandemic. I live in New Jersey and when they were changing up the way some of the, like unemployment benefits and all that kind of stuff was going to go during the pandemic. They were putting a call-out for COBOL engineers because all that stuff is still running COBOL. I had two weeks of COBOL in undergrad and on a VAX, so have no experience to help anyone out with COBOL. But yeah, there’s still so much of that stuff sitting around. And just the other day, somebody posted in a Slack, they wanted help with Tomcat eight, and I’m like, I’m pretty sure that’s end of life, but,

JJ Asghar: Yeah.

Mandi Walls: Go with God, man. Good luck on that. So,

JJ Asghar: Exactly.

Mandi Walls: Yeah.

JJ Asghar: Yeah.

Mandi Walls: Absolutely.

JJ Asghar: That’s a microcosm of this whole story, right,

Mandi Walls: Yeah.

JJ Asghar: Where those applications still exist, those places still exist because moving them to the new shiny is frankly not worth it. It’s not. But again, I’m saying that as a negative, but that’s actually a positive because I’m telling you to stay stable. I’m telling you to stay in business and focus on the next thing because another thing people won’t recognize is that moving your application from a monolith to microservices is people also associate that back in the days of moving bare metal to VMs. Right.

Mandi Walls: Oh, sure. Okay.

JJ Asghar: All you got to do is throw in hypervisor on there and all of a sudden you’ve got a bunch of VMs sitting on there, and it’s the same ability to compress and get more, not consolidation, what’s the word? Don’t want to use the word containerization because that’s wrong. It’s,

Mandi Walls: No. It’s yeah.

JJ Asghar: You get more stuff inside of the thing.

Mandi Walls: You’re using your yeah, better utilization of the hardware.

JJ Asghar: Thank you. Utilization. You get better utilization of the hardware because the VMs can handle different things at the time. You can spin things up and spin things out. Well, unfortunately, people made that immediate idea as that, oh, I can just get more compression. I can get more compression using containers now instead of VMs. Right. Isn’t that just a natural progression? Well, unfortunately, no, it’s not. Containerization is a completely different technology than VMs that require a level of understanding of how Kubernetes works underneath it. One of my best stories is, is there’s a company out there that actually had a Java application with a built-in scheduler, and they came to me asking me, Hey JJ, can you figure out what’s wrong with our Kubernetes cluster? We have a three node cluster and we run a bunch of batch jobs at 3:00 AM central time because nobody’s using it, and we’re noticing that one node spikes. So we want to spin it out so we can grow the cluster so we can have more nodes so it’s not just one node. It’s multiple nodes doing it. I’m like, oh, wow, okay, so you want to do hardware, like a blastable, right? You want to blast out to more hardware? They’re really advanced. Let’s have some fun. Let’s play with some really cool technology. Well, as I started asking more and more questions in this, I recognized that they basically took their Java application, shoved it into the Java container, the standard one, and then put it up on Kubernetes and just ran it. So they were basically treating it like a VM because that’s exactly what they did with the VMs, right? Because hey would have a bunch of jobs underneath it. Now because they had a built-in scheduler already inside of Java to do this, it would spin out the batch jobs in the same pod because it was all just one big Java wire file. Right. So that machine would just spike like crazy with CPU usage doing all the batch jobs. So I was like, wait a second, why don’t you use the scheduler to spin out a bunch of different like, take away your scheduler for this person of the job and then use Kubernetes to spin out a bunch of pods with that batch job that updates to a message queue or some shit. Right. And they’re like, oh, we didn’t know Kubernetes did that.

Mandi Walls: Oh my.

JJ Asghar: That’s literally what, Kubernetes is literally just a scheduler. It just schedules your pod and make sure it runs inside of CPU. That’s literally [inaudible 00:13:51]. Oh, wow. Cool. Long story short, they didn’t know how to use the technology underneath it.

Mandi Walls: Yeah.

JJ Asghar: Right. And that is a perfect story of how these conversations always happen, is that they just tried to go through the same process they did with this back in the day of hypervisors, not recognizing that containerization or cloud native, I’m using cloud native containerization interchangeably here, requires another way of thinking about it, another way of understanding how to actually engage in this space.

Mandi Walls: Yeah. Yes.

JJ Asghar: Yes.

Mandi Walls: I absolutely remember that sort of like, it felt like the wild west, like the westward push to get everything onto hypervisors and into VMs, because you’d have to buy these gigantic machines to do anything, and then you’d have so many of them, but you’d have stranded capacity somewhere because there was one major process, but you didn’t want to pile on multiple things and try to manage that because a nightmare. So you put a hypervisor on it, now it’s got five or six VMs, but it’s still the same operating system and the ability to actually perform inside those operating systems wasn’t significantly different. It was just, looks like a smaller machine versus the containers. So yeah, definitely. So what do you do? How long should we expect these monoliths to live?

JJ Asghar: So nine out of 10 times when people would go down this path to migrating, I have seen the one successes, one or two successes where they have actually successfully done this. They’ve always come to me after the fact where the long, well first of all, they were expecting it to take six months.

Mandi Walls: Sure.

JJ Asghar: It took three years.

Mandi Walls: At least. Yeah.

JJ Asghar: Right. But they had already committed enough that they wanted to make it happen, which it was a smaller monolith application. It was also internal. Right. It was also an internal application. It wasn’t facing an external customer. It was just they wanted to prove that they could do it and they used it as a opportunity to teach their developers how to play in the cloud native space because they were also a Java application based company. I will say that they do appreciate the velocity they have now. They were able to break out all the different microservices and focus on not just Java, they were able to bring Node, they were able to bring Python. They were able to Go into some of those applications or the microservices. So now they’ve actually had the opportunity to recruit more because now they don’t just recruit Java apps because now they’re like, oh, as long as you do the shared contract between teams, we don’t care as long as you can get it done and you can make the iterative changes that we need to. Back to the famous Goldratt of small batch jobs. Right. I mean Goldratt follows us all through our tech career and it’s only even more.

Mandi Walls: Right.

JJ Asghar: And also there was one really interesting experiment that I haven’t been able to get them to publicly acknowledge this, but they’ve told me that I can at least mention it during my talks, which was every single sprint, they have a bunch of different teams working in this, what was a monolithic app, now is a bunch of microservices and every single team has a number of people on it. And every single sprint, they take one of those people randomly and move them to a different team.

Mandi Walls: Ooh.

JJ Asghar: So this had to be bought off from very high up, but they experimented and tried this and it turns out the first couple sprints they had, it was a nightmare, right? Because that person would be just basically dead weight, but by the third sprint, because the new blood would always come in, they had to get a getting started guide together. They had to understand and trade the knowledge back and forth to be able to get them to be functional between each two week sprints because that’s what the goal was. Right. So they stopped for the first couple times, but all of a sudden the third sprint came, it was a little bit faster and by the end of a handful of sprints, now all of a sudden a new blood would come in. They would just be able to get the getting started guide and already be able to functionally add something to the overall app in that little application. And then the other side of it is that the tribal knowledge was gone because now you have new blood each time. You’re like, oh, Jane Doe actually knows exactly what that API does.

Mandi Walls: Yeah.

JJ Asghar: I worked with her three sprints ago. Turns out she loves red wine. I’ll get her a bottle of red and we’ll have a conversation or whatever. You know what I mean?

Mandi Walls: Yeah. Absolutely.

JJ Asghar: And it was an awesome experiment and it works so well that their velocity skyrocketed because now everybody shares and they were able to recruit really interesting people and be able to build this diverse ecosystem. Again, they won’t let me talk about it publicly apart from that very general idea,

Mandi Walls: Yeah.

JJ Asghar: But it worked. But again, that was one out of how many companies I talked to. Right.

Mandi Walls: Right.

JJ Asghar: But they were able to actually successfully do it because the velocity, the velocity was what made them win.

Mandi Walls: Yeah, absolutely. And forging those new relationships, you have new context for conversations, you have new communications pathways, you have this better connectivity around the teams. And I think that’s one of the things like you mentioned about tribal knowledge is one of those things that really holds back folks who are still working in the monolith, is that there’s always one person who sits down the hall somewhere who’s been there five, 10, 15. At one point, I met some guy who’d been working on one for 25 years or whatever and,

JJ Asghar: Enterprise architect.

Mandi Walls: Right. And they’ve been there forever. They know what all the weird little quirks and all the strange things and they can put the pencil in the carburetor or whatever weird trick they have to make it go when it doesn’t want to, and yeah, and then you feel like, okay, well now the next thing’s going to have end number of these. Does everybody need to know all that stuff? How do we get to the point where everyone does know all that kind of stuff, but we hope that, I mean, should the microservices we’re writing now live 25 years? I don’t know.

JJ Asghar: I mean we just have to keep moving forward, right? Again, it goes back to the competition. You need to identify if this microservices is actually doing something you need and don’t turn the microservice into a monolith. Right. You need to be able to willing to throw it away. If it doesn’t function anymore, it doesn’t help your business, and that’s something that we haven’t even touched on the cultural changes of what happens when you go down this path also, which is one of my most famous stories about this, and going back to Java, I’m beating up on Java just because it’s Java, right?

Mandi Walls: You mentioned COBOL, but Java really was the first place where we started to see these monoliths. It was flexible enough, had enough functionality, had enough interesting things that it would do even if you had to create a factory class or whatever it is you’re doing. It would do so much more on so many platforms. Nobody was writing crazy multifunctional monolith and COBOL or FORTRAN. Those are,

JJ Asghar: Pascal. Pascal. I was running Pascal over there. Yeah.

Mandi Walls: Terrible Pascal.

JJ Asghar: Yeah, right, right. But one of my best stories about the cultural change, about this whole thing is I remember I used to be, well, we called it a production engineer, what people now call developer or DevOps or SRE or whatever you want in a previous life. And I remember on Thursday afternoons or sometimes Friday mornings, depending on what had happened, they would have a go no-go meeting with something called the CCB, which was the change control board at this company, and it was a little like I guess squad room or whatever in the office where they would bring in all the VPs of the business unit and they would, first of all, that was a lot of money sitting in that room, a lot of money, but they would literally sit down and they would all give a thumbs up to say, yes, we’re going to release the new version this weekend. When I saw there was I think six of them in that room, when I saw all six thumbs up, that means I was waking up at 3:00 AM on Saturday to release the code. I was very sad to see those six thumbs ups. Right. But it’s true. That environment still exists today. Maybe not so much in the same conference room and doing thumbs up, but hopefully your audience can identify, oh yeah, I totally know exactly what JJ is talking about because that same place exists. Well in the cloud native space you can’t. It’s just that simple.

Mandi Walls: Yeah, absolutely.

JJ Asghar: When you click that big green button to say, merge to main, hopefully you’ve got CI, hopefully you’ve got some level of way that that code gets pushed out immediately. That level of trust and control to the developers moving away from those VPs, especially in the larger companies that have monolithic applications, that is horrifying. When you start looking at that cultural change. All those six VPs now have to trust all of their developers underneath it that when they hit that merge to main button, their job could technically be on the line because now they just open up a security vulnerability because they put the wrong version of Log4J in there. Right. I don’t mean to pick completely on Java, but you know what I’m trying to say.

Mandi Walls: Oh, yeah.

JJ Asghar: Yeah. They would have to take responsibility because the responsibility boils up to those people, and when you tell that to your VPs, they get very skittish very quickly.

Mandi Walls: Oh, yeah. But at the same time, those change control boards, those are folks who are so removed from the actual code that’s going out and you can talk to them about what the feature is, what it does, what you think the business applications are, but that’s a product decision and not technical, and those folks aren’t going to be going through that line by line to know whether or not you are releasing something with a security vulnerability in it. They wouldn’t know anyhow, but it was just all this ceremony and interpretive dance really for all,

JJ Asghar: Thumbs up.

Mandi Walls: Yeah, man, two snaps up in a circle. It’s good to go.

JJ Asghar: Exactly.

Mandi Walls: And you can spend your whole weekend releasing it because why wouldn’t you, right?

JJ Asghar: Yeah. Oh.

Mandi Walls: Yeah. For folks out there who feel like they haven’t had that experience, if you feel like you’re missing out, you could read The Phoenix Project and The Unicorn Project because Gene mentions that process in those books as well so.

JJ Asghar: Can we take a quick aside into The Unicorn Project?

Mandi Walls: Sure.

JJ Asghar: So I recently got the audiobook. I started listening to it, and also I listened to books at 2.5 and two now.

Mandi Walls: Of course.

JJ Asghar: Or sorry, 1.5 and two. So all the voices are starting to sound the same.

Mandi Walls: Yeah.

JJ Asghar: So The Phoenix Project is coming from the side of the technical aspect of everything.

Mandi Walls: Yeah.

JJ Asghar: Is it true that The Unicorn Project is more on the PM side or did I misinterpret that?

Mandi Walls: Yeah, I think that was kind of the point. It’s a little bit more focused on the team itself and how they interact and how they get their work done and those kind of cultural things from that side.

JJ Asghar: Okay.

Mandi Walls: It’s still a little,

JJ Asghar: Well, yeah actually, unfortunately this is a audio medium, so this isn’t going to go so well to your audience members, but Mandi can see this. On the back of my laptop, just like in the, what is it called? The Phoenix Project. I got one of my cohorts on a team of mine to make what the equivalent of the rebel stickers were.

Mandi Walls: Nice.

JJ Asghar: Which is a little Bee logo that’s an avocado that we,

Mandi Walls: That’s adorable.

JJ Asghar: I sent out to everyone around the team to put on their laptops, so the idea is that we knew where to find each other so we could be proud of the work we were doing inside of IBM.

Mandi Walls: Yeah.

JJ Asghar: Because we had a little group of people up until relatively recently. Unfortunately, it’s a different story,

Mandi Walls: Yeah.

JJ Asghar: That we would build the cohesion because we were dealing with each other, dealing with the same problems, and I stole that idea straight from Phoenix Project to real life.

Mandi Walls: Yeah, it’s adorable. Oh my God. There was a conversation about spiders for some reason. Now for some reason we have a avocado with spider legs. It’s very strange, but,

JJ Asghar: Oh, yeah.

Mandi Walls: It’s in there for us.

JJ Asghar: Nice. Nice.

Mandi Walls: And party avocado.

JJ Asghar: It makes me think of Rocky from Andy Weir’s Project Hail Mary.

Mandi Walls: Oh, okay. Yes.

JJ Asghar: Yeah.

Mandi Walls: Yeah, there you go.

JJ Asghar: That’s a very good, very good story. If you have a chance to read. Sorry, I’m going to go all the way into audiobooks now because I mean, what can I say?

Mandi Walls: Yeah, we could put a spinoff of this podcast just about books. That would be great so.

JJ Asghar: There you go. Love it.

Mandi Walls: Well, are there other books that you think folks could benefit from this? We mentioned The Phoenix Project and The Unicorn Project. Those are book by Gene Kim, IT Revolution Press. Accelerates out there, has a bunch of this stuff in it as well. That was Gene and Jez and Nicole and I think John on that one.

JJ Asghar: Honestly, Goldratt’s The Goal is still absolutely relevant. It’s not themed in our ecosystem because I think it’s a car parts,

Mandi Walls: It’s Toyota, I think. Yeah.

JJ Asghar: Yeah. But if you actually go through the book, which really isn’t that long by any standard, and you can appreciate that you need to remove yourself to understand that they’re talking about manufacturing goods. Software as much as people want to think is a sign of manufacturing or knowledge work, it really truly is a mixture of both.

Mandi Walls: Yeah.

JJ Asghar: Right. It is not one or the other because it is a problem solving aspect because you have to use that part of your brain, but also you have a factory floor of getting software out the door because you need some level of standardization. Right. And if you don’t have standardization and shared contracts between teams, again, I’m really worried about your business,

Mandi Walls: Yes.

JJ Asghar: Because you need these things. The Goldratt story focuses so much more on the physical aspects of the manufacturing, but that’s still important to recognize because as technologists, which I’ve really discovered, there’s two different people in this world now, or at least the more I’ve started getting more acclimated to speaking publicly about this stuff. There are two different types of people. There are technologists and what I’ve just decided to call them are normies. There are a bunch of normies out there now.

Mandi Walls: Normies. Okay.

JJ Asghar: Right. And unfortunately, normies are the people who just all of a sudden realize that ChatGPT can give them sonnets about Kubernetes and are really excited about it, and now us techies have to figure out a way to make sure that normies don’t destroy society because what they’re going to do is force AI down paths that it’s not ready for.

Mandi Walls: Yeah.

JJ Asghar: And why am I bringing this up now, is because it turns out it’s the same kind of aspect is that the normies don’t fully understand our job as technologists is very nuanced when you start getting into this space, and unfortunately a lot of normies out there drive the monolithic application migration because they want to be cool for the technologists not realizing that we’re like, no, let me focus on the other thing over here instead of going that other direction.

Mandi Walls: Yeah. There’s kind of this sort of maybe stereotype that every technologist is really into the latest thing and is really excited and is an early adopter of absolutely everything, but there’s also this meme that sometimes pops up that’s like a normal person has a smart home, has wifi connected toaster and refrigerator, and technologists has a wifi connected printer and a gun beside it in case it makes a weird noise and nothing else is connected.

JJ Asghar: Exactly.

Mandi Walls: And like yeah, that’s little maybe a closer to the truth for,

JJ Asghar: Well, I mean,

Mandi Walls: For a lot of folks.

JJ Asghar: But Mandi, you know this, but I have no problem with telling anybody and everyone. I’m a type one diabetic. Right. And I’m on an insulin pump, and again, I realize this is audio medium, so I literally picked up an insulin pump.

Mandi Walls: He’s holding up the monitor. Yep. Little black box.

JJ Asghar: My little black pager. And people look at that and they say like, JJ, why don’t you, like I’ve heard about these things with type one diabetes to help you do your management and all that, and it’s all open source. And I’m like, that’s cool, bro. I know how open source is written. There’s no way in hell I’m doing that with my body. They’re like, really? I’m like, yeah, no. I don’t want someone to put a PR into my software that would literally kill me, right? And they’re like, oh, I guess that makes sense. I’m like, yeah. No.

Mandi Walls: No, terrifying. Absolutely, absolutely terrifying. Yeah. Yeah. Yeah. There’s a reason I’ve never worked in healthcare tech, like they’re just,

JJ Asghar: Yeah.

Mandi Walls: Yeah. That’s stuff that I just don’t.

JJ Asghar: Talk about monolithic applications too. Hey. Yeah, that’s a shot. That’s a shot over there. We actually, Mandi if you didn’t know, we had a cohort that actually came from the healthcare world actually with pumps. Again, visual medium. I’m picking up my pump again, and he told me that no, the story goes with the one that I have because of how slow iterative changes happened there, that people go there to retire in place,

Mandi Walls: Oh, okay.

JJ Asghar: Because of how slow this stuff happens.

Mandi Walls: Sure.

JJ Asghar: And again, speaking earlier about migrating a monolithic application to microservices, you would think, oh, that would be a natural progression. You want to make iterative changes, but no, in this space, making sure the application, I mean it is, it’s a bunch of applications running on a pump. You want to make sure it’s stable. You want to make sure that it sticks around and yes, it’s not sexy by any standard, but without that sexiness you get stability.

Mandi Walls: Yes.

JJ Asghar: Without stability, you get real money and you, frankly, in this case, you keep people alive.

Mandi Walls: Yeah.

JJ Asghar: Tell that to your CIO when they tell you you need to move your application from Java to Go, and by the way, you have no Go developers.

Mandi Walls: Right. Oh, of course not. No, why would you? Yeah, exactly. Or somebody has decided, like you said earlier, they read CIO magazine and they heard that like Rust is the next coolest thing.

JJ Asghar: Yeah.

Mandi Walls: It’s like oh yeah.

JJ Asghar: Oh yeah, that’s another one. Why do we have this note app over here and we should rewrite this in Rust. I’m sorry, what?

Mandi Walls: Yeah, right. Oh my God.

JJ Asghar: Yeah. Yeah.

Mandi Walls: Not that they’re all not amazing, but yeah, if your shop is geared for one set of tools and you want to change that all around, you got to start at the basics. You got to completely rehire or retrain and like,

JJ Asghar: Exactly. That’s real money too. That’s real like, even if it is easy to do the Go standard web that covers 95% of the work for the stuff you need to, if you were a Django shop, right, writing everything in Python, and then your boss comes and tells you, Hey, we need to move everything over to Go, so we’re cloud native so we can move into containers really easily.

Mandi Walls: Yep.

JJ Asghar: Now you’re running in a functional language with who knows underneath it, and not to mention also, and not to knock on Go or anything, but some of the frameworks for their web ecosystem,

Mandi Walls: There’s some weird [inaudible 00:32:47] in there.

JJ Asghar: Yeah. And some of them, that there were quote, unquote standard for a really long time, have all just been deprecated and moved on. Django’s been around for a while now and is pretty stable, and if you’re used to that kind of ecosystem and all of a sudden you choose, what is it called? The Gorilla one or Go and you got really used to building that and everything on that and found out six months later, the guy was like, yeah, yeah, no, I’m done. I don’t want to do this anymore.

Mandi Walls: Yeah.

JJ Asghar: What are you going to do for your business? Right. You got nothing there,

Mandi Walls: Yeah.

JJ Asghar: Which isn’t great.

Mandi Walls: Stranded. Absolutely. Some of the stuff ends up being a dead end and we keep coming back to Java, but it just keeps on keeping on and I’ve been in the industry long enough to have been part of the migration into Java in the first place, and it was yeah, it was a huge improvement over what we were using before. So yeah.

JJ Asghar: So hopefully out of all this conversation, your audience understands that, I realize I am very scatterbrained with this conversation because it is, it’s hard.

Mandi Walls: It is scatterbrained. There’s so much going on.

JJ Asghar: It’s a hard conversation.

Mandi Walls: Yeah.

JJ Asghar: Yeah, exactly.

Mandi Walls: Absolutely. Yeah.

JJ Asghar: So hopefully you all recognize that it’s not just cut and dry.

Mandi Walls: Yes.

JJ Asghar: I’ve had this conversation multiple times over multiple years, and I don’t know if I said this at the beginning, but I’ll say it again. I originally thought everybody should move to the cloud native. I was a zealot for a very long time, but when I saw real money being lost due to really smart people not spending time to make their business better, but moving something that is not helpful for their business into this new space, yes, they gained knowledge, but how much more that business could have done if those people were focusing on real features for the next thing.

Mandi Walls: Yeah.

JJ Asghar: Right. And that’s what you need to tell your bosses when they tell you you need to move that direction. Like, fine, yeah, let’s do it. Let’s have fun. Give me six years.

Mandi Walls: Right. Yeah.

JJ Asghar: Right.

Mandi Walls: Yes.

JJ Asghar: Yeah.

Mandi Walls: Put your MBA hats on and tell them that you do not interrupt the cash cow while it’s still putting out cash. Leave it.

JJ Asghar: Amen.

Mandi Walls: Awesome, dude. Well we’ll leave it there, right?

JJ Asghar: Yeah, it’s perfect.

Mandi Walls: Sweet.

JJ Asghar: It’s perfect.

Mandi Walls: All right dude, where can people find you if, I know you’re on the road a good bit for your job. What do you got coming up? Where are you on social media these days?

JJ Asghar: Yeah, so easiest way to find me if you actually do, and if I piqued any of your interest about any of this stuff and you want to know how to continue, never hesitate. I really do have the email address of awesome@ibm.com and I am a human on the other side and I send an email back, just prove to you that it does exist. I’ve had multiple people test it, never follow up, just like, no, this is a joke, right? And I’m like, ha, ha, ha. I do ha, ha, ha business on it, but ha, ha, ha, business as a nice little poke at that. I’m at JJ Asghar, my name. I’m pretty much everywhere if you just work that around. I spend a lot of time on Mastodon social,

Mandi Walls: Okay.

JJ Asghar: At JJAsghar@Mastodon.social just because the other thing is evil now and I just don’t care for it as much as I used to. Also, if I me on GitHub, I do have much of things on GitHub.

Mandi Walls: Awesome. Well dude, thank you so much for coming on. This has been a super fun conversation. It’s nice to talk about how the progression of things have gone over the past 10 years or so, rather than just jumping into every new thing that comes along. There’s a reason we are where we are.

JJ Asghar: Thank you for having me Mandi.

Mandi Walls: Thank you JJ. For everybody else out there, we’ll be back in two weeks with our 100th episode.

JJ Asghar: Oh, nice.

Mandi Walls: Very exciting. Yes, we are,

JJ Asghar: That’s awesome.

Mandi Walls: We’re now an aged podcast. So in the meantime, we’ll wish everybody else out there an uneventful day and we’ll talk to you later. That does it for another installment of Page it to The Limit. We’d like to thank our sponsor, PagerDuty for making this podcast possible. Remember to subscribe to this podcast, if you like what you’ve heard. You can find our show notes at pageittothelimit.com and you can reach us on Twitter at page it to the limit using the number two. Thank you so much for joining us and remember, uneventful days are beautiful days.

Show Notes

Additional Resources

Guests

JJ Asghar

JJ Asghar

If you’d like to see all his links online, please don’t hesitate to go to: https://jjasghar.me

JJ works as a Developer Advocate representing IBM worldwide. He engages in the IBM’s watsonx service, the Open Source AI ecosystem, and Kubernetes ecosystem with a focus on Red Hat’s OpenShift. He attempts to teach enterprises and users successful skills to onboard to the AI and Cloud Native ecosystem though he learned his trade in the DevOps ecosystem. If he isn’t building high level automation to streamline his work, he’s building the groundwork to prepare for that need. He’s been an avid home-labber and self-hoster of open source software for years and gives back to that community as much as possible.

He lives and grew up in Austin, Texas. A father and husband, trying to learn to balance his natural nerdiness with family life. He enjoys a good strong dark ale, hoppy IPA, some team building Artemis, and epic Gloomhaven campaigning.

He has dove headfirst into Fedora since IBM buying Redhat, but still secretly wants FreeBSD everywhere. He’s always trying to become a better web technology developer, though normally just uses bash and python to get the job done.

Hosts

Mandi Walls

Mandi Walls (she/her)

Mandi Walls is a DevOps Advocate at PagerDuty. For PagerDuty, she helps organizations along their IT Modernization journey. Prior to PagerDuty, she worked at Chef Software and AOL. She is an international speaker on DevOps topics and the author of the whitepaper “Building A DevOps Culture”, published by O’Reilly.