Well, thank you everyone for coming glad to see you all here We're doing a presentation on how to contribute to open stack It's for newbies and we're trying to keep it light-hearted. So feel free to laugh join in See if you see anything you recognize go for it So we actually work with AT&T. We're on the integrated cloud and we work on the open stack community team We are doing a little bit of upstreaming for a test suite called patrol and we're also doing a little bit of work on Yeah, we actually do a little bit of work on the security side of things now And so we're looking at different things like Barbican Keystone and other projects with an open sec So a little introduction Hi everyone, so my name is J. Woo It's a little bit of a background on my open stack journey I started programming and research in academia specifically in medical research and then that kind of led into a lot of application development opportunities So that transitioned me into an applications developer role with an AT&T And then I kind of came across this black box called the cloud and was really curious about How the the cloud really worked so transitioned over into a cloud of structure team at AT&T and Probably wondering fun fact. I studied self-driving cars on my free time So I do a lot of stuff about deep learning and sensor fusion So my name is Nicholas Hulgeson and I actually have a degree in plant virology, which is a little strange I know But I actually discovered programming because I went into the field and I didn't really like it very much So I actually discovered a program called Udacity Some of you may know it Through them I did a full stack now degree and got an internship with AT&T last summer that's actually where I met J-Woo and ever since then I Go while I got switched to a full-time role with them and ever since I was working with AT&T on open stack and before I ever did that I had no idea what open stack was so another kind of interesting thing from my perspective is that I found it very interesting the similarities between how Viruses interact with the body and interact with plants and the similarities between that and the way code interacts with things like servers and viruses and code and things like that So a little bit of our background we are web app developers That's where we came from. He was born the full stack or front-end. I was born the full stack back-end stuff We know things like Python and Frameworks like flask and angular and things like that. So when it came to open stack when it came to open source We had very little experience Open stack was a black box. It was magic to us. We just the little we did know about it was you know You kind of throw your app at it and it makes it elastic it makes it load balanced and just Takes off from there So now that you know a little bit about our background We think you would benefit from this presentation if you're you have development experience somewhere else And you're transitioning over into open stack or if you're a new developer just starting your journey out And then you happen to just come across the open stack out of luck or you're managing a team And you want your developers to contribute more and be active in the open source community open stack community, sorry So a little bit of an agenda so We'll kind of address the problems that we faced when we were starting out with open stack and the method that we kind of took and Think that it really worked out well and think that can work out for everyone else That's starting it to learn open stack and then we'll be doing a very brief introduction into Dev stack You guys probably already have experience with that suck But since it's a new beguide we thought it was Necessary to kind of do a little bit of an introduction and then we'll be talking about tempest Which is the most main point the testing suite of open stack That we'll be talking about and then we'll do a slight demo on using tempest and PDB and what you can kind of learn from there So in the end you'll have a better understanding of how open stack works in general so Going back to our background When we transitioned over into cloud cloud application cloud infrastructure development we're actually very thrilled at the opportunity because We finally got the chance to learn about the black box that we had no idea how it worked, right? So we started learning about open stack in general before we died into a specific project like other people Kind of suggest that that we do and we kind of came across a couple of problems So why do we have a problem when we're first starting out learning open stack? It was you can kind of relate it back to the fact that we were very coupled to using frameworks and libraries that was Development toolkit, so we're very used to using these frameworks and libraries that were meant to be used to develop Applications, and it was very unlike open stack So these Development toolkits had a very low area various to entry and the user base was doubtably larger and more diverse and had a plethora of tutorials training material and step-by-step guidelines and it was easier To make a sandbox setting and play around with a couple of prototypes before you could push it up into a production environment Open stack was a little bit different The documentation and the community was is fantastic. However, it's not as obvious as these development tools that we were familiar with So not all the challenges the errors have been replicated on stack overflow And you just can't go and copy and paste and pray that things work out So it's a very challenging environment for newbies and When we are starting out we started out with the low hanging fruit like other people suggested And this was a common advice given by our co-workers and other people in the community as well however when we looked through launchpad, it was a little bit difficult to find a chewable bug because There the easier ones would get picked up easily because there is a lot of open stock contributors trying to Become I guess major contributors and it was hard to explore different projects to find something that we could actually work on So it was confusing, but eventually we found something and submitted a patch for that Although we had to go through the troubles of setting up DevStack under a company proxy that we had But hooray now we're officially open stack contributors, right? So looking back, what did we learn from that bug fixing experience that low hanging bug fix experience? It taught us a lot about the Garrett workflow workflow It taught us a lot about how the code review processes It taught us it gave us a refresher on several get commands that we've never used before in the past frankly and We it also taught us how to interact with the community and how to do code views and things like that But we still had a fundamental problem that wasn't really solved So what was that problem? Where do you go from there? What's next after fixing that first low hanging bug, right? So where do you go from there? More bug fixes you go you go on stack overflow or excuse me you go on launchpad and You find all these bugs you find a bug like no G upgrade from Newton to a cut of fails Well when I first started I had no idea what any of those mean and frankly I still don't know how to fix this bug I don't even know where to start on that So read the docs, you know who wants to read the docs Have you seen the documentation has anyone actually taken a look at all the different levels? There are no way Unit testing so there was another common look area that people would suggest to go ahead and start with but we ran into the same problems So we said, you know, well, which project do I start on? Where do I start on unit tests? You know, what do I test? so we had problems and Like J. We were saying, you know, I did my first bug. It was a low hanging fruit. It was a one-line change What did I learn? I didn't really discover anything about that service. I didn't know what it was doing Frankly, the one line change was pretty cool because I was an open-sat contributor, but that was about it I mean we were web developers. We weren't in for rock stars and we just Hope that our way is going to help you where we didn't have any help So we're not saying that documentation is bad, right? It's wonderful. If you know what you're looking for It's very specific in that sense. You can go in and learn what you need to and get out However, if you're starting new you can kind of get lost It feels like a rabbit hole because every link leads to another and you go from one page to a wiki back to one page And then a wiki you kind of get the idea, right? So you can get lost if you're just starting out. So what is a less of a didactic approach? So we very much agree that starting it with unit test is a good idea However, as Nicholas mentioned, it's really hard to find out where to start So we think you should get a general understanding of opensack first before you dive into a specific project and start Getting to know that project by looking at unit tests So we'll be learning at how different components work by looking at tests and tempest Which I'll explain later on and dig deeper down into the API tests and scenario tests and specific that tempest offers So Since this is a new session we'll now go into a little bit of an introduction to DevStack if you already know please spread through it so Like we said newbie guide So we figured it was a good time to start right at the beginning How to get into DevStack up and running Ubuntu that kind of thing So there are lots and lots of resources online on how to do this. They're very very good So I'm just going to go through it really quickly Obviously you're going to start with a virtual machine We picked Ubuntu. It's just what we liked. We've Well because that's what everybody on our team was doing and that's that's an excellent point. Thank you And to that point I've I've made maybe 20 different virtual machines and broken every one of them I have one running right now, which is good And you guys will see that one very soon So you would want to go to GitHub find DevStack clone it set up the local config file This was a particular pain point for us because working in AT&T we were working behind proxies This was a lot of work to set up and actually get things stacked So here's an example of that said local.com file. This one's very very simple It's what you get when you copy over the sample file that exists on DevStack With a few things redacted and So the reason this is important is because this allows you to Designate what branches of what services you're going to use in your DevStack So from here, let's do a little example just to see what DevStack looks like So right now I have a Ubuntu running and The first time it stacks You get something that looks like this. So you have your IP address of your locally running horizon your login name and passwords which are set up in your COMP file and Then if you type screen dash R you're rejoining the processes that are running in the background So you have access to a text-based Access so you can do something like open stack user list And you get a list of users If this doesn't work for you off the bat Then what you need to do is you need to source and open an RC file and add admin at the end that gives you admin rights Another way of accessing this kind of data is you log in. This is the tempest or excuse me Ranking and this is the horizon GUI. Thank you And you can log in with your login name and password and you get the same information here so That's just a quick look at Dev stack running so here's just a Quick overview of what I just showed you so screen R which is apparently being depreciated or deprecated and So once you're in screen, there's an important code control shift a gives you a list of all the running Processes but obviously that's not important anymore So Tempest is our main focus for today as I talked about in the agenda, right? So what exactly is tempest? It's an integration test suite to be run against a live open stack cluster Whether it be a one-node dev stack that we talked about or a thousand node cloud So it strives to cover all of open stack So it has as I said before API tests and scenario tests among other things and API tests cover Validating the API's that that services and open stack use to communicate with each other and the scenario tests cover common scenarios that demonstrate a working cloud and So why exactly is tempest an entry appealing point of entry to new developers? It holds a lot of valuable information about open stack in general and that's why we think it's a very valuable entry point You can for the API test you can view specific API's and compare that with the documentation So that you get a better understanding of the requests and responses of that specific API which would generally give you a better understanding of that service and open stack in general and if you look at scenario tests, you can view common scenarios that happen in open stack and Kind of educate yourself about what an operator might go through when they're dealing with open stack So by looking at tempest you're learning more about the API and common scenarios that happen in open stack and You can kind of get a better sense of how different services work independently and kind of see how they interact together by looking at the scenarios Does this sound like a general good overview of open stack? Adam abuse I guess Cool, so how do you access the tests in general and tempest They're among many ways You can ask you can look at the director as tempest itself But that is a problem in itself because tempest allows plug-ins So it won't let you discover all the tests available So another method is you can use test the test our engine and perform a list tests and Nicholas will be showing that in a little bit and you can run a specific test by using test our run and Calling that specific test So running the tempest us there's various ways of running them So the primary method of running all the tempest test is by using tempest run However, we think that using Python test tools is a best Educated way of doing things and Nicholas will explain why So the first things first Test star is not compatible with PDB So we're going to be using PDB in our tests to try and dig deeper into them So if you try to add a PDB break and run it with test are you're going to get this error So you have to use a Python test tools. So for those of you who aren't familiar with PDB. Here are some general keys and codes that we're going to use commands that we're going to use to walk through the code so basically we're just going to be able to look at the code that's around us step through that code and Finish it if we're done with it So now we have the tools that we need so we're going to go deeper into the code So what PDB helps us find is Basically, it gives us an opportunity to look past the functions that we see in the Just looking at the code just looking at the test We're able to see the code that it's firing. It's going to Lead us all the way down the chain to the point where it's going to make an API call and it gives us better a better Understanding of the service and what that service is doing and how we can go further and then and test that So I'm going to go through an example of that. So if you have any questions go ahead and stop me While I'm doing it and then I can show you from there So we're going to go back to my virtual machine Where I am running So the first thing we're going to do is we're going to take a look at the code. So what I'm going to show you here is So this is actually this is patrol. So this is a tempest plug-in and it runs our back testing on Tempest So what I've done here is I've added an import for PDB and then I'm just going to do something simple I create user and I've added a set trace here So that this is where the code is going to stop So once you now go to the terminal run the code so we're going to be running the code out of The Opstack tempest folder. So that's where every all the codes being run from So the first thing we need to do is list the tests in order to find them. So we're going to do a test our list tests So this is going to give us a very long list. I forgot to grab it So the thing we're going to have to do next is rep for the Users so test our No, this is a shortcut that I set myself. So Here we have test create user so we're going to do the Python dash M test tools So here we can see that PDB has stopped us So we're going to take a look at where we're stopped and we can see that we're stopped exactly where I put my set trace So we're going to step through the code a little bit and Step into where it's going to create the user so that we can see where it's doing Yes, that's good sandy tech. Yeah, okay. Thank you So we're stepping through the code we found a place where it's been It's being called So we're going to step through that too So we can take a look at it and we see that it's being called right here in The user's client So that's where we're going to try to get to and then see right here We've switched from the patrol folder to the tempest folder So now we're running directly from tempest and we're running directly from the user's client. So if we take a look at that We can see that this is where it's being called from and if you didn't know about this Then it's a very enlightening fact that we now understand where the API is being called from and now We can go through the code and find that API and change it there Another thing that this does is it allows us to write more tests because we understand how the test is set up We understand where the test where the code is coming from Another really cool thing about PDB if you're unfamiliar with it Is that I can now do a print statement for something like the response from the server And we can get in more information that way and that really helps us later when we're trying to debug the code So from here, what do we do? We want to find a way to contribute So we now understand more about what's going on behind the scenes, but where does that really help us? Where does that leave us? so there are lots and lots and lots of tests that are necessary to keep up with stack running smoothly and Not all the APIs are tested some of the tests are passed with errors in them As much as we try to avoid that And other tests are just testing the wrong thing I actually almost posted one test that was testing the completely wrong thing, but it was still passing the test so mistakes happen and what you can do is you can go through that code and find where these tests are missing and Contribute your own code and what that is on what that really does for us is it Removes us from the necessity of other people finding bugs It removes us from the necessity of other people telling us what tests need to be done And it really gives you the freedom to write your own tests to contribute on your own time in your own way So I was going to do one one last example for you guys On how you can write find and write your own tests so From here We're going to go to the tempest folder And one of the things that I discovered recently was that in So running on the tempest server itself This is the same area that's being tested by patrol Which is the test that I was just showing you and this is the v3 version 3 Identity tests and as you can see here, this is the for the users There is no actual test for create user So this could be an oversight it could be intentional The best way of knowing is to submit a bug So you can ask the community or you can go on the IRC platform ask if there is a this was intentional or not So one of the things another way you can check is on v2. There is a test for test create user So this is great for us because that means that there's already a template for a create user And it's really easy to just go ahead and copy paste that into v3 tests now you're gonna have to make some edits because obviously v3 is not v2 So I did that for you already here So basically I just went through made sure that it was using the v3 client instead of v2 Put it in a few parameters and the cool part about it that here is that if we go back to the tempest and List the tests again We'll find it there test our list tests So here we have the that's patrol v3 test users test create user So we can just run a tempest test on that and we can see that it will run so Sounds very cool, but I guess it works Cool. So our methods not really perfect. You can see a lot of flaws as so in our presentation too, but You'll learn a thing or two if you if you start looking at the tempest and really looking at the different tests that a specific service has If you look at just create users as Nicholas talked about there's a lot more to it than just a bunch of us are equals So you you'll learn a lot about Keystone if you will if you look at the keystone tests or whatever service you choose So this wasn't really a step-by-step guideline Although we kind of wanted to do do it in that terms because we're kind of limited by the 40-minute time frame, right? But we really think if you look at tempest and kind of teach yourself open stock that way it can be a step-by-step guideline and You do have to remember when you're looking at one specific service Project service in tempest because every component in Opus stack is set up slightly differently So there might be some discrepancies there But that's the case of Opus or software and you kind of have to live with that with knowing that fact So that's what they meant when they said start by looking at unit tests And that's a soft wrap for our presentation. Do you guys have any questions for us? That's the VM? Yeah Or oh, but that's our okay Yeah But if you do the same Thank you Go to those By writing Thank you. Does anyone else have a little bit more simple questions on our process well today I learned developers actually talk to people Kidding But I to expand on as play I actually did look at our PDB when I was actually working on Keystone because you can't really Do a PDB setrace on an Apache server. So but I had some trouble setting up. So I think that's why I kind of Put that notion aside. Yeah Another thing is that now open source is just the nature of it everything's different and what works for Keystone doesn't necessarily work for Noah It's just a matter of exploring use PDB and that's kind of what we're trying to convey for you guys Does anyone have going back to the questions? Does anyone have simpler questions for us? We are going we are actually on the security team, so I'll be looking at security related matters But yeah, that's our next journey. Yeah, so we're still in the process of upstreaming upgrading a few things For AT&T Okay So before we finish off, we would like to mention that AT&T is proud to be a member of the LCO community I'd see the two guys cringing back there Taking a picture But on behalf of everyone working on Opstack as well as us we'd like to thank you guys for coming out and spending time With us today Here on this presentation and we try to muster together The common pain points that a new developer onboarding Opstack kind of would come across and kind of our Opinions on how that can be improved. We hope that a lot of new developers can benefit from this and Kind of improve upon the process of this new onboarding procedure as things change in Opstack, which is pretty fast Thank you everyone. Thank you


