Welcome to today's Postgres Conference webinar, Beyond Off-the-Shelf Consensus. We're joined by Dr. Rebecca Bilbro, who will discuss several case studies of global apps, both successful and otherwise, talk about the limitations of off-the-shelf consensus, and consider a future where everyday developers can use open source tools to build distributed data apps that are easier to reason about, maintain, and tune. My name is Lindsay Hooper. I'm one of the Postgres Conference organizers, and I'll be your moderator for this webinar. A little bit about your speaker. So Dr. Bilbro is a data scientist, Python and Go programmer, teacher, speaker, and O'Reilly author. As co-founder and CTO of Rotational Labs, an intelligent distributed systems company, she specializes in machine learning optimization and API development in distributed data systems. She's also an active contributor to open source software, and is the creator and maintainer of the popular Yellow Brick Library, an open source Python package that hooks into the popular Skikit Learn API. You're going to have to tell me if that's right or wrong, to support visual feature analysis, model selection, and hyperparameter tuning for data scientists and machine learning practitioners. Welcome. So with that, I'm going to hand it off. Kicking away. Welcome everyone. Can you hear me okay? Sure can. So welcome to beyond off the shelf consensus. As Lindsay said, I want to start with a little bit of a poll to get a feel for what type of context each of you is coming from. So I'm going to our first question here. So I want you to kind of put into mind the app, whatever app it is that you're currently working on, you know, whatever, whatever that might be. And think about how much consistency does it require. And so this might be a different answer from how much consistency does it get in the current implementation. But if you think about how much consistency it needs, you have these three options. Eventually consistency is good enough for this app, or we require strong consistency, or I have no idea. And any of those is a fine answer. And so I will give you a chance to think about that. And I think the way that we're doing this is that you'll raise your hand. So can I see a show of hands for the first answer eventually consistency. Okay, I see one vote for that. How about option to strong consistency. All right, how about option three. I don't know. So perfectly fine answer. Okay. Two or three votes here. All right. So that seems like the winner of the options. So let's look at our second question here. So thinking about that same application that you're working on. I'm concerned, are you about compliance with things like GDPR LG PD CCPA. So we've got three options at, you know, you did the cookie banner. I'm not on the roadmap, but you aren't there yet. And then third, you have, you know, total control and visibility over where user data is stored and replicated for your app so you are, you know, not worried about compliance. So votes for the first option. We have the cookie banner. Isn't that enough. Oh, I got one vote for that cookie banner. How about for option to it's on the roadmap. So data compliance on the roadmap, but we're not quite there yet. All right. One vote. One vote there. How about third option. I, you know, total visibility and control over where data is stored and replicated. So that looks like two votes there. So that's great. That's definitely where you want to be. Okay, last question. I'm thinking about this app that you are working on. How well does your app support internationalization and localization. So three options here. You can vote that you track geographic deployments and data replication so you can guarantee a consistent user experience for users all over the world. Or second option. You know, you haven't really started thinking about global markets yet in your implementation of the technology, or third option.  So votes for option one tracking. We're tracking geographic deployments. One vote there. Option two, we're not quite there yet in terms of thinking about global markets for our app. Two votes there. And then three votes. Sorry. Counted wrong. And then last option is we do do internationalization and localization but it's manifest on the front end, you know, in the web application side, not the back end. Okay, just taking a few notes. We're engaging in our poll, all of these questions are going to come up in our discussion in the presentation here today. So the main things that I would like to talk about in today's talk are these so first, I want to go over what is consensus and so for some of you this might be a review, you know, if you study distributed systems in school. So for some, for some of you this might be familiar but we'll talk about Paxos raft and some of the optimization so how consensus actually works and why it's important to the apps that you're building. And then we'll talk about commercial manifestations and consensus so these are going to be the things that you're either using, or that you know you are hearing about that your colleagues are using it that allow your applications to have consensus. Then we're going to talk about some case studies for real companies that you will recognize who started with some kind of off the shelf consensus solution and decided to change that because of experiencing growth which is, you know, it's the good kind of problem. It's a downside of success. And then last, we'll talk about an idea that I would like to suggest for an open source consensus API that I think will help address a lot of the problems that come up in these areas. So first, a little bit about me. My name is Rebecca bill bro. As Lindsay said, I am the founder and CTO of rotational labs. I'm also a teacher so I teach at Georgetown University in the continuing education campus. I teach data science and machine learning. I've written an O'Reilly book that specifically about doing natural language processing in Python for big applications. And I am the co creator and maintainer of a Python library called psychic yellow brick, which wraps psychic learn. As Lindsay mentioned in her introduction, and actually psychic yellow brick will make an appearance I can learn and psychic yellow brick will make an appearance in this talk towards the end. So I promise all of these things are connected. Speaking of connection. I'm fairly discoverable on social media. So my handle is the same on all of these platforms so if you're looking to get in touch with me. It should be pretty easy to find me at Rebecca bill bro, regardless of the platform. So, in terms of what I do at my day job. My job is to think about this question. But so I'm really, you know, my role at rotational labs is to think about the nexus between distributed systems and machine learning and think about how we can produce data systems that are a little bit smarter. And when I say smarter. That can mean a lot of different things, but generally from a machine learning perspective what it means is systems that are a little bit more flexible. And I think that they can attune themselves to the context that they're given to the data that they're given and they can learn and respond and change and sort of become tailored for a context over time, given enough information. That's really kind of the big question that I am working to answer in my role and I think that you'll see that part of, you know, part of this talk is related to this question. And, you know, thinking about the role that open source software has to play in answering this question in a way that will be sustainable for the technology community. So, let's talk a little bit about the basics so for some of you this might be a review. But the review is important because these algorithms are very complicated. And I will show you just how complicated in a moment. They're very complex. They're, they're difficult to prove and they really for, you know, most of their lifetime have been the domain of academia, and really have not been the domain of industry, meaning that most of the vocabulary, most of the understanding here about consensus really lives in universities and not in kind of everyday development contexts which is, you know, part of what I think we want to try to change together. So let's imagine a very simple use case, we have a single database, you know, let's say it's a single postgres database, and what we want to do is we want we have a single server that's handling requests from clients, and it's able to update the values in the database. And clients can do three things they can give us a key and we'll pass back the value that's put at that key will we can put new values to keys, so either putting a totally new key with a new value or putting a new value to an existing key. And we can also delete keys. So let's just think about this context is very simple. So in this simple situation, the order of operations is pretty straightforward. Right. So, it's probably first come first serve. In the case of a single server, it's pretty straightforward to keep the operations consistent so what is consistent means so consistency is one of the big, you know, issues one of the big important things in this question that we're going to be talking about so let's make it all in the same page that consistency means that the system, whether it's a single server or many, you know, distributed system that it responds to requests in a predictable way. So let's talk about what happens when there's a failure in the simple single server system. So actually failures is the norm. Right. So I think that, you know, we probably all been in the shoes of the person who brought down the system at least once failure is routine. It can happen because of human error. It can happen because the power goes out. It can happen because the network goes out. There's no crash. There's all kinds of things that can go wrong. The problem is that when we just have a single server system. When failure happens the entire system is unavailable so nobody can look up their values nobody can write new values and even worse, if there was any information that was in transit, when the shutdown when the crash happened that data is probably going to get lost. So we will lose all of the, the information that was in movement when the crash happened which is not great. So this is actually why we have distributed systems right to the whole point of a distributed system is to allow us, you know, to face the reality of failure that is very routine and normal. So, you know, the purpose of the distributed system is to have more servers, you know, and so in case the server fails. The other server is available and can answer requests and then what we have to do is we have to replicate data, you know, between the two copies of the database, you know, say synchronized. So it's actually very hard to keep them synchronized though. And that actually gets worse. The more servers we have in the system, the more time it takes to synchronize. And so the way that that would manifest for you as a developer or a user is that somebody might put a value and have that request that put request handled by one part of the system. And then immediately fire off a get request to make sure that the put worked, except that the get request goes to a different part of the system that doesn't know about the value yet. And then we could get a not found error and this this is a common thing that happens because that that that latency means that the system is waiting to synchronize. So there's another kind of problem, which is concurrency and this is another big issue. This is one of the main issues that consensus is trying to solve, which is what if we both try to put a value to the same key. It's actually meaning that from the perspective of the system, they happened at the same time we both asked at the same time. So, who wins. That is actually a very hard problem to solve. You can't use just like system clock time. If the system is really spread out, then those times are reliable so you have to end up using very complex vector clocks to make sure that we're ordering things in a way that is consistent. So there are some options. You know so when when we say that the you know system is consistent. That doesn't actually just mean one thing. We have different levels of consistency, and that goes all the way from strong consistency down to, you know, I guess no consistency is, you know, not on this list. But in terms of what you're used to seeing it's probably one of these four. And so we talked about eventual consistency or I mentioned it in our poll. Data systems that exist today are eventually consistent. So what that means is that if the requests stop, then eventually the system will become consistent so you know it's always getting more consistent and it's just a matter of catching up with the put requests. And really actually, you know, probably almost any application you can think of is likely eventually consistent, even ones where it might surprise you. The truth is that, you know, a lot of those applications like these social media applications and stores where you're, you know, you're, you're buying something. Privileging is availability. Right so they're, they're deciding to privilege availability over consistency, because they want you to visit the store. And so you visit the store and you check to see if there are any laptops left. And so they, you know, sure there's laptops left, even if they're not totally sure if there are laptops left because maybe the system hasn't fully synchronized yet. The problem is that there are a lot of cases where that's the eventual consistency is not really tolerable. So these are applications that require strong consistency, which means that any get request is guaranteed to return the most recent put. And there are not actually very many strongly consistent applications, even ones where you kind of wish they were strongly consistent and the one that I always think of is buying airplane tickets, right.  You know, and that is what happens when you have eventual consistency but you want to have strong consistency. So, increasingly, I think there is going to be this demand for strongly consistent applications, because people are going to not be willing to accept eventual consistency as users. And people just are have been used to developers have been used to using eventual consistency as the model because we sort of, I think, believed that strong consistency wasn't going to be responsive, responsive enough that we needed to privilege availability. But that's I think that's changing with some of the new tools that are coming out some of the new databases that are coming out, which we'll talk about. So, essentially, the question is, how do we deal with this, as our systems become more distributed, how are we going to deal with staying consistent across many replicas, and the, the kind of classic solution is Paxos. So Paxos is an algorithm that's been out for decades, was published by Leslie Lamport, you know, in this kind of Indiana Jones type article that he kind of, you know, has the sort of tongue and cheek feel, but it's a very serious solution to a serious problem about solving consistency. So the way that Paxos works is that you imagine each service, each server is a state machine, and it can apply commands in a single order. And that order is the log, the log of operations. And so the question is how do we how are we going to enter things in the log, so that the log remains consistent across all of our copies. So the question is that a client makes a request and the server that gets the request requests a slot in the log, using the prepare phase, and so that prepare phase goes out to the rest of the replicas. And if they have that spot three, they reserve it and they respond. If enough servers respond yes to the prepare phase the originating server sends an accept phase so in a second round of communications that says okay we're going to write this value to this slot in the log. And if enough of the other servers respond in the affirmative, then that entry in the log is committed. And it's committed throughout the entire system and this is true. And it can be proven, mathematically true, even if servers fail. So if a majority of the servers are still running. It can prove that, or Lamport can prove proved that the system can progress and make decisions and make them consistently so that every log ends up the same. And as soon as any server that's died, comes back up, it can be brought back up to date by synchronizing with the logs from the rest of the system. The problem with Paxos is that that's a lot of back and forth communication, right so prepare accept is a lot of rounds of communication so as you might imagine, it can get slow. And so there are some optimizations that are designed to remove some of the communication to speed things up. And so raft and multi Paxos or two algorithms that were developed in response to Paxos that are designed to be optimizations in this way. And essentially what you can, you can do is you can skip the prepare phase by electing leaders. And in, you know, the fashion of following the leader, if we know that we have a leader already, then we can skip the prepare phase and just go to the accept phase. And the problem there is that if a leader dies, and remember failure is very common. If a leader dies, we need to be able to detect that and elect a new leader. And so there does end up being a lag, usually in the phase where we have to do an election to create a new leader. Other types of optimizations like Mencius pre allocates slots in the log to different machines, like in a round robin fashion, which allows everybody to work more quickly, because there's less checking with each other. The problem there is that you can end up with empty slots in the log. And so you have to apply compassion to manage those empty slots. Other optimizations take advantage of the fact that a lot of the times the updates that we're making to data have no collision, right, so we're making updates to completely different keys values that don't interact at all. And in those cases, we can use something like epaxos or fast paxos to essentially just fast forward and and apply commits, you know, assuming that there's no conflict. The downside there is in the cases when there are conflict. Everything moves slower even slower than it would with paxos. So, none of the optimizations is a perfect solution none of these algorithms is perfect and I hope what this is starting to crystallize in our minds is that there is no perfect consensus algorithm that works in all situations. Right, it's very contextual. And it's important that you know what your application needs, and that you want to make an informed decision about what your application needs. So let's think about really what's available to us, you know, on the market right so what are these kind of commercial consensus solutions. In 2001, Landport published a new paper called Paxos Made Simple which was designed to simplify Paxos enough so that industry could maybe try to implement it. And you can tell that he succeeded right because it only took five years of Google using Google scale resources to successfully implement Paxos in Chubby. Chubby is Google's distributed locking service, and it was designed to rescue the Google file system, which at the time was really struggling with the consistency issues. And so, you know, about four years later, Apache offered an open source version of Chubby that doesn't exactly use Paxos, but uses something similar called zookeeper atomic broadcast, which is an optimization of Paxos. So zookeeper now is probably many of you have encountered zookeeper in your, your work. And if you haven't encountered zookeeper you probably know about at CD. So at CD was originally released released by core OS and 2013 at CD is not based on Paxos. It's based on the raft algorithm that I just mentioned. And it was designed to manage clusters of Linux container. And then the, but what's interesting is that even though that was the original intended use in a year later Google launched Kubernetes and Kubernetes uses at CD for the configuration source and now, if you're using consensus, you're probably probably encountered it through one of these, one of these. So the, the issue is that I, even if you have found these solutions, it's not sort of guaranteed that they've worked very well for you. So there's this very good paper by all these young and tropical activists from 2016, where they talk through kind of what these options are on the market, and talk about kind of what some of the problems are with the options which isn't that the options are bad. It's just that they're not very well understood and zookeeper is a great example where it is a paradoxical property that if you use it improperly which is possible and maybe easy to do, you actually make your, your application less scalable, rather than more scalable, which is the whole goal of zookeeper. And really what these researchers found is that even as the choices for consensus solutions have increased the confusion about what to use and what fits best for your use case has also increased rather than decreased. And I think that that's the problem that we want to try to address if we can. There are some other ways that you might have encountered commercial consensus solutions, and probably the, you know, the two big ones are spanner and Aurora. So spanner is Google's distributed, globally distributed database, Aurora is Amazon's solution. And they are both very performant, but they're performant when you consider the use case of Google and of Amazon. And if you are not, you know, building things like Google products or Amazon products, then the probability that they are well tuned to your specific use case is relatively low. So either you're getting optimizations that are not really appropriate for your application, or you're spending way more than you need to spend. There's some newer solutions cockroach and you go by are probably ones that people and guessing postgres. People have encountered, since they really are trying to be the distributed solution for people who are using relational databases at fauna and titanium DB or two other options that, you know, you know, kind of offer something for the, you know, no sequel non relational kind of model. But you know, hopefully, you know I'm not dissuading you from going global right I feel like I've been suggesting that, you know, more global equals more problems, but the reality is that more global equals more users. So the best and fastest way to increase your user base is to become a global app. But the scaling is, is hard, even with these solutions so the larger the quorum, the slower your system will be to respond. And it gets worse as the, as your data centers get further apart, right so the latency increases, you have a greater probability of network partitions. And worst of all, servers are going to respond to co located clients, which in some cases like, you know, economies like game economies has the effect of privileging players who are have the, you know, the random chance or luck of being born near a big Amazon region or Google region. You know, at the expense of people who live a little bit further away. And that kind of can you road people's trust in these kinds of economies, which also leads into voting like trust and voting systems and health systems. So it's actually quite serious. In some of these cases. You know, speaking of regions, commercial cloud really is designed to work best in a very few places. They're banking on the fact that there are a lot of people in these places and that the people in these places have a lot of money to spend. If you have users who live in one of these in not one of these places. Your user is likely to have a worse user experience of using your app potentially such a bad experience that they cease to become users or never become users of your app. So being global is a lot harder than it should be I think. And now, you know that the worst of all is that it's getting more complicated all the time, you know when we did our poll. You know, many people sort of said, well we're, we're ahead of this problem of GDPR. The challenge is that there are new regulations that are coming out all the time. You know if I was going to give this presentation, you know, two months from now I'm pretty sure this slide would have even more things on it. Because these, you know, data tendency and privacy laws are just coming out. There's new ones all the time. And it's becoming, you know, much, much harder to make sure that you know and can control where the data where your user data resides and where your user data is getting replicated to buy the internals of the system, potentially without your awareness. And that's, that's potentially a problem right. And so I want to, you know, talk a little bit about a few companies who have tackled this problem and I don't want it to sound like I am picking on these companies because I actually see these companies as trailblazers. You know, people who have, you know, really gone and leaned into these problems and tried to scale and grow and get kind of global usage and really kind of come head on with some of the problems, hopefully problems that we can all learn from. The examples I want to talk about are Niantic's Pokemon Go signal and Dropbox. So potentially some of the people in the audience are Pokemon Go players or maybe your children played this game. And so if that's the case, probably you remember what happened when the game was released. And essentially what happened is that it was a disaster. The servers were unloaded or overloaded because the game became popular, much faster than, than they were ready for. You know, they did their best right they hosted it on the best of the best they hosted on Google cloud, and they have this sort of assumption that everything would kind of scale naturally. But it did not. I did not scale. And what happened is that, you know, a lot of people couldn't even download the game and then people who were able to download the game couldn't log in, couldn't find, you know, the, the artifacts. And really, you know, it caused a lot of UX complaints for the poor engineers who were trying to maintain the system. So that's an example, I think, you know, a company that really tried, you know, did everything they could to be ready to scale for a lot of users and they, they had the good kind of problem where a lot of people signed up. And they were not, they were not able to serve all of those people. Another example, which is one of my favorites is signal.  So, you know, in, it was the beginning of January 2021. What's up updated their privacy policy to save it that, you know, all users were opting into sharing data with Facebook, and a few days later Elon Musk tweeted that you should switch to signal and everybody did. And in 24 hours, they went from 10 million users to 50 million users in less than 24 hours, and it brought the entire service down. I have been a signal user for for a while and there were three days where I couldn't use signal at all.  So this is, you know, another example signals built on AWS. And the scaling was sort of not automatic.  And then my last example here is Dropbox. So, potentially there's some Dropbox fans in the audience also. But if you'll remember, in about 2015 2016 Dropbox decided to, you know, quote unquote breakup with AWS. And they decided to move all of their user data on to a new in-house network of data centers called Magic Pocket. That's their, their distributed system is Magic Pocket. And this, you know, this transfer of data involved like actual physical transfer of data. So there were trucks with, you know, with data and moving across the country, you know, trying to, you know, physically move all of this data. And it was not easy. And it was not straightforward and it was not cheap to do. But, you know, as you can see, since they made that change. You know, Dropbox's annual revenue has steadily increased. There is maybe a question about what it will look like in 2021. Because that was, as you'll remember, a bit of a strange year in terms of people's data usage patterns in 2020 and 2021. A lot of things have changed. But, you know, I think that it tracks that there's probably some relationship here, you know, that using, hosting all of their data on AWS was cutting into their profit margins. And they fit the bullet and decided to break away and build their own solution and have been able to see a lot of success. So I think that's a very interesting story. So, but I hope that the takeaway isn't that like, you know, you should adopt one of the solutions that these companies has has used. I hope that the takeaway really from this talk is going to be that different systems need different solutions.  You know that better than, you know, probably anyone else. So we need a better way, I think, to build our own solutions and to me, this feels like an open sort like a open source problem. So, I think that the solution is that we should all work together and build an open source API for consensus. So that's my pitch to you. My hope is that you will be interested in collaborating on this new open source project. You know, so I'm going to take a bit of a left turn just to convince you of why I think this is possible. There is a so you know at the beginning of the talk. I think that Lindsay mentioned scikit-learn, you know, this is a library that I'm very familiar with, you know, as you know, I'm not really a databases person I'm a machine learning engineer. So, most of my experience comes from most of my open source experience comes from machine learning world. I think that the scikit-learn story really has an important lesson for us if we're going to work together on this project. You know essentially what happened is that scikit-learn started as a couple of graduate students working together on a Google summer of code project and what they were doing was converting code that they had written as part of their PhD programs into a common API. You know, and I think it's important to really underpin here that before this happened. In order to do machine learning, you had to go to graduate school for like five years or 10 years and to do machine learning you had to write machine learning code from scratch in Fortran or in C. You know, there wasn't, there wasn't open source machine learning before, before this. You know, so you would write this code kind of by yourself you would publish your dissertation and then you know who knows what would happen to the code and so the this group of graduate students got together. So I had to think of a way to make all of the different algorithms that they had worked on independently, cohere to a common API. And in 2010 a French company that employed many of these these graduate students after they finished. So a French company called Enria released the first version, the first open source version of scikit-learn. The authors of the package publish this paper API design for machine learning software which I definitely recommend that you read it to short read. But really this was the, you know, the first time that many of us were even starting to think about how it might be possible that you could take all of these complex different machine learning algorithms and house them under a common API. So essentially the, the intuition of scikit-learn is that every machine learning model is either an estimator or a transformer. And if it's an estimator, it can fit, which means that it's learning from the data that you give it and it can predict, which means that it can predict off of a new value, or it's a transformer meaning you fit it to learn the data space and you transform the data space and produce a new data space that can get used in downstream machine learning. But this idea that you could whatever it was a logistic regression a support vector machine, even maybe a neural network model, any of these types of complex algorithms that function in completely different ways could essentially be boiled down to either an estimator with fit predict or a transformer with fit transform was revolutionary. And one, there's over 2000 contributors to this project, you know, it has 47,000 stars, it's, you know, GitHub says that it's being used by, you know, 250,000 projects, and that includes scikit yellow brick but I'm confident that it's being used by a lot of other people than that this is, you know, the main open source machine learning library in the world. And I could qualify that and say it's the main Python machine learning library, or that it's even more popular than TensorFlow or PyTorch but it is just the most, the most important, you know, machine learning library out there right now because of this common API. This is another project which is the one that my collaborator Benjamin Bangport and I created about six years ago, borrows from this intuition. And so the intuition is that there is no such thing as a best machine learning model in the abstract. So support vector machine, logistic regression phase. Ensemble decision tree random forest. None of those is the best machine learning model, because it all depends on your dataset on your use case. And so the only thing that you can do is have a series of best practices for identifying the best model for your use case. And that's what yellow brick is for. And that's what I think we should do for distributed systems right I think we need to do this for consensus and really just kind of say there is no such thing as the best consensus model the best consensus algorithm, it does not exist. What exists is a lot of different use cases. And so from those use cases I think we can engineer an API that allows us to experiment. And so this is, this is kind of what I have so far it's sort of a little bit of scratch work code. You know, and kind of an idea of what the components of the API might be where we have to figure out networking so what does it mean to send messages between replicas in the system. How do we decide who's part of the replica network. How do we identify when somebody is joined. How do we reconfigure if somebody leaves the network decision making right so do we have a leader oriented system, a leader list system. How do we detect conflict how do we do elections. And then finally how do we decide when a decision is final and it should get committed to the log. And I think that if we can kind of think about this enough and think about enough use cases. I think that we can build an API around this and make it open source, so that anybody can contribute, anybody can look at the code. Anybody can use it to experiment for their use case and identify what makes the most sense for them and for their application or for their organization. And so that it's free for everyone to to interact with. So, with that in mind, I will make a sort of call to the audience. If you're interested in contributing to this project, I would be delighted to have you reach out. You can visit this tiny URL to let me know how I can get in touch with you. And also if you just want to share some ideas about what you think this API should do what types of behavior it should support, you know, any problems that you foresee. That would be incredibly helpful, very valuable, I'd be so, you know, so grateful for any kind of contribution, large or small. And if you are not really in a place right now where you're interested in contributing to a project, I completely understand it's been a tough year or two. And if you just want to vent and talk about some of the problems that you're observing that you think might be informative to me or to the project, feel free to shoot me an email. I'm Rebecca at rotational.io, and I'd be happy to listen and learn from you and to learn from what you're observing. And that's all I've got for you. So thanks very much for coming to the talk and for your attention. And I'm excited to hear from you. Very thorough, really exciting stuff. I want to thank, first and foremost, Rebecca, thank you so much for for joining us for giving us this awesome presentation and sort of thing to chew on. And then I want to also thank our attendees for spending a little bit of their day with us. So I hope to see you on future Post-Cast Conference webinars and have a wonderful rest of your day.


