Podcasts

Episode #8 | Code Challenge

  • we@designindc.com
  • August 21, 2019
podcast_webgraphic

Transcript

Announcement: Broadcasting from Fairfax, Virginia. You are now tuned in to The Highlight Cast with your hosts Adam McNair and Kevin Long

Adam McNair: All right, well hello welcome to The Highlight Cast again, this is Adam McNair from Highlight joined by Kevin Long. Hello So I wanted to talk about a few things in this episode Kind of catching up on Where we’ve been so far this, uh, this summer, we have been starting up contracts. So we’ve been a little bit of everywhere. We started up a contract up in Rockville. Um, we, after a lengthy protest, were able to finally start up a contract that is out in, uh, St. Louis and, um, Illinois side of St. Louis. Illinois side. Yeah. And, um, also out west. And then we started up a task order in Santa Ana, California. So, it’s been busy already just from a startup standpoint. But, um, we had a couple other things that have gone on. So, the government is increasingly using code challenges to, um, Select application engineering vendors, and I’m thinking it’s been a couple of years. I mean, how long have you been seeing them? 

Kevin Long: Yeah, well, it was a, they were really like a novelty, uh, honestly until pretty recently, but like they just sort of popped up a couple of years ago and now, now you, you can’t, Look at, you know, GovWin without, you know, you can’t shake a stick at it without hitting a code challenge, uh, bid that’s coming out or forecast to come out. So, particularly like DHS. So, yeah, um, it was, uh, yeah, probably, what, a year or two ago, a real paradigm shift in how, how the government buys things. 

Adam McNair: Well, it makes a lot of sense. I mean, to me, I think, um, for years, it was really a You had to write twenty or a hundred pages on how you would build an application and Draw a great picture that describes 

Kevin Long: what you’re gonna do 

Adam McNair: yeah, and and the thing was also as Agile came around you started to talk about oh, we can build it faster We’ll have results for you faster and all of this is going to be available. And so finally somebody basically said Okay, go ahead and just show us. Why don’t you just do a sprint and show us what you can build? And, um, it’s like the government just stared it out at the it industry and said, I don’t believe you. Well, yeah. And, and also, I mean, like a lot of proposals, I think that’s a complicated dynamic, but the. It was very frequent that you would have stale requirements that were solutioned by a team where you wrote a bunch of stuff that then the delivery organization was not who was going to actually be involved in the solution. Yeah, 

Kevin Long: solution by team that, that isn’t even involved with who’s going to manage the work.

Adam McNair: Yeah. And so, and that’s certainly, I think it happens more at the large business size than it maybe does at the small business end of the spectrum, but it certainly happens. It was prevalent. As, as DevOps started to come out, I was like, well, you want to be able to do this very rapidly, so why don’t we just have you get in a room, and we’re going to give you a problem to solve. Um, and so we’ve done two recently. Now the first one that I was ever involved in, um, has been, before they called it a code challenge. So about ten years ago, the State Department has a name check system. And So, they required a written proposal. Yep. And an oral proposal. And an oral presentation. But what they also required was, said, okay, if you think that you can write an algorithm that will match names the way that we want it matched, go ahead and build that, and then we want you to show up And we’re going to give you a list of names. You need to be able to solve these problems over the course of the day. 

Kevin Long: List of names with various spellings, misspellings, and alphabets, yeah. 

Adam McNair: Yeah, and different, um, you know, language and ethnicity names so that there’s a lot of different complexities around it because when you start to get into cultural norms of names and, Somebody might be called two or three different things depending on the character set and the language. And there’s some languages where there’s not a character that translates into the English language. But if you’re going to do a Visa or Pat, you know, Visa lookup, then you have to translate it to English at some point. And 

Kevin Long: you need to know that this John Smith is the one you’re looking for and not that John Smith.

Adam McNair: Right. Exactly. Um, and there are even countries around the world where Essentially have approximate birthdays. They don’t really mark down the same one and so, or they don’t even track the birthday. And so they end up getting entered into systems as January 1st, but then if you do that, you now have basically a false piece of data that you could be checking against. And so it’s like, we’re sure this is the same person because their birthday is January 1st. It’s like, no. Along with 

Kevin Long: everybody else. Everybody else in the country. Born in the front half of 