Good morning, everyone. My name is Ariel Tortarolo. I work at the World Bank, and this is joint work with Juliana Londoño-Velez. And well, thank you for including my paper in the program. So as Nils just showed, off-choir evasion remains an important challenge for tax policy. And it's not that we haven't done nothing about it, right? There is a growing research documenting these facts, like in South Africa. And in particular, the policy arena has been quite active. For example, over 50 countries have implemented tax amnesties very recently with the goal of enticing wealthy evaders to come forward and disclose hidden foreign income and assets in exchange for reduced penalties and no prosecution. And more recently, many countries or governments worldwide have implemented enforcement difference, enforcement initiatives like the CRS, FATCA, and many tax information exchange agreements. So understanding the circumstances under which these policies work or not is kind of crucial for tax enforcement and the conduct of tax policy. But it has been hard to draw lessons from the country's burning experiences. For many reasons, first of all, base renovation rates are quite different across countries. When you look at the law, the design of tax amnesties are very different across countries. And the contextual features as well within countries. And there are also data limitations. So it's hard to access these confidential records. But we have made a lot of progress in the last couple of years. So what we do in this paper is we study the case of Argentina with offshore tax enforcement initiatives. And we think Argentina is well suited to examine these issues for many reasons. First of all, there is a lot at stake. So about a third, this is a figure we borrowed from Annette and Neil Paper and Gabrielle Paper, where we show that by 2007, a third of the GDP was owned in offshore. The equivalent of a third of GDP was owned in offshore wealth by Argentinians. And the other good thing about Argentina is that since 1991, we have a wealth tax. And because of that, people report annually their foreign and domestic wealth in their tax returns. Perhaps the third point, more importantly, is that we have a lot of experience with tax amnesties or voluntary disclosure programs. So in a period of seven years, there were three amnesties, one in 2009, another one in 2013, 2015, which were not very successful at all. And then six months after the one in 2015 ended, we had one that was very successful where people disclosed actually the equivalent of 21% of GDP in hidden assets. So that's what we do in the paper. So let me show you this motivating figure with official data from the tax administration. Here we are breaking this 21% of GDP in different type of assets. And what is important is that a quarter of a million of Argentines participate in these amnesties. So this is a lot of people, and usually in the top 2% of the distribution. So 80% was hidden abroad. It was mostly financial assets. So you can see that 10% of GDP was in foreign stocks and investments. But also you can see very interesting how we come back to this at the end. Many people disclosed real estate, even though this is not covered by CRS, right? So this is very interesting fact. And there was a special tax, so I won't have time to explain the details of the amnesty. I will come back to this at the end. But there was a special tax that they have to pay if they decided to participate in the amnesty. It was 10%, roughly 10% of what they disclosed. And because of that, the government collected 1.8% of GDP from this one-time tax. So again, a lot of this was like $10 billion, and like equivalent of a month of BAT revenue. So these assets were hidden in these countries. You can see the flags, like most of the assets were hidden in the US, Switzerland, and the British Virgin Islands. And then for real estate in Uruguay, the US and Brazil. And for a bank account, also the US, Switzerland, and Uruguay. So Uruguay is like our tax haven in Latin America. So what we do in the paper is we, this extensive scale of disclosures, we take advantage of this, and we use straightforward methods to kind of unpack the effect of changes in tax enforcement in these last two decades. So we use tax tabulations that are publicly available in the IRS web page, very detailed, and then parrot interpolations to kind of show some evidence. So the last thing we do is in the paper, we discuss several factors that may have contributed to the 2016 amnesty success. And I will try to make sure when he showed me that I have five minutes to rush to that part, because I think it's important for this audience to know about it. So we contribute to a growing body of research. Why do we think Argentina is interesting? I already mentioned three facts. But I think it provides one of the largest natural experiments with amnesties. I think that by comparing these three amnesties to that failed, and then one that was successful, we can learn what might work and what might not work. And I think it's also optimistic in the sense that we show that large disclosures of offshore wealth and assets can take place even in a country, a developing country that had a history of a lot of assets hidden offshore, failed amnesties. But now we have one that was actually very successful. So let me start by showing you some figures. I will go very fast in these parts so that I can reach the last bullet over there what made the 2016 amnesty different. So let me start by showing what people did in this case. So these are two time series of the number of tax returns reporting assets located in Argentina and located offshore. And you can see that in the first amnesty 2009 and 2013, 2015 is actually very flat. And then we see this massive increase in tax returns reporting assets offshore. So this coincides with the amnesty and some other factors, but it's mostly because of that. And you can see that after that is very stable in the next four years. And we will add an extra data point very soon in October. So this is a 310% increase in the number of people disclosing offshore foreign assets. Because of this, when we look at the values, the amount of assets in constant, this is in constant pesos of 2015, so adjusted for inflation, we can see that today large Antinians report that roughly half of their wealth is located offshore. And it's interesting, this means that they were previously evading taxes back in time for a very long period of time. The ratio is like 20% and 80% roughly. As Niels also has showed and many papers have shown so far, these disclosures are typically highly concentrated at the top. So what we do in this figure is we, again, normalize everything to 2015, but what we do is we decompose the top 2% of assets by increasing beans of wealth. And when we look at that, we can see that this disclosure actually expanded the amount of wealth reported by the top 0.5%, especially the top 0.1%. And because of this, when we look at the scale, normalize to 120 in 2015, but when we look at the values, this means that individuals today report two to three times as many assets as before the program in 2016. Fiscal externalities. So we show that the massive disclosures expanded the Argentinian wealth tax base. So you can see, again, before the 2016 amnesty, this kind of oscillates around zero. But after that, we can see that the wealth tax base actually doubles. And because of that, the wealth tax revenue also doubled since 2016. So I think Argentina is one of the countries with the highest wealth tax revenue in the world. I think it's close to 1% of the GDP annually. But even more striking, and I think this has been also documented, for example, in Colombia, is that once you disclose an asset in the following year, you have to disclose the returns of that asset. So that means that you can also collect revenue from other sources, like the personal income tax. And actually, using these simple time series, we can see that the number of people reporting in the personal income tax return, reporting capital income, these number of taxpayers increases substantially. It actually doubles before and after the 2016 amnesty. And also the capital income tax base compared to the other bases, which is this figure over here. So the four sources of income, you can see that the one that is increasing substantially is the one for capital income. We don't have capital income. We cannot disentangle the amount of revenue coming from capital income from these series. But this means that they are collecting more revenue from this source. How am I doing in terms of time? How much time do I have? More than five. So this one is also interesting. Do taxpayers repatriate? So I mentioned at the beginning that Argentinians disclose the equivalent of 21% of GDP in hidden assets. That doesn't mean that they brought it back to Argentina. It wasn't required to bring it back. So they only had to participate and say, OK, I have this bank account in the US and this bank account in Switzerland, and so on. But there were some incentives to repatriate. So some countries, especially those that don't have a wealth tax when they implement an amnesty is because they are aiming for people to bring the capital back to the country and to have a more productive use. But that, so what we show in the paper is that typically those incentives don't work very well because there are many different reasons why they put their wealth offshore. So in the paper, we have a discussion that there are some clauses in the amnesty. For example, if you bring the capital back to the country, you wave the penalty that you have to pay. It's 10%. And even in that case, people decided to keep their wealth offshore in other countries. So we argue that perhaps taxation is not the private motive why people hold assets abroad to begin with. And I think especially developing countries, there might be different reasons. We cannot pin down exactly which one, but we believe it's probably economic volatility, currency controls, inflation, and so on. Or it could be that they want to obtain higher returns. So let me go to this last section of the paper where we discuss the features of the different amnesties. I think what is important here is that in terms of the carots and sticks is that when you participate in the amnesty, they forgave you all the tax liabilities that you owed backwards, no criminal prosecution. And this means in the past you would have to pay 2% to 10 times the taxes that you had evaded. So there were some incentives there. And then in terms of the cost, I already mentioned this, but there was a 10% special tax that you had to pay one time. But it was 0% if you had assets below $50,000. So let me go to what we think could explain this miracle somehow. So the first one is that the amnesty rewarded compliant taxpayers to safe keep the tax morale, but it also slashed the wealth tax to entice participation. So let me show you the wealth tax schedule over time. And in particular, to focus on this period over here. So this is when the amnesty took place. The government decreased, so went from notches and from four brackets to one bracket and decreased the tax rate substantially. And they were actually promising taxpayers to eliminate the wealth tax by 2019. So it was an important incentive, promising wealth taxpayers, OK, if you disclose your wealth, don't worry because you won't have to pay wealth tax anyway. And the second factor is that the threat of detection became more credible. So there were many tax information exchange agreements that made the threat of detection more credible at this period of time. So you can see that in 2016, in these months, Argentina signed many agreements with this country. This is actually a slide that I borrowed from the IRS, an IRS presentation. This is information that the IRS was actually showing the wealth taxpayers. It is interesting that this factor cannot explain all the success of the amnesty. I put a note here because the IRS was not fully operational until 2018, but also because people also disclose domestic assets in real estate, which is domestic assets, which are not part of the IRS. The third component is that I think you need a favorable political economy in general for this to be kind of successful. In this case, there was a pro-market and business-friendly government. And I think they were also kind of smart when they wrote the law by earmarking revenue to fund public pension systems. So when you read the law, the first chapter of the law is we are going to fix the pension system. And the second chapter is we are going to fund this with a tax amnesty. So then it was easier to pass in Congress. I think they were smart in that sense. And this is, for example, to show you how the political economy, people, when Macri took office in 2016, there is a champion as an index that people follow in Argentina. It's like a trust index. And there was a lot of trust in the government. And lastly, let me see this is not publicizing the pension system that they were going to do with the tax revenue from the amnesty. But the last point that I think it's important, it's not extremely important, but I think it matters, is the salience of the amnesty and the communication of the IRS with taxpayers. So I think this is a photo of the main entrance of the IRS in Buenos Aires. And you can see that there were huge banners here saying, disclose your assets, your hidden assets. You pay 10% if you disclose it before December 31. And then it's going to increase to 15% if you do it after one. And you would see this is a very important street in Buenos Aires. Then when you look at Google search trends, you can see that compared to the previous two amnesties, there was much more interest in 2016. And as a benchmark, I'm showing that the peak in COVID, people learning how to do their pizza. So it was even more important than that. This is an advertisement from the IRS where they were describing the taxpayers penalty trade-off, zero. So you can see on the left, they are saying that there is a 5% penalty if you disclose it. But if you don't and you get caught, you will have to pay this amount. So you have to liquidate the asset and get more money to pay for this. The process was very simple. I think something that Danette likes is that there is a countdown here on the IRS web page where they show how many days you have to participate in the amnesty. So I'm out of time, so let me conclude. What we show in the paper is that large disclosures of your assets can take place, even in a country like Argentina that had a lot of stake and a history of failed amnesties. I think a question that you might have in mind is whether this would be applied to other countries or even a future Argentina. We don't know the answer to that. We have unique features, but we do think that we can learn some. We know more than before, right? And I think we know a little bit more than what might work and what might not. And here are the factors that I just mentioned. And I show you funny pictures about. So thank you very much and happy to take questions after this. Thank you. Thank you. Thank you.


