Okay, so we started by just moving data back and forth, and now we're starting to talk about fancy syntaxes, and contracts, and different serialization formats. And where we're ultimately going is, you end up with these applications that provide a service to the rest of an application. So, in a way you would start building applications up by parts and pieces. And probably the best example of this is if you go to an airline web site and you're booking an airplane, as soon as you're done they'll say, do you want a car, or do you want a hotel? And you think, well how come the airline, has cars and hotels, and the answer is they don't. They just have connections behind the scenes using web services, to car and hotel systems. And if you start searching, they take your search, and send it to the hotel system, and get a bunch of JSON or XML data back, and show it to you like, whoa, the airline knows something about cars, and it knows how much the cars cost at this city, one of 10,000 cities around the world or whatever. And so, what happens now is this is called a service-oriented architecture or, a service-oriented approach, where basically, you're the hotel reservation, and you have a web site, but you also give out a service, and then other systems can sort of work with your service. And you'd be surprised, there's money going back and forth, and so if you're booking hotels from an airline site, the airline gets a little kickback for bringing a customer to the hotel. because the hotels want customers, and if the airline brings hotels, but then there's this service, and then somebody has to, the airline company person has to write some code that reads the data from the car rental company, and back and forth, and so everyone has to figure all this stuff out. And we talk about these things in the form of APIs, application program interfaces, which are ways to use web protocols to access data on systems, using well-defined and structured approaches. And so the idea is, we start with two systems, and we're just like, okay, we have this problem, we're going to break it into two, we're going to write a protocol between these. And then what happens is, it goes from two systems, to like five system, to whatever. And then you end up with these systems that will end up with lives of their own, and the overall system that we see as end users are the integration across many of these systems. And I've got a video that I'll show you next, that shows how this evolution happens.