Adam McNair: the year. It’s, it’s January 1st. So, the, the code challenge ended up being, um, we had a developer, a. linguist for high concentration languages, like the common languages. We had one for low density languages who was an expert, they were a PhD in languages where there’s very few people that speak them, and a database person, and uh, I got to go too. And so they took us to a room where actually the State Department was having, um, Another contractor, uh, Noblis, was the one that actually ran the process for them. So, we went to their building, and they showed us to a room and said, Here is your computer, um, here’s the list of names, here’s the questions we’re asking you. You have one day. We will come back at 5 p. m. today. And, uh, Everybody seemed very, very confident and I was very confident because everybody else was very confident because I, I was really there to try to help make judgment calls or, or whatever. Um, but not really from a technical perspective. Right. And so we get started and we got started about 8 o’clock in the morning and so by, 9 15, they built, you know, integrated the pieces they were supposed to integrate, and they said, okay, we’re going to do our first run, and there were ten names we were supposed to check against, and they loaded the list in, and the thing blue screened and crashed out, and, and, and, they said, well, that’s not supposed to happen. Okay, well, on the realm of, Gee, that’s annoying to, we think we know what’s going on to, I’ve literally never seen that happen before. What do we do now? Where are we? 

Kevin Long: Right. 

Adam McNair: And I’m like, well, if it does it again, it’ll be what it will be. It’ll be the bad one. And so they rebooted everything and they reloaded it and reset everything and they did it and it did that again. And so then I just got to watch a couple of engineers and, um, linguists. stare at error messages and code screens and try to do things. And finally at, um, probably about three o’clock, they said, well, this was my only contribution to the whole thing. I said, look, if it, if it is hanging up, can we at least introduce some sort of a, of a routine to figure out where it’s dying? And they did. And they said, well, it’s, it’s like name number four of ten. I said, okay, just set it up to skip that one. I said, well, that means we will automatically be wrong. I said, well, we are aimed at giving them no answer. So, yep, if we can answer three out of ten, that’s great. If we can answer nine out of ten, except for that one, that’s better.

Kevin Long: But if we can’t answer zero, that’s a, that’s fail. 

Adam McNair: Yeah, and so, and so we did that and um, it turns out when they, when they did kind of the lessons learned after the fact, there was a name that was I think it was something like 18 characters long with no vowels. And so the flaw in the code was that one, I guess one of the Markers of name, um, derivation, so forth, is how, how many letters occur before the first vowel shows up.

Kevin Long: Oh wow. 

Adam McNair: And it was hardcoded in as some sort of a value, but if that ended up being null, it just died. Because it was not in the logic circuit. It was a null 

Kevin Long: pointer error. Yeah. How wonderful. 

Adam McNair: And, uh, and so there was some name, and of course 

Kevin Long: And that’s why they picked that name. 

Adam McNair: Yeah, and so, when we were doing the lessons on it, they basically said, there was a really, really mean person that did this. Like, I’ve been doing name algorithms for 20 some years, which I didn’t even know was a thing at the time, but evidently that had been their whole career. And I’ve never run across a name like that. Like, this is the white whale of terrible names you could run across. Um, but, so that, that was really my, my, my first code challenge, which was Sit in a room for eight hours and then watch everybody freak completely out for several hours and have it ultimately not go very well. Um, we did one last week, I guess it was. We’ve been in enough places starting up projects. It really was last week. Wow. To me, what was interesting about that one was just the logistics of We need you and all your people, regardless of where they are, to get to Boston. 

Kevin Long: Yep. 

Adam McNair: And set up in a facility and present everything.

Kevin Long: And then provide us with output from it, and deliver it, edit it to us in a day. 

Adam McNair: And honestly, the, some of the logistical factors, I mean, I think we did a pretty good job accommodating, um, Because I think the big, the big strategies there were, let’s not, let’s try to handle all the variables we can handle. So we tried to do things like, if we have to present in this room on Tuesday, We’re going to reserve it all day Monday and sit in that room and get it set up and troubleshoot. Because there was a lot of troubleshooting. Oh yeah. The lights and the internet feed and the where people were going to sit and being able to have people see the right information on what screen.