Welcome back everybody. Jeff Frick here with the key. We're having CUBE Conversations in the Palo Alto studio. We're getting to the end of the conference season so it's nice to take a break and do some interviews from the studio instead of from the road. And we're excited to have our next guest. He's David Green. He's the CEO of ZeroStack. David, welcome. Thank you very much. Absolutely great to have you here. So for folks that aren't familiar with ZeroStack, why don't you give them kind of a quick overview. Great, so ZeroStack's focused on building a new generation of private cloud infrastructure where IT can simplify their operations through automation. At the same time, we retain control of the environment. We're really trying to deliver that public cloud like experience to users while giving IT the type of control they want to have. But just so I understand, so a lot of pressure, a lot of benefits to public cloud and everybody wants it in the private cloud, right? There's a lot of issues with public cloud that some data that can't be there, this or that. But there's a lot of attributes of public cloud that people just love. So how are you kind of square in that circle? It's interesting, right? So in the last 10 years that I've been working on cloud, this has been one of the recurring themes. It's one of the things that I think is so exciting about ZeroStack, right? You talk to a customer, you talk to an IT customer and they're like, I love the convenience of the public cloud idea. It's going to be so simple to operate, right? But I need to know where my data is. I'm accountable for security. I'm accountable for costs. I need to have control of the environment. Why can't I have these two things together? And that's what we've tried to merge together. So from an IT standpoint, it's still going to look and feel like that on-premises, IT management infrastructure that they're comfortable with. From a user perspective though, it's going to have the same sort of self-service on-demand that they're used to getting from a public cloud. Think of going to a web application that looks and feels like Amazon, being able to pick the resources you want, but have those resources becoming from resources running within your data center, okay? And then be able to add to those resources the tools that you need to be productive in the environment, really value-added for the developer. Again, in that infrastructure that's living in your environment. And to be clear, you're not replacing that existing infrastructure that's in my environment. You're really offering kind of a cloud virtualization overlay or the UI? Yes, you use the resource, use the servers you've got, the storage you got, the networking you've got. Pull those together into a pooled resource. Again, back to the idea of a private cloud. Pull those resources into a single set of resources that can be accessed for a variety of use cases that support different applications in the environment. And so what's the impact? Because obviously, if there wasn't a benefit to doing it that way, people wouldn't be doing shadow IT and whipping out the credit card of Amazon. So when you do this in an enterprise, what are some of the benefits they see? I mean, I think there's a couple. One is the radical simplification of operations. From an IT standpoint, running a private cloud is hard. If you look at people who have built VMware environments, which is kind of the most typical frame of reference we see, it's expensive to set up, it's expensive to operate, it's complicated, it's hard to hire the people, you're trying to get away from that burden. That's the first driver we see for people. From a user standpoint, it's really about that speed, that how does IT keep up with the demands of its users and move at that same pace, right? So trying to pull together those two sets of benefits into one is the way the package that seems to drive their business. And that's really hard, right? Because IT used to just be keeping the lights on and keeping everything running. Now it's a core piece, if not the really strategic piece of the business. We talked a little bit before we turned the cameras on, you know, about banking, right? All banking interfaces these days are electronic. There's nobody going in to talk to the teller and giving them a check. So we'll go back up here. Remember that IT today was fundamentally built around the back of office. It was fundamentally built around stability. I mean, remember the days when a change request was a physical piece of paper with 20 signatures on it? That you ran around the office, right? Every now and then. And occasionally, but you're supposed to, right? But that was the mindset, right? And I think in a traditional back office set of applications, that worked great. The problem is today when the business is presenting itself to customers through software. Right, right. And trying to move at the speed of its customers, those old IT mechanisms built around stability just can't keep up, okay? And so that's the gap that we're really trying to bridge with the zero-sec solution. Preserve that knowledge set, preserve that control, preserve that data sovereignty that IT can bring, that on-premises infrastructure can bring. But at the same time, still operate at a pace and a speed that a more dev-ups organization is looking for. Right, because the pressure on IT is only getting it. It's only getting it. It's only getting it, right? It's only going more. And if you're not using software to find automation, you're falling behind. So I would imagine there's some second order impacts that have to come out of using a tool like ZeroStack in terms of utilization and those types of things that are probably some great opportunities. Essentially, we really view the heart while the solution looks and feels more like the interfaces and management, the heart of the solution on our mind really is our machine learning capabilities. It's the ability to take a set of information from the application layer, from the operations layer, from the infrastructure, and from that start to make educated judgments as to how the infrastructure can best be utilized to support the business and support the applications. So where should workloads be placed? How are we going to plan for capacity? What needs to happen next in the environment? How should we take corrective action? These are all the sorts of things that we can start to do. And again, what we're really trying to do is we're trying to automate some of the mundane tasks that are held back IT and slow down IT operations. And instead let them focus on areas where they can be of more value, consulting with the business, helping to move things forward, helping to address higher order questions. Because really, that's another huge opportunity for cost savings or efficiency for the customer, right? Because the traditional methods were not very efficient and you had, since they weren't efficient, you had to have a lot of overhead and you had to pre-order stuff and you couldn't flex. So you're now with your automation and machine learning helping to better utilize those resources on just pure infrastructure. And that gives you probably the cost benefit that we see with a zero stack solution, right? By getting better utilization of the infrastructure that you have, you'll have a more economical solution going forward. Now we have customers are getting a 10x return investment by using the zero stack solution over other cloud solutions they looked at, just by getting better intelligence and better automation and better operational clarity about what they're doing. So then do you partner then with HP and a lot of the infrastructure providers who talk a lot about hybrid cloud because clearly, they're vested in keeping a big piece of the cloud inside their walls. So in our model, we view ourselves as a software company and so we're going to add that zero stack software solution on top of your infrastructure choice. And so that could be Dell, that could be HP, that could be Lenovo, all the kind of leading hardware vendors have been certified to work with our product, right? We're going to add our software on top that to create the cloud infrastructure. Then we're going to add our management applications on a user self-service applications on top of that. And that's where you can give you the top to bottom full stack solution. And that full stack is really important, right? Because if you want to be able to take automated actions, you want to be an optimized infrastructure, you've got to be able to not only interface with the users and meet their demands, but also translate those demands down to actions you're taking on the infrastructure. So we're going to be able to do that full stack top to bottom. So just a little bit more background on the company, how big are you, how long you've been around, how many people, funding? We're a startup here based in Silicon Valley, Mountain View, California. We're a Series B company. We're proud to have our first set of customers working with us right now, actively exercising the products and fantastic big enterprise projects. I'm looking forward to coming back and tell you about it as I finish up. But really all from the theme of people who are unsatisfied with the solutions they've had available to them in the past and trying to figure out how they're going to move forward with a better, more flexible, easier to operate cloud solution. All right, well David, we look forward to watching the progress and getting an update in a few months. We look forward to it. All right, David, thanks for taking a few minutes out of your day. I'm Jeff Frick, he's David Green. You're watching theCUBE. Thanks for watching.