Aloha everybody, here we are another Wednesday, Hawaii, the state of clean energy. This is sponsored by the Hawaii Energy Policy Forum and the Hawaii Natural Energy Institute. I'm really pleased to have Don Probstel here today, good friend. And also he's the CEO of Natural Power Concepts. And he's going to be talking to us about microgrids for energy systems resilience, which is the resilience is the big buzzword out there now. It's actually more than a buzzword, it's something we have to have. And the tagline is conceived in Hawaii solutions for the world because truly NPC develops fascinating technology which are actually solutions for the world. And Don's going to tell us a little bit about how they're, what some of these solutions are and how they're projecting them out to the world. So Don, welcome on board, glad to have you. Thank you, Mitch. I appreciate it. I want to break the ice a little bit and just ask you to give a quick little, some of your background where you came from and. Sure, sure I can do that. I've been in Hawaii now for seven years. I started my relationship with this company that I'm now the CEO of Natural Power Concepts 12 years ago when the company was founded by John Petrie. And I've known John Petrie in case the viewers aren't aware, John I believe has been on the show several times, but he's he's a very famous international artist and inventor. And he's has a kind of a long track record in successful inventions from the exercise arena in light sport aircraft. And now he's been focused on renewable energy for about the last dozen years or so, at least. And I knew John, I knew John many, many years ago and I helped advise, advise him as he was starting his company. And as you were an advisor in the early, in the early days. And eventually I decided it was, it was time for me to just come to Hawaii, step in full time.  And we've made some interesting progress. So just a little bit of background on natural power concepts. It's a renewable energy technology developer. So John has he has invented several unique innovative technologies across a broad array of of different technology arenas or resource arenas. But they're all focused on areas that are not being addressed right now by either big wind or solar. Most of the renewable energy industry right now focuses on those two arenas. Probably a 90% of what's happening in renewables right now has to do with solar energy and big wind energy. So the NPC focus has been on areas that are not being tapped into. And if you look at the spectrum of renewable energy resources, it's very, very diverse. There's there's energy from the sun. Yes, there's energy from winds. Yes, but there's ocean energy. There's hydro energy. There's many different spectrum. Geothermal is another great resource that one of my favorites, one of your favorite I know that's not being tapped into very extensively. So that's been the focus of natural power concepts is to go into into those areas, come up with ideas, creative ideas and develop prototypes and hopefully find manufacturing partners to take them to the next level. So speaking about getting the technology out into the world, you used to work for an organization in Washington called OPIC, which has a broad reach throughout the world. You want to say a few words about that? It's great for your background as a CEO. Yeah, sure. So my background is pretty diverse. I have a PhD in conservation biology, but I also have a pretty high level of expertise in international development projects from the environmental and sustainability aspects. So I had a I had a stint in Washington at the Overseas Private Investment Corp, OPIC. Some people confuse with OPIC, which is a completely different animal. But OPIC is the US government agency that is analogous to the World Bank, to the International Finance Corporation, IFC. OPIC's mission is to invest in projects around the world. And interestingly, I believe, at least it was when I worked there, it's the only US government agency that's been in the black. So it was a great experience. And I think it opened my eyes a lot to what happens to come up with funding, international development bank funding for big projects around the world. And I tap into that resource a lot as we move along into how do we how do we move our small little company with big ideas out of this island setting, which is very isolated. How do we how do we migrate and populate the rest of of the world, which really needs clean energy solution. Yeah, so Hawaii is really grateful for having somebody with your talents and experience here to help us get it out of the out of the lab and out to the world. So great background. So we have some slides. You brought some slides. It's not death by PowerPoint. So let's start talking to some of the slides because it shows some of the technology that we're talking about. So can we have the first slide up, please? So the first we're going to talk a little bit about John's technologies, mainly wind turbines. And we're going to talk about wave. Yeah, we certainly can. We certainly can. So as I mentioned, John is he's not focused on one or two inventions. He has kind of a broad, diverse spectrum. The main focuses are OSI that we're on right now are distributed wind energy, which is small wind turbines. It's a it's virtually an untapped market around the world right now. And hydro energy, which we have some very unique devices that don't require dams to create hydro energy. And then additionally, the third arena is wave energy. And John has a brilliant invention that takes it basically puts buoys in a grid. So the one mooring, and as you know with your work at the Wetz facility out there in Kaneohe that one of the greatest expenses with these with these wave energy converters is the is the mooring component. So the concept with this wave energy technology invention device is to be able to create energy from multiple buoys with one single mooring. Yeah, so we've just experienced a great expense of several million dollars to put in one of our mooring. So exactly the point you made is like if you can you know, leverage that mooring and have hundreds of buoys attached to it. Right. And that's that's really good. I've seen John's conceptual art and some of his videos. He produces awesome videos which demonstrate the technology, which is really good for selling it out there in the world marketplace, which you can see on our website, naturalpowerconcepts.com. If you if you want to if the viewers want to take a little spin on on that website, you can see some of these images and videos and the technology. So let's talk a little bit about the Marine Corps base. So we were out there at a workshop. They had about three weeks ago. It seems like it was more recent, but I believe it's been about three weeks. Yeah, that was an interesting workshop. We had we had participants, a lot of a lot of Marine Corps people, but also people from the Navy, from the Air Force. And the theme of it of the conference was how do we how do we make our base and bases resilient to what they called a punch, whether it's a natural disaster or some, you know, some manmade disaster, maybe an attack, maybe maybe a cyber attack. So the theme was how do we how do we structure the basis? So we are raised for those punches and how do we number two, stay standing through that event and probably more importantly from the military aspect is how do we punch or how they the military, how do they punch back has to be a Marine program. You know, take the punch, work your way through it, then punch back. I mean, it's awesome stuff. It was a great conference. I mean, I attended as well. It was over three days. And we also had quite a lot of industry there because you were there. So, you know, we had input from industry and we were looking for solutions. And what they want to be resilient for their critical loads for like 14 days. And if you go on the back of an envelope and say, say it's six megawatts and you multiply that by 24 hours by 14 days. Wow, that's a lot of megawatt hours of energy required to keep that place going. And that's only for their critical loads. And then they have all the other non critical loads. And I think they were very attracted to the NPC technology. And what we're trying to provide right now with our we're in negotiations with Caterpillar, I can say that much that we are in the process of developing modular, rapidly deployable energy microgrid, energy microgrids, basically, that can be containerized. They can be rapidly deployed. They can be dropped in by air if they need to be. But what were the great example was the Camp Camp Lejeune commander that was at the at the conference. I mean, they're still trying to recover. It's over a year now and they're trying to recover still, you know, get back up to speed. And what was what really struck me was their their instantaneous need or just enough power to keep the food from going bad to keep this communications open, they didn't have that vehicle. Well, that's what we're focused on. We're focused on putting that modular vehicle together. And fortunately, we've been able to attract the attention of Caterpillar and I guess I can I can say that we had and this is for our wind turbines. We had a project supported by the Air Force Research Laboratory, AFRAL, that enabled us to build two prototypes. We tested at Pearl Harbor Hickam and it was it was a lot of work and we had some ups and downs and, you know, some learning curves and some things to overcome, which we did. But at the end of the day, we had an opportunity to demonstrate there was a conference going on here and Stan Osserman. I know the general general general Osserman. Everybody stand the energy man. Everybody knows Stan the energy man. Stan called me up one morning and at that at that point, our project was over. The turbines were shut down and Stode called me up one morning. He says, Hey, we've got a group of people coming out today.  And I said, Sure, Stan, I'll be right there. So I hopped in my car and went down, set up both of these turbines by myself in about an hour. Well, and by the time the 50 people came walking by that we're all attending this this energy conference here. One guy in particular stuck out to me because he had that Caterpillar triangle on his shirt. And he goes, Man, I want to talk to you about this thing. I've seen it I've seen it somewhere before where where it was there was a prototype developed by Oshkosh. And I saw it at some some trade shows. And I think this should be a cat product. And I said, Well, you just made my year. Yeah, right. And that opened the door to some negotiations which have been going on for a long, long time. It's a big company. It's taken a lot of talk and a lot of navigating. But we're very close and we can't make a big public announcement yet. But we're hoping in the in the very short term, we're going to have not only some some good news, but also some great products that can bring a real viable solution to a big need for disaster relief for places that are located in areas that are prone to high winds to hurricanes, island energy requirements, places that don't have energy now, like a lot of Africa, for example. So that's kind of where it all evolved. And it all started with a call from Stan. And hey, Don, can you come down and pop those turbines up? And luckily they go up and down very quickly as they were designed to. And there was some wind. And there was some wind, yeah, yeah. And asked for better luck than that. Exactly. So I like to run through some of our slide deck because we've been doing a lot of talking, but you have some awesome pictures. We do. We might have to flip through some of them pretty fast because we got a little bit off track. But can we start running some of our slides, please? Thank you. So we can go to the next one. So this is, we've talked about this is just our profile. We're a technology developer. We're focused on unique untapped niches. But I would emphasize the elegant practical approaches. That's because our founder, John Petrie, is a world-famous artist. Look to the next slide, please. What are we after? We're looking for missing pieces of the energy puzzle. And I think there's a few really critical components that are missing, and especially for resiliency, which is the target for a lot of the military and disaster relief. And Hawaii needs resilience. Absolutely. So for example, on my hydrogen buses, I'm putting in export power units because they're essentially electric buses. I can provide backup power for 30 hours or 32 hours. And then I can come back and recharge that bus with more hydrogen, i.e. more energy, in about 15 to 20 minutes. So your whole bus fleet becomes a mobile resilient energy asset that you can deploy anywhere you need these assets like your local drug store whose power is down. He's got a fridge full of medicine that's going to spoil unless he gets cooked up to a power source. Drive that bus up there, plug it in, and give him energy. I'm with you. And I heard another one today from the big island energy guy, their energy coordinator saying, when they had all those trees blew down, the absilient trees, is it called?  So it took them like three weeks to clear all those trees.  You can't pump gas, so we're going to get the gas. Plug and play. If you have that mobile unit, you can put it in. Could we throw a couple more slides up? I can give you an idea of what these look like. And yeah, next slide. Let's scroll through these kind of quickly. There we go. So here we are at Pearl Harbor Hickam. We have on the upper left, we have what we call the folding blade wind turbine. We're really happy with that. That's the one that Caterpillar is super excited about right at the moment. And standing next to it, we have a spoke wheel wind turbine. Both of these mechanically protect themselves from high storm events. And on the bottom end, we've negotiated a license with sprung structures that will put another kind of turbine, a ductic column turbine. And I guess the critical point, at least for the military, is every barrel of fuel that they save is an enormous value proposition because those barrels have the highest cost, not only in terms of dollars, but also in terms of casualties. Exactly. Yeah, most of the highest number of casualties in the last two wars that the US has been in Iraq and Afghanistan have been associated with transporting fuel. So every electron that you're able to save and produce where you need it, it's very important. Next slide, please. We can punch through that one. Nobody wants to get that business. Big market, $1.9 trillion over the next 10 years. And this is from a very reputable market research group, Navigant Research, who I also happened to work with. I did a couple of reports for Navigant many years ago. One, this guy was hydrogen. Actually, one was renewable energy in the military arena, big report for these guys. The other was renewable energy in the mining arena. Next slide, please. Yeah, another depiction of the turbines. But the one on the bottom right shows you what we're talking about, this renewable energy module. It has solar panels that pop out. It has a wind turbine that pops up. And it becomes a plug and play recovery unit. And you can throw in water purification and cell communication into that. And you have essentially exactly what everybody in Puerto Rico wanted to have and exactly what they wanted at Camp Lejeune and exactly what they're going to want next year when the next round of hurricanes comes. So on the bottom right, you see that the turbine is folded over in the yellow drawing. It's folded over onto a platform. And you see that the sides of it are your solar panels. Right, exactly. And that's what Caterpillar is going to be building. That's what we're working on, right, as we speak. And actually, Caterpillar has its own microgrid solutions division that they've just come online with in the next few years. So we're integrating this NPC device into that entity. Next slide, please. So the unique things about these turbines that are important, they're storm proof. But more importantly, for the military, there is no radar interference. So we can put these close to airports. Excuse me. Next slide. This is a nice depiction of what this would look like at a forward operating base. So these units roll in either by aircraft or in the standard HEMET trucks they deploy. And you can power a remote location. And it's not only about the wind turbine. The wind turbine is a component. And I've always told people that the storage component of this is a box. It can be lithium battery. It can be hydrogen. It can be a lot of different components. So once you throw the storage in here, you enable these to become very, very efficient. Next slide. Next slide. We're going to talk a little bit about this one. Because this shows the whole solution. Yeah. This gives you an idea of what Caterpillar has right now is their MicroGrid Solutions Business Unit. And it utilizes the backbone of the Caterpillar Genset, which is, I'll say it's the best in the industry. They have the largest market share for Gensets. So they've used that as the backbone. But they've integrated solar and now we're integrating wind. And they have the control components, which is the really tricky part, is managing all these different sources. And at this moment, they have five different options for batteries. So they're very, it's an evolving, this is an evolving entity right now. And I expect this to make some big waves around the world in the near term. Yeah. Next slide, please. That's it. OK. So we have some contact information. This will be available online when they publish this episode. So Don, you now have some partners, a really interesting guy. I do. He's one of your original shareholders. So why don't you talk about Mark Victor Hanson. Sure. And his wife. So Mark Victor Hanson was a founding investor in natural power concepts. Many years ago, he started off with delivering a check to the pocket of John Petrie and made the founding investment to get the company started. Mark Victor is famous for his book series, Chicken Soup for the Soul, which has sold more copies than any other book in history, including He Claims, which I believe the Bible. Oh, really? Yeah. Excellent. So he's an interesting character. He started another company that is focused on delivering clean energy solutions to the world. So what Mark and his wife, Crystal Hanson, are attempting to do right now is to take not only NPC technologies, but a lot of NPC technologies, and take new innovations and fast track them into development projects that can actually end up with these things in people's hands that need them the most. Yeah. The thing I really like about it, I like a lot of things about Mark Victor Hanson. But the fact is that he stepped up to the plate and stroked a check for a large sum. It was a large sum. Just like that, without a whole lot of proposals and. There was actually no paperwork. And I don't believe there was a receipt. I think what happened was the check got signed and deposited into Petrie's pocket. And that's what got. It started the whole thing rolling. And now we're finally getting to a dozen years later a lot of hard work by a lot of good people. And we're coming to where we can have some nice things come out of Hawaii and be delivered to the world. So we have about two minutes left. So let's have some closing thoughts. I'd like them to come from you and not from me, because you're the guest. So why don't you talk to us a little bit more about going forward, what the challenges are, and where you're going? Yeah, well, the challenges are always coming up with the hard resources to develop great ideas into hardware. And at this point, I'm optimistic, because we're going to get one of our babies out of the cradle and one of our birds out of the nest and on its way. But I'm excited about the other opportunities that are also there, the wave energy devices, especially. There's probably some long time investment into the wave energy in particular. But we're really optimistic and we're grateful that we've had support by all our members and all our volunteers like you have over the years, Mitch, that helped us push along. I know without your support, we wouldn't have had our opportunity with the Air Force to get that contract in place. And it's really about partnerships and teaming and people working together. And I think we're all in agreement that climate change is a big issue. We've all got to step up and deal with this now. And it's not hoping for solutions. It's everybody stepping in and pushing together and making it happen. So we absolutely welcome people to help. I'd like to give one other shout out. And that's to Hcat, Stan Osserman, and D-Bed, who really managed that program with the Air Force. And obviously, the Air Force itself for investing the money and getting you your prototypes that were G-Wiz and prototypes that then, in the end, got you your relationship developing with Cat. Absolutely. You couldn't have done it without the support of our military and without the support of D-Bed and Hcat. I couldn't agree more. And in a shout out to General Osserman for all the great things he's done and continues to do. That's his he's walking the talk for sure. He really does. He does. So that's it for our show today. So, Don, thank you so much. My pleasure, man. Really appreciate you doing a great job. Keep it up. Good for Hawaii and good for the world. So thank you very much. Yeah, my pleasure. Aloha. Aloha.