Kevin Long: How zoomed in can you have the camera? Because the government wasn’t there. The government was. Someplace else. Yeah. Uh, absolutely. And, you know, how does the microphone pick up and, uh, how can you present to the camera where your slide deck is presenting behind you where, so you’re not talking away from the customer and yeah, I mean, all the, you know, how do you cheat out so you can get the, your best side showing all the time? Uh, yeah, it’s all the, all the ins and outs of making a. Making a theater presentation go. Plus coming up with all of the content around a DevSecOps tool chain, uh, implemented, you know, process for how, because the actual presentation was all about, you know, DevSecOps tool chain management and implementation and how you can, uh, insert new previously unknown. Uh, tools into a tool chain without breaking it. And so, it, uh, so there was, solve that problem and all of the logistics all around it. 

Adam McNair: Yeah, and, and the thing is, you know, Solving the technical challenge of how they wanted us, what they wanted us to accomplish, It seemed like, was the easiest part, which, which luckily, I mean, 

Kevin Long: it was the easiest part because we got the right people, 

Adam McNair: right? We had the right people and they knew how to do that. So luckily, the hard part for us was just the logistical part, which was not that hard. The up front part was okay. It was a little bit of effort. It was a little bit scramble, but everything went fine. Honestly, the The hardest piece of that entire thing was, one of the requirements was we had to videotape the presentation and they wanted a DVD in 48 hours. Yep. And 

Kevin Long: Who has a DVD burner even anymore? 

Adam McNair: Well, yeah, I mean, you know, because proposal stuff has gone over the years from everything has to be written, everything is printed out, everything is also submitted on CD and all this kind of thing. We’ve only done two paper produced proposals in the last two years, last two years. Do one a year 

Kevin Long: just so you don’t forget out. 

Adam McNair: Everything else is electronic. And so We get ready to do that, and it’s like, wow, they really want this in paper. Okay, I guess we send it in paper. And it’s little nuanced things. Like, we sent multiple versions of the paper copy because we didn’t know if they would have somebody there to receive it by the time they needed to. So we sent one by one carrier, another by another carrier. We sent one that was supposed to be signed for, one that didn’t have to be signed for. And the one that had to be signed for got, delivered the following day because when they showed up the first time it was too early so they didn’t, 

Kevin Long: they didn’t actually. It was four, four minutes before they would accept, uh, deliveries. Yeah. Yeah, they, they arrived at 7 56 a. m. 

Adam McNair: Yeah, so the other one that we sent got there fine, uh, but so that was one of those situations where they’re like, all right, I mean somebody might say, are you really going to send multiple versions of the same thing? Yes. Yes, absolutely we are. Um, For the 

Kevin Long: most, for the most technically sophisticated, forward leaning IT project in the DoD I’ve ever seen, paper submissions burn a DVD. Yeah. It’s amazing. 

Adam McNair: It was. And, um, and so then we end up with, okay, we want a DVD in 48 hours. And At some level, I mean, I, I don’t blame them for asking us to do these kinds of things. And it doesn’t surprise me that more agencies don’t want to because it takes all the logistics off of them. You know, they want people to review the bid. They don’t have to print it out. They don’t have to do any of that. They just hand binders out. It’s, it’s easier. And, oh, I want to keep a file, a copy of this for the file. You’ve got it on a disc. You can put it in a box. I mean, that’s, there’s, there’s something that it does make sense from that standpoint. But so they said, we want a DVD. We get, we get done with, with orals and again the um, kind of overly cautious perspective was we are going to have Two solid state GoPro cameras that we will use to film this with. And we will have an iPhone that we will take the video with. As the backup. So we get, in the room that we end up using to present, we realize that one of the GoPros doesn’t shoot a wide enough angle to get everybody. So we say, okay, we’re not going to use that one. The second GoPro, okay, that one does.

We’re going to run that and the iPhone video. Get ready to pull the video off of the GoPro and find out that It recorded eight minutes and 15 seconds of video and then 

Kevin Long: Eight minutes and 15 seconds of video of about a 45 minute presentation. 

Adam McNair: Yes, right, right. So, it locked up. So go to the iPhone and then trusty iPhone video.

There it is. Sort of. It’s, it’s perfect. It’s, it’s clear. HD. The sound is good. Everything was great. Um, I, just to take credit for it, I had the forethought to put it in airplane mode and do not disturb and everything else so it wasn’t like, you know, Apple News is alerting me about something in the middle of it or, you know, that my, uh, my FarmVille plants need to be plowed up or anything, so, um, and, You’re going old school.