The Kaduna State University Chapter of the Academic Staff Union of Universities, ASU and the students have rejected the proposed 500% increase in tuition fees by the government. They stated that if a monumental school fees increase was allowed to stand, it will force about 75% of the students to drop out of the school, causing massive youth unemployment and restiveness. ASU branch chairman Dr Peter Adamu decried that the consequences of the upward review of the school fees would be unquantifiable. He urged the state government to rescind the decision, stressing that it was not the best time to increase tuition due to the present economic instability in the country. On his part, the Commissioner for Education in Kaduna, Shih-Hum Mohamed, defended the decision of the government, saying the amount being paid was no longer sustainable considering the enormous challenges of the school.


For more videos on People's Struggles, please subscribe to our YouTube channel. Hello and welcome to People's Dispatch. My name is Zoe and this is Around the World in 8 Minutes, where we bring you stories of struggle and resistance of common people united in the rejection of this unjust system. For our first story, we take you to Colombia for some exciting news. After 900 days in prison, Puerto Co. prisoner Julia Gil, the technical secretary of Congreso de Pueblos, was absolved of all charges and released from prison. Gil was arrested on June 6, 2018 outside the office of Congreso de Pueblos in the Colombian capital of Bogota. He was accused of pertaining to the insurgent group ELN and was charged with trafficking and transportation of explosives and arms. Finally, on Tuesday, November 24, the specialized judge of Cundinamarca absolved Gil of all charges and declared that he should be released immediately. On Wednesday night, when he was released, he was greeted by dozens of members of his family and friends and members of social movements and human rights organizations. Gil called on his release as well as the release of two others implicated in the case as a victory of people's movements. Throughout the 900 days of unjust imprisonment, Gil affirmed his innocence as well as the political nature of his arrest and incarceration. Gil and his movement, Congreso de Pueblos, classified it as another attempt by the Colombian state to silence those who dare to fight for a country with peace and dignity as well as another attempt to weaken the power of the movement. Gil is one of hundreds of social leaders in Colombia that has been persecuted due to his political work. Many continue to be held in prisons across the country today. For our next story, we take you to Palestine, where administrative Dite Nih, Mahir Alacros, was finally released from Israeli custody on November 26. Alacros had been on a 104-day-long hunger strike to protest his illegal administrative detention by Israel and demand his release. Close to three months into the hunger strike, his health condition turned critical, and the prison authorities were forced to transfer him to a hospital. There, doctors attempted to force feed him to break his hunger strike at the insistence of prison authorities, but ultimately failed. During the strike, Alacros lost more than 40 kg and experienced acute headaches and pain in his ears and joints, as well as loss of consciousness. His lawyers and human rights activists had expressed alarm that he was on the verge of death and irreversible damage was being inflicted on his body. He agreed to end his hunger strike after successfully securing an agreement for his release at the end of his current term of administrative detention, which would have otherwise been renewed for another term. Alacros had been arrested on July 26 by Israeli domestic intelligence agency, Shin Bet, and was accused of being a prominent member of Islamic jihad. He was then placed under administrative detention for four months without charge or trial. The Israeli authorities also withheld the supposed evidence they had against him from his lawyers. Upon his release this week, 49-year-old Alacros told reporters, I secured my freedom by embarking on a long, drawn-out hunger strike. The strike proved that the Palestinian people need to fight for their rights and liberty, and we can't wait for anyone else to end our oppression. My freedom is the freedom of my people, and we have won over the occupation with our will and determination. For our last story, we take you to Argentina, where the country observed a three-day mourning period following the death of football star and people's hero, Diego Maradona. 60-year-old Maradona passed away on Wednesday, November 25th, in the afternoon at his house in Buenos Aires after suffering from a heart attack. Maradona has been honored globally as one of the most talented and outspoken footballers in history. His performance on the field had countless standout moments, like the two goals scored in the quarter-finals of the World Cup against England, just four years after the war on the Malvinas Islands, wherein more than 900 young Argentinians lost their lives fighting for sovereignty and control over the Malvinas from England. Off the field, Maradona was also a force to be reckoned with. A staunch internationalist and anti-imperialist, the football star maintained close relationships with Hugo Chavez, Fidel Castro, Evo Morales and Nicolas Maduro. He was vocal about his support to the revolutionary and progressive processes on the continent and of the causes of the downtrodden globally. He was a great champion of the cause of Palestinian self-determination and famously said, In my heart, I am Palestinian. The loss has been felt deeply by millions across the world. In Buenos Aires, nearly one million lined up outside the Casa Rosada to pay their respects to Maradona, and people worldwide took to social media to share their own story of how Maradona impacted them and their memories of him. He will certainly be missed. Be sure to keep watching People's Dispatch and find us at our website, peoplesdispatch.org.