Trini girl natural. Hi everyone welcome to my channel. Can I do a video in pigtails? Yes I can. I'm about to because I keep forgetting to do this video when I'm having a better hair week and not doing it but I'm having a bad hair week and winter is gone I'm moving further and further away so before it becomes too irrelevant I'm like let me just do this video that's my winter stash flashback aka quick review of all the new products that I use this winter. So my winter stash flash is usually kind of short because I spend half of my winter not in winter as you guys know pattern basically into that but this is just talking about the products that I use while I was actually cold this year winter 2017 2018. So let's start off with TGIM. I use the green tea super moist and I do have a video with a full review but just that you know that I loved it my hair was moisturized my hair was defined it was extra creamy and stuff which is great for winter extra hydrating my hair stays soft love love love and I I'm gonna do some showdown videos I'm gonna show down this one with the next one I talk about which is the color region because both of them are kind of similar and I want to figure out which leave is my favorite before black friday so I don't have like 10 that I love I need to work it down to which ones I love the most so one of my showdowns are these two the other showdown that I have planned is the well anyway the other showdown that I have planned is the Jane Carter untangling me versus the Sultanate's frizz with those are another two that are really similar I want to see which one I like best and let me know if you want to see any other side-by-sides but yeah two thumbs up so next we have the color region maracuja rich moisture milk I also have a review on this posted everything I just said for that but this has protein as well so if you need a little protein fix and you want moisture and softness and definition and slip and a great scent and everything definitely give this a try so I also love love love this two thumbs up yay color region is a new line I'm going to be purchasing every year for sure so it's officially permanently on my list so yay for that the other product from color region that I tried and I love was the maracuja deep conditioner it's like I mentioned the whole line has protein but you wouldn't even be able to tell from how moisturize your hair is so my hair was again super moisturized lots of slip and I do also have a video on that one so check out this as well this is the definitely purchase for me as well I still have to try the overnight mask which I will be trying soon but last Friday you and me we'll see each other because getting this getting the hair milk I think I'm gonna do that showdown and getting the thing we're about to talk about now which is the protein treatment so I love love love the color region maracuja and quinoa damage control reparative conditioner I have to do a video on that I haven't posted the video yet but when I tell you wow moisture for days slip for days and protein did the thing my hair went from my best to this and I know you're a hair shrinkage but I love my hair to be tight and right I'm on a protein treatment can just show me how it's doing something I love it that's my new favorite asg natural protein treatment I know my old love is the ochre constructed from she sent it and I still love that but this one has even more of a protein kick while still being super moisturizing and super hydrating so I love this definitely gonna repurchase Black Friday getting at least two I'm loving coloration so far next on the list is Uncle Funky's daughter clearly magic so it's not new to me I have tried it before I just happened used it in a long time before that video I had used in a long time but I do like it the pros it's moisturizing great slip great definition just does the thing it just does the thing it's a great gel my only con would be that it seems like it just a little bit heavy like in the sense that it can leave build up which I don't get from any of the other gels that I use so that's my only con but no crunch moisturizing lots of slip great definition great hold everything good check out my full review if you want more information but if you're just looking for a quick what to try what not to try then check out my stash brushes so this was a yes as well and then special mention to this Trader Joe's t3 tingle you saw me use it for my trim video and I just use this alone I think I use it generally even and then this for my twist and you would never know I just use those two my twists will moisturize for like the whole week my hair just felt super soft and moisturized and this gave me great definition so I do want to try this for a wash and go this summer like just a conditionally wash and go this summer so I'm late to the party but I finally finally tried this after having it sitting in my stash for probably two years I know I know I know but it's definitely a winner and I do love it and last but not least is a laugh beer shea butterkill activating cream so I try this when I first went natural and that's when I used to do wash and goes on not soaking my hair I used these two and my hair was just dry flaky it was just one of the men's but I think it was pretty much user error so recently I've been using this just to kind of beat up my pigtails when I go to the gym and as moisture and tame stress and gives you a little bit of hold and stuff so I do like this I'm not saying I'm going to repurchase it just because I have so many creams so I probably use one of those when this is done but I'm just saying it has been doing a great service for me for days when you just need a little touch up on your existing style just to slap it on and look neat again it's been doing the thing for that plus I think the things with shea butter tend to look better for me as a kind of daily cream like over moisturized hair than to moisturize my hair from the beginning you know what I mean like I need a barrier between the shea butter and my hair like some even or something it does have the agave nectar I see you agave nectar I see you raspberry extract this is found in whole foods by the way and they have changed the labeling because again I've had this for a while but I will say that I like it now so that's it short and sweet I actually finally got this out and got this to you because spring is here and I need to start thinking about my spring stash so I need to just get this one done in the book so thank you for allowing me to do that thank you for allowing me to share this with you let me know in the comments if you enjoyed if you like any of these products and just if you like this flash flash type videos because it does take time and effort to do them so if you guys don't even like them then I should probably not even do them but I kind of like them just to have a recap and just to give you guys a quick one sober on some of the products instead of the detailed reviews that I usually do and I'm doing more of a few you can just get a quick run through so I like them for that let me know if you like them for that too and I'll see you in the next one bye