Yeah, I, I, I don’t actually have FarmVille anymore. I don’t know if it exists anymore, but, but yeah, so, um, Say, okay, all I have to do is just pull this off. It says, well, go to the phone, try to go into the actual folders, just trying to get the file and get it copied off, then took, because it was a, about an 8 gig file, it then took four and a half hours to fight through the various little errors of iTunes wouldn’t back it up correctly, Yep.

Um, trying to get it copied off, thinking maybe I can sync it with Google Cloud and getting it off of there. I mean, just the whole process. But 

Kevin Long: Apple’s so easy to use. 

Adam McNair: And we knew that we had enough time because it was only, you know, we had 48 hours to get the DVD burned, but we were going to burn it here from our headquarters in Fairfax.

So it was being in Boston, getting it off of the phone, back to headquarters so it could get burnt and then FedExed back up. Um, that was by far the most stressful part, at least for me, of the entire thing. And the 

Kevin Long: lessons we’ve learned about iPhone Rejiggering. 

Adam McNair: I know, right? And, and the thing is, it almost makes me wonder if we ever have to do that again.

I don’t know if they still sell actual video cameras. Right? But, but if they do, it, it might be a worthwhile investment to just 

Kevin Long: Go to the thrift store and just like buy one of those old school VHS, you know, Everything analog. I want everything to be analog, yes. Yeah. 

Adam McNair: Yeah, absolutely. Um, may, maybe we can find one that still takes reel to reel tape.

Ooh. And then I don’t know if there’s a how love kid. I dunno if there’s a reel to reel tape to DVD conversion thing that we can buy. I mean, I’ve seen the ones that will take a, uh, VHS tape and turn it into a DVD. Right. But, um, 

Kevin Long: well submit it on celluloid. That would be amazing. 

Adam McNair: Yeah. Right. Uh, please don’t store this box in the heat.

It will, right. It will melt. Yeah. . Um, but so, so we just completed that one and, yeah. It lined up a little bit for me for some of the things that we saw from the other code challenge that we did recently is that it sounds like the logistics of the code challenge have as much to do with success as it honestly does with the technical aspect.

Kevin Long: Yeah, so absolutely. Uh, so we actually were part of a team with a partner of ours. for, uh, a contract called MDAS, which is a legitimate code challenge, uh, thing that was a little bit odd because most code challenges are like you described, Adam, where it’s, you have stuff, you have a day and you have a problem and you solve it. And that’s great because it’s, you know, it’s, it’s contained and it’s a, it’s a very finite period of time. And it doesn’t Absorb your life like a project can almost like our Boston experience did. I mean, that was, you know, we worked for two days in advance, putting slides together and getting all of the presenters ready to go. Then we were logistics here where we took all of Mary’s day. Yeah, one day to get all that put together and then travel to Boston set up. all day in rehearsal than a day to do it where it’s all of the logistics. 

Adam McNair: Yeah, but it was very much a time boxed couple of days and it, you know, the actual presentation itself was really encapsulated.

Kevin Long: It was, but this MDAS challenge where we were providing a couple of people was literally weeks where they gave a much larger challenge saying, uh, You know, use publicly available data. Go do all of these things. Here are the requirements that you have to have. Go. And, uh, it dropped and it was very rare because it absorbed multiple people, like an entire sprint team, um, for literally as much time as they were able to give. For multiple weeks, which is, which is really interesting because I mean, most, most government contractors are set up to have proposal writers to have maybe an architect who can help visualize things and put stuff together and, uh, you know, some writers, some editors and things like that. You don’t have database administrators, uh, uh, JavaScript programmers, uh, and system administrators sitting around waiting to do work. 

Adam McNair: Well, yeah, and one of the things that I’ve always seen as a, as a challenge for that is I’ve always believed that anything that you do, that you don’t do frequently, you start to get rusty at. Yep. And so proposal writers write proposals and do it frequently. So they, they, they are, they’re used to doing that. Architects end up, you know, creating solutions and they can do that frequently and they can pay attention and be involved in industry and see how that goes and do that. Developers don’t want to just sit and work on theoretical proposal type things because every one of them that I have ever talked to has always said, if I don’t stay involved in doing this for six to twelve months, 

Kevin Long: my skills 

Adam McNair: Yeah, exactly. So, so you’re right. We, you know, we, we don’t just have technical people with nothing to do. 