So how does the division method work? Well, as the complement to the multiplication method, you can kind of expect that it's going to be pulling out factors and looking at those. So while I'm starting with the number in decimal, I'm going to consider what it would actually look like if I'd represented it in the destination base. So, if I've got, say, A times 5 to the fourth plus B times 5 cubed plus C times 5 squared plus D times 5 to the first plus E. So, perhaps I have this number compacted into decimal form. And I'm going to divide by my destination base, which in this case is 5. So, when I divide by 5, each of these coefficients is something less than 5. I want to find out what they are. And dividing by 5 is going to pull a 5 out of each of these terms. All of these are bigger than 5 because they've got an exponent of 5 as part of them. The E though doesn't have any exponents of 5. It's something less than 5. So, when I do this division, I'll get A times 5 cubed plus B times 5 squared plus C times 5 to the first plus D. Now, D is out of 5. We factored out all of the 5s from D times 5 to the first. And the E didn't have any factors of 5 in it at all. So, I get a remainder of E. Now I have the least significant digit from my result. And I can go back and I can start again and do division on my new quotient. So, I'll divide this by 5. So, A times 5 cubed divided by 5 gives me A times 5 squared. I have this term, B times 5 squared divided by 5 will give me B times 5 to the first. C times 5 to the first divided by 5 is just C. And then again, D is something less than 5, so I can't divide it by 5. There won't be anything left afterwards. So, now I'm just going to get a remainder of D. And I have a new quotient. I can work with this again. So, I'll get A times 5 to the first plus B with a remainder of C. 5 this by 5. I'll get A with remainder of B. And now I'll get 0 for remainder of A. So again, I can read this down from top to bottom. And I'll get A, B, C, D, E. But what I've done here is I've pulled out factors of 5. And anytime I discover that I can't pull out a factor of 5, that must be the coefficient of the next exponent. First I found coefficients for 5 to the 0, then 5 to the first, 5 squared, 5 cubed, lastly 5 to the fourth. So, this method works by finding those factors kind of iteratively. Each time we pull out a factor of our base, we're left with some remainder. That remainder tells us the coefficient of the next term in our list. And we just keep working down our list until we run out of things that can have factors of our base. We're left with a 0 and we're done.


