 Welcome to today's PostgreSQL conference webinar will PostgreSQL live forever with Bruce Manjin, who will discuss how open source software can live for a very long time. Cover the differences between proprietary and open source software cycles and talk about increased adoption of open source and many of the ways that PostgreSQL is innovating to continue to be relevant. My name is Lindsay Hooper and one of the PostgreSQL conference organizers and I'll be your moderator for this webinar. A little bit about your speaker so Bruce Manjin is the co founder and a core team member of the PostgreSQL global development group, which has worked on PostgreSQL since 1996. He's been with Enterprise DB since 2006 and has spoken at many international open source conferences. He's the author of PostgreSQL introduction and concepts published by Addison Wesley. And prior to his involvement with PostgreSQL, Bruce worked as a consultant, developing custom database applications for some of the world's largest law firms. As an academic, Bruce holds a master's in education was a high school computer science teacher and lectures internally at universities. And with that, I will hand it off. Take it away Bruce. Well thank you Lindsay great to great to be here with everybody. And great to be giving this talk this is one of my, one of my favorites. Really interesting topic. And kind of a thought provoking one. I, my goal of this talk is that by the time it finishes you're going to see the open source world a little differently and you're going to see the closed source world a little differently too so. That's my goal I have some interesting insights into having been in the industry. I have 30 some years now, and an open source for almost 30 or exactly 30. So, I've seen a lot I've seen a lot of the big proprietary players come and go, and I've seen the dynamics open source kind of shift, and this talk is going to go into that. And it's going to give me a kind of introduction if you'd like to look at the slides for this presentation they're right here at this website right here. So feel free to look at that there are recordings of many presentation I think last count there were 58 presentations 59 I think now and about 84 videos. So, there's a lot there 600 plus blog entries, mostly about the stress. So feel free to kind of dive in there it was a lot of information. So we're going to talk about today we're going to talk start we're going to start talking about what forever is forever is a long time. We're going to explain that. And then we're going to look at the software life cycle, you know a lot of us have lived through life cycles for software. We've seen them come we've seen them go, but there's a little more detail of exactly how they come and how they go. And what that looks like and proprietary and open source have different life cycles we'll talk about that then we're going to talk about salt open source adoption. The survey done number of years ago which really is an illustrative of, of how open source adoption happens and what things drive it. And finally we'll talk about Postgres innovation, some things that drive postgres adoption and finally talk about the community structure. So, let's get started forever. That's a long, long time. So age of universe, billions of years age of birth billions of years each civilization pretty long. What's really I think interesting here is the digital era. You know if civilization goes back 6000 years. You know the age of the earth is much older than that but also the digital era is only probably, you know maybe go back to the 1940s so you're talking about 80 years. And that's not a whole lot when you consider civilization so. The point is that there is a lot of new territory we're going into here that that we don't really understand some of the cycles. So if you look at that history and I was a history major in college, there's a sort of a cycle of how civilizations grow and so forth. And in a way we're just sort of learning that cycle for for software and particularly open source which only has a 3040 year history. Again, it's it's a life cycle that I think is going to be interesting to talk about. The history of the digital history. The card loom was probably early digital history which was used as a card used for like patterns for looms. Eniac, I'm in Philadelphia so that started here. So it's first commercial available sort of computer. And then you get into relational theory 1970 with your cod system are ingress and then postgres starting of course 1986 and 96 when I kind of got involved. Not, you know, there's not a whole lot of years there, but we can still, even with that short number of years we can start to see a pattern. And that's what I'm going to be covering in this talk so. So this cycle so this computer you're seeing a picture of is the wine 2200. This is the computer we had in high school. So not around a whole lot anymore. In fact, the, the, the life cycle of hardware is pretty short. I have a server here right next to me that's running all my website and email and routing for this presentation. Typically last five years, seven years, you can stretch it maybe to 1510. But, but after a certain point it just makes no sense and it just kind of goes away so hardware, being a physical thing really has a very, you know, I sort of as a finite life cycle and software, because it's a malleable thing and doesn't wear out and in a way can be continually improved has a can potentially have a much longer life cycle and we're going to we're going to explore that in this section so. Let's, let's, let's talk about history that is a little longer than open source. And this is proprietary software so we're going back to sort of the 70s. When proprietary structure sort of took off in terms of enterprise usage. And I've lived through this cycle myself it's not a pretty cycle. I actually call this a depressing slide, at least as far as I'm concerned, because the typical life cycle for proprietary is that some person has an idea, they have some sort of innovation that they want to bring to the software world. And they typically hire developers to write that software so company gets formed developers are hired first 18 months or two years. They're writing software like crazy right. And they have really released a version yet finally they release a version and they can start generating sales. And you then move the company from the innovation stage which was sort of the initial creation of this new offering to the market growth stage so at this point in the company, the entire focus has how do we grow our market larger. That might be product enhancements that might be moving into different features that might be buying other companies that could be advertising to a whole bunch of adding new platforms you could be a whole bunch of things that people want to do to grow their market. Okay. And this period can run, you know, for a year or two years five years long period of time. But at a certain point, you reach what's called market saturation. And at that point, your software has kind of grown as far as it can either. There's another competitor that you can't usurp and maybe you've got 30% market share and they've got 70 and you're kind of done. You can't really break into there, or maybe you own the whole market maybe you're 80 90% of the market and there's not a whole lot left to grow. And then you, so that's, then you reach the stage of market saturation. And the company realizes that. And what happens when the company realizes that they realize that, you know, we're kind of no matter how much, no matter how much new investment we do, we're really not going to move the needle a whole lot. Once you get to market saturation, they kind of know, no matter what they do, no matter what they invest in, they're not really going to get more money. And for proprietary software, money's kind of the name of the game. Right. So, all of a sudden, you get into this stage four. And at stage four, because you've saturated the market as much as you can, your primary focus is to maximize profits. All right. And minimize costs, because remember you made a lot of investment at the beginning to kind of get started. And now we're going to not do that anymore. Right. We're going to basically, you know, at this stage we're going to focus on just kind of maximizing our profit. So, this is where the software kind of gets stuck. And I can't really grow much, because there's not a whole lot of market left. Right. So, in a way, this is where the software kind of becomes stagnant. There's a lot of software that I worked with when I, in the 90s, would use to use proprietary stuff that just isn't around anymore. And the reason is it kind of got into this mode, where it was no longer being updated, they were cutting back on on development costs or helping back on support. They weren't pouring the profit back to the company just kind of coasting. All right. So, eventually the software that is in this stage four goes into stage five. And stage five is basically maintenance mode, where the company's continuing to get profits from the sale of software and support and so forth. But no new features are being added. There's no new innovation. And then eventually it goes into life. And there's a lot of software I had to say it was pretty cool. I'm thinking of some utility software, some games. They couldn't sell it anymore. And it just kind of, they didn't make any more money. And it just stopped. And you don't get any updates. It doesn't update through operating systems. There's no fixes. There's no bug security fixes. There's no patches for new versions of libraries. And eventually the software just goes out and becomes dead again. And that's a pretty scary life. But that is the fact, at least that's what I've seen. Open source software, it's actually quite a bit different. And if you've looked at a lot of the software that you're using now, you know, I'm thinking of some of them like Firefox or Emacs or Apache or Postgres, right? They go back decades, right? And why do they go back to GCC, right? They go back a long time, PHP, Python, Perl. They go back a long time, Linux, right? FreeBSD. And the reason is because open source doesn't have that profit maximization stage. They have stage one, which is parity with open source software at a low cost. And sometimes that's hard to get bootstrapped because you kind of got to do a whole lot of work to get the first version out. And then you enter a market growth stage. But the stage three here is basically continuous innovation or decline. There isn't a sense that you're going to sort of cut back development or maximize profit or raise the prices or whatever because there's no money or no profit, nothing, right? None of that exists. And in fact, you have this stage four, which sounds like a throwaway line, but in fact, it's pretty important. In stage four, the source is always available to continue. So, you know, I know Jan Vickers on this call, and he was actually one of the earlier users of Postgres. In fact, before me, he started in 94, started in 96. But this software basically had been around from Berkeley starting in 1986, and it stopped being used in the kind of early 90s. Only a few people were using it, right? But the software is available. And a group of us in 86, Jan being one of them, were able to get together and actually take the code, reinvigorate it, get some features in there, port it to new operating systems, add performance and so forth, okay, and reinvigorate the software. That's something that can only happen in open source because in proprietary, whoever stops, whoever owns the code, when they stop making money, they are done. There's no easy way for somebody to come in says, I know you're not making money anymore, but I would like to take that code and use it in some other way and improve it because it just doesn't come. We just don't have that option because the closed source is closed, right? So that fourth stage of innovation of availability, although it sounds kind of like who's going to really bring old code to life, they do it all the time. GCC, another example, I don't know if you know the history of GCC, GCC goes back to the 80s, I remember using it in the early 90s. But there was actually another fork, there's a fork of GCC. That had more features. And it became so good that everyone wanted to use that instead of GCC and the GCC was declining. And then the GCC people said, okay, let's take this new code, which is more innovative as a compiler, and we're going to move it and we're going to call that GCC, right? So somebody forked GCC, made it better. And the GCC people started to realize that they were declining, stage three decline, and they basically brought the new fork in and made it the new GCC, right? And that happens a lot. So it's this ability for software, opens our software to continue to live, is tremendously interesting, and it actually does relate to Postgres in a powerful way. Now, this story is hard to believe, but I'm going to explain it to you. This is the most odd open source story I've ever seen. And the only reason I know about it is my son Matthew was a big user of Falcon 4, which is an F-16 simulator. And it came out in the early 80s. Matthew used to use it, I want to say, in the late 80s, early 90s. And I want to take that back. Now, he used it in, I think, the late 90s. Yeah. So 1984 Spectrum Holobite, which was a computer game company, begins development of Falcon. So they're a proprietary company, they're going to develop open source, they're going to develop closed source proprietary game called Falcon. Okay. I don't understand, you know, they released a couple of versions and then in 1998, they released Falcon 4, okay, which is kind of their final, their final version they've gone, I guess from 1984 to 98, they developed one for three. And Falcon 4 was considered to be one of the premier flight simulators, and still is in some ways, which I'll talk about in a minute. In 1999, MicroProse, which is the new Spectrum Holobite company, ends development of Falcon. Okay, so you're thinking, okay, this proprietary game is at stage six, right, it's end of life. I think they, I think in 99, I think they were still selling it, but they weren't, it was in stage five. So they weren't enhancing it anymore, it became just legacy and they're just going to like sell it, but they're not going to make any improvements. However, in 2000, somebody leaks the source code to this game on the internet. And I think it was only leaked for a couple, maybe 20 hours, it wasn't a long time. I don't remember the exact, but it wasn't a long time, but it was 20 hours, 20, it was pretty, pretty small period of time. But for that, during that period, somebody grabs a copy of the source code, and a open source community develops around this leaked game. And the group is called Benchmark Sims or BMS, you can look them up, they have a website still. And they release community modifications to the game. So you have to own the game and all of the image files. But what they'll do is they'll put new features into it. Okay, so you have to install the game from the CD. And then you have to take the benchmark SIM modifications you lay them over the, on top of the, of the installed proprietary game, and then you play it. Okay. And that reads new life into Falcon 4 so people start buying Falcon 4, not to run it stock, but they buy it to run the benchmark SIM community modifications on top of it. In 2005, a company called lead pursuit buys the spec the rights to Falcon 4 proprietary company. Okay. And they release something called Allied Force, which is a version of Falcon 4 which includes the BMS or the benchmark Sims modifications on top of it. It's like a Falcon 4 with the community mob open source community mods on top of it. That's a new proprietary product. Okay. From 2004 to 2015, people are having trouble buying the original Falcon 4, because you need it still to lay all this mod stuff on top of it, and benchmark sims continues making improvements even after 2005. So 2015 go geek.com I don't know a whole lot about, but they republish Falcon 4 they get the rights I guess from lead pursuit they republish Falcon 4. So people can play Falcon 4 on top of the lead on top of the with the with the things on it and then also 2015 BMS. So, you know, they haven't, I don't know if they have a newer version. BMS has continued to develop and they release version 4.33, which are now plus minor releases which go on top of Falcon 4. So if you have a game started proprietary source code athletes becomes an open source mods performs proprietary again. Okay, then they republish to the right and then there's a new open source thing to continue they continues to make it. So this is the weirdest open source case I've ever seen where a piece of software basically flips back and forth between open source and proprietary but it gives you an example. When that source code was leaked. 2000 or isn't enough people cared about this game to make it to keep it going and back down here at the corner I have a link to the wiki page if you want more information. Very, very interesting story about and some conferences I'm at. I'll mention Falcon 4 and there'll be a couple of people in the audience who will be like, Wow, he met you know they'll be all excited because they still use it or still, they're still excited about this product from 1984. Really, really interesting story. And I think it illustrates the concept we were talking about. I know I've been kind of negative on on proprietary but I want to just give you a visual of exactly how proprietary works in proprietary. You've got this area on the left, which is where all of the creation happens. Okay. You've got this area on the right where all users were all consumption happens and they've got to separate them. And the interaction is effectively very rigid. So you've got the concept of design meetings and working in isolation and project means and testing, which happens all in the on the left hand side and then only release brings it to the to the user community, which doesn't really do anything about modifying or all they can do is basically complain. Go back to sales, make sales fix it or have product development fix it or support fix it, and then has to go through this very, so if you've ever submitted a bug report and it takes like a year or 18 months to fix it. This is why it's this very slow process with open source the differences that everyone's involved because open every stage people are involved. They're involved in the proposal features the patch review, the testing the beta test and the releases, all this, all this happens simultaneously you don't have kind of two teams. One's can create or one's consumer, they're kind of merged together. And this is another reason that you see so much dynamism, so much creativity coming out of open sources is because of this flow, completely different than the proprietary flow that I'm showing here. So again, I think this is illustrative of sort of why the life of proprietary is just so different than open source and why open source is sort of becoming the de facto standard, so many markets. I mean I remember open source, you know, when I used to do it in the 90s nobody knew what it was you know, a lot of people still don't even know what I do right. It's a very, you know, it's still in some ways a niche process, but it has grown so much since then. And it is it is just so powerful now and it's really this dynamism I think it causes that. When I started out with with Postgres and and yawn and many others. We started out kind of down here, where we weren't as you never made features as close source. We didn't have the kind of performance we don't have the kind of reliability but what was really cool is that our growth. Our growth angle was much higher than close source. So we probably passed close source like years ago now. And with this slide, probably 15 years ago we were kind of just crossing maybe, and maybe a little below, but now we're, you know, it's, it's, it's taken off tremendously so the interesting part it doesn't matter how far you are below close source if you're, if your angle steeper you're eventually going to cross it. And that's what we actually are seeing here. I think I'm making this all up that I'm just like, you know, he's just, he's just, you know, he's just drinking too much or something. But, but I can give you pretty good examples here. Linux I think is a great example. So when I was, when I used to work as a consultant in the 90s and Lindsay mentioned that the big, the big operating systems for HPX, AIX, and Solaris. Okay, that was your standard operating system. But, you know, I don't think anybody deploys brand new on any of these anymore, right, pretty much all of its line and Linux or free BSD and its derivatives like Ubuntu, DB and red hat. Because Linux innovative, innovative way beyond where they were, they just, they could never keep up and in fact Solaris is end of life even by Oracle standard right they just, they just said we're not going to develop it anymore. Whereas the idea that the Solaris wouldn't be around, you know, would be like, but like that's just the gold standard that was the gold standard in the 90s. So I'm bringing this up as an example of how markets shift over time it's slow, but it certainly happens. Another example is postgres right so when I was in the 90s we used I used to use informics and ingress for the two I was pretty much most familiar with. And of course the other ones were around still. But if I look at the six here, how many of them are still innovating. Wow, well, I would say none of them. Right. How many of them are sort of at stage three where the profit maximized. I would say me I'm not sure any of them. Maybe Oracle. How many of them are in maintenance mode will probably all the bottom three are certainly in maintenance mode side based informics ingress. In fact, I don't even know if ingress is still being developed. Informics I think is in maintenance mode side base. Maybe two is certainly not. I think it's a maintenance mode two or it's pretty close to it. SSQ all the other there's still kind of kicking around stuff or it was trying to kick around stuff. But they're not innovating anywhere the near in the same rate that postgres is because again that curve is just so high for open source they can't because they because that whole that whole process that whole flow chart I showed you just makes it incredibly difficult for them to bring ideas from their community and innovate and get ideas out and work them into viable solutions is too hard for an inappropriate environment. So, yeah, I mean there's a great example, right, you know, you would think in the 90s you would have thought these were the gold standards but now they're kind of like, you know, I kind of tell I kind of joke to people like, you know, imagine I'm going to start up and I said I'm going to start up and I'm going to I'm going to build my solution on Oracle, right, like, what's the matter with you right who does that. I might be somebody doesn't but I can't imagine why somebody would do that. And if nobody's building new solutions on your technology, then effectively your legacy. Whether in stage four stage five, well, stage six, whatever, you're, you're at that legacy stage where the only reason you're around is because people either know how to use your software or they've already got installed base, but they're not choosing you for flexibility, they're not choosing for innovation. They just they're just though you don't have those things. And that's because that proprietary lifecycle kind of forces that behavior on proprietary companies. Postgres because it's open source develops in so many different ways. So, it slides actually from a while ago but effectively the concept of that typically in a post source company, you have one focus for each release. For postgres we're, we're improving all over the place, deployment, ease of use, high enterprise, new workloads, big data, cloud, we're doing this, every release has improvements in all these areas, because we don't have a centralized hierarchy of how it works. Everything is kind of happening at the same time, which I think is really exciting. When does software die, or kind of finishing up this section, proprietary software dies when the owner of the source code can no longer profit from it. That's just the facts. But, but also, it goes into decline longer for the death, because of profit maximization. And, you know, a lot of software probably could have gone for a lot longer but because the people who own the code, when you're that profit maximization mode they kind of set the clock on how long that software is going to remain. It doesn't die because it doesn't have a profit maximization. It remains active as long as people use it. It can always be resurrected if it's useful and you know postgres as I said before, was given new life in 1996. So in summary, because software is really the embodiment of ideas and not a physical entity. Ideas don't die as long as they're shared and ideas are shared as long as they're useful. So I think of, you know, I've sent four kids to college, three of them through college I got one going finishing college, third year. And, you know, she's studying writers from the Greek writers right for the philosophers. Why are they still studying that because they're great ideas, right. And those ideas are continued shared because they're useful. Right. So if you have ideas that are useful, particularly in software, and people get excited about those ideas that your software continues to live particularly if it's open source. And postgres I think will continue to live as long as it continues to be useful, and it's in a trajectory where it's continue to be more useful to more people. This section I just want to talk a little bit about a survey that was done in about open source and adoption. This was done by black duck software. And it was done in 2016 so it's not super new. But what this quote and some of the future slides talk about is the trajectory of open source has grown so much more than anyone would have predicted, right, that there's so many tasks now that are accelerating the market because open sources around that you know open source is the way applications developed today and again this is from five years ago it's even more true today. So I love this slide because this was again part of the survey they did. What's really interesting is that when you asked people why did you choose open source. They typically chose open source because of cost. Right so that was the that was what got him into the door if you're familiar with, you know, a supermarket that sells a chicken for $4 right. That gets people in the door and then they buy other things when they're there and eventually the you know the company makes the supermarket makes money. So that's not really the way open source works but that's kind of the hook that gets enterprise is excited about open source is the cost reduction. Okay, but what's really interesting is when you ask the people two years later now that you've chosen open source. What advantages do you find cost ends up being at number five. So they went into open source for the cost. But once they got used to open source, they started to realize that there were many, many more advantages to open source than just cost. So the number one advantage was competitive features and that big word innovation talked about that earlier. The concept that innovation can happen much more efficiently and open source think kind of proprietary because proprietary is focused on profit innovation and profit, often don't go together. Because you're you protecting your markets you're worried about impact on sales there's a whole bunch of things that really and and all collaborate things you collaborate. All those things work against innovation all those things in open source. The whole structure of open source works toward innovation so competitive features innovation number one reason people like open source after two years. And from vendor lock in the ability to play anywhere they believe not to have to get a license quality of solutions right reliability polish of this features is incredibly useful for open source ability to customize and fix this it starts to get a little more into the open source aspect that the ability to have it be flexible. And then speed of application development reduced development costs interoperability breath of solutions all nine reasons to use open source but it's not just cost cost may get people interested, but effectively growth happens. You know we have postgres conferences typically without coven all around the world I have a conference I'm going to in Vienna in September. You know people don't have conferences because they save money, right they have conferences because they love the software they love what they're able to do with it they love the innovation they love what they how it enables them to be more productive and more creative and that's why people have events and that's why there's typically so many postgres events around the world is because that innovation is really excites people. And another quotation basically talking about open source sort of taking over the operating system cloud big data Internet of Things, mobile, sort of, you know, ecosystem and then kind of growing farther into into other areas. So, in 2016, the big areas of growth for open source were operating systems database and development tools database wasn't there before so database. I think in the last five years certainly has seen a huge growth in terms of how people are excited about the open source database market particularly. You see so many offerings in so many niche areas postgres is more of a mainstream object relational kind of a solution but there's certainly a huge number of non relational offerings out there as well in the database space that are open source although as I kind of, you know, I can allude to there's a bunch of cases where open sources is is receding. I'm thinking of the elastic search I'm thinking of Mongo and thinking of some of the other and I've had some blog entries about this where, where, where some of the original company backed open source are sort of moving to a profit motive. And you see it mostly you don't see it with pure open source like postgres we see it with with companies that company controlled open source like, you know my sequel or maybe be or Mongo or elastic where that company's funding over development and then they kind of get a market and then they say hey, if we change the license will get more money. And that's used to your that's where the company this offer kind of starts to go into a decline. Eventually, you know because because again that profit motive starts to go in and you know okay now we maximize the market let's increase the prices and change the license and you know start to get more money, and maybe not invest as much anymore. This slide I think if you're if type of person who is trying to promote open source within your enterprise. There's probably for at least databases there's three communities that care about open source and sort of stakeholders here. One is managers ones developers ones administrators and what I've highlighted here at the bottom is different features of open source attract different people. Different groups so vendor lock in very important for managers innovation very important developers quality very important for administrators again different aspects of benefits of open source or diff are attractive to different audiences. So let's talk about postgres I'm not going to go into huge detail this is not a postgres specific talk I want to kind of go over some of the reasons that postgres innovation has been so powerful in the past since for the 25 years I've been involved. This is actually a picture Joe Selco who's a very famous author by SQL with Sloanik our, our mascot I think this was in. This was in Vienna I think yeah. So relational technology originally designed in the 70s, but still around by EF cod. And of course, in 86 when postgres was started it was sort of, it was sort of be the next generation of relational system factors called postgres, because it's post ingress. It's sort of post relational. It adds things like custom data types and special indexing methods and special service languages. And that innovation in 86 was way before its time, you know it was. It was actually frustrating to have all this innovation when I started 96 we just want a relational system. But ultimately that innovation ended up being a huge driver for postgres as we started to get the relational pieces polished, and we could then start to work on the object relational aspects of it. So postgres ability to flexibly handle new workloads really took off and that's a lot of the reason that postgres is so popular today. So this is the sort of system tables that Michael stone breaker kind of originally designed. But the interesting part here is that you've got system tables for things you wouldn't normally have system tables for data types system tables for indexing system tables for stored procedure languages system tables to add aggregates to the system. All this flexibility originally designed in 1986 kind of laid dormant for 15 years or so until postgres became a relational powerhouse. And then everyone wanted to use it for new workloads on top of relational system, and we are then the structure that whole infrastructure was already there. So Jan Vic on this on this call did a lot with the server side languages and added a whole bunch of them. You know so you know he was really responsible for a lot of that innovation in the server side line and that service our languages is hugely important in how people use postgres and one of the order of our great innovators so it's sort of like we inherited in 2006 this bedrock of of innovation that we just kind of carried along for a bunch of years until we were able to leverage it with a whole bunch of new features and new capabilities that makes postgres the popular, the popular system it is today. Okay. One of the one of the key aspects of postgres is the extension system so the ability to extend postgres here. We're actually typing create extension, and we're adding eight new data types. So these data types relate to UPC symbols, book numbers, music numbers, magazine numbers, and if you try to create extension is and you basically adding brand new, you know, brand new data types to the system. There we go. The server side languages, Jan is responsible a couple of these. We support all of these service side language so this is part of that extend ability that you can just add languages to postgres just, you know you just plug them in. Not all these languages are installed in fact the only ones we I think we installed by default are the SPI, and the PLPG SQL, and the SQL one which is actually not listed here this is not kind of a language. They're all available as additions to the database and again I have a slide deck here at the bottom URL. If you're interested in more and more information on that indexing types another area this area really I want to give credit to the Russian developers you kind of sort of took this as their, their responsibility. So we started, you know, in the 90s, be tree was the thing, everyone, everything was be tree, right, we're hash, be true hash. But what happens is when you start to need to do things like full tech search and GIS, and JSON, be tree and hash are terrible for those were data where they're terrible. So be tree in and just an SP just are basically specialized indexing that works with this, these types of non relational data types and I have a URL there at the bottom the talks about indexing bring another one, which is for data warehouse. Be tree works for data warehouse, but bring allows you to create very small very efficient indexes for very large tables. So again, the concept of extendability of being creating indexes for specific workloads is a key differentiator in Postgres. Full tech search. This is also from the Russians, the ability to have full tech search that's built into the database, not a separate piece, but sort of part of the relational system, part of the transaction that connects supporting stemming supporting different languages. I have a slide deck here at the bottom that kind of explains some of the feature set here for full tech search, but again a great differentiator innovator for postgres. Here's an example of a query that uses an index, a special index to to pull out. I believe in this case is a gin index one of those special index types. It does do a lot of the no sequel stuff I mean they've been talking about no sequel is something that, you know, oh it's going to replace relational well not really if you look if you look at history. We typically have had relational systems have a challenger like, like, like object databases or what was the other one. Another one XML databases which are going to sort of take over, but effectively what typically happens is relational finds the value of these new data types these new data indexes. They bring those capabilities into the relational world and then they keep going. That's why postgres is still around for long. That's why SQL still long so long. And no sequel because postgres has this special data types it has a special indexing and operators and functions, you can still do very, very efficient, no sequel workloads with postgres and not lose the amazingly powerful relational features. Here's an example of a JSON query using, you know, looking at a key. So what types this is something again there's a slide deck down here at the bottom but this is a great innovator where it takes two time stamps typically or two values and it makes a range out of them so you can do things like start and stop times in a single field. You can use indexing to get overlaps and figure out, you know, to take ranges and kind of combine them together, instead of doing that all in the application code. So you can now do sort of range type of calculations in the database, a great innovator it's very often overlooked as a pretty neat capability. And here's an example of a range query. Geometric types, we support all the standard polygon point circle kind of things, very efficient. We have indexing operators indexing for this specialized indexing. We have index neighbor searches which are pretty cool so you can find, give me the closest stores to a particular point for example. And you know it's much easier to use than a separate geometric data store. And finally GIS which is sort of an offshoot of that geometric type, which basically is a full geographic information system developed by a separate team of people. And it basically just plugs into Postgres as an extension. Really a great powerful example of innovation happening somewhere else and just sort of laying it right on top of Postgres, giving you a relational plus GIS system. Postgres is incredibly popular in the GIS space. Here's an example of a GIS query. Data wrappers, if you don't want to put your data on Postgres we have over 100 foreign data wrappers, similar to SQL Med, you can basically communicate out to another storage type and bring the data in. Here's an example you can communicate with Oracle or Mongo or Twitter or you know any of these sort of external data stores. You can do your work out there and then just bring the data in to Postgres. When you're finished or you can take the data from Postgres and you can push it out to these, to these type of things. So again you can do a data warehouse in a separate, using a separate piece of software, but to integrate that in with Postgres when you want to. Here's a data analytics, if you want to do all your data processing inside of Postgres, we have all of these capabilities which are pretty key to doing internal data analytics inside of Postgres again, instead of having to go to something separate. Not that there's something wrong with something separate, sometimes you need that, but in a lot of cases you don't. And Postgres does provide the tools to allow you not to have to go external if you don't, if you don't want to. Here's an example of having a data warehouse maybe on a separate server using replication to communicate back and forth. Sharding I think this is an interesting concept we're releasing Postgres 14 this month or next month, which will have new capabilities in relation to sharding particularly allowing data warehouses to spread across multiple servers. And I'm excited to see people implement that type of solution now that we've added some of this capability in Postgres 14. And finally the community structure, it is a very open community structure. It is a BST licensed software, which means the software will be available forever including for proprietary use. So there are a number of companies, like my employer EDB, Postgres Pro, SRA OSS, which have proprietary versions of Postgres that they sell. There are companies that have their have not proprietary versions that they have open source versions, where they just support the community version so again, you have a full spectrum of options there. The development leadership is diversified both geographically culturally, and it's of course multi company. You know all of the teams, you know if you look at the stats entity has this people and crunchy data has these people and EDB has these people and Postgres Pro has these people and, you know, all of the kind of groups Fujitsu kind of work together to kind of move Postgres forward and it's a it's a it's pretty complicated but it's pretty interesting. Postgres still going strong 32 years or even more now 32 years actually of development. We've had 22 years of major releases, about 180 features every release. We do quarterly monitor releases and it is the most love relational database which I think is is pretty cool. So if you're curious about the community itself, there is a website called PG life URL there at the bottom. It gives you an idea of most recent email roast me sent blog most recent news item, most recent releases of Postgres most recent commit, and then at the bottom we have a copy of the of the IRC channel. We also do slack, but either one, having an idea of like what's going on in the community there. I believe my talk is I promise at the beginning I was going to give you a different view of open source a different view of this whole world of proprietary versus open source and why open source is incredibly use incredibly good at innovation, and also is incredibly good at living for a long time, because of the reasons I've, I've, I've given you so thanks very much I think we have maybe a little bit of time for questions Lindsay or no. We do we have about five minutes. I'll say that, for the most part, we, we really only had commentary in the comments so anybody with questions feel free to get them in right now. An interesting point that was brought up that I think is a good place to start is what happened to the Bell Labs innovation model the AT&T breakup. Yeah, that's a great, that's a great question because of course, Unix came out of that environment, right so the Bell Labs Unix Murray Hill kind of New Jersey team. I think, and actually I can ask the answers only because I've been around long enough so in the in the Bell Labs Murray Hill kind of environment they would create a campus. And they hired a whole bunch of people and all the people kind of sat in this big campus, and they worked and they talked and they were super smart people. And they collaborated and they had meetings and they sort of planned what they were doing. Okay, and that's not the only case you see RCA doing that. All the big tech companies had these kind of brain trust R&D kind of kind of a of a of a setup, but the reason that those had to be created was because communication was so difficult electronic communication that you had to, you had to really hire everybody and bring them together in one location. Okay, even something like sending a fax, you couldn't do right I mean faxes are from sort of the 80s so if you think back of when Bell Labs, they didn't really have that they, they sort of worked effectively on ideas around facts or ideas around global communication but in terms of practical, it really wasn't there so you had to hire everybody and bring them together. What effectively has happened, and you see this not only in open source but kind of across the globe is that that development model of hiring everybody and putting all smart people in the room became very expensive. So you started creating these global teams where you had okay I've got some people in California got some people in India got some people in China got some people. You know maybe in Brazil and Germany and then they're going to kind of work in this cloud or not cloud but sort of online environment and it's much cheaper, because I can hire at different salary levels. I can bring people in and out of my teams because in the Murray Hill model. Everybody had to live in Jersey right like everybody had to live within a certain region of New Jersey if you wanted somebody they weren't willing to move you didn't get them. Right. So, I think what has happened is that that model was very expensive. But secondly, once global communication, even in terms of phone calls, right it sounds okay, but terms of being able to call people and discuss things actually became much more prevalent. It was much easier to kind of, instead of putting everyone in one place, you now spread that out. What happened with open source is because now you can communicate electronically and send digital data seamlessly globally. That's the concept that that's how opens without the internet open source wouldn't exist we'd still be shipping floppies to each other, which is what sort of we used to do right in the 80s, where you get, you know you wait for the mail to come and the mail would have a floppy of a new version of the software. So, so once you had global communication that really opened up open source and because there's no cost to that people in any geography as long as they have internet access can participate and the barrier to entry is so small that they can basically just send an email and then they can get involved and then as they see positive aspects of being involved, they then get more and more involved. So it's sort of like that that that cost of entry if the cost of entry is high. It's very expensive and people don't want to do it but the cost is very low. They can get in they can see what open source is about they can play with it they can try it out. And then that's how you basically grow and grow and grow and grow. And that just wasn't possible in the AT&T research model. Great. We have three more questions I know at the top of the hour Bruce do you have time. Okay. So the first of the last three is for the competition that Postgres should be aware of. So I've been involved since 96 so I've always kind of looked at where is our competition. You know how do we differentiate ourselves I've always been thinking about that growth curve and so forth. You know back in the early years. It was, you know, it was Oracle. It was Microsoft. It was DB2. It was Sybase. And then at the open source level there was my sequel, which kind of have a lot of mind share, although not maybe technically as capable as Postgres the mind share was huge. But if we fast forward to today. Oh, you know, I can give you some example from from my own, our own company DB you know when we started in 2004, and I started in 2006 I've been with them for what 15 years. Oracle compatibility was a huge thing like people were like I want to stay you know I, my people know Oracle, Oracle is the standard, you know, I'll use Postgres but it's ideally I'd like to use Oracle syntax with it and have the same sort of feature set the same syntax because I want to always kind of stay close to Oracle. You know if we look at EDB today. You know there's a huge push to kind of message ourselves as being not only Oracle compatibility but just supporting community Postgres right so you know even though we have an Oracle compatible component to our offering. We see the growth as the community part right in a lot of ways and that's that's become true and true every year every year I'd say people are less concerned about I want Oracle syntax and we're wanting the Postgres syntax. So I would say in the early years. Postgres was there because it was cheaper and it was open source and it was free and you could like do stuff with it. It was very niche right. But if I look now people want Postgres they want to standardize on Postgres because they think that's where the growth is the growth is not in the proprietary database anymore. So if I look at who our competition is in the relational space I'm not sure who that is. There really is no I mean there's there's some there's some forks of Postgres which you know kind of do streaming data or they do you know geo distribution or they do you know maybe data warehouse better than community Postgres. There's still forks of Postgres and they've got you know they've got their place. But in terms of mainstream relational. I don't know. So we used to have used to be an offshoot of of a Borland database product that kind of changed names and it became it became Firebird and that that really used to be interbased in Firebird that hasn't been around for a long time. There's not a whole lot of other open source things out here and there's just not a whole lot of non open source database relational database going stuff going on. There is a lot of specialized stuff the Mongos the elastic searches and stuff, and they're going to remain certainly for Cassandra for particularly geographic workloads where you have to do sharding where relational just that centralization of relational doesn't work too well. Well, again as I said we have some sharding stuff but I don't know. I see a lot of, I see a lot of competitors in the fringes of our workload but I don't see a whole lot in the relational space. I think because Postgres open source, because it's got such a vibrant community and because of its extendability, because extendability so hard to bolt on to an existing system. There isn't, there is a lot of competition there. And a lot of it is competing against ourselves, competing against works of ourselves, which is, you know, which is fine but again, we'd probably do what we're doing whether we were winning or not, you know, we just, we're just creating databases and people want and, but but I think yeah I think the future is is really is really quite bright but in terms of competition it's a question of relational I don't know who that is today. In terms of edge or sort of specialized data needs. Yeah, there's a lot of really cool solutions out there, particularly for huge scale that are still going to be necessary and and I think foreign data wrappers addresses that kind of merging a Postgres with those foreign sources pretty well. Lovely. So this next question is any comments on that about the following statement. My problem with open source has been that if things not Postgres broke, there was no help. I don't want to develop the tools I want to use them comments. Now that that's that actually gets back to why I joined EDB and in 2006 so before EDB I worked for SRA Japan. So, SRA is a big integrator in Japan and they had a very powerful Postgres product Postgres is still hugely popular in Japan. And what happened was that we were trying to move into new markets and new geographies and stuff and the problem was that Postgres was a great database. Okay, but it was just a database. And typically when you buy a proprietary database, you get much more than database you get the backup you get the monitoring you get the failover you get the, you know, you get a full suite of things and and the idea is I felt that Postgres was a great database but it needed that toolset integrated around it because the open source ecosystem at that time around Postgres wasn't big enough to do that. And Enterprise EDB had had funding so we could fund the development of monitoring tools fund the development of failover fund the development of backup, you know tools and so forth. And that was, you know, tremendously popular and companies who wanted to use Postgres were really happy to do that. We're happy to pay EDB extra money, you know, beyond using just free software to have that full suite of tools in a way it's the best of both worlds. You've got an innovative core which is developed by the open source teams, but then you've got sort of the bread and butter what we call the last mile of service is the way I think of it. I think of a telco last mile of service is always the hardest that bread and butter backup, you know, monitoring failover support training. Certification kind of thing where companies actually do a better job. Okay, so there isn't like for. So, I think that's what the person is addressing they're saying, I'm happy by to get a database but I don't want to be fiddling around with it I don't want to be responsible for integrating a whole bunch of tools and testing and make sure they all work. I just want something that works and when I buy work or buy DB to buy Microsoft. That's what I get that's what I want I want the innovation, but I also want that. There's a whole ecosystem around it and EDB has done that. And what you've seen with postgres pro and crunchy and and an SRA OSS in Japan. And a number of other companies is now developing a better suite of tools around postgres, some of them proprietary, some of them are all open source so for example for failover, we have a very powerful cool tool called the trony now, which we didn't have before. And it comes out of Zalando in in in Germany but but it's developed around the world. You know we've got a very cool, very nice backup tool and PG PG background all by crunchy data. That's open source. Right so now, you know fast forward from 2006 to today. We're now filling in some of the tools have been around for a couple years so they're not new, but but during that span we filled in that ecosystem of tooling around it. You still need support, I think you still need a person to call, you know, honestly, having somebody databases are very important the data in there is critical, paying somebody to verify that your setup is working properly verify that the configuration parameters are right, being there for when you have a problem I don't think that's going to go away I don't think the idea of. Let's just download all the software and just dump it on a server and run with it for an enterprise is working is going to work, because you have to be, you know if it's a one if you're if you're if you're installing a one off system, you can do that but if you're installing hundreds of systems, you need to have that whole ecosystem around you to efficiently deploy that many servers. And if you look at the cloud that's a great example where not only if the database is moving there, but you now have a whole ecosystem of backup and fail over and monitoring right, which is now developed by the cloud so that's another case where you're not having to fiddle with a database you're getting not only a database but you're getting a whole ecosystem around it. Is that going to cost money yes, is it going to cost money to get support from somebody for a non cloud deployment. Yes. Do containers make that easier. Yes. But I think the crux of it is that open source is a very evolving system. It doesn't just give you one solution. You know, if you're running Oracle you're going to have to use the backup tool right with with Postgres you can use any backup tool, right you can use any monitoring tool you can use graph on or, or Prometheus right you can use. You know, you can use barman you can use your background so you've got a whole bunch of choices, and typically getting somebody in your organization, who will help you work through that process, picking the right tools that meet your needs, and making sure that you have a very clean deployment for your is is money well spent. So I think that's the answer to that question that the yeah I've talked about free I talked about how easy it is, but ultimately the support and the sort of tooling around that database often requires some expense for the organization if they're deploying its scale. Lovely and final question before we let you go verse would love to hear opinions on how databases in general are painted now. It seems that many of the quote unquote new developers interact with database because they believe it's unreliable old slow, etc. Yet they're quite content building systems that rely on memory caches and non durable data. Yeah, so I guess I have two answers that the first answer is that a lot of people are relearning the things we learned in the 70s and 80s about relational. Back to see I Sam, which is, you know, which we used to use for C tree it was used uses that as a sort of I Sam application language for, for, for data store for applications. There was a huge bunch of complexities around that for an application developer if you're just doing one thing, it kind of work but when you need to take the data use somewhere else where you had problems with crashes it became this ugly thing you know really spent a lot of time kind of clean up. I think there's a definite trend toward more atomic more siloed application stores. So you write an application it has, it has its own data store it may be no sequel, it may be in memory. Somebody else writes another application and they use a different, same day to store different data store, but in a different location and then third person does that. But organizations typically when they do that. They find that data governance becomes very hard and I do have a talk about although it's not linked to in this slide but what's happened what's happened it's basically called data data. It's called data horizons with Postgres it's on it's on my website, and it talks about the fact that in the 70s and 80s. Most of your data ingestion was really from a keyboard or punch cards or some kind of terminal and people would type and they type in an order or whatever. So really fast forward to today you have GIS data you've got data from applications you've got streaming data you've got Internet of Things data, you've got data warehouse you've got to do right, so you can always new needs for your data. And some people think that relational I can't handle that they can't handle the volume it's too hard whatever. The problem is that you can't, you can get one application up with one specialized data store, but if you need to integrate that with a data warehouse if you need to worry about data governance privacy and, and sort of link that to other data or do analysis on it. Or even upgrade the application and all of a sudden the data format changes. The long term life of that application become very complicated. So it's sort of like the opposite. It's sort of like the same $4 chicken to get in except you can't get out of the supermarket right, you went to the supermarket to buy chicken. Now you can't get out. Because what happens is a lot of these very simple data stores are very easy to get started. But if something goes wrong, if you have some kind of crash or corruption or you need to integrate it with something else you need to do data analysis or your application needs change, you're kind of stuck. And what happens the first year of the application everything looks good but but you think of the lifetime of the application. Most of the work of the application is not ready the initial version it's, it's writing the fifth and seventh and 10th version, eight years out. And a lot of people realizing when you're writing when you're taking a very simple data store and you're trying to keep it alive as data needs change over a long period of time. Relational is very good for that. But, but the simpler data stores although they're very easy to get the initial version going really struggle as the as the needs evolve and as the application evolves. And I think that's something that the industry has to sort of relearn. We kind of learned that when we left that sort of technology in the 70s and 80s, where we could have a relational system that contained data over decades potentially. And now because there's so much focus on agile and just get the application out. And don't worry about future versions don't worry about reliability don't worry about data governance don't worry about how we're going to integrate it later. A lot of companies are sort of learning. And maybe that's true maybe they only need the application for two years and they just shut it off. Right. But a lot of data becomes very valuable and has to live for a long time. It's hard to do that in in some of these very simple data stores and I think I think that's a lesson I've heard from some companies are some of our customers I've talked to her sort of saying we're done with some of these simpler data stores because we can't. We can't evolve in a unified way with these data stores but it takes a while to learn that. You know as I think the real change is that is that most applications don't have persistence. Like, you know, most applications they just start, they do some stuff and they shut and they don't have a long history. And those applications can be generated real quickly because hey they only ran. And if you want to make a new version and you don't need persistence to it, but anything that has persistence has to have a lot of that relational support around it. So that's very hard to do in some of these other other data stores. Well wonderful. Thank you so much I feel like you really hung in the line with us there. Thank you for your presentation. Thank you to all of our attendees for your questions and for your time. So with that, I want to thank you Bruce, I want to thank our attendees and I hope everyone has a great rest of their day.