Kevin Long: Right. So we, so we and all of the partners, I mean, part of the biggest challenge was with this was, you know, our prime put out an all call saying, all right, these are the technologies that they say they’re going to need. Um, Because there was a written proposal to go with it. So I mean, uh, they actually did a great job managing the written proposal and then having the technical proposal or the co challenge to go with it. But we’ve now been notified here the technologies that’s going. Here’s the challenge. These are the people that we need. Who do you have right for them and all of their partners? And we were able to provide a front end person and, um, really a switch hitter, right? You know, uh, someone who is good at. Database good at, at system administration, good at, at, you know, he, he’s done Java and everything else. And so he’s not like deep expert and everything, but you can put him in a room and, and he can just be like, okay, you need this. Great. Uh, so the legit, I mean, it really is like the logistical problem is that you don’t know what the problem is going to be, but you know, you’re going to have to get, you know, A JIRA or Microsoft Teams or something set up to manage the tasks. It’s all about having Agile. You’re going to need to have laptops provisioned for that team with the right tools that are on it. And that’s not something that you can necessarily wait for things to just happen immediate, or on it, so, or once it’s issued, to, to go. Um, you’re almost certainly going to want dedicated space so that people can be co located around, around it so that everyone can be showing, you know, as part of the Agile team. Um, I know co location isn’t necessary, but when you have to get from form storm norm to perform, in about 15 minutes. Um, that’s really hard. Uh, and so if you’re not, if you’re not co located looking at each other, um, and so we, we found that it was, you know, the lessons learned, because this was our first one like this, uh, was, you know, we need to have You know, tool set stood up, have some basic, uh, you know, dev ops things put together in place to be able to spin up so that we’re not having to put the infrastructure in place around it and then have, you know, scrum masters that are like, you know, we’re, we’re going, right. Here’s what it is. And like, literally they were running sprints that were four hours long and they were doing two a day. And. To, to get through all of that for a couple of weeks and it was over a holiday and you know, some folks had to give up a holiday for that, but they, they really dove, dove right at it, but, uh, it really is, uh, I mean, it’s like I remember in high school English. They say short stories are that much more intense because you don’t have a novel’s worth of space to be able to put it in place. These code challenges are like short stories. They’re really intense. It’s very compressed. I mean, they don’t ask for as much output, but you’re gonna have to have something with data. You’re gonna have to have, well, you have to have something with data. You’re gonna have to have something with interface. You’re gonna have to stand it up on something. You’re gonna have to have. code storage and repository, you’re gonna have to have code release, you’re gonna have to have everything that you have in a larger project that you could spend weeks setting up and perfecting like that.

Adam McNair: So, how, how prescriptive was it on the exact tool chain as opposed to results driven, just show me that you can make this happen. 

Kevin Long: So they listed what tools they currently use. The irony being, Oracle was on it as a database, but then they were pretty prescriptive saying you can use anything. If you use anything that’s not open source, you’ll be penalized. Oh, wow. Right? So, uh, we didn’t use Oracle. Right? Because, you know, for obvious reasons. Um, so, yeah, I mean, it was all, all open source everything. So that means that you’re using, you’re using JavaScript, you’re using Git, you’re using, um, MariaDB, which is what they call MySQL now. Uh, and then there was, uh, actual machine learning stuff around it too. That’s what our Prime was experts on. So, I, I, I didn’t have as, as deep an understanding of those technologies. Um, but yeah, so I mean it was all Apache and, and all, all of the open source tool stack on it. So when you’re going to do A code challenge like that, how much of the code do you think is, is existing code library github type stuff versus having to custom write or does it just depend on what they’re It’s a great question, it’s in fact one that we asked, um, uh, because this was actually The, the two week code challenge was a down select for a one day code challenge, right? So more standard, so like super invasive in terms of time for things. Um, so what it boiled down to for the two week code challenge, you could use anything that you could find, but. They picked a problem. You’re not going to go out and find a solution for right and so it was Yes, you know, there’s AngularJS, you know, common things out there that you can go out and you can pull down and so you can user authentication or whatever. Oh, thank goodness they didn’t require security implementation on it because that by itself would be even bigger. It was, but like, you know, uh, single page scrollable, you know, more data as you go down and And everything through that, you know, clickable with, you know, filtering and searching. And so there’s, there’s a lot of libraries that give you the tools for it. So like, you could use a hammer, you don’t have to build a hammer, but they’re not gonna, they’re not gonna give you a, you know, a wall of studs already put in place, right? Um. 