A bar of Benin Aware, the second, has asked the federal government to temporarily take custody of a thousand 130 stolen Benin artefacts after they are repatriated from Europe. That has made the controversy surrounding where the artefacts will be housed. The Benin Palace and the Edo State Government have been at loggerheads over where the artefacts will be housed, and while the palace wants the artefacts kept in the Benin Royal Museum, which will be built within the palace, the state government wants the items preserved in the proposed Edo Museum of West African Arts. But Oba Aware too, at a world press conference on Friday, at the palace said that there was no controversy over the issue. As an agreement had been reached that the artefacts will be housed in the Royal Museum, the artefacts were allegedly looted during the invasion of the Benin Kingdom in 1897 by the British led by Captain Philip.


Dear students, in this module, we are going to talk about the causes of overpopulation in Pakistan. As you know, one of the major issues nowadays being discussed even on national scale is the population of Pakistan. We are globally considered one of the major populations and with this pace of growth we are considered to be a threat to the overall resources of the world because the pace of growth of our population is pretty much higher as compared to the other countries. So growing continuously since the end of the black death, the world population has been considered to be grown very significantly and there has been significant increase in the last 50 years and due to the medical advancements and other technological advancements as well as increase in agriculture productivity, our world population has increased significantly. If we talk about Pakistan particularly, there are several causes of overpopulation that we need to discuss in order to solve this issue. The first one is the low standard of living. It is widely assumed that people with low income have more children. So they consider that we need to have more earning hands to increase our livelihood. So by that ideology, they tend to rely on the number of children rather the number of earning hands. So poor persons are not afraid of further fall in the standard of living as the result of large number of children. Then as you know that we have high population growth rate. It means that the birth rate in Pakistan is pretty high as compared to the other countries. The rapid growth rate of population in Pakistan is 2.1. We need to understand that if we are growing with this pace, we will soon be surpassing the other giants including the Indonesia and United States. So we need to keep this pace as low as possible. And then the tropical climate is considered another cause of overpopulation. It means that poverty is attained at early age in the warmer climate. So we in Pakistan have relatively warmer climate and Pakistan has a considerably warmer climate. So that's why it is considered one of the reasons for the overpopulation. And we also have the significant drop in the death rate in Pakistan, which means that death rate in 1951 was 2.8% while it is just 0.73% in 2011. So this significant drop in the death rate is also producing the problem. Although it's a good indicator from the life expectancy's point of view, however it is significantly contributing in increasing the population. Influx of refugees from other countries, especially the war-affected areas of Afghanistan, has also produced a lot more population burden on Pakistan. And Pakistan is currently the home of millions of Afghan refugees. If we talk about the cultural values, the sun is preferred more as compared to daughter. So sun preference is one of the causes of overpopulation. In order to have a son, a couple keeps trying on producing the children until they get their desired objective of having the sun. So sun preference is accepted as a standard norm in Pakistani society. Single parent cannot support the larger family in the developing countries. So that's why a son is considered one of the support during their old ages. So the thing that when they have more children, they have more earning hands to support them and while the male is considered the principle breadwinner, so that's why they consider that during their old age, their son would be able to support them economically, financially as well as morally. The absence of family planning is considered another contributing factor. It is not the complete absence but we do not have a reliable advocate may use of family planning. Effective family planning is not encouraged in Pakistan and people are not sufficiently familiar with the methods of family planning. So the childbirth is considered a natural process and human intervention is considered the fighting with the nature. And then we have early marriages although this trend is significantly changing especially in the urban areas. But yet early marriages are the common feature in the rural areas of Pakistan. Marriages take place usually between 16 to 22 years of age in the rural areas. So that is also making a female's fecundity period much more longer as compared to the females in the other countries. Greater socioeconomic factors also cause the early marriages and exchange marriage is also one of the factors in that. So it means that the earlier the marriage, the more would be the productive period of a female and more would be the population. And last but not the least, electricity is considered one of the causes of our population. 43% of the population of Pakistan is considered illiterate so electricity gives way to dogmatic narratives in the society and the lack of research on family planning and overpopulation further adds fuel to fire.


