Speaker 1: How'd you like to listen to dot NetRocks with no ads? Easy?
Speaker 1: Become a patron for just five dollars a month you
Speaker 1: get access to a private RSS feed where all the
Speaker 1: shows have no ads. Twenty dollars a month will get
Speaker 1: you that and a special dot net Rocks patron mug.
Speaker 1: Sign up now at Patreon dot dot NetRocks dot com. Hi,
Speaker 1: this is Carl Franklin.
Speaker 2: And this is Richard Campbell.
Speaker 1: We've got two special shows coming up soon, episode nineteen
Speaker 1: ninety nine and two thousand.
Speaker 2: For episode nineteen ninety nine, we're collecting people's y two
Speaker 2: k stories what did you do to help the Y
Speaker 2: two k event not actually happen?
Speaker 1: And for episode two thousand, we're going to be sharing
Speaker 1: stories about how dot net shaped your career.
Speaker 2: We have a special page at dot netroocks dot com
Speaker 2: slash voxpop where you can record messages for us that
Speaker 2: we can play on these special episodes. So tell us
Speaker 2: what you did for Y two k and what dot
Speaker 2: net means to you, and of course how long you've
Speaker 2: been listening to dot net rocks. So go do dot
Speaker 2: NetRocks dot com slash vox pop now and leave us
Speaker 2: a message before the thought of operates like whiskey left
Speaker 2: in a glass overnight. Do it.
Speaker 1: Hey, it's dot net Rocks. I'm Carl Franklin, I'm Richard Campbell,
Speaker 1: and Ed Sharbern knows here. We're gonna be talking to
Speaker 1: him in a little bit. But first we got our
Speaker 1: opening business to do. Ed, feel free to jump in
Speaker 1: if you need to. We'll do all right. This is
Speaker 1: being episode nineteen ninety seven. Let's start with what happened
Speaker 1: that year, so world events and cultural things, the handover
Speaker 1: of Hong Kong to China. In July, the UK officially
Speaker 1: transferred sovereignty of Hong Kong to China one hundred and.
Speaker 2: Fifty six years.
Speaker 1: One hundred and fifty six years.
Speaker 2: Yeah, and you remember China promised one country, two systems
Speaker 2: for fifty years.
Speaker 1: You know, promises don't mean anything on the world stage.
Speaker 2: Apparently that event had huge impact in Vancouver because in
Speaker 2: the couple of years leading up to it, a huge
Speaker 2: number because they were actually British subjects as well of
Speaker 2: well to do Hong Kong fo bought homes in around
Speaker 2: the Vancouver area.
Speaker 1: Wow, huge numbers. Wow.
Speaker 2: So drove up our housing prices. And then when the
Speaker 2: handover was kind of a non event back then. They
Speaker 2: largely didn't come until a few years later. When their
Speaker 2: kids get old enough, they're like, we want to send
Speaker 2: a broad to school. Hey, we own a house in Vancouver,
Speaker 2: so they just send their kids, you know, and a Lamborghini,
Speaker 2: you know, Creosa.
Speaker 1: Sers and I bet the Chinese restaurants got better too.
Speaker 2: Chinese restaurants are always good here. They call it Honcouver
Speaker 2: for a reason.
Speaker 3: My memory of the politics at the time is very,
Speaker 3: very rusty because I was a scrappy eighteen years old
Speaker 3: with my daughter being born that year.
Speaker 2: Yeah, you were busy. I was busy, Yeah, no kidding.
Speaker 1: Princess Diana died in August thirty first. I remember. Everybody
Speaker 1: remembers where they were when they heard that, But I
Speaker 1: was actually playing a gig in downtown Mystic, Connecticut.
Speaker 2: Did you call it out?
Speaker 1: Yeah? Yeah, yeah, you have to. You have to. Plus
Speaker 1: it was on the TV, like everybody was stunned. The
Speaker 1: Kyoto Protocol was adopted in December. That's an international agreement
Speaker 1: to reduce greenhouse gas emissions.
Speaker 2: Sorry, adopted? How optimistic of you?
Speaker 1: Yeah, well it was adopted by Kyoto, wasn't it.
Speaker 2: No, that was the location with it. It was supposed to
Speaker 2: be an international treaty that everyone.
Speaker 1: Yeah, well it was adopted at first and then it
Speaker 1: got unadopted.
Speaker 2: Well, everybody says they're going to do things, is this
Speaker 2: question of whether they do things.
Speaker 1: Yeah, Like I said, promises don't really mean anything on
Speaker 1: the world stage, do they?
Speaker 2: I would argue, And when I talk about climate change
Speaker 2: that the projection is that in nineteen ninety seven at
Speaker 2: the Kyoto curR we're last meeting, like four degrees temperature
Speaker 2: increased by twenty fifty and that's actually off the table.
Speaker 2: So we did some stuff nowhere near enough. Currently the
Speaker 2: projection is somewhere between two and a half and three,
Speaker 2: which is, by the way, still way too much. Yeah,
Speaker 2: but like we have me progress.
Speaker 1: Yeah.
Speaker 3: I was hearing something I think it might have been
Speaker 3: Neil de Grasse Tyson talking about it, and he said
Speaker 3: there was some success out of that, that it greatly
Speaker 3: reduced like the CFCs that were being put in the Ozone.
Speaker 2: Well, CFCs were largely eliminated by the Montreal Protocol in
Speaker 2: nineteen seventy seven. Although you know, the reason the Montreal
Speaker 2: Protocol went so well is because everybody could make money
Speaker 2: off of it. Every refrigerator needs to be replaced. Every
Speaker 2: you know, air condition needs to replace. Like that was
Speaker 2: very exciting for certain parts of the mark.
Speaker 3: I might I might have swapped the two in my mind.
Speaker 2: Yeah, I do. When I talk, you know, I'm talking
Speaker 2: to students about, you know, about climate change. I mentioned
Speaker 2: the Montreal Protocols obviously before they were born. But it's
Speaker 2: also like we can as a civilization get together and
Speaker 2: agree to do something and actually do it.
Speaker 3: I was born a year later.
Speaker 2: There you go.
Speaker 1: The Asian financial crisis began in nineteen ninety seven. The
Speaker 1: collapse of Thailand's currency spread all across Asia. Recessions, unrest, Yeah,
Speaker 1: not good. The Oklahoma City bombing trial verdict happened. That
Speaker 1: was two years prior, nineteen ninety five, but the verdict
Speaker 1: was handed over in ninety seven. There's this guy named
Speaker 1: Andrew Cunanan who went on a killing spree and murdering
Speaker 1: several people, including Gianni Versachi died by suicide after a
Speaker 1: nationwide man hut. Happy Happy Happy Joy Joy Joy. Mother
Speaker 1: Teresa died.
Speaker 3: Yeah, I did I catch the most somber like look
Speaker 3: back day or.
Speaker 1: Yeah, it'll look up looking up I do the bad news.
Speaker 1: Richard does the good news. Oh okay, the Heaven's Gate
Speaker 1: mass suicide. Remember the Nikes.
Speaker 2: Yeah yeah, they were web developers too, they were in JavaScript. Yeah,
Speaker 2: I'm sorry I say that. A lot of that's normal.
Speaker 1: Well, anyway, it was a you know, a cult, and
Speaker 1: thirty nine members died by drinking poison or something and
Speaker 1: going to sleep with their Nikes on. Yeah, Tiger Woods
Speaker 1: won the Masters. That's good news, the youngest Masters champion.
Speaker 1: So Mike Tyson, Vander Holyfield's ear off, jeez, Harry Potter
Speaker 1: and the Philosopher's Stone came out, and yeah, what do
Speaker 1: you got for technology and science?
Speaker 2: Let's start in space. There are how many eight Shuttle
Speaker 2: launches in ninety ninety seven, which is an unusually large amount.
Speaker 2: Three of them are shuttled mirror missions. It just happens
Speaker 2: to line up that way. You know, they're roughly every
Speaker 2: six months. So there's Atlantis in January, again in May,
Speaker 2: and then again in September. Flew all of the Shuttle
Speaker 2: MIRR missions. And that's taking crew up, taking crew down,
Speaker 2: and experiments and things like that.
Speaker 3: I was living in Florida at the time. I caught
Speaker 3: a couple of those. Yeah, from the parking lot at work,
Speaker 3: you could you could see a little flicker in the
Speaker 3: sky from where we lived, and.
Speaker 2: Then it would zip away and be gone. Right. It's
Speaker 2: like you wait a long time for about ninety seconds
Speaker 2: of wow, look at that, and then it's over. The
Speaker 2: most interesting thing on the shuttle side in ninety seven
Speaker 2: is Columbia. So Columbia and April does a mission STS
Speaker 2: eighty three, which is Space Lab mission, so they're just
Speaker 2: going up doing experiments and so forth. Columbia didn't have
Speaker 2: the power because it was so overweight to actually get
Speaker 2: to mirror, so it didn't never had that option. But
Speaker 2: there's a problem with the fuel cells on board Columbia,
Speaker 2: and they cut the mission short to only three days
Speaker 2: to turn around and come back, yeah, and then decide
Speaker 2: to refly it. So they fixed the problem, refuel and
Speaker 2: only a few months later in July fly it as
Speaker 2: STS ninety four, same crew, So three months turnaround fairly unusual,
Speaker 2: wow for shuttles. They usually take longer than that. On
Speaker 2: the Mere Space Station, they was a very im in
Speaker 2: a full year. Not a good one either, you tell
Speaker 2: me all good news. So in February a fire in space.
Speaker 2: So one of the ways that Mirror maintained its oxygen
Speaker 2: levels is they actually burned lithium per chlorate. This is
Speaker 2: something they do in submarines as well, because the emissions
Speaker 2: of burning that is straight oxygen. Wow. Well, something went
Speaker 2: wrong and it caught fire. Yeah, that's kind of kind
Speaker 2: of flammable. Yeah, it's dangerous, but they did it all
Speaker 2: the time. But something went wrong and it took They
Speaker 2: got the fire out in ninety seconds, because fire in
Speaker 2: the space station is very, very serious. Yeah, but it
Speaker 2: took minutes to get the smoke cleared out, so it's
Speaker 2: a question of whether it was breathing or not. And
Speaker 2: the reality is if they evacuated, probably never never be
Speaker 2: able to get back into it again. So that was
Speaker 2: very scary. Quickly overwhelmed in June when M threety four,
Speaker 2: which was a progressed cargo supply emission, did an experimental
Speaker 2: approach for docking, lost control and collided with the spector module,
Speaker 2: damaging the solar panels and breaching the hull of the
Speaker 2: spector module. The crew. It was a slow leak, so
Speaker 2: the crew had minutes to do something about this, not seconds,
Speaker 2: which was good because they needed to close off the
Speaker 2: hatch on the Spector module. The Spector module having four
Speaker 2: very large solar panels. The power cables that put that
Speaker 2: power into the rest of the station actually ran through
Speaker 2: the hatch, so they had to disconnect them without electrotying themselves,
Speaker 2: push them into the Spector module, and close up the
Speaker 2: hatch to maintain air pressure, which they succeeded in doing.
Speaker 2: A couple of months later in August, they will have
Speaker 2: an internal spacewalk, so they'll put on the space suits
Speaker 2: and reopened that hatch, find that the computers and things
Speaker 2: are all running fine in vacuum, and replace the hatch
Speaker 2: with one that had the power line passed through so
Speaker 2: they can hook the power back up again, and then
Speaker 2: eventually in October to another one of those internal spacewatch
Speaker 2: to add in remote control on some things and so forth.
Speaker 2: Spector will never be repressure. It used to be the
Speaker 2: place that the Americans slept in for the rest of Mirror,
Speaker 2: which of course is already two thousand and one Yanks.
Speaker 2: One more bad news on the road on the rocket side,
Speaker 2: and that is a Delta two failure. This is only
Speaker 2: I only mention this because Delta two had literally hundreds
Speaker 2: of successful launches. It was a non event for a
Speaker 2: Delta tow to fly like Falcon is today. This was
Speaker 2: a GPS satellite and twelve seconds into the launch, one
Speaker 2: of the solid rocket boosters exploded, blew through the tank
Speaker 2: and destroyed the entire vehicle. But it was almost entirely fueled,
Speaker 2: so you can find a video clip of this. It
Speaker 2: is the most spectacular failure you can imagine. Wow, And
Speaker 2: it was a reminder of why they have what they
Speaker 2: call blockhouses, which are these reinforced concrete boxes that the
Speaker 2: folks actually operating the mission work from on the pad
Speaker 2: because debris rained down everywhere it was only twelve seconds
Speaker 2: into its flight, including setting fire to cars in the
Speaker 2: parking lot. Like geez. It was quite an unusual event. Okay,
Speaker 2: some cooler stuff. The Mars Pathfinder mission launched in ninety six.
Speaker 2: It lands in ninety seven. This is the Pathfire lander
Speaker 2: which used the air bag landing systems. When they pressurize,
Speaker 2: the airbag bounced to a stop and then it unfolds
Speaker 2: itself and inside the Pathfinder lander. This so jurner rover
Speaker 2: about the size of a shoe box, not very big,
Speaker 2: but it was the first rover to ever move around
Speaker 2: another planet. Now to be clear, not the first rover.
Speaker 2: The Soviets put rovers on the Moon, you know planet.
Speaker 2: Thing supposed to operate for thirty days, lasted eighty three days.
Speaker 2: Very successful mission and started. They called the Pathfinder reason
Speaker 2: it was a path to lower cost missions to Mars.
Speaker 2: Cassini launches. This is the huge bus size spacecraft going
Speaker 2: to Saturn. Launches on a Titan four B. It won't
Speaker 2: get to Saturn until two thousand and four. Will be
Speaker 2: the first, i think, the only thing that ever orbit
Speaker 2: around Saturn and also will end the Huygens prob on Titan.
Speaker 2: And finally the comet hail Bob so Alan Hale and
Speaker 2: Thomas Bop both amateurs, find this astro this commet in
Speaker 2: nineteen ninety five and do some calculations and realize it, Well,
Speaker 2: it's a huge, absolute massive comet. Good thing he didn't
Speaker 2: hit the Earth because it got quite close. It'll be
Speaker 2: visible to the naked eye for eighteen months. He reached
Speaker 2: his peak brightness in nineteen ninety in April ninety seven. Yeah,
Speaker 2: and they calculated its orbital period at twenty five one
Speaker 2: hundred years. So hang on to your hats. It'll be
Speaker 2: back in forty three eighty five.
Speaker 1: I remember that very clearly. In fact, I was speaking
Speaker 1: at a Microsoft event in Paris and we were at
Speaker 1: euro Disney and they shut down the whole park and
Speaker 1: it was just hanging there over the roller coaster.
Speaker 2: Just to watch this amazing thing, right, it was so cool. Yeah.
Speaker 1: Yeah, And my daughter who was too got to see
Speaker 1: it at too at that point.
Speaker 2: So on the tech side of things, the web is
Speaker 2: moving along nicely. The HTPP one point one specification is released.
Speaker 2: Two guys Sergei Brandon Larry Page, who have a search
Speaker 2: engine called BackRub, register a new domain Google.
Speaker 1: Yeah, I heard of it.
Speaker 2: The Wall Street Journal introduces the very first paywall onto
Speaker 2: the Internet, and the Macromedia ships dream Weaver.
Speaker 1: Yeah, fun memory.
Speaker 2: Aquired by Adobe in two thousand and five. Intell raises
Speaker 2: the Pentium two seventy seven point five million transistors depending
Speaker 2: pro was only five point five so obviously progress. Rico
Speaker 2: releases the CDRW the rewriteable CD.
Speaker 1: Yeah, they didn't work too well.
Speaker 2: There are problems with original CD readers because the reflectivity
Speaker 2: roll this is relatively low, and eventually newer models have
Speaker 2: a thing called MultiRead so they can use CDRWS properly
Speaker 2: rewriteable one hundred thousand dollars. The I Tripoli introduces the
Speaker 2: specification eight O two dot one you know it as
Speaker 2: Wi Fi. Nobody cares until couple of years later when
Speaker 2: the Modifkai did the specification called eight two dot one
Speaker 2: one B. Yeah, it said a lot less expensive implement.
Speaker 2: That's in ninety nine really, so of win amp. It
Speaker 2: whips the lamos ass. That's Justin Frankel and Dmitri Boldiev
Speaker 2: from Nelsoft make an MP three player for your PC.
Speaker 1: The plugins were the thing I remember.
Speaker 2: Yeah, they built a real ecosystem around it was.
Speaker 1: I remember Jeff macy Lex showed me milk Drop, which
Speaker 1: was a graphical, amazing graphic plug in for win Amp.
Speaker 1: I used to It's just the coolest thing I ever saw.
Speaker 3: Used to let the visualizers run on the monitor. Super psychedelic.
Speaker 1: Yep.
Speaker 2: Just give it a look and let's see what else.
Speaker 2: A couple a couple of other good ones. Oh yeah,
Speaker 2: they'll sell the AOL for in nineteen nine nine for
Speaker 2: eighty mil which is good play because it wouldn't be
Speaker 2: worth that much later. So world done. This is the
Speaker 2: year that IBM's Deep Blue after two years of trying
Speaker 2: beats Casper off. Ye, it's an RS six thousands computer,
Speaker 2: twelve gigafaughts of processing power, which is exactly the same
Speaker 2: as an iPhone seven. A few years later, and on
Speaker 2: the Microsoft side, Visual Studio the very first version, which
Speaker 2: of course included VB five, they announced Windows ninety eight
Speaker 2: and Bill Gates becomes the world's richest man for the
Speaker 2: first time, and in probably a PR bit of a
Speaker 2: pr blender shows up on a giant screen at Macworld
Speaker 2: to announce that Microsoft will invest one hundred and fifty
Speaker 2: million dollars to Apple, and people freak out.
Speaker 1: Yeah, it was.
Speaker 3: About the same time I started building my first Windows
Speaker 3: desktop application. There you go in VB and wind forms, and.
Speaker 2: I'll mention two games, the first version of Grand Theft Auto,
Speaker 2: which is sort of an overhead perspective game which is
Speaker 2: still killed people and stole cars. And Ultima Online, one
Speaker 2: of the first graphical, massive multiplayer online games.
Speaker 1: All Right, I'm just gonna we're running out of time
Speaker 1: for the beginning here, so I'm just going to read
Speaker 1: off the top ten albums of nineteen ninety seven. Radiohead, Ok, Computer,
Speaker 1: The Verve, Urban Hymns, The Prodigy, The Fat of the Land, Puff,
Speaker 1: Daddy in the Family, No Way Out, Garth Brooks sevens,
Speaker 1: Spice Girls, Spice and that was continuing the massive global
Speaker 1: sales because it was there last year too. Andrea bos
Speaker 1: Shelley Ramanza, the Titanic music from the motion picture Celine Dion,
Speaker 1: Let's talk about love and Shania Twain come on over top.
Speaker 1: Ten movies of nineteen ninety seven, Hercules, The Fifth Element,
Speaker 1: My Best Friend's Wedding Liar, Liar, Oh my god, that
Speaker 1: was hilarious. Great movie, as good as it gets. Air
Speaker 1: Force One, Tomorrow Never Dies, Men in Black, The Lost World,
Speaker 1: Jurassic Park, and titan As. If you didn't know, Yeah,
Speaker 1: all right with that, let's roll the music for a
Speaker 1: better no framework.
Speaker 2: Awesome, man, what do you got? It's funny you were
Speaker 2: talking about.
Speaker 1: Games because I went looking in the you know, the
Speaker 1: trending repos on GitHub, and one of them is for
Speaker 1: a thing called robust Toolbox, which is a homegrown gaming
Speaker 1: engine written in C sharp, and that led me to
Speaker 1: the game that they wrote it for space Station fourteen,
Speaker 1: which is a remake of space Station thirteen, but it
Speaker 1: runs in C sharp on Robust Toolbox. So then I
Speaker 1: went looking for Space Station thirteen to see what that
Speaker 1: was all about. And it's an overhead view kind of
Speaker 1: you know, survive and thrive in space. You know, all
Speaker 1: sorts of problems happen. I don't know exactly what, but
Speaker 1: in the little demo that they were doing, there was
Speaker 1: digital blood on the floor, so something nasty must have happened.
Speaker 1: It looks fun. But the cool thing is that this
Speaker 1: Robust Toolbox, the homegrown engine written in C sharp that
Speaker 1: was primarily for Space Station fourteen, is released as its
Speaker 1: own thing. So spetistration. Yeah, cool. So that's what I got.
Speaker 1: Who's talking to us today?
Speaker 2: Richard grabbed a commental for show nineteen ninety one, The
Speaker 2: One We Do Andrew Murphy talking about leading teams in
Speaker 2: the time of AI. I got a lot of reaction
Speaker 2: on this show, and I'm going to read one of
Speaker 2: the comments. Here's from Adam right. He says, I'm in
Speaker 2: the middle of listening to this episode and I feel
Speaker 2: a bit conflicted. It's possible on going through the grief process.
Speaker 2: As Andrew mentioned, there are quite a few predictions about
Speaker 2: the future based on this arguably short time frame in
Speaker 2: which these AI tools have been somewhat useful. Richard asked
Speaker 2: at one point, who are the people that aren't adopting
Speaker 2: this technology yet? And I would suggest that it's the
Speaker 2: late adopters. There are sets of developers and companies that
Speaker 2: don't hop on every band in the first few years
Speaker 2: of its use. It takes time for new tech to
Speaker 2: be overwhelmingly adopted, absolutely true. Aside from that grip, there's
Speaker 2: likely another grip that cares about the potential and actual
Speaker 2: sociological impacts of technology in the real world. You've seen
Speaker 2: the price of computer components lately. One of my favorite
Speaker 2: YouTube channels, Gamers Next is freakily calls out the RAM
Speaker 2: shortage as being due to the reservation of silicon waivers
Speaker 2: don't exist to be used in GPUs that also don't
Speaker 2: exist for AI tosay centers that don't exist. I think
Speaker 2: it's undeniable that developers using this technology are literally training
Speaker 2: their own replacement. Maybe in some sense it's more like
Speaker 2: sharpening an axe, but I think more of us should
Speaker 2: be at least concerned about where the acts will land.
Speaker 2: The best hope for the technologies. Rigidal lid out in
Speaker 2: one of his talks. Is the models get smaller and
Speaker 2: more specialized and work well enough that we put more
Speaker 2: trust in them. In my opinion, that would be the
Speaker 2: time when mass adoption would be warranted. Perhaps it will
Speaker 2: take the current enthusiasts working out the flaws. Do you
Speaker 2: already get there? Though? Thanks for the thought promoting episode.
Speaker 2: I mean, it's a whole conversation coming around now about
Speaker 2: this idea that the job wasn't to write the code anyway,
Speaker 2: it was to provide solutions to customers. And you know,
Speaker 2: the solution is much about data collection, is it is
Speaker 2: about implementation, so that we have tools that will do
Speaker 2: implementation is an important part of the equation. It just
Speaker 2: makes us all the faster.
Speaker 1: And also guiding of the AI. You know that to
Speaker 1: achieve the goal that the customer wants, that's not an
Speaker 1: easy task.
Speaker 3: I think we're also seeing it drive demand. So when
Speaker 3: demand increases, how much software hasn't been built because the
Speaker 3: barrier was too high. Yeah, So now we're seeing you know,
Speaker 3: more work because there's more demand. So that's keeping things
Speaker 3: a little bit more stable than people predicted.
Speaker 2: I mean, certainly from the machine learning perspective, this was
Speaker 2: true for radiologists you know when the first image models
Speaker 2: really got popular, and there's like seven hundred proved by
Speaker 2: the FDA now for doing recognition. I think even hinted
Speaker 2: in self count said you're a fool if you're a radiologist.
Speaker 2: That job is over. And in reality, of course, a
Speaker 2: demand for medical energy is gone through the roof, and
Speaker 2: the demand for rideologists has gone through the roof, right
Speaker 2: because they can move faster with these new tools and
Speaker 2: there's far more people to test. So I think that
Speaker 2: cycle is going to go on for quite some time.
Speaker 2: And it just seems like, you know, history doesn't necessary
Speaker 2: repeat itself, and I'm talking about the history of like
Speaker 2: five years ago, but it does rhyme, and I think,
Speaker 2: you know, you're onto something there to ed with. There
Speaker 2: is increasing demand. There's more kinds of software that need
Speaker 2: to be built. I mean, get into this sort of
Speaker 2: sense of are we all going to surround ourselves with
Speaker 2: our own custom software? Because I know a lot of
Speaker 2: developers are going to get with these tools, that's what
Speaker 2: they're doing. I already do that, and where the developers go,
Speaker 2: others go.
Speaker 1: Yeah.
Speaker 2: So Adam, thank you so much for your comment. In
Speaker 2: to copy of music coba Is on its way to you,
Speaker 2: and if you'd like a copy of music Cobe, I
Speaker 2: read a comment on the website at dot net rockst'll
Speaker 2: comment on the facebooks. We publish every show there, and
Speaker 2: if you comment there and ever read it on the show,
Speaker 2: we'll send you copy of music Cobo.
Speaker 1: And if you can't wait for that, go to music
Speaker 1: tocode by dot net and you can get the whole
Speaker 1: collection in MP three wave and flat formats. Okay, we've
Speaker 1: wasted enough time, and it's not a waste of time,
Speaker 1: of course, let's bring on Ed. I'll officially introduce him.
Speaker 1: Ed Scharboneau is a principle developer advocate for Progress Software,
Speaker 1: a ten times Microsoft MVP, and video author on dome Train.
Speaker 1: Ed works at the intersection of modern dot net developer
Speaker 1: experience and artificial intelligence at Progress I'm Sorry, Richard Progress
Speaker 1: Nice Ed helped Ed help drive early work around Blazer
Speaker 1: and the creation of telleric for TELLERICUI for Blazer, helping
Speaker 1: bring modern dot net web development to a broader developer audience.
Speaker 1: More recently, his work has focused on AI and agentic
Speaker 1: RAG systems, where he helps guide product strategy, evaluate emerging technologies,
Speaker 1: and leads development of developer tools that bring advanced AI
Speaker 1: capabilities into the dot net ecosystem. I can't wait to
Speaker 1: hear what you got to say.
Speaker 3: Ed.
Speaker 1: Welcome, Thanks for having me.
Speaker 3: Appreciate you guys having me on. I've been a longtime
Speaker 3: listener and we've all bumped into each other a few
Speaker 3: times and it's been a pleasure.
Speaker 1: Sure, yeah, sure, you.
Speaker 2: Brought me a lovely bottle of whiskey. I think it
Speaker 2: was last year actually from the was it red ry?
Speaker 1: Well?
Speaker 3: That was a JEP decreed red bloody, bloody butcher corn,
Speaker 3: red corn. Yeah, it was a weeded bourbon. But it's
Speaker 3: absolutely one of my favorites. And it's gotten. It's got
Speaker 3: an odd nose on it. It's it smells a little
Speaker 3: cologne like.
Speaker 2: It's threatening on the nose. But boy, was good in
Speaker 2: the mouth. And I don't have it anymore. I drank it.
Speaker 1: Okay, that's the best testimony right there.
Speaker 2: Yeah, all right, what have you been working on? My friend?
Speaker 2: You've been up to stuff. I get that.
Speaker 3: I've been been a busy, busy person, so I I
Speaker 3: love to be on the bleeding edge of of all
Speaker 3: tech all the time. It's, you know, part of being
Speaker 3: a developer advocate I think is keeping your ear to
Speaker 3: the ground. But over the years, I've done a lot
Speaker 3: of a lot of technical sessions, and I love this
Speaker 3: quote by H. G from War of the Worlds that
Speaker 3: I that I always use that kind of describes what
Speaker 3: drives me to keep up with all of these technologies.
Speaker 3: And I don't know if you're familiar with the beginning
Speaker 3: of War of the World's, but it's with infinite complacency.
Speaker 3: Men went to and fro over this globe about their
Speaker 3: little affairs, affairs, serene in their assurance of their empire
Speaker 3: over matter, and the bit about complacency always got me.
Speaker 3: It's like, even when HD Wells was writing about this,
Speaker 3: you kind of realize that people go about their day
Speaker 3: and put their head in the sand, and we get
Speaker 3: in these patterns of doing the same thing day in
Speaker 3: and day out, and we might lose sight of things
Speaker 3: that are happening around us that we should be watching
Speaker 3: out for. And with my career, it's always been what's
Speaker 3: the technology that's going to come take my food away?
Speaker 1: Right? Yeah, what's the.
Speaker 3: Next big thing that's coming. I need to pay attention to.
Speaker 2: Who's going to move your chee?
Speaker 1: That's it.
Speaker 3: That's kind of what's driven me over the year. So
Speaker 3: I think that quote I started using when responsive Web
Speaker 3: came out and I started talking about responsive web and
Speaker 3: how people needed to watch out for the mobile factor
Speaker 3: of doing web development and everything's going to need to adapt.
Speaker 2: Yeah, the mobile funder, it wasn't just a mobile finder,
Speaker 2: it was a tablets. We were happily doing our m
Speaker 2: dots back in the day, and then the flip and
Speaker 2: iPad comes out. You're like, what a third factor?
Speaker 3: Oh no, now we can't predict the screen size. And yeah,
Speaker 3: I tried to get ahead of that trend at the
Speaker 3: company I was working at at the time, and we
Speaker 3: were like one of the first industrial manufacturers that had
Speaker 3: a web presence that worked on any screen size. Nice,
Speaker 3: and it caught some attention because of that fact. There
Speaker 3: were plenty of you know, marketing sites that were starting
Speaker 3: to do this type of thing, but nobody in the
Speaker 3: sector I was in was paying attention to it.
Speaker 2: Yeah. So the oldest media query setups I ever saw
Speaker 2: was Audi. Audi was on it really early on. It
Speaker 2: used to be my went I talking points. It's like
Speaker 2: look car company.
Speaker 3: So I've always always kind of been a full stack dev.
Speaker 3: But a lot of the stuff that I've done publicly
Speaker 3: as a developer advocate has always been UI facing. So
Speaker 3: I've done a lot of a lot of web development,
Speaker 3: a lot of UX talks, and a lot of UI stuff.
Speaker 3: But you know, I've always been a full stack dot
Speaker 3: net dev prior, so you know I would own the
Speaker 3: whole thing. So from time to time you'll see me
Speaker 3: talking about you know, odd odd back end things like
Speaker 3: the internals of Enity framework and that type of thing.
Speaker 1: Hey, why don't we take our break now and then
Speaker 1: get into retrieval augmented generation. Is that a good idea?
Speaker 1: All right, sure, we'll do that. We'll be right back
Speaker 1: after these very important messages, and we're back. It's dot
Speaker 1: net ROX. I'm Carl Franklin, That's Richard Campbell, and that's
Speaker 1: Ed Shaberneau. We're about to dive into this topic here
Speaker 1: of RAG in agentic RAG. So let's just define it.
Speaker 1: I mean, I'll take a stab at it. I haven't
Speaker 1: used it yet, but from what I understand, it's taking
Speaker 1: an existing LLM and adding data to it and coding
Speaker 1: it in a database so that it can be retrieved.
Speaker 1: Data can be retrieved from it and you can think
Speaker 1: of it like taking you know, user manuals, help files,
Speaker 1: documents about your company, anything that you would want to
Speaker 1: be able to look up later in index. Is that
Speaker 1: a good It's.
Speaker 3: A pretty good primer. So when we talk about retrieval
Speaker 3: augmented generation, we're talking about augmenting the context of the
Speaker 3: model that you're working with and injecting some information and
Speaker 3: then reshaping the prompt based on that information. So there's
Speaker 3: there's actually a couple of different processes that are used
Speaker 3: within a RAG system. And it's kind of interesting because
Speaker 3: the whole RAG part, the thing that gives it its title,
Speaker 3: is only just a small piece of it. So, uh,
Speaker 3: the RAG concept on its surface is you know, injecting
Speaker 3: that that context for you. But the retrieval part has
Speaker 3: a lot of steps to it, and in order to
Speaker 3: get retrieval, you have to have something to retrieve, So
Speaker 3: there's a lot of a lot of different subprocesses in here.
Speaker 3: So on the retrieve side of it, you have a database,
Speaker 3: and there there's quite a few different vector databases out
Speaker 3: there that that can be used for this. But with
Speaker 3: the product that I work on, we use the Nuclear dB,
Speaker 3: which is a database that we own it's an open
Speaker 3: source database, but it's our vector database, and you want
Speaker 3: to store your documents in that database and they get vectorized.
Speaker 3: So what that means is when we feed the documents
Speaker 3: into the system, those documents are going to be broken
Speaker 3: down into bite sized pieces so we can manage the
Speaker 3: size of those documents better. So they get chunked, and
Speaker 3: those chunks get broken down and then sent through an
Speaker 3: embedding model. So the embedding model is going to take
Speaker 3: those chunks of text and is going to look for
Speaker 3: the semantic meaning in that chunk of text and store
Speaker 3: that semantic meaning as a number, So that's your vector
Speaker 3: that you can then search on. These vector searches are
Speaker 3: very powerful because they search on meaning. It's not like
Speaker 3: a keyword search. You can find things that are relative
Speaker 3: to the thing that you're searching for. One of one
Speaker 3: of the easy ways to describe the semantic searches. If
Speaker 3: you are storing things like milk and cheese in your
Speaker 3: database and you search for dairy, you should be able
Speaker 3: to pull back those items that are milk and cheese
Speaker 3: because they are semantically similar. But what's really interesting about
Speaker 3: the algorithm for that is the cosine similarity. You can
Speaker 3: invert that as well. So if you say, what you know,
Speaker 3: I want the opposite of dairy, you might get something
Speaker 3: like capsaicin. Right, So you have hot peppers and things
Speaker 3: like that. So if you think about it in a
Speaker 3: larger query, you might say, what, you know, what can
Speaker 3: I use to put out this fire in my mouth
Speaker 3: after I've eaten hot peppers? And the answer might be
Speaker 3: to drink milk because that is the opposite of the
Speaker 3: pepper and it will put out the fire. So it's
Speaker 3: a really powerful search tool. And when we run that
Speaker 3: search and the vector database comes back with an answer,
Speaker 3: it retrieves that chunk of text and it augments the
Speaker 3: original question and then feeds that to a large language
Speaker 3: model to generate a new answer. So you're taking the
Speaker 3: context and you're expanding it with this knowledge that you've
Speaker 3: just retrieved from your vector database. And that's where that
Speaker 3: term rag comes from.
Speaker 2: So what vector databases are we talking about here? As
Speaker 2: a particular product like ionomatically think something like elastic, But.
Speaker 1: I was saying that they have their own so you guys.
Speaker 3: Yeah, we have one called the Nuclear database, right, And
Speaker 3: the reason it's called nuclear dB is because the company
Speaker 3: that created it was Nuclear, and Progress acquired that company
Speaker 3: last year and we named the product Progress agentic RAG.
Speaker 3: So you will see the term Nuclei used within the
Speaker 3: APIs and things like that in the database itself because
Speaker 3: it originally came from the company name. But yeah, we
Speaker 3: use the nuclei a dB for our database.
Speaker 1: Okay, So is there any limit to the size of
Speaker 1: data or documents that can be stored or is it
Speaker 1: just limited by disk space?
Speaker 3: So this is one of those situations where our product
Speaker 3: actually has has an advantage. So we actually have had
Speaker 3: customers with millions of documents in their database. So it's
Speaker 3: a RAG as a service. So you're talking about something
Speaker 3: that you're deployed to in the cloud, so you can
Speaker 3: do a hybrid mode on prem things like that with
Speaker 3: it as well, but generally people use it in the cloud,
Speaker 3: so you're really just limited by the cloud itself, which
Speaker 3: you know, we can just keep adding storage too, so
Speaker 3: the storage can get quite large. There are other ways
Speaker 3: to do RAG. There's like open AI for example. You
Speaker 3: can do some file activities with and I think their
Speaker 3: limit is like ten k of files, so ten thousand
Speaker 3: files and then it's maxed out with our solution like
Speaker 3: I said, you can. You can just keep scaling. And
Speaker 3: what's interesting about the architecture that we're using is it
Speaker 3: takes a lot of the complexities out of RAG. Jeff
Speaker 3: Fritz and I were having a conversation on one of
Speaker 3: his shows the other day and I was telling him,
Speaker 3: you know, the best way that I like to explain
Speaker 3: this is, have you ever have you ever rolled your
Speaker 3: own off system?
Speaker 2: Only? Yeah, I'll do that again.
Speaker 3: And it was a mistake, all right. There are plenty
Speaker 3: of tools out there that will let you build RAG
Speaker 3: systems from. There's a lot of moving pieces. You've got
Speaker 3: large language models, embedding models that you have to choose from.
Speaker 3: You have to choose a database, you have to have
Speaker 3: a system to ingest data, and you have to have
Speaker 3: a storage place to store that vector data. And you
Speaker 3: can go off the shelf and get solutions from every
Speaker 3: big tech vendor out there for each of those pieces
Speaker 3: and glue them together and make your own solution. But
Speaker 3: there's a lot of complexities to each one of those pieces,
Speaker 3: and unless you have a data scientist or two on
Speaker 3: your team, it's probably just the better idea to go
Speaker 3: with something that's already been prescribed. So that's something that
Speaker 3: we do well with this product. It's a RAG as
Speaker 3: a service platform with a lot of different ways to
Speaker 3: ingest data. So you can ingest PDFs, word documents, text data,
Speaker 3: all sorts. But you can also do things like MP
Speaker 3: four five files, m P three's. So we have providers
Speaker 3: for all sorts of data types that's going to take
Speaker 3: that data into the system and vectorize it so you
Speaker 3: can perform not just search, but uh, you know, intelligence
Speaker 3: from that data.
Speaker 1: All right, So you said before that most people are
Speaker 1: going to use it in the cloud. But you know,
Speaker 1: one of the one of the great things about using
Speaker 1: RAG systems is they that you can vectorize your your
Speaker 1: sensitive documents. You know that should be kept on premises.
Speaker 1: And so would a great big o Lama server be possible,
Speaker 1: be possible to use with this product.
Speaker 3: Yeah, you could do hybrid, So you can you can
Speaker 3: do hybrid, or you can do it fully on prem
Speaker 3: if you wanted to.
Speaker 1: Now what does hybrid look like?
Speaker 3: So you could hybrid, you would you would take your
Speaker 3: data and store it locally, okay, so you could host
Speaker 3: just the database portion of it and then you could
Speaker 3: run the models in the cloud. Okay, so you have
Speaker 3: your choice of models as well. So that's another aspect
Speaker 3: of this being an entire solution that's end to end.
Speaker 1: Is uh.
Speaker 3: There there's actually a back office for it that you
Speaker 3: can log into and then you can control various aspects
Speaker 3: of the product. So I can go into my back
Speaker 3: office and I can choose all the models, you know,
Speaker 3: from all the models that are out there, from Azure
Speaker 3: to AWS and Gemini and all of those things. And
Speaker 3: I can provide custom endpoints and keys if I wanted
Speaker 3: something that's completely customed and hosted by my you know,
Speaker 3: my own servers.
Speaker 1: So yeah, that was that was going to say you
Speaker 1: could just run it all locally if you wanted to,
Speaker 1: with something like a Lama, right.
Speaker 3: Yeah, So it's it's plug and play with with whatever
Speaker 3: you would like to bring to it.
Speaker 1: Cool.
Speaker 3: So it is extension extensible and modular, and like I said,
Speaker 3: you could you can fully take it offline or you
Speaker 3: can host the pieces that you want in the cloud.
Speaker 3: So it does have a hybrid aspect to it as well.
Speaker 1: And this is a free tooled is it all encapsulated
Speaker 1: in nuclear dB or what is it?
Speaker 3: It is a commercial product, so it does have a
Speaker 3: license involved with it. It is open source.
Speaker 1: But so RAG is a service. Is the commercial product? Yeah,
Speaker 1: it's called nuclear dB. Is the devector database part of it? Correct?
Speaker 3: Yeah, The product itself is called Progress agentic RAG. The
Speaker 3: database portion is nuclear dB, and the RAG is a
Speaker 3: service is is a commercial product. There there are open
Speaker 3: source all of it is open source though it is.
Speaker 3: All of the code is up on GitHub and various.
Speaker 2: Repos But that doesn't mean, you know, it's not trivial
Speaker 2: to operate this stuff. Is the reason it's a service.
Speaker 3: No, Right, So you know, just just the data gestion
Speaker 3: alone is a big portion of it. Like I said,
Speaker 3: it takes in all of these different sources of material.
Speaker 3: If you were to try to roll something like this yourself,
Speaker 3: you know, this is something that demo's great, you can
Speaker 3: build over a weekend type of a thing, but then
Speaker 3: when you try to scale it, you know, as soon
Speaker 3: as you know, somebody from upper management's like, all right,
Speaker 3: now we want to ingest some MP three's and then
Speaker 3: this video would be really nice, and then you're you're
Speaker 3: off trying to figure out solutions to ingest that chunk
Speaker 3: it up and get into your vector database. Right. Another
Speaker 3: thing that this does is you can scrape web content
Speaker 3: very easily. I can put in a site map and
Speaker 3: it will take in that entire site map, And I
Speaker 3: can also specify selectors like CSS selectors and XML selectors
Speaker 3: so that it only ingests the pertinent information. Then you're
Speaker 3: not re ingesting like a bunch of menus and footers
Speaker 3: and all that stuff to kind of cloud up your data.
Speaker 3: So there's a lot of infrastructure built on just the
Speaker 3: ingestion process alone. And then also you probably noticed it
Speaker 3: has the word agentic in it. It's not just a
Speaker 3: regular RAG system. There are agents that are working alongside it.
Speaker 3: One of those types of agents is on the ingestion side,
Speaker 3: So as you ingest things, you can assign agents to
Speaker 3: do tasks with that data. So these are kind of
Speaker 3: like task runners that might summarize or categorize or tag
Speaker 3: and do various activities on the data as it's being ingested,
Speaker 3: and stores that metadata in the database as well. So
Speaker 3: one of the interesting things that we have a demo
Speaker 3: of is we ingested a bunch of financial documentation from
Speaker 3: you know, the big Fortune five hundred companies. So we
Speaker 3: got their annual reports in their m PDF format, pulled
Speaker 3: them in ingested those and then there's an agent that
Speaker 3: runs on that PDF, and it asks the large language
Speaker 3: model to inspect the PDF for data that would go
Speaker 3: good in charts, and it extracts from that unstructured data
Speaker 3: into a format that is easily easily chartable in bar charts.
Speaker 3: And then when you retrieve that information out, you can
Speaker 3: just ask it for structured data and you don't have
Speaker 3: to do any kind of special plumbing or anything. You
Speaker 3: just give the large language model the shape that you
Speaker 3: want out, and it recognizes that it has this jacent
Speaker 3: data that's chartable in its database, and it pulls that
Speaker 3: out and puts it in your structured data for you.
Speaker 3: So now you've got these charts that are displaying on
Speaker 3: screen that were generated by an agent just by ingesting
Speaker 3: a PDF document that had no structured financial data in it.
Speaker 3: It was just data that was pulled out. And what's
Speaker 3: nice about doing it at ingestion time is you don't
Speaker 3: have to keep repeating that over and over again. You
Speaker 3: know it's stored in the database now, so you don't
Speaker 3: have to run that generation every single time somebody retrieves
Speaker 3: charting information.
Speaker 1: What are some of the things that can go wrong
Speaker 1: with RAG systems?
Speaker 3: So the search portion of it is difficult. The search.
Speaker 3: When we talk about vector search, I gave you the
Speaker 3: very simple example of you know the dairy and whatnot,
Speaker 3: but would you search in vector database? The vector search
Speaker 3: is very much a semantic search. So when you phrase
Speaker 3: your question, if that question isn't phrased that the same
Speaker 3: way the data is written and ingested, the semantic meaning
Speaker 3: might be different, but it still might contain the answer
Speaker 3: that you want. So if you try to roll your
Speaker 3: own you're just using an off the shelf semantic search
Speaker 3: and nothing else, you might not get really great search results.
Speaker 3: You might might let a lot of answers slip through
Speaker 3: the cracks.
Speaker 2: Interesting because you know, one of the things we talked
Speaker 2: about here was that a whole sort of milk and
Speaker 2: cheese versus dairy thing like this is supposed to be
Speaker 2: the strength it is.
Speaker 3: But depending on how you phrase that question. You know,
Speaker 3: I phrased it as what might help, you know, put
Speaker 3: out the flames of a hot meal or something like that.
Speaker 3: For a rudimentary vector search, that probably wouldn't return the
Speaker 3: results we want For a system like this, we we
Speaker 3: wanted to have that in depth knowledge to be able
Speaker 3: to pull those results back. So the search that we
Speaker 3: implement isn't just a standard vector search. It's actually a
Speaker 3: multi part search. So we use a keyword search on
Speaker 3: top of the vector search, and then we also implement
Speaker 3: something called named entity record nition, and this gives us
Speaker 3: a knowledge graph. So knowledge graph is really important in
Speaker 3: a system like this because it associates other concepts that
Speaker 3: a large language model might not be able to infer
Speaker 3: on its own. So for example, it might have named
Speaker 3: entities in it, like a company, a person. You could
Speaker 3: think of it that way as other nouns that it
Speaker 3: is associating with the data that's there. So you might
Speaker 3: have like a company sells a product, and you might
Speaker 3: have the company name and the product name in there.
Speaker 3: And it's kind of similar in a way to relationsships
Speaker 3: in a relational database, but instead of tying things together
Speaker 3: by a key, you're tying them together by a concept.
Speaker 3: So you might have a concept of the company progress
Speaker 3: and it sells the product TELLERQUI for Blaser, and the
Speaker 3: thing that connects those two dots is the selling portion
Speaker 3: of it. So this company sells X. And then you
Speaker 3: may have a query later that you're trying to find
Speaker 3: out what companies have products that compete with this product,
Speaker 3: and since it has that knowledge graph built in, it
Speaker 3: can reverse that concept and figure out what other companies
Speaker 3: it has in its database that have similar products, where
Speaker 3: a basic semantic search probably wouldn't pick those things up.
Speaker 3: So this helps with things like people in places, locations,
Speaker 3: all of that type of thing. All those types of
Speaker 3: things can get connected through the knowledge graph, and that
Speaker 3: really increases the accuracy of the search, so you're going
Speaker 3: to get a lot better results.
Speaker 2: Do you get into situations where stuff coming out of
Speaker 2: the vector base is conflicting with the large language model,
Speaker 2: like does it become a competition for accuracy or proper responses?
Speaker 3: So you have full control over the large language model
Speaker 3: and the prompting, but by default the prompts don't allow
Speaker 3: the training data to conflict with the data that's being
Speaker 3: pulled from the vector database. So there's some guardrails that
Speaker 3: are already in place to help prevent this sort of thing.
Speaker 3: If you go creating custom prompts, you might be able
Speaker 3: to trip that up a little bit, but we yeah,
Speaker 3: so we do have some things in place already for
Speaker 3: you to try to to eliminate that. So generally if
Speaker 3: you ask a question to progress agentic RAG and it
Speaker 3: doesn't have that data in its storage anywhere. So it
Speaker 3: goes into the vector database that can't find anything. It
Speaker 3: may have plenty of stuff in training about it, but
Speaker 3: it doesn't have documents to support it. And that's something
Speaker 3: we probably should touch on to.
Speaker 1: Another reason to use a hybrid model. Keep your data.
Speaker 3: Yeah, it'll come back and it'll say, you know, I
Speaker 3: don't have a context to provide an answer for that,
Speaker 3: rather than pulling hallucinating something, right, And hallucination is a
Speaker 3: big part of this as well, right, So with so
Speaker 3: that's something to be argued about large language models. Actually,
Speaker 3: I always say that hallucinations. One person's hallucinations is another
Speaker 3: person's creativity. So if you want.
Speaker 2: Good line, I don't know that it's true, but excellent line.
Speaker 3: If you want to tell us creative story, you know
Speaker 3: you might might want to, you know, create a fictional story.
Speaker 3: With a large language model, you want to hallucinate as
Speaker 3: much as possible. You don't want it to ground itself
Speaker 3: in reality. But if you are asking it facts about
Speaker 3: data that you've ingested, you don't want it to do that.
Speaker 3: You want it as grounded as possible to hallucinates least
Speaker 3: as it can. So with progress agentic RAG in general
Speaker 3: RAG systems, you want citations, so that is something that's provided.
Speaker 3: So when you do a vector search, it will pull
Speaker 3: a bunch of information up and it may not even
Speaker 3: use that information in the final answer. So what you
Speaker 3: end up with is a list of resources. These resources
Speaker 3: are things that hit the search but might not have
Speaker 3: been relevant enough to include in the answer. And then
Speaker 3: on top of resources, you'll have citations, and citations are
Speaker 3: the resources that did get used in the answer. And
Speaker 3: then you will also get back information about what string
Speaker 3: of text was used in that answer, so it'll give you,
Speaker 3: for example, it pulled the answer from this pdf, and
Speaker 3: it it's coming from this paragraph in this pdf, so
Speaker 3: you can really trace back, you know, the resource.
Speaker 2: And that's I think what people want is like when
Speaker 2: you when the offer admits it a definitive statement of
Speaker 2: some kind, it's like, here's where that was said. I'm
Speaker 2: not fabricating this. That's powerful stuff.
Speaker 3: And all of the quality of metrics are driven by
Speaker 3: the agentic framework that's inside of the system as well.
Speaker 3: So I mentioned the agents are there and multiple capacities.
Speaker 3: One of them is for something that we call remy,
Speaker 3: which is the system that continuously monitors the information and
Speaker 3: the queries that are being ran in the system, and
Speaker 3: these are weighing in the groundedness the accuracy of the
Speaker 3: information there, and it's it's displayed to you on a
Speaker 3: dashboard with a graph that shows where the those UH
Speaker 3: scores are being hit.
Speaker 2: Now, this seems like the thing you'd have to build
Speaker 2: yourself if you're doing right from scratch. Absolutely.
Speaker 3: Yeah, if you want to validate how your system is working,
Speaker 3: you're gonna have to come up with a bunch of
Speaker 3: evaluators and you're going to have to have those evaluators
Speaker 3: continuously running against your data as you ingest new data
Speaker 3: and as users are hitting queries on it. Yeah, so
Speaker 3: that's that's part of the system.
Speaker 2: I see a lot of value in that, just like
Speaker 2: there are patterns to how you do those evaluations.
Speaker 3: So you've got being able to.
Speaker 2: Get them ready to go for you.
Speaker 3: Difference, You've got context relevance, which is how relevant your
Speaker 3: information was based on the query. You've got the answer relevance,
Speaker 3: and it's how how close was the AI generating an
Speaker 3: answer that's quality, and then groundedness is all the context off.
Speaker 2: As soon as you're ingesting a bunch of data from
Speaker 2: a bunch of places, like, you're going to get conflicting results,
Speaker 2: and so it's like, what does the tool do when
Speaker 2: present when it retrieves two facts that are not the
Speaker 2: same about the same query, right, So whatever tooling I
Speaker 2: have to help surface that problem like that, that's what's
Speaker 2: going to get you to travel here.
Speaker 3: It's it's part of a hybrid search to try to
Speaker 3: shake those things out.
Speaker 1: So what's the pricing?
Speaker 3: Like the pricing I'm never the sales guy in this situation,
Speaker 3: so I don't remember the pricing off that's top of
Speaker 3: my head. I think it's I think there's a first
Speaker 3: of all, there's a fourteen day free trial, so you
Speaker 3: can kick the tires on it, which doesn't.
Speaker 2: Seem very long when you're putting together rag data like
Speaker 2: that's not a trivial.
Speaker 3: Effort, So it isn't it is? That we'll talk We
Speaker 3: could talk about that in a minute. I'll go over
Speaker 3: some of the pricing tiers that I can kind of remember.
Speaker 3: I think it's I'm looking it free for fourteen days,
Speaker 3: six hundred or something like that.
Speaker 1: Seven hundred dollars is the introductory price per month, right,
Speaker 1: and then there's like an almost teeth a month for
Speaker 1: another level.
Speaker 3: Yeah, so you would think fourteen days isn't a long time,
Speaker 3: and I would like to see this be longer myself,
Speaker 3: as a developer advocate, I'm always airing on the side
Speaker 3: of the consumer that's using it, So I do agree
Speaker 3: with you there. But one of the things that supports
Speaker 3: the fourteen days is how quickly you can actually turn
Speaker 3: this around. It's actually really surprising, and I'm not just
Speaker 3: saying that because I work for the company that has it.
Speaker 3: I'm actually a big fan of the product. Like it.
Speaker 3: It's very quick to get your data in and as
Speaker 3: soon as that data is ingested, there is that back
Speaker 3: office that I told you about that has a search
Speaker 3: function built in that you can just start keying in
Speaker 3: searches to see what type of results you're going to
Speaker 3: get back, and it's got the citations and everything right
Speaker 3: there where you can see it. And there's even a
Speaker 3: rag lab inside where you can test different prompts against
Speaker 3: different models, sorts of stuff. So the turnaround time is
Speaker 3: very very quick on this, and you can even deploy
Speaker 3: like a JavaScript widget on your page to get started
Speaker 3: and have the search functionality raised like immediately on on
Speaker 3: your web platform. But when you want to want to
Speaker 3: want to customize this, there's also SDKs in every flavor,
Speaker 3: and we are on dot Net rocks, so you probably
Speaker 3: want to hear about the dot Net SDK a little bit.
Speaker 3: But once you ingest your data, you can just hop
Speaker 3: on one of the SDKs. For the dot Net SDK,
Speaker 3: it's I wrote it. I wrote it to be very
Speaker 3: dot Net friendly. Have been a dot net developer for
Speaker 3: twenty years, so I'm using all of the patterns that
Speaker 3: dot net developers are used to. The platform itself is
Speaker 3: written in Python, but since it's a software as a service,
Speaker 3: you don't need to concern yourself with that. As a
Speaker 3: dot Net developer, You're you're mainly working with the SDK,
Speaker 3: which is talking to the rest APIs and on the
Speaker 3: dot neet side, you've got all of the types that
Speaker 3: come back from the rest APIs and nice C sharp
Speaker 3: strong types, and the APIs follow similar methodologies to things
Speaker 3: like Microsoft Extensions AI. You have dependency injection, so you
Speaker 3: go into your RAG system, you ingest your data, you
Speaker 3: go to your SDK, you pull in the new get
Speaker 3: package and you do dependency injection. You say, use nuclear dB,
Speaker 3: here's my keys, here's my endpoint, and then you have
Speaker 3: a service that you can call search on and that's it.
Speaker 3: Just like three or four lines of code and you're
Speaker 3: talking to this system that's giving you intelligent answers.
Speaker 1: So this sounds really cool. A couple more things about
Speaker 1: the pricing lane layers. The starter layer that's seven hundred
Speaker 1: monthly is text files only max seven hundred and fifty
Speaker 1: megs per file, five gig index data or fifteen thousand resources.
Speaker 1: The pro and these are cloud offerings. The pros nineteen
Speaker 1: twenty five monthly and that has all file types, twenty
Speaker 1: five gig in next data or eighty thousand resources. But
Speaker 1: then a customized quote or enterprise you got to contact
Speaker 1: Progress and that's the only one where you can have
Speaker 1: on prem options. So if you're going to do it
Speaker 1: on prem, you got to call yeah.
Speaker 2: Yeah.
Speaker 1: The other two are in the cloud only, so there you.
Speaker 3: I think on the enterprise side, you're looking at companies
Speaker 3: that are doing like I said, we have some that
Speaker 3: are doing millions of documents, right, and the pricing model
Speaker 3: probably shifts for somebody that's scaling it that large of
Speaker 3: a scale it is, yeah, but the time to market
Speaker 3: on using something like this is what really shocked me.
Speaker 3: When the folks at Progress were like, you know, we're
Speaker 3: making this acquisition, we want you to take a look
Speaker 3: at it from a developer perspective, especially given the front
Speaker 3: end capabilities that you know about, and see what you
Speaker 3: think of this product. And I was like, wow, this
Speaker 3: is this is really amazing. The only thing it's missing
Speaker 3: for me is a C sharp SDK, and I immediately
Speaker 3: got to work on building a C SHARPESTDK for it,
Speaker 3: not because I was tasked to, but because I saw
Speaker 3: the value there.
Speaker 1: I was like, this is cool.
Speaker 3: I got to bring this to dot net devs and
Speaker 3: the the uniqueness of it, I think is something that
Speaker 3: we're bringing to the table for dot Net. There are
Speaker 3: other you know, rag type things out there, but like
Speaker 3: I talked about with the open AI file APIs, those
Speaker 3: are been locked under a preview and you have to
Speaker 3: kind of sign off through pragma warnings to even use it.
Speaker 3: It's like, this is not supported. You're going into our
Speaker 3: chart uncharted territory. Put these you know, put these flags
Speaker 3: in so you're allowed to even test this. Please don't
Speaker 3: deploy it to production. We went V one on the
Speaker 3: sd K last week. It's been fully tested and in
Speaker 3: tested and it covers the entire rest API. So you've
Speaker 3: you've got this solution that you can spin up extremely quick.
Speaker 3: I could get a demo this running and probably less
Speaker 3: than twelve to twenty minutes, and uh, you're.
Speaker 2: I pulled a list of the demos from the Telleric
Speaker 2: get heberpository, one for Maui, one for Kendo, and one
Speaker 2: for Blazer Nice.
Speaker 3: Yeah, yeah, that's that charting example is in there. Yeah,
Speaker 3: so that one that one mashes up the progress agentic
Speaker 3: RAG with Kendo Ui or Blazer Maui as well. I
Speaker 3: think has the chart example. And when you dig into
Speaker 3: the source code for that, you're going to be surprised
Speaker 3: at how little business logic is there. It's mostly markup.
Speaker 3: Most of us is just the presentation.
Speaker 1: So that was one.
Speaker 3: Of the nice fits here when when we did this acquisition,
Speaker 3: like it was very much a back end service there,
Speaker 3: there are, like I said, there are widgets in there
Speaker 3: that do you like, some vanilla JavaScript stuff to get
Speaker 3: you started, But when you're ready to build an application,
Speaker 3: you're really going to want to customize the UI, and
Speaker 3: we have done UI for you know, almost twenty years
Speaker 3: now at progress with the teller.
Speaker 2: It's all about how you present the information, right, Yeah.
Speaker 3: And I was like, now we've got the ability to
Speaker 3: do these really intelligent queries and results and use our
Speaker 3: UIs with it, like this is bread and butter, peanut
Speaker 3: butter and jelly. Yeah, you know, these two things go
Speaker 3: together great.
Speaker 2: It also speaks to how there's less and less interface
Speaker 2: part less buttons and knobs and switches, and more and
Speaker 2: more screen space given to visualization. It's one, you know,
Speaker 2: it's just a box to describe what you want and
Speaker 2: then the rest of the screen is dedicated to showing
Speaker 2: you what you want.
Speaker 3: I know I've said search quite a few times too,
Speaker 3: but I think search really under sells what we're doing
Speaker 3: here in the RAG space in general, not just for
Speaker 3: this particular solution, but all of it. Searches the like
Speaker 3: Hella world, right, it's it's the easy go to.
Speaker 2: Well and it aamly a company doesn't have a search problem. Yeah,
Speaker 2: it's just the normal all search stocks.
Speaker 1: Yeah.
Speaker 3: I'll give you some interesting things around search too. But
Speaker 3: one of the things that this does well is it
Speaker 3: can do like product recommendation, which is kind of search like,
Speaker 3: but you can you can come at this from a
Speaker 3: different point of view instead of asking it a direct question.
Speaker 3: You say, I'm a dot net developer, what products do
Speaker 3: you have that can help me with this problem? And
Speaker 3: do product recommendation. And you can also use this as
Speaker 3: a competitive advantage if you want to say, bring in
Speaker 3: data from a competitor and bring in your own data
Speaker 3: and then do a competitive analysis and do you can
Speaker 3: do battle cards in real time for your salespeople. You
Speaker 3: can say, all right, what you know, what product is
Speaker 3: my competitor selling and what is you know? What is
Speaker 3: their audience and how do we compete against them? And
Speaker 3: this can do that analysis for you and shape battle
Speaker 3: cards in a UI and display them nice. One of
Speaker 3: the more interesting demos that I worked on with our
Speaker 3: sales folks, and I can't name names of particular products
Speaker 3: or companies, so I'll be a little bit vague, is
Speaker 3: we did one that was a food laboratory. So we
Speaker 3: were working with somebody that did a product that had
Speaker 3: to do with food additives. And what we had come
Speaker 3: up with as a solution is, you know you're in
Speaker 3: a laboratory working on the next donut, Let's say, and
Speaker 3: you want to know what you can use as a
Speaker 3: food coloring for that donut. Why not make a mobile
Speaker 3: application that you snap a photograph of your prototype, and
Speaker 3: the AI analyzes that photograph for coloringschene, whatever other keywords
Speaker 3: you want to tag that with, and then goes off
Speaker 3: to the RAG system and searches for products that you
Speaker 3: have that can be used for that result. And then
Speaker 3: it's going to come back with not only an answer,
Speaker 3: but a bunch of data sheets that you can click
Speaker 3: through and find data on, and then you can ask
Speaker 3: follow up questions on it, things like how will this
Speaker 3: coloring affect the taste of my product? And that goes further,
Speaker 3: you know, beyond a search that's not a normal search.
Speaker 3: Now you're you're doing like a research roll and a
Speaker 3: developed you know, R and D roll inside of this tool,
Speaker 3: and it's doing it in several minutes rather than you know,
Speaker 3: something that would take hours or days.
Speaker 1: Nice, it's just good stuff ed. When were we going
Speaker 1: to see you next?
Speaker 3: I am going to be at stir Trek nice, and
Speaker 3: that is on May first, and I'll also be at
Speaker 3: code Stock. Code Stock's a good one in Tennessee. I
Speaker 3: think that one's mid April. That one went away for
Speaker 3: a little bit and came back. There was just some
Speaker 3: really good people in Tennessee. I'm happy to see that
Speaker 3: they brought that back and then also be at the
Speaker 3: MVP summit. This probably is likely to air after that though,
Speaker 3: So no, you are.
Speaker 1: Corrector yeah, yeah, April ninth, Yeah, someone in this little air. Yeah,
Speaker 1: so all right, dude, good stuff, Thanks very much for sharing.
Speaker 3: Yeah, you can you can find out more about this
Speaker 3: at progress dot com. You can actually kick the tires
Speaker 3: on it right from the main screen there there's a
Speaker 3: search box that deploys the the product behind the scenes,
Speaker 3: so you can just ask questions to about anything Progress related.
Speaker 3: And it's using that we're dog fooding at hardcore right there. Great,
Speaker 3: and then you can find it at Newgate on Newgitt
Speaker 3: repository as the Progress dot nuclear package. And yeah, we.
Speaker 1: Got a few more links on the page at dot
Speaker 1: nerocks dot com. So ed, thanks very much and we
Speaker 1: will talk to you next time on dot net rocks.
Speaker 4: Thanks for having us.
Speaker 1: Dot net Rocks is brought to you by Franklin's Net
Speaker 1: and produced by Pop Studios, a full service audio video
Speaker 1: and post production facility located physically in New London, Connecticut,
Speaker 1: and of course in the cloud online at pwop dot com.
Speaker 1: Visit our website at d O T N E t
Speaker 1: R O c k S dot com for RSS feeds, downloads,
Speaker 1: mobile apps, comments, and access to the full archives going
Speaker 1: back to show number one, recorded in September two thousand
Speaker 1: and two. And make sure you check out our sponsors.
Speaker 1: They keep us in business. Now, go write some code,
Speaker 1: see you next time.
Speaker 4: You got trade Middle vans by the
Speaker 1: Sam Is Home and my taxes in line red