Adam McNair: Well, I think that makes sense too, because I, I’ve had conversations over the years before about saying, you know, why does the government have so many Custom applications across it. And it’s like, well, there are some areas where there might be some business requirements that are generic enough. And now there are some platforms like a Microsoft Dynamics or a Microsoft SharePoint or there’s various other ones where you can say, yeah, this is close enough and then we can do a little bit of customization on top of this and at the end of the day this is essentially just a generic workflow or this is a generic, you know, a bit. ETL type activity where we just have to migrate some data to a different box and do something to it and it’s not that big a deal. But, you know, so many of the systems that I’ve been involved with over the years, it’s like, Microsoft doesn’t make a solution to make passports. 

Kevin Long: Nope. 

Adam McNair: Um, there, there is no, uh, application for, tracking chemical samples like most of those things, you know, just largely do not exist. And most Industries that have built their own are not in the business of selling anything to the federal government, so if you need a, if you need a prisoner management application, there are some companies that run prisons that have built one, but they’re not trying to sell them to the federal government.

Kevin Long: The federal government has different rules around everything. 

Adam McNair: Yeah, yeah. When, and so many times, I mean, so many of these applications, when you look at Foreign content and availability of the code base and everything else. Oh yeah. They’re just not going to buy it. Yeah. Especially in the cleared environments, which, I mean, essentially any federal application, even if it’s not cleared work, the application and servers end up being cleared. 

Kevin Long: Anything that has to go through FSMA is going to have issues with a lot of that stuff. But yeah, I mean, Which is why I think they’re doing more and more of these show me that you can do it and they’re they’re doing things like You know instead of just having key personnel where you look at the resume or key personnel where you have them talk in front of A PowerPoint slide you’re looking at key personnel Literally working together to solve a problem. That’s a small problem smaller problem that that you know, you have to and it shows The rigor with which you follow the process and it shows that you eat your own dog food, right? It is, uh, and honestly, it is why even after the two week sprint that we did with them, uh, with our prime, we had the same team getting back together and running one day code challenges just because you can’t, in a one day? You can’t, I mean everyone has to already know what everyone can do, it has to be a gelled team. Yeah, that makes a lot of sense. And everyone, everyone will be able to tell. I mean, and there are, there are other tech companies out there that literally run code challenges once a week. And they just do it internally just to, just to stay sharp. And it’s uh, um, It’s interesting. It’s, they’re expensive, but, 

Adam McNair: So how did the government end up measuring the goodness, if you will, of what we did? Was it, was it speed to come out of the room and say, we’re done? Was it 

Kevin Long: So, what we did for this one, since it was longer than a day, Um, they judged it by, uh, yeah, it had to be scripted deployment. What you did is you gave them a URL to a git repository with a password to get into it, and that’s it. Inside that repository, you had to have a readme file that would tell them how to get into it. Execute the scripts to spin it up and make it go. 

Adam McNair: That’s kind of fascinating. So it’s just, you had to essentially put it in a box.

Kevin Long: You put it in a box, and you tell them how to open it, and then you go away. 

Adam McNair: I mean, so it’s, it’s, it’s almost, I mean it’s the close to the same version of using like an install shield to It’s exactly what it is. Here is a COTS install ready. piece of software and then it was just their experience opening it, using it, etc. Now did they then take an underlying look at the code or use tools to scan it or do we know? 

Kevin Long: We don’t know but we had to provide all of the source code which means they absolutely could have. 

Adam McNair: Okay. So it was, uh, it was most likely a multifaceted Let’s see if it works. 

Kevin Long: If it does work, let’s see how elegant it is. Right. And if it’s elegant and it works, let’s invite you back. 

Adam McNair: Yeah. I mean that, it’s interesting and, you know, one of the other kind of thoughts I have about it is I think it is a nice way for employees across the company to be able to be involved in a proposal process that is much more tangible and realistic for them. Because when you call somebody in to help with the proposal process and say, okay, we’re talking about maintaining Application X for the government. Um, talk to me about how, if we want to transform that into a DevOps environment, talk to me about how we would do that. And usually, there’s not enough information to really have a technical person be satisfied with the answer they’re going to give you. Because they’re going to say, well, Well, 

Kevin Long: it all depends. 