investigative report. Well, that has, you know, that has a certain intimidation feature right there. The word investigation investigative. So Tom Yamachika is going to tell us about this on talking tax with Tom this morning. Good morning, Tom. Good morning, Jerry. Thank you for having me on the show. So we have an investigative committee that was formed by the house to follow up on two pre existing audits made by the state auditor of number one, the Department of Land and Natural Resources Special Land and Development Fund. And number two, the agri-business development corporation to exact and the the scope of the committee's responsibility was to examine the recommendation made in those audits and for purposes of improving the operation and management of these state agencies, their funds, and any other matters. Now, the last few words of what I just said is kind of where things start going south. And any other matters, because according to the committee chair, that let her investigate it, that let her investigate anything else she want, especially the state auditor himself. Who's the committee chair? Della Albilotti. She was involved in earlier contentions with the state auditor, wasn't she? Oh, yeah. When the speaker of the house got side key put together a committee to basically rig the audit over the coals, there were several bills introduced by the house majority leader who she is to mess up their budget and merge them into another agency and that kind of stuff to basically get rid of the office of the auditor as an entity. Well, this sounds like a continuation of that campaign, no? Well, it could be. It's very suspicious. The investigative report has come out and there is an explanation or something like that in the report that explains to the reader why the committee decided to take its sites off the two agencies and onto the auditor. The report sets. Although the committee's initial investigation focused on audit report numbers 19-12 and 21-01 and the audit agency's DLNR and ADC, the committee expanded its focus to include the office of the auditor when the committee was one met with evasion by the auditor and answering simple questions about the audit process to prevented from reviewing documents that are the basis of the auditor's findings and recommendations and three, a prize of critical emissions in the audit process that may constitute malfeasance and non-compliance with generally accepted government auditing standards utilized by government auditing agencies throughout the country and represent a larger pattern by auditor condo to unilaterally decide not to report uncertainty of substantive and critical issues discovered in the field. You know, it sounds like that old scenario where you furnish the messenger for the message. Yeah, and that is why we're concerned. We, being the tax foundation of Hawaii, a watchdog agency, we consider the state office of the RGB a watchdog as well. They're supposed to, you know, take a look at how other agencies function and bring the truth to light, which is what a watchdog does.  Well, let me ask, you know, does the committee also have the power to say, look, you know, we found some flaws in your report and your methodology. No, no rancor here. Just can you go back and take a look at that and answer us a few questions? This doesn't sound like that. This sounds like not spent the company and we're punishing you. And it's different than what perhaps another investigative committee might do. In other words, we're a little concerned about the report and check out a few things and get back to us. It seems to me that would be an appropriate solution here. Instead, they're going much further than that. Am I right? Yeah, yeah, I think so too.  I mean, met with evasion by the audit and answering simple questions about the audit process.  If somebody asked me about a tax audit, for example, and I tried to explain the procedure behind tax audits as I knew them, it's very easy for somebody to say, you didn't answer the question that I asked. You must be evading me. Second, the committee complains of being prevented from reviewing documents that are the basis of the auditor's findings and recommendations. That's because of the state statute that makes those confidential. Didn't this happen in the previous iteration of this kind of attack? He didn't want to reveal documents because they were treated as, because the state auditor statute treats them as confidential and they were criticizing them for that. That sounds familiar to me. Yeah, no, that's exactly what happened and this is just, I think, another iteration of that same argument. Well, it's very troublesome because it does have a certain aura about it that is not positive at all. I'd like to digress for just a moment, Tom. We just completed a movie with the help of filmmaker Kimberly Bassford here at Think Tech and it's called Scaling Up Hawaii's Food Future. We looked into the status of agriculture and development of agriculture as a way to feed the people of the state as a sustainability examination. We found that the legislature, and we talked to Donovan Delacruz and also Glen Wakai, and we found that the state really wasn't doing much and it wasn't spending much money. We talked to Todd Low, Department of Agriculture, and found the same thing. The state is not doing much and this, in a crisis, in a casualty of some kind, a disaster of some kind, we can't feed ourselves. We will starve. If those ships don't get here with the food, pretty much all the food comes from the mainland on ships, we will starve and so it's really critical that we get back to agriculture as one of the diversified elements of the economy. The legislature is spending 1% of the budget, I said 1% of the budget, if not less, on the development of agriculture in the state. We're not doing anything. We're talking it up, but we're not doing anything. To me, this is a really important public policy inquiry and to me, every state organization of any kind, and for that matter, NGOs, nonprofits of any kind is critically important to the state for the development of agriculture in our state. We have the land, we have the weather, we have the quality of soil. In most cases, we have the water, but we don't have the labor, we don't have the political will to do anything about it, and so this is a real sensitive issue as far as I'm concerned. Sure, and one of the findings in the audit of the agribusiness development corporation was, well, you know, what the heck have you guys done? That's good, and that is kind of the issue that's been debated aplenty in this current legislature, and it's all around, well, what are we going to do with ADC? Are we going to fold them into somebody else? Are we going to let them stay? What are we going to do with them? And there were lots of debates on that issue this legislative session. So somehow this is a hot issue. It's a hot issue because we haven't done anything. I don't know if there's any legislation pending, but we do have legislation giving money away. I mean, what did I see in Civil Beat this morning? Depending on your level of income, the state is thinking about giving you $100 to $300 bonus gift at the end of the session. So what's that about? Have we paid all our bills? Have we paid the employees with time and system? Have we handled the homeless? Do we not need that money in the state coffers? Couldn't we use that money on developing agriculture in the state? It's just critical to our sustainability in time of crisis. So I'm wondering whether we got our heads screwed on right about the priorities of holding and spending money. Well, that's been an issue for some time now. You may recall we have a constitutional provision that says if we have a surplus in the state general fund for a couple of years in a row, then we have to deal with it either by giving it back to taxpayers. That's item number one. That was in the earliest version of the constitutional provision. And then they added stuff like, well, or we can put in the rainy day fund, or we can pay down the fund for benefits to government workers that we owe. Well, okay. The OPEB issue. To me the last thing you would do in a time when we haven't paid our bills and we need to develop the infrastructure around the state is give it back. That's the last time, the last thing we would do. I don't understand, but you know, then I thought to myself, time I thought to myself, this is what I thought. I said gee whiz, it's 2022. It's an election year that has a lot to do with it, right? Well, of course it does. Every one of those people in the square building is up for reelection.  I think, and, you know, it wasn't their idea originally, the governor introduced it. And the legislative leaders stuffed it out earlier in the session, but then they decided, well, let's maybe let's bring this back. Maybe it was a good idea after all. So that's what that's what they're thinking right now. Too bad. I mean, we are so far behind. I mean, last time I looked, we had either liquidated or unliquidated bills to pay of 40, 50 billion dollars. And we're giving it back. And we're not making any plans to diversify the economy. And furthermore, we're not even taxing the one area of the economy that's, that's, that's prosperous, that is hospitality. So I don't understand how you make that decision about giving it back. But I want to ask you, that's a politician for you. Okay. The other, the other issue that this audit dealt with, and we've previously had shows about this on here on Think Tech, was the Department of Land and Natural Resources and its Special Land and Development Fund. And that, that, that Special Land and Development Fund basically concerns when the state owns properties and leases them out, this is the money that comes back from them. And the question came up as to, well, is this being treated properly? So we had a gentleman on our show, his name is Keith Chun. He gave us a lot of information about what really was going on because he used to work there. And he said, look, you know, I made specific recommendations to management. They were ignored. These people, like, have no idea how to write a percentage, you know, percentage rent lease. He cited the example of one particular hotel where the percentage rent was based on the year to come, rather than the year previous. So apparently the people in the, in the hotel took the position that, well, we don't know how much revenue we're going to get in the year to come, so they paid no percentage rent at all. Oh, no. And the, and then the, and the state accepted that for a number of years. So this is the kind of stuff that Keith wrote about, that the auditor wrote about. What did the investigative committee find? Oh, it was an inverting oversight. A lot of money involved, though.  You didn't pay it. So we need to get it out of you.  Well, what is, you know, gee whiz, this is, this is, however you cast this, it doesn't lead to a good result. The outcome isn't good. The outcome isn't good with that DLNR fund, and the leases, and the outcome isn't good with agriculture. We should be looking at the public policy aspects of this. So query, you know, we know that less condo disputes all of these attacks on his agency. How has he responded to the attack on his reports on the agribusiness organization? Well, he did submit a very lengthy response. And the, you know, to the committee's credit, they attached it to the report as an appendix. They attached Keith Chun's response as an appendix to the report also. So you know, query what it does back there, you know, in the, at the end of the report, but it's, but it's there if you want to read it. Well, where's this going? That's the thing. What can you expect with, you know, with a report of this nature? You know, not a whole lot. I mean, in the report itself, the committee complained mightily and loudly about, well, geez, he didn't give us enough time to do anything. Yeah.   And you get one pin on the right. And that's the auditor. In this case, both pins went down. I don't think this helps the development of agriculture at all in the state. Which should be a very high priority. And the smear somehow, you know, with all of these events doesn't help them. It hurts them. Likewise, it hurts less condo and the auditor. So what's the, what's the benefit of exactly? I mean, I'm trying to look, I'm trying to be open-minded about it. What is the benefit of writing a report like that, attacking the messenger for the message?  And the report says, well, the messenger is a dimwit. So let's keep going with the status quo. You know, what evidence is there or what justification is there to depart from the status quo? So there it is. There it is. I mean, you really had an important point. So it neutralizes the report of the auditor. It makes it a non-report. I mean, he's been dinged for it. And the two of them, right? He's been dinged for his reports, and they are essentially neutralized. They have no effect. He's kind of stopped in his tracks. At the same time, to the extent that somebody could have, should have, would have said something to improve the operation of these agricultural organizations, that is also undermined. And you never get to the substance. You never find that. Yeah. So that's what happened with Mr. Chun. He, he's a well-meaning individual. He collected lots of evidence and, and, you know, specific factual circumstances that he gave the committee. The agency says, oh, well, I'm sorry, you know, this is, this is a one-time error and, and it won't happen again. We really promise, you know. And then, of course, nothing happens. We do expect anything to happen. I don't think so. Now the money's lost. Yeah. The money's lost. B, there really is no, no pressure on the agency to, to, to depart from the status quo. Because, yeah, there were audit findings. The audit findings are now neutralized. The, the messenger who brought them is neutralized. The, the, you know, the other messengers who came in with, with, with important information are being kind of like shunted to the side. So, so where, you know, how do things get better? Well, I guess the first question is why? I mean, what is, what is the task? What is the mission of this investigative committee? And who decides what they investigate and where do they get their members and how are they operating? Are they operating properly? You know, investigative committees have a lot of power, especially when it goes to the press, which this did. And, and the previous instance that it did go to the present became a public spectacular. What is the point of the investigative committee? How well are they operating in general? Well, the investigative committee, you know, can be made by a resolution that the house members vote on. And in this case, they did the enacted house resolution number 164. And that's what, that's what spawned the investigative committee. The speaker then appoints members to him committee in both cases. Is it the same committee in the one case? And in the second case you've been talking about? Yeah, the same committee investigated both the ADC and the DLNR. Okay. Yeah, I mean, they were given, you know, a double barreled mission there.  Is there a political edge to this? Or is this the kind of thing that happens all the time? This is the, this is the first investigative committee of its kind that we've seen in a very, very long time. I mean, when the committee was starting up, they were saying, well, yeah, we don't really have a precedent. We went back several years. And then there's really nothing to go on. So we're kind of making some, some stuff up like the, you know, the procedural rules of the committee and so forth, because there was no, there's nothing they can cut and paste from. How would you fix this? How would you make a committee like this beyond, beyond politics, beyond retribution, to come up with a, you know, positive, even-handed kind of investigation with positive, even-handed recommendations that are actually constructive in the sense that they, that they enhance public policy? Well, I think as long as you have the right people doing it, it would be okay. Like Rep Kobayashi was on the committee and he really wanted to do the right thing, I thought. Rep Tarnas as well.  If you're not the committee chair, you know, you may as well, you know, be a potted plant. Well, that speaks of larger issues. You know, I'm just, just as a footnote, I saw another article this week about how the Supreme Court's action on gut and replace was now being tested. Tested, thank you. And that there were forces in the legislature trying to get around that decision. This is an attitudinal thing. Any comment on that? Well, not at this time. I mean, I certainly want to see what the legislation looks like in its final form.  But that that's that that issue is going to be still there. In a larger sense, though, it's really a core point for our discussions together, Tom. It sounds to me like we need reform. We need reform on how things work. And we can talk about other areas of government, but at least in the legislature.  Okay, Edwin Young, I think his name was saying that Mr. Kondo was the poster child for poor auditing. Well, this this dude was at the city. And you've got like, you know, multiple waves of federal indictments going through there.    Or was was he running there? Because he was it was it was his shop at the time. So is is he like the pot calling the kettle black? Yeah, interesting. Where is this? But where what what do we do? What do we do? If if you were, if you represented a candidate running for office this year, this is an election year, what would you tell your constituents or your voters that you would do to start the ball rolling on this kind of internal reform that would clear these things up? You know, that's that's a really tough one. Because a lot of these things are, you know, well ingrained. And it's really, really tough for one person to try to unwind things. Because it's very, very easy to get clobbered when you attempt to do that you or the or the crab crawling out of the pot, all Hawaii Hawaii references for many, many years. The other question is, is this also is it also a function of gubernatorial leadership? I mean, could we have a certain level of reform and focus in the legislature? If the governor took a more positive role on these things? I think so. I think if there was a lot more definite direction being, you know, pushed through this process, you know, and you know, come on, I mean, these were executive agencies in the first place. Okay, it's within the governor's power to say, you know, look, Mr, you know, Chairman of DLNR, clean this stuff up now. Yeah, right. It would just be a kind of policeman at the elbow sort of thing where you tell them as a sort of big brother, you can't do this. So where are we in terms of the, the I guess it was indictments of a couple of legislators and then more recently one legislator was found to have, I guess, used campaigns, funds for private purposes. And so there were three of them in the past month or so that were embarrassed with, I call it. Yeah, I think the first two pleaded guilty. And then the third one, I think is going to pay a fine or something like that to get the case closed. So what I'm getting at though is that these three in a row, I mean, they all really have the same effect on public confidence in government and specifically in the legislature. Yeah, it doesn't help. Doesn't help at all. No, it doesn't help because, you know, you say to yourself, okay, well, these guys got caught, but what about the guys that did exactly the same thing and didn't get caught. So you got to wonder about that. Yeah, I mean, the average person is going to wonder about that. And he's going to draw some conclusions from the three cases and say, maybe I should be concerned about a whole institution. So I guess the moral of the story then is when you go to the polls, you know, you try to find out as much as you can about who you're voting for. How do you do that? How do you do that, Tom? Because sometimes it's only in the back room and you would never find out. Well, I mean, during the campaign process, lots of things come out. You hope that more comes out. We, you know, we need people to be challenged if they're unopposed, then none of this is going to happen. Not necessarily by, you know, the other party, but even by the, even with the same party, with, you know, somebody who generally, genuinely desires public service and who wants to make this place better. I think the one takeaway point I would take out of your comment just now is that more people are run for office. And that breaks the phenomenon where somebody can stay in office for term after term after term, and they become, you know, entrenched. Thank you. There's an organization that I heard the name of, and I just want to mention it. It's a national organization, but the idea is that if you want to save democracy, make it more robust, you run for office. And this is called run for something.net, run for something.net. And the woman who was the founder and runs it, it's a substantial organization now. And you can look at their website is Amanda Littman, L-I-T-M-A-N. And we can, we can enjoy an organization like that here. I don't know if there are any, but certainly the notion of that national organization could spill over to individual states and for that matter counties. And we could have the benefit of ordinary citizens who say, gee, it's not, it's not that I'm angry and mad and I'm not going to take it anymore, although that could be, you know, one motivation. It's that I feel I have to do my duty in order to keep them all straight. I have to run for office. I have to read up. I have to make the arguments that, you know, contending candidates make. And I have to keep the process, you know, active. And so I think more people should run for office. Whether or not they get the blessing of the party, whether or not they get, you know, for example, union endorsements, they should still run for office and make their case. What do you think? No, I think I would, I wish more people would do that. That they would make their case to the people and run for office. Yeah.  I think a lot of people are intimidated for the fact that, you know, raising money ain't so easy. And sometimes a person in office who has collected money on an unopposed race will apply that money to, you know, somebody who is opposed, who the party wants to favor. And it's kind of perverse. And the first time candidate doesn't have those benefits at all. And so you have to have a strong stomach and you have to keep on trucking. And even if only one in a few actually get the home base on this, it's still worth the process. It's still worth the effort. Right here in Hawaii, it's still worth the effort. And maybe, just maybe, we can sort things out a little better in terms of priorities and follow through and for that matter, clean procedure. That's great. Okay. I think we're out of time, Tom. But let's plan on doing this again in two weeks. And we'll find something else of merit, of note, because I guarantee you there will be something else. Thank you very much. Tom Yamachika, Tax Foundation of Hawaii. Thanks for having me on the show. Take care. Aloha. Please like us and click the subscribe button on YouTube and the follow button on Vimeo. You can also follow us on Facebook, Instagram, Twitter, and LinkedIn, and donate to us at thinktecawaii.com. Mahalo.