All right. So welcome. Good morning. My name is Alan Metz. I head up the Atlanta engineering office for Rackspace. We're the office that does engineering for cloud backup, for jungle disk, and most recently we've been working a lot on Project Marconi for OpenStack. This is Kurt Griffiths. He's our principal architect. He's been spearheading the Marconi development. He had a lot to do with the design and implementation of it. So what is Project Marconi? Basically, Marconi is intended to be the API, the REST-based API for queuing and for notification. So it has a multi-tenant design, very simple and clean, RESTful API. One of the things that we did with this is we have a unified producer, consumer, and public subscribed mode. So that, you know, really you can use either or both of those modes simultaneously. We designed it to be performant, to scale horizontally. Some of the foundational technology that we've chosen is pretty promising. I'll talk a little bit about that. And the other thing is that we really want it to be, rather than try to be a kind of monolithic queuing application, we really want it to be more a set of primitives so that it can really support all sorts of web messaging patterns and paradigms and so forth. So really what we want to do is look at all the use cases out there for any sort of web-based messaging communication, you know, public subscribed fan-out kind of stuff. And we really want to get into all those and make sure that the API supports all those. The core developers on the project, Kurt from Rackspace, Jamie Painters here also from Rackspace. The other individual who is a core contributor is Flavio Percolo-Premoli. And he's in Italy. He works for Red Hat. And we have several other developers at Red Hat that are at Rackspace that have been working on this as well. This is essentially what it looks like. So we've gone with a pluggable driver-based modular architecture. So out of the box, we're supporting WSGI as a transport. And the underlying library on that is Falcon. We'll talk a little more about that. So, you know, this is where the real guts happen. This is the queues, messages, claims, statistics and everything. And then we have storage drivers. We've written two storage drivers so far. One is a SQLite driver for development, for quick and dirty development purposes. And then MongoDB, which is intended to be our first sort of real world storage driver. Notice that authentication is not part of the project. The intention there is basically a middleware approach to go off to Keystone. We also have a Python-based client library written in Python, of course. So going further down the road, we're thinking about, you know, what are the transport drivers there may be? So we're looking at maybe, you know, something based on zero MQ. Additional functionality around auditing and being able to track what went into the queue, what people took out of it, and so forth. And then of course other storage drivers as the need arises. Kurt, why don't you just talk a little bit about Falcon with the underline? Okay, so Falcon is a project that grew out of some performance testing that we were doing a few months ago around MicroWhiskey and various Whiskey frameworks. The interesting thing about the Marconi project is, unlike many of the other open stack APIs, it's a data API. It's not really a management API. And so we have very aggressive performance and latency goals around that. And most Whiskey frameworks out there today are simply don't perform that well under those kinds of workloads. And so Falcon is a, it's a micro framework, but it's highly optimized for this use case for building cloud APIs to push a lot of transactions and a lot of data through there. So just to give you an idea of some things we've been able to achieve with it, it is about five or six times faster than Flask and about two times faster than Bottle, which is probably the fastest framework that we've tested. So we are, we're excited about this and we're hoping to get some good benefits out of it from our county. So, you know, if you look at our use of Falcon here, and as many of you know, we recently acquired Object Rocket for MongoDB expertise in the product suite that they have. And between, you know, what Kurt has done with Falcon and what some of the Object Rocket guys are telling us with Mongo, you know, the foundational technologies underneath this should be capable of messages on the order of tens of thousands and messages per second. So we are, we have high hopes for this from a performance standpoint. And then, you know, basically we, well, I'll talk about where we are in the development in just a minute, but just a quick review for anyone who may not be familiar with these concepts is to kind of get us all on the same page. So producer-consumer, you know, the idea there is that you use this in sort of a job dispatch environment. The idea is that you're going to have one and only one worker who's going to claim a job and do that work, so you don't want, you know, multiple workers getting the same message and trying to act on it. So we have this notion of messages being claimed. And when the worker is done after they've claimed it, the worker is responsible for deleting that message off the queue so that no one else will get it. If for some reason something happens and the, you know, the worker dies while it's in the middle of doing its job or something, then there is a TTL feature that will return the message to a claims, or to an unclaimed state so that, so basically some other worker can take it. So yeah, this is ideal for dispatching jobs to multiple processors. The other mode would be public subscribe, which is really more of an observer-listener kind of the pattern. You know, all of the components on the system are watching the queue. They're not claiming messages. This is good for alerts, notifications, event dispatching, that sort of stuff. You know, the queues will eventually expire with a TTL feature that's on there as well. And, you know, one of the things that's kind of important there is that the subscribers need to know what they've seen before and what they haven't. So in this case they can send a marker back to the queue to say, all right, I've seen this. Don't send me this stuff again. I need to see this stuff. This is a quick look at the guts of the API. It's really simple. You know, we have queues. You can create list queues, set metadata about them, get statistics, messages. You post messages to a queue. You can claim them. You can retrieve them, obviously. And then there's things you can do on a claim basis. So really clean and simple. This is what an example API call looks like. The payload is JSON-based. You can essentially put anything you want in here. You know, something that's well-formed JSON. This particular message is posting two messages to a queue called fizzbit. We put the TTL as per message. So we have two different TTLs here. And even if you notice the payload is different stuff in the payload as well. So really whatever you need, it's, you know, we're not really picky about that. And you get a standard HTTP response with object IDs that kind of points you back to the messages you just inserted. So where are we? We literally finished coding the API last week, at least for the happy path. So we got this up and running. And, you know, we're basically have what we consider the main line work done for the first version. We have a five-second installer, so you can do pip install. I actually have a screen that'll show you that. There is a client library that exercises a lot of API, you know, and we have unit tests. We were having, we did have 100% code coverage on the unit tests. I think we fell behind in the last couple weeks trying to get into crunch mode for today. And pretty much have the happy path done for system tests as well. So what needs to be done is edge cases, error handling, ruggedizing, packaging, all the things to really make this production quality. Performance tuning, as I indicated, we're excited about the foundation we have. I think the code itself, you know, we're just having just finished coding it. We now need to go into a performance tuning mode to start getting those messages per second way up. Non-Python language bindings. If anyone out here wants to take on some Ruby or some JavaScript, whatever, there we go. That was a volunteer. We haven't really done benchmarking through benchmarking. We have a development sandbox, and I think we got that thing up for like 500 messages a second, but that was really just, okay, crap, it's done. Let's turn it on and see what it does. So we expect a lot more. So getting our CI CD environment up, finishing up the system tests, another place that we can use some help is documentation. One of the things we'd like to do is, I mentioned all these use cases and common patterns of web messaging. We would love to build a catalog of those and say, hey, if you're trying to do this kind of an application, here's how you would use Marconi, the primitives of Marconi to achieve that. So we would love to do that with, I guess that's really more operator or user documentation, but then we can also use help with documenting the API itself. One of the things that the question that's really common is what are the use cases? Like what, we have 0MQ or we have rabbits, why do we need this? And we can talk about that a little bit more later, but I think that that catalog would really help people clarify when you would use what. We're not trying to be everything to everyone, but we kind of see Marconi as a macro version of some of these more intra cluster messaging buses. And a large system would likely use a hybrid of several different solutions. I mentioned the five second installer. It really is this easy. Jamie did this last night and sent me the screenshot. So that's actually really happened. But basically it's a pip install from Git and then you run it. And you've got Marconi server that you can use to test out the client at your own applications and so forth. So we're going to do a demo today. I wanted to show this slide to sort of give you the picture of what the demo is going to look like so you know what you're looking at when you see it. What we've got set up is we're going to have four queues running. There's a request queue and a response queue. We have some client applications here. This is some producers that are doing basically just pumping messages into the queue, putting jobs in there. Well, I think there's six of them running on two different nodes. We have consumers on the other end that are doing some computationally intensive work. I think they're calculating Fibonacci sequences and factoring primes or something like that. So there's six of those as well on the other end. They're going to be, so these guys are doing insertions. These guys are doing the claiming. They're going to be claiming messages off this queue. When they're done, they're going to do an insertion into this response queue. Additional two queues are really to control these guys to tell them what to do. So I'll start the whole thing off by putting in a command in this queue that says, hey, change your production rate, start publishing messages, and that'll start these guys off and it's time to stop them. I'll set this to zero. And while that's happening, we've got four graphite graphs that you'll be able to see. One of them is going to show... This is just periodically hitting the stats API on the queue, saying how many messages are in there. So that'll show you how many tasks are in there. This one will be showing you how much work is completed. This one will be showing you how much or how fast stuff is going in. And then this is going to show you the size of the response queue. One of the things you may notice here is there's nothing pulling stuff off of the response queue. What we're going to do there is we're going to show you that we're just going to let stuff sit in there and decay so you'll actually see the TTL kick in and you'll start seeing that message kick in. The message is decay. Notice that these guys are subscribing to the queue as those, so that's your public subscribe model going on simultaneously with the producer-consumer. And honestly, there's nothing that couldn't... You can use the public subscribe on the same queue as well. We could have like a listener here but just listening to every message and posting it on Twitter or something. And speaking of which, we have a little IRC bot here. It's going to listen to that message. It's going to post it on IRC. So with that, let me minimize this. And actually, before I do that, I did want to show that... One thing I didn't mention is that creating queues is really lightweight. Queues aren't supposed to be big, heavy things. So if you have an application that... I know we talked to some folks that were doing some stuff from South by Southwest and they wanted to have a queue for every user. So they wanted tens of thousands of queues. And that's really what this is kind of intended to be, it's intended to be lightweight. Let me reset this before I forget. I'm supposed to do that before we started. Okay. So just to show how lightweight queues are, I just made a quick little script here. This says create in queues. It'll say let's create a thousand of them. And in two seconds or so, we will have a thousand queues. Okay, three seconds. Four seconds. Come on. There we go. Show you that they're really there. There's your thousand queues. So that's the idea of queues are supposed to be lightweight. They're really just as lightweight as messages behind the scenes. So let's do this other demo. So what I'm going to do is I'm going to tell those producers to start putting in messages. So you should see, there they go. So the messages are now going into this task queue. You now see that there's tasks here. The workers have started working. They're working them all and they're putting the results in the results queue. Oh, and the demo bot heard that message on this queue or on the control queue and said go producers go. That's going. And just do circle. Actually, haven't got to see. Let's kick it up a notch. So kick it up a notch. There they go. Faster. Up. Them going in. Oops, let me bring that. I have terrible resolution on this. Well, we should see. Okay, so the consumers have already finished. You see that leveled out. The tasks in queue just emptied. And we're now seeing the TTL kick in. So these are just going to decay back to zero.  So really, that's where we are. That's project Marconi in a nutshell. We'd love help. Love contributions. This is where you can find us. As we mentioned, you can download the code. You can play with it. Please write language bindings for your favorite language. And let's help help us make this thing real. So we got some time for questions. If you guys have any. This is the queuing. I mean, we actually, we wrote it. We, the architecture is a pluggable. So you can, if you wanted to plug in, say, rabbit as your storage backend, you could. But we're not, we're targeting Mongo because that sort of gives us HA and durability for free. And sharding and all that good stuff. So we're not necessarily looking to replace existing queuing services. This, so there's been a lot of talk this conference about, this is the year of the user. And we're focusing on things for people writing apps on top of OpenStack. And I think this is more where Marconi would fit. Where I'm creating some cool, you know, I'm a startup. We were talking to Circle Media. They do, they do these big, they do social marketing for really big events like South by Southwest. And they have a lot of, you know, things that, some unique requirements that aren't fit by something like a rabbit or a zero MQ. Things like I need to be able to support hundreds of thousands, even millions of topics and clients with under one tenant. And things like I need to be able to go through firewalls. And I need to work over highly unreliable networks. You know, basically the internet. And things like that. So it's more plain in that world. Now, if over time people want to bring that in and use it within like a smaller cluster, we're not going to stop anyone. But I think that's, you know, the, looking at these cloud applications built on top of OpenStack is more where Marconi is best suited to help out, I think. Batching systems. Can you maybe give an example of what you're thinking of? Yeah. I think, so we're trying to keep this simple, kind of take the Linux mindset where we want to have, you know, it's simple tools that do one thing really well and then you can connect it up to build broader solutions. So to answer your question, I mean there are several ways you can do it. You can take the, you can use it for just building up the basic queues and then you have, like there was a session I went to yesterday about proposing workflow service. Now, the workflow service could use queuing underneath to do some of the plumbing so it doesn't have to reinvent that wheel. So I think that's a better, kind of a better story. Now I will say that, again, the architecture is pluggable. You can swap out the transport and the storage and we've also been talking about allowing you to do, put in like hooks so you can like do interesting things as messages fly by. So we're trying to give a lot of options but obviously if you're putting hooks in there and customizing it, that's something that doesn't work in a public cloud scenario. Yes. Yeah, that's an interesting thing. We haven't explored that very much so, yeah, like we can connect after and you can start. What are you thinking on that? Thinking that way. Yeah. So right now it's all polling based. Again, so we're talking about like the sweet spot for this being hundreds of thousands of clients and just massive concurrency and that's actually more efficient to do on the hardware side when you're doing polling, it turns out which kind of may seem counterintuitive but it does add a small amount of latency. Often that doesn't matter a whole lot. Like at Rackspace, our cloud backup product, the control panel has like a progress bar and stuff so you can see what's going on with your backup. You can even go and remotely browse your server and check off what files you want to back up and all of that actually happens through sort of the precursor to this project that we have internally and it's polling based. So we've actually seen really good usability even with a polling based model. A couple of things that help with that is keeping just the turnaround time for getting each request very fast. So between 20 and 40 milliseconds. Also, you can use Keep Alive, you can use some other things. So we're starting with that. Now, we have gotten requests for adding things like WebSockets or a zero-round queue transport and things like that and we can definitely look at that because I think there are lots of different interesting scenarios that you can enable. They're always the trade-offs though as far as scalability and efficiency. Anything else? Yes. Are you talking about client libraries or language bindings? Yeah. So like I mentioned before, the transport is pluggable. We've talked about 0MQ, AMQP. So if you wanted to bridge to those other systems, you could. Is that what you're... Maybe I'm misunderstanding your question. Yes. How do you do it? So everything in the system today is a REST API that looks like this. API documentation, is that what you're talking about? I'm sorry, I'm having trouble. Yeah, yeah, yeah. So we are on the OpenStack Wiki, and we have this slash Marconi that has a pretty good overview and it also has the blueprint for the API.  We've been just using it kind of as a working draft at this point. So if you get on there and you start playing with it, like Alan mentioned, we definitely need a lot of help getting everything documented and all the different scenarios. So we can do it with Marconi or is it even a good fit for that? So... But it is like, you can just... I mean, it's really simple to just interact with it from curl. The API, we intentionally tried to keep it very clean and simple. Yeah, essentially, when I was doing the demo of the little commands I was running, there were the little 10-line Python programs that just assembled a message and sent it out to the REST API, basically. So that... When this becomes so awesome that they want to use it, that the other guys want to use it, then they can. Right. So we really built this because our customers at Rackspace were looking at our cloud solutions and saying, hey, we love your object storage. We love your cloud servers. We really want to be able to build more complex applications that can connect all these pieces so I can build my application across the cloud components. So that's where we started. That's the intent of this, is to basically be an offering for cloud users. Again, we want to make it as performant as possible and as scalable as possible. We haven't... We didn't design it to be a replacement for the RPC mechanism in Nova. Like I said, if it becomes so awesome it won't stop them. But right now, that's not the plan. So... I mean, before I answer that question, can you talk about some of your... Well, I guess HA is a topic that people... Because you can make rabbit HA, but it's a big pain and stuff like that. I'm not saying we're specifically targeting it, but it's the easiest target, I guess. So with HA, one of the benefits of just doing a good old REST, using the REST architectural style, as you get a lot of those semantics, not really for free, but there are well-known patterns for achieving HA with that. So it's less a function of Marconi itself, I think, and more a function of the transport coupled with your storage. So, if you... For example, if I'm using HTTP, you can put the load balancer there and you can go across things and all that. So that's HA, just communicating with it. And then as far as the storage goes, Mongo has actually got... TenGen has got Mongo to the point where it's got a really good HA story there as well. And there are obviously other things you could plug into the back end, depending on the performance, durability, HA characteristics you have. Now, that being said, we're not planning currently to fail over to an entirely different data center, for example, at this point, although if people are interested in that, we can talk about enabling that at some point. It's kind of a weird... It's not really infrastructure. It's not really pass. I think you hit on it when you said it's an enabler. It's really a catalyst for tying it together. So, yeah, I think that's fair to say. Like Alan mentioned earlier, as OpenStack Story grows up and people want to run bigger, more complex applications on top of it, there are just certain pieces that you have to have and they don't necessarily fit in a certain layer. I think we need to focus more on just what people are trying to do with the cloud and go build that and make it easier. So people aren't writing. The other reason this Q&A project came up was because at Rackspace and other companies, everybody's been basically writing their own Q&A system. So there are like several dozen Q&A systems out there and we said, hey, let's factor that out. Let's just make this a service so people can stop worrying about it and wasting that time and they can focus on making their apps really great. Not so much a service as much as just a primitive so they can kind of put the Lego pieces together and what was the word you used last night? Affordances? Right, I mean we're really aiming at giving people the Lego blocks to build up these great products. We're not going to code like push to email and SMS and everything right into Marconi but if you want to build that kind of stuff on top of it as a value add, it's great and go and do it. And now you don't have to worry about just the plumbing part of it. I can worry about making a great user experience for my customers and I know how to do mail really well. Mail gun, they've got that figured out. I don't want to run my own mail server but I can do queuing so let's plug these things together and then now I've got an overall solution that my customers can build upon really great. Yeah we need to like I think was also mentioned when the ecosystems, you need a thriving ecosystem and kind of a core I mean think about Linux where would Linux be if it was just like the kernel? That's not very useful. So you're going to have stuff like KVM it's part of the kernel but you probably need something else if you want to do hypervisors but the core of it is there and it enables all these other scenarios. I think that's kind of what we should I mean this is me talking but you know it's part of OpenStack I think a good strategy is let's make that core let's get those common bits there and let's encourage this ecosystem around it to make a really great portfolio. And really our intention was to, you know we want to make this as real as possible and get it out there, get people working on it and then let's start having those discussions we'll start working with the technical committee and with the OpenStack board and let's figure out where it fits and go from there. Yes. Okay, well before we answer that do you have like particular things in mind so I make sure I address those? Let me talk about the FIFO. You got an hour? Well let me think maybe to kind of make a long story short one thing that okay so philosophically we went for a unified messaging pattern so instead of having two separate services I can do PubSub, produce a consumer in the same API and we did that you know so that basically you can mix and match those paradigms however you want and invent some new messaging pattern that nobody's even thought of yet as part of it and also because we kind of felt that SNS was a little bit too monolithic we wanted to just focus just on PubSub not like worry about tying all these web hooks and all this stuff into it you can build all that on top of it which is great but let's make one thing and make it run really well so as far as comparing to SNS I think that's one major differentiator it's a lot more focused on just providing that messaging infrastructure and also this is one of the things we ran into a few years ago I was at a startup before Rackspace and we were looking at using SNS when it was in beta for some stuff and we pretty quickly ran into the max number of topics limit because we were talking about hundreds of thousands of agents trying to talk to this thing and how do you do that anyway so one of our goals here was to just make cues or topics very very lightweight so you can create hundreds of thousands of these things millions even we hope that will lead to some innovation there as far as comparing to SQS I think a lot of the semantics are very similar the one thing that is a little different with SQS is they don't really guarantee FIFO to a certain level of granularity and we're trying to solve that with Marconi so if I have a producer who puts in A1, A2, A3 and a consumer would get back A1, A2, A3 in that order so there are some interesting challenges around making that scale but we have some we have a little bit more work to do on that but I think we've got a pretty good solution in mind one more minute final question alright well thank you for coming


Until Kavanaugh, it was always hard to describe where we grew up in D.C. I think it's probably harder now. Now I feel like it sucks out any of the other positive elements. I actually graduated the same year as he did. I played football against him. I guarded him. Every play. He was a cornerback wide receiver. I was a cornerback wide receiver, so literally every play I had Kavanaugh. I just remember, he was kind of these, we try harder kind of guys, but I just remember he had these strange wide hips. That's all I remember.  But yeah, because you get the little scouting report weekly and it's like, okay, you got right, you got Kavanaugh.  And isn't it amazing, even if you don't know the dates that you played against him, you're 100% sure it happened. Let's see that calendar. Let's take out that calendar. I brought my notebook along with me as proof. I do think that, and you know, we weren't immune from this as well, is that there was kind of a bubble of impunity that these kids grew up inside of, particularly out there, a bubble that hovered over the country club culture that they grew up in and they were protected by the resources of their parents.  And that same bubble of impunity was what followed him into those Senate hearings and the Republicans in the Senate provided that bubble, the same one that he had, you know, in the 1980s in high school. Only now it was a bubble that ushered him onto the highest court in our country, despite his expressed love for... Rape? ...for beer.