Adam McNair: Yeah, I mean, well, are we going to use JIRA to track this or something else? Right. Well, they didn’t say it doesn’t matter. 

Kevin Long: Is it already under ATO? Are we allowed to do a major change? 

Adam McNair: Well, we’re not sure, uh, we’re not sure where we’re starting from. And so those are the kinds of things that, for them, make it, well, this seems like such a theoretical exercise, I mean, I guess I can give you some notes, but it really you know, seems like a confusing thing to do. When you have a code challenge, it’s, hey, how about you come over here, devote some time to this, and you get to actually make a thing. I think that’s a good idea. It was certainly rewarding for our folks. I mean, the feedback I got, folks that we had involved in it really liked 

Kevin Long: it. Yeah, oh yeah, um, uh, you know, shout out to Rob and John. Uh, Rob, Robert really, he thought it was great. And he, you know, talked with me extensively about, you know, Hey, this is where, this is what was great about it. This is how, when we’re doing this ourselves, this is how we can do it better. Uh, or this is, this is how, what we can improve on. This is what I wish I had known coming in first. And, you know, I mean, that’s, uh, you can’t hope for anything better than that coming out of really your first experience in. I guess sort of modern, modern code challenges with, with how they’re, how they’re doing this, uh, especially because it’s out of DHS, which is, you know, they, that’s how, that’s how they’re working now.

Adam McNair: Yeah, and I, I’m looking forward to, um, Having the opportunity for our team to continue to do, uh, to do more of those. We certainly, um, just of the things that we are intending on bidding on the next several months, there’s a lot of, uh, code challenge types of, of endeavors. And another thing that we end up pitching a lot are, uh, pilot solutions for customers. Absolutely. Because, um, You know, the things that we try to target a lot of times for, uh, for value for organizations is we think, you know, if you’ve got something that is a legacy system or if you’ve got something that is, um, pure customized or something that is suboptimal for what you’re trying to accomplish. Go out and do a little bit of a market analysis and see what else is out there. And very frequently there’s what seems to be a pretty good answer. But where it really kind of turns into reality is integration points are always the hard part. And everything always says that it will integrate with everything. And with enough 

Kevin Long: time, money, and holes in a firewall, it probably will. 

Adam McNair: Yeah, and that’s what it really comes down to is you start to go, well, you know, they’re just going to have to turn their firewall off and this will collect all the data you need. And it’s like, well, that, okay, that can’t happen. And then they’re like, well, if that doesn’t work, then it turns out the integration point is, it’s just going to dump it into a flat file and somebody’s going to have to manually load all this in. And you’re like, okay, well, that doesn’t work. That doesn’t work either. That doesn’t work either. So, um, so I think we are going to continue to do pilots and we are going to continue to do code challenges. 

Kevin Long: Pilots also make the change management portion a lot easier. You know, it’s a, all the paperwork and all of the cultural shock of, of something new and different. Start small and you, you know, you just turn the heat up a little bit. The lobster doesn’t know that it’s in a pot. I mean, it’s just, it’s so much, so much easier when you can do it that way. And it’s also a, a great way for the government to figure out, uh, just like code challenges are. I mean, it’s, it costs them less money to figure out if it’s actually going to solve their problems.

Adam McNair: Yeah, and the other thing is it’s, it’s also very, very, uh, concerning and intimidating and, and there’s risk to it. When you are, when you start to look at large enterprises, you know, if you’re going to build a system that’s got 25 users and you say, okay, I’m going to need, you know, a couple of licenses of this, I’m going to have to spin up a couple of server instances, I’m going to have to train 25 people on how the new app is going to work. That’s one thing. And, worst case scenario, you did it and for some reason it turns out that it didn’t work, it would be very bad, but it’s not agency level bad impact. It 

Kevin Long: doesn’t send the director to Congress to explain why it went sideways. Yeah, 

Adam McNair: but when you start to look at, okay, we’re going to roll this thing out. I mean, I know some of the different applications I’ve, I’ve worked on over the years where you have a global user base. Yeah. Um, you know, I, I did a, a deployment one time where, um, our first run of pilot, uh, locations. One was in Jamaica, one was Hong Kong, and we had one that was, I want to say, Mexico. Just the, the realization that if we were going to do 270 global sites at that scale, If we just, even though it ended up going through and it ended up working, if we had encountered the problems that we did just doing those pilot sites, if we had encountered them on a global scale, Either, I mean, you know how, how, time or money. It either would have cost a whole lot more money to stay on schedule by throwing people at it, or it would have taken forever to get it done. Absolutely. And a lot of that, it came down to, it was an integration point of a third party tool that, I mean, this is really, really dated technology at this point, but, At that point back then, the ability to insert a barcode into a PDF did not exist natively in Adobe software. And so there was a third party plug in that we had to buy to create a barcode that would then be inserted into a PDF and 

Kevin Long: bind that PDF to the barcode number so that it could be scanned and kept in PDF. Uniquely identified. 

Adam McNair: And what we found out was all of the documentation from that company about the scalability of their product was really theoretical. And so Of course it’ll work. When we used it on a machine, the developer said, Yeah, that works great. Look at it. It works great. And then we rolled it out to the location between here and Jamaica where you had Dozens of concurrent transactions. 

Kevin Long: Right. 

Adam McNair: And the server that we had that was based back here, Tipped over. The processor spiked at a hundred percent and stayed there until the motherboard temperature circuits announced that basically the CPU was 

Kevin Long: on fire. 

Adam McNair: Yeah, because that’s an email that I got. Um, my, my sysadmin called me and said, by the way, how do I charge my overtime hours? And I said, why do we have to charge overtime hours? And he says, well, I’m, I’m driving to Maryland now to go fix the server to figure out what I can do. And I said, what happened? He says, well, it, it kind of. Caught on fire because of the speck. Oh, well, what are you going to do? He’s like, well, they turned it off because it was melting. And I’m like, oh, you mean really fire? He’s like, yeah, it got hot enough that the board started to melt. And so we have to go fix that and then move it to a new box and all of that. 

Kevin Long: Wow. 

Adam McNair: And that was all based on, I mean, of the whole scale of the project, that was just such a minor nuance. I mean, this was, this was an application so that somebody could go in and make an appointment. Yeah. And so all the barcode was, I mean, just like if you were going to go to, I don’t know, DMV or when you go to You know, the 930 club or some concert venue and you want to be able to scan a ticket that says, I’m supposed to be here at a given time or the movie tickets through Fandango. All you really needed was what we now have as QR codes, which didn’t exist at that point really. And that’s all it was. So all of the information collection, form gathering, processing the payment for the appointment and getting it into the government lockbox and all of this other stuff. All worked fine. Just couldn’t put a barcode on it. The barcode that had to go onto what was essentially their ticket to show up for an appointment caused the entire thing to melt down.

Kevin Long: Literally. 

Adam McNair: And we had to end up figuring out a way to custom write that. 

Kevin Long: Wow. 

Adam McNair: Um, because we couldn’t find a third party module. back then. Sure. To do that. And of course now you can probably go out on Google or any place else or GitHub or something. You could 

Kevin Long: probably right click, insert barcode. Yeah, and 

Adam McNair: it probably exists in absolutely everything. Um, but yeah, so, so I think there’s a lot to be said for code challenges. There’s a lot to be said for, uh, for doing pilots. And, um, you know, we’re glad that we have the opportunity to do those. And, um, So that’s, that’s been a good experience and we think the employees have liked it too. 

Kevin Long: I know they have. They’ve actually commented on it. Robert’s really excited to do more. 

Adam McNair: Well, so that’s pretty much what we wanted to talk about today on HighlightCast. We will, uh, come back in as we kind of dive in. finish up the government fiscal year here. Um, there’s likely to be other things that, um, that show up. We’ve got some other ISO certifications that we’re working on that we’ll talk about in future episodes. And, um, we likely have some more travel to do as we complete the startup of some of our contracts. But, um, aside from that, we’ve got, Just a summer of activity, which is very common in government contracting, that you have kind of a flurry between, you know, summer through probably early October, and then sometimes it’ll slow down a little bit, and then, um, you know, Occasionally you get an RFP to drop right around the Thanksgiving holiday, but 

Kevin Long: Of course you do, and then after Christmas, before New Year’s.

Adam McNair: Yeah but youll get some little pockets of a little bit of slowdown between now and then, but so we’ll, we’ll get, we’ll keep everybody updated on how the summer progresses and I’ll talk to you on the next episode. Thank you. 

Announcement: The views and opinions expressed in this episode are those of the hosts and do not necessarily reflect highlight technologies and or any agency of the U. S. government.