So previously we are studying about MOSBIR spectroscopy and we have found that if I want to have a MOSBIR spectroscopy we actually need to have a source and that has to be bound to a solid matrix otherwise we cannot have that MOSBIR effect due to the recoil. So we want to have a recoil less environment and for that I need to graft our source in a solid matrix. Similar thing should be also happening to the sample. So this is the source, this is the sample that I am going to look into and at the end we have a detector and what is actually happening they are all put on a stage where the detector and the sample typically are actually bolted so they do not move. However, the source is put on a wheel where you can actually move it backward or forward and you can also even measure its velocity plus V means it is coming towards the sample minus V means it is going around the sample. And what happens it actually gives the gamma ray and then depending on whether it is absorbing or not you can detect it in the detector. So what happens what we found that there are different possibilities are there depending on what is the sample absorbance feature. So this is energy versus absorbance and say this is the source one and the source energy I can modulate by changing the velocity because I can include a Doppler effect of that and depending on that there are say like five different condition if I think about say 1, 2, 3, 4, 5 and in the fifth condition it says that it actually matched perfectly with the absorbance feature of the sample and then if I want to plot it with respect to percentage of transmittance of gamma ray that has been detected in the detector versus the velocity I am moving. So what I am going to see that it is going to have a feature like this. So say this is number one point position where is nothing is happening, number two position a little bit of happening due to this overlap, number three is the maximum because everything is absorbed, number four again a very little overlap and number five again no overlap. So that is how the signal typically looks like for a MOSBus spectroscopic. So that we have gone into the details of it and I found out we found out like how it is happening. Now the question is why the source and sample although they are exchanging their energy between i equal to three half and i equal to half for the source and i equal to half to i equal to three half for the sample why they are not really matching why they are a little bit different for the sample and source and the answers is lying on the effect of electron density on the nucleus and last day we have gone into the details out of four different orbitals that you can have SPDF among them only the s orbital can have some finite possibility to present inside a nucleus and if you remember we have gone through this thing called radial distribution function and from there we figure it out that yes there is a finite possibility for only the s orbitals and you can look into the wave functions how it is given and you can find for the s orbitals if r equal to zero value if I put that means that nucleus the wave function doesn't vanishes it does vanish for TD and F but for s orbitals it doesn't vanish so there is a finite possibility that your electron is actually staying inside the nucleus and that we have found and with respect to that we try to figure it out okay the s orbital can be there so what is the effect of the s orbital on the nucleus and over there we assume this is my nucleus and this is the electron density that we are having around the nucleus this is the nucleus and this is the electron density and over there only the s electron density can be present inside this and over here if I have two assumptions basically they are two different parts of the same assumption first is that the nucleus is spherical and the second thing is the radius of the nucleus is r then what we are going to have we are going to have something called a monopole interaction a monopole interaction is a columbic interaction because there is a positive charge present in that nucleus which is going to get affected by the electron density present into it and that can be represented by this Hamiltonian so previously when we talk about Hamiltonian we think about what is the effect of nucleus on the electron now we are looking in the other way looking what is the effect of electron on nucleus so the Hamiltonian says that what you are going to have is the following 2 by 5 power 5 this are coming for the condition that we have assumed that nucleus is spherical so that way this particular terms are coming then comes the z square is for the nucleus charge then psi 0 square that is the electron density inside the nucleus into r square okay r is the radius of the nucleus so over here the ze so let me go to the next slide so again I am writing this full equation 2 by 5 by z square psi 0 square into r square over here the term ze is actually coming for the nuclear charge where z you can see it is nothing but the atomic number that mean how many protons are present that is going to give you the positive charge psi 0 square give you the electron density inside the nucleus and actually it is given by minus e into psi 0 square so those e and this e over here that is why you get a e square term and this negative term is actually getting cancelled because you are talking about a monopole so first you have to start with a negative term over here but which is getting cancelled with the negative charge of the electron so they are getting cancelled so you have a positive term altogether so that is the Hamiltonian of a case electron density effect on the nucleus right so now here comes the issue so you have a ground state and electronic state so say we are talking about iron 57 system from now on so ground state means i equal to half excited state means i equal to 3 half so if there is no case electron density present no matter what system I am taking I am going to get the same energy gap between the excited state and the ground state if there is no effect of the electronic state no effect of the s electrons but in reality there is so there is s electrons have finite possibility that it is actually penetrating into the nucleus so that is why the ground state and excited state is not going to be same they are going to change their energy and as they are going to change their energy the energy gap is not going to be the same so say it is the ideal energy gap what it should be but now my energy gap is this e source and this how much it is changing it depends on how much s electron density you are allowing it to be similarly what is happening in the sample that can be also in a different position so their ground state and excited state for sure but due to the presence of this s electron density the energy gap is not remaining the same so over here what I am trying to say e sample is not equal to e source and that is why we have to balance that energy gap between the sample and source by creating a Doppler effect by moving the source towards or away from the sample and that is happening because of the effect of the s electron density and that is why we have to know how to connect them together how the s electron density can be connected with respect to the energy of the nucleus state so so far we are already having one of the fact over there that this Hamiltonian is giving me an idea that the s electron density has something to say on the nuclear and this nucleus of air is going to be present there now if I say that there are two different systems one is the source and one is the sample so say there is my source and here is my sample and so they are not the same molecular identity they are both iron but not molecularly same say one is iron chloride one is iron sulfate so how much that is going to affect it so that what we can do specifically differentiate that energy with respect to the s electron density and what I am going to get is a difference in energy of the source and sample and that is given by this equation 4 by 5 z is square r square delta r by r psi 0's sorry psi 0 square of sample minus psi 0 square of source so let us go slowly what do I mean by this particular equation this equation is saying that if you have a sample and source and if there is an energy difference present between the energy gap of the source and sample so this delta value is nothing but what it is saying that say this is my ground state and excited state so what I am basically drawing the ground state and excited state you have the difference for the source and say the sample is different so say this is e source and this is e sample so this delta value is a function of this e sample minus e source okay so that is what I am trying to figure it out over here and that is given by this term delta what is the actual name of that I will come into a little bit later but this delta value defines what will be the difference of energy between the sample and source and what are the parameters that is going to be different over here so if we look into here what are the parameters that is going to be differ at these two terms one is this one and one is this one so first come into this particular term psi 0 square sample minus psi 0 square source what is giving it basically it is saying what is the difference of s electron density inside the nucleus so if you can measure the s electron density between the sample and also there's a density inside the source whatever the difference is that is going to be this particular term and say your source and samples are actually basically the same thing this terms becomes 0 and you will not see any difference between the source and sample in it okay so that is given by this particular term now what is delta r by r now that is very interesting what it is actually given delta r value is that difference in the radius in the excited state minus ground state so what it is saying that when you are changing the nuclear state from i half to i three half is it always true that the nucleus remaining almost same can it also change its nuclear radius and the answer is yes it can change its nuclear radius it can shrink down or it can expand if it expands that means excited state radius will be higher than the ground state so delta r will be a positive term but if it shrinks down that means excited state is smaller than the ground state it will be negative term and over here this delta r by r term defines what are the changes you are seeing with respect to the nuclear size so it is a change in the nuclear size or nuclear radius and this term depends on the particular atom you are taking because depending on the particular atom or isotope I should say particular isotope say like 57 iron in the case of 57 iron this value is negative why because in case of 57 the excited state radius that means that i equal to 3 by 2 is actually smaller in size than in the ground state i equal to half so that is why this value will be negative so these are the two parameters that can be changed during the transition one is the a-selectron density difference one is the change in the radii of the system any question so far please go ahead so this is very important like what are the changes can happen that can affect that the excited state and the ground state energy cap can be different from source to sample and what you found there are two important factors one is this delta r by r and one is this difference in the a-selectron density now delta r by r can be changed but that has minimal effect with respect to what is happening around the nucleus whether the electron density is changing increasing that doesn't matter it only says that the delta r by r whether it will be positive or negative for iron it is negative if you go for 119 it is positive so this value becomes positive that means in this case of 119 the excited state has a higher radii compared to the ground state that's all so it actually defines what will be the the signature of it like it's a negative or positive however it doesn't really matter too much what will be the absolute value of it it just defined it is will be positive or negative but the absolute value will be depend on the difference between the sample and source a-selectron density okay so that is why the electron density or a-selectron density can matter and can affect that the value can be different okay and that is why if I go back a little bit over there you can see the sample and the source will be different and that is why we are actually have to move the source back and forth so to match the sample because the source and sample cannot be same all the time due to the change in the a-selectron density so now if I want to find out if I have an iron what should be the trend of this change which side I should move around that will be totally dependent on this particular value of the a-selectron density so that will be our concern from now on so this one a-selectron density that I am going to look into now how the a-selectron density can matter so again I am taking iron as an example so if I look into iron there are 26 electrons if I start from the atomic state of the iron atom so say I am taking a iron atom a single iron atom in gaseous state with 26 electrons what would be the electronic configuration you are doing that from 7 standard right now it is so it will be 1s2 2s2 2p6 3s2 3p6 and 3d8 that we actually write it down right so sorry if I did it correctly so let me write down 2 2 4 10 12 16 electron 10 15 8 huh so that is the 26 electrons you can have over there however when I am writing it I am writing at 3d8 but previously you guys have probably studied it is 3d6 4s2 right because we are so writing 4s2 so over here you have to understand it depends on which particular condition I am talking about if it is an iron atom in gaseous state in such a way that this iron atom is not interacting with anything else then only it can be 3d6 4s2 any other condition even in metallic state it is going to have a configuration of 3d8 4s0 why because it depends on the energy of the orbitals so say I am looking into two different state one is the atomic gaseous state and one in a molecular interaction when the atom is following a molecule so in the atomic condition what happens the 4s orbital has lower energy than 3d so that is why 4s orbital get accumulated first so that is why we get over here 4s2 3d6 however as you start forming the molecules the d orbitals have better overlap higher interaction so it gets stabilized on the other hand 4s orbital is not so much so it gets higher in energy so in a molecule 3d has lower energy compared to 4s so that is why it goes to 3d8 4s0 system okay and that is why we are going to look into this configuration mostly


Bilateral cooperation at Misawa Air Base is nothing new, but a bilateral exercise with a third country, the United Kingdom's Royal Air Force visiting the Japan-U.S. joint base. That is something that allowed new partners to learn from each other. It allows us to operate in unfamiliar environments and allows us to come together with like-minded nations so that we can develop our own capabilities and to improve. Even though this exercise did not directly involve the United States, regardless of which countries are exercising, all can learn from each other through exchanges like this. Members of the Royal Air Force's two squadron focused working with the Japan Air Self-Defense Force and this was recognized at the highest levels of our host country. The techniques practiced by both countries provided a learning experience to be applied to future exercises in the Asia-Pacific region. FETI Officer Dean Cates, Misawa Air Base, Japan.


All right. I'm here to talk about testing queries. We talked about queries a little bit when Kyle was talking about MongoDB and he reminded us about indexing. That's true. Even with the brand spanking new MongoDB, it's new. It's different.  And so the number one rule of relational databases is still true. It's never doing an index read. You might be thinking, huh, everybody knows that. But actually, I heard a speech by someone from New Relic the other day and he said the number one mistake that they find in their monitoring is missing indexes. So obviously, everybody doesn't know this or they're not implementing it well enough. So I have a little decision tree about when to decide whether you need an index. First, will a customer ever be waiting for a result of the query? No. Well, okay. Maybe you don't need an index. Yes. Well, how many documents are in the collection or how many records are in the table? If there's one, you don't need an index. If there's more than one, never do an unindexed read. So we know this and we do this, but not as well as we ought to because how can you be sure that you have a good index on your query? Not just any index, but a good efficient index. And the normal way you do it is you have a big review and analysis before deployment. And then you have monitoring after deployment, maybe formally with New Relic or somebody like that. Or maybe when your customers call up and scream at you because your response time is really terrible since you rolled out something with a not quite good enough index on the query. Now, when you look at those two things, what are they? Well, number one, that's big design up front. Number two, that's deploying untested code. And those are very bad things to agile developers like us, so shouldn't we be doing something else? And what we should be doing is testing the queries just like we're testing the code. And I thought about how you could write a test for a query and I thought it might be a little difficult, but actually it turned out to be really simple to do. So I published it as a gist and let me find it for you. And here is the main part of it.  You can do this in Mongo or any other... Oh, half. Okay. All right. You can do this in Mongo or any other database, but I implemented this one in MongoDB. And here is the test. You just set up any query and then you assert that it is at least 50. So what is this 50 and 100? That's the rating of the query. So what's this rating thing? Is that a really complicated thing? Nope. It's some very simple code that just uses the explain feature of Mongo and every other database should have something, explain or something like that. So you can just run it through this extremely simple data calculation and then you've got a test so that you can leave that in to your test suite and then if you're doing frequent deployments as long as you remember to run every query through a test like this, you will never get stuck with deploying without good index on your query. What the rating gives you is something between zero and 100 where 100 is a perfect index and zero is completely inadequate. Let's see. Can I show you one here? I'll run that code and you see the first test where is it at least as good as 50 in the rating past and then it wasn't as good as 100. It was only 99.5 in the rating. Actually, it was a very, very good index. It's a simple little table with an index on the field that we're looking up and it rated as 99.5. So you can put in to your test some reasonable level, 50, 60, something like that and work out what it's going to catch you when you do something really, really bad. So at least it's more than mediocre before you deploy it and then you'll have it in your test and never make that mistake again. It's not going to be real speedy so you wouldn't want it in your auto test test but if you put it in your test suite that runs when you check in code, that'd be a good place to put it. That's it. So has anyone used Git or GitHub in this room? Is anyone familiar with that? So sometimes you are very familiar with GitHub and then you, for whatever reason, maybe you have a repository that you set up with things that you can't put on GitHub for some reason on a dev box somewhere or you're like sitting on the airplane and you're kind of thinking, oh, I kind of wish I could just kind of quickly browse around. Well, you know what? You probably already have this program. Someone was telling me last night about GitX but I haven't installed any apps on my machine. But if you were to go into repository, and I think I have one here, and you type Git InstaWeb, it's going to tell me that I'm missing Light DPD. Now in my Linux box I just did an RPM and installed it and then it works right away. But I can say web brick and then that's it. And then, oh my gosh, look, I've got a web server and I'm running it and I can poke around the repository and I can see what's going on and it's like the simplest thing you've ever imagined and it's already on your machine. So that's it. Thank you. Git InstaWeb. All right, my name is Jimmy Zimmerman. I'm going to be talking a little bit about Ruby FS Stack Gem. It's a gem that helps you tap into the world's genealogy. So there are two things that I'm really passionate about. One is Ruby and the other is Family History. This here is my surname cloud of all my ancestors and my last nine generations. If you see any surnames up here that are yours or that you're familiar with, chances are really good that we're related somewhere along the line. Here are a couple of my ancestors, my great-grandparents. The one on the left is Marshall Felch. He actually had a dinosaur query outside of Denver. I just discovered this. One of his dinosaurs is in the Smithsonian Museum back east. The other one is Amanda Coburn and I learned that she was a Civil War nurse. One night she was in her tent. Somebody was cutting through her tent to steal her money. She pulled out a revolver, shot the guy. Really exciting stories in Family History and I'm sure all of your lives are full of stories of your ancestors. So it's all a matter of just finding those things. So I work for Family Search. Family Search is the world's largest genealogy organization. It's sponsored by the Church of Jesus Christ of Latter-day Saints. It has massive amounts of genealogy data. They're Family History centers worldwide. Thousands of volunteers ready to help you on call centers and in these Family History centers. While you're here in town, if you go do the Temple Square tour, make sure you stop by at the Family History Library and connect with your past. There's some incredible things that you can learn there at the Family History Library. So what I really want to talk about is new Family Search. It's a collaborative family tree. People can get on, add information about your ancestors.  So there's a Family Search API that connects to this family tree. We've got about 700 million person records in here. There's a rest-like web service interface on there that serves up XML, JSON, AMF, Fast Info Set. You can search the tree, you can create and read, manipulate all your credor operations on person records through this API. You can read pedigrees, so bring down big chunks of data at a time and there's lots more functionality there for you to be able to build really cool and powerful genealogy applications. We have a Family Search Developers conference coming up at April 27th here in Salt Lake. But there's a RubyFS stack gem that makes all of this stuff really easy. I find it on GitHub, Jimmy Z, RubyFS stack. It uses JSON for data serialization. I'm trying to build it to encompass all the functionality of the Family Search API with the clean interface, lots of convenience methods, and make it thoroughly tested, easy to debug. James Buck created a GEDCOM gem as well, or library that makes it really easy to ingest genealogy files as well. There's some opportunities that I see. I learned about the stories of my ancestors through Google Books. There's an API on there that if you bring the two together, there's some really powerful things that you can do. I wanted to show you a little bit of a code demo. I'm doing some things with the API. This first one is just going to be a pedigree read. I'm going to grab four generations, 16 lines of code, including the printing. Given the Wi-Fi connection, we'll see how it goes. There we have it. Okay. So essentially I just have a recursive function. I create a communicator object, hook it up with the API, give it my developer key, request a pedigree on me because I'm a signed in user. There's really powerful search capabilities here. Down at the bottom you'll see I'm calling a search function, given name Parker, looking for Parker Felch. If I run this, I'm going to get some search results with their family search IDs, search scores, gender. It also gives you family relationships and so forth. If I take that ID and do a person lookup, I can get more information on those people. So lots more things that you can do. That word cloud that I showed at the beginning was built just by a few simple scripts, throwing it through the Java API that is given that runs Wordle.net. So lots of fun things that you can do with the family search API. All right. So what I wanted to do is just basically, I learn a lot from other people about tools and things like that. And I just want to be able to share a couple of things that I have learned and I'm using that I thought other people might be interested in. I talked with some guys here at the conference, and they really weren't aware of some of the things. So I just wanted to show and see if anyone else might be interested too. First of all, I have, this is about RubyMind. I've used quite a few different IDEs. I prefer IDEs. I came from like an IDE background on Windows and everything. But so I'm not in any way affiliated with RubyMind. But basically, what is RubyMind? I know a lot of you guys have probably heard about it. Some of you might even try it out. But it's written in Java. It's the IntelliJ Java application that's just a code IDE that supports lots of languages. And it is commercial product. They have a free trial. I used the free trial sent in, used about six free trial activations through different emails until I finally decided, okay, I'm going to buy it. And it's $100. So I thought that's really not bad for a good tool. So I'm just going to show a couple of things that I really like because Ruby is a really powerful language where we get very productive in it. Rails and Sinatra and those things, they're very powerful web frameworks and they're productive. So I just wanted to show some of the things that I find productive about RubyMind. Since I'm running Linux, you know, I'm a text mate, it's not even an option. But I just wanted to show some of the things that are cool. Real quick, one thing is the Rails, there's different views of your project. The project view is the traditional, like the physical view. And then the Rails views more of like a logical view. So it groups things by I got my controllers and I had lists of all my controllers and under my controllers I have my helpers, I have my partials, I have my actions, and then under there I have my views that are associated with those actions. It just kind of groups it all together. The models, it puts all my migrations right here. That's kind of easier to group them that way than the articles. This is a model. So these right here, those are fields that are pulled from the database schema, the schema RB. This is a method. And so it'll load all those in. And then so I've got Cucumber. So it's got, it has Cucumber support, so it shows features. So it's going to quickly show some of the things it can do. Like some of the things you have to have is you have to be able to do rake tasks. So I can just say, well, what are some of the rake tasks I can do? I can say, oh, well, you know, I can just, I want to migrate, you know, so just really easily find rake tasks.  You can run create features, models, resources, all that. Code navigation is one of the huge things I really like. I know TechSummate has some of this stuff. Like I can just say I want to type in this class name, so poster. And then it shows me all the different poster or post, you know, where it takes that string matching. Then that's class name, then there's also file name, where I can say, oh, well, I wanted to get that CSS file. And then it'll show me where all my CSS files are. Let's see, it's like there, that's my CSS file. Then it'll do, you know, you can jump out to Rails, like alt-shift-n, jump to your Rails views and such. Then what I really like is when I'm in my code, you know, we talk about documentation, how important documentation is. Well, documentation is important to me because I use my own documentation. I don't write libraries or anything that's shared. All right, it's going to be fast.  And that works on your own code that you put R dock on. And then I can hold down the control button, mix it into a hyperlink, so I can jump out to it and it jumps into the Rails code or the gems, all the gems I have associated with it, or it'll jump, you know, to my code. I can say, I can jump through relationships.  So if I go back to my controller, I can show code completion. So like I see right here, I see, down here, I've got my attributes. These are from the database fields that search pollinate from, because I can never remember my fields. And so then I got my code completion right here. And then I can get my documentation all right there. There's a whole bunch more it can do. If you want to talk to me about it, I'd love to talk about it afterward. Thanks. All right. So I don't have an iPhone yet. And I realized that makes me kind of a, I don't know, a lever in this community, I guess, to some extent, because, you know, everybody's got an iPhone, everybody can do, find their location and send updates and whatever. And so I wanted to build a tool to let me tweet with my location. So what I did is I took this gem that I built that allows me to do Twitter OAuth with Snotra really easily, just a Snotra extension, and matched it up with Google Maps. So I can, like, say, tweet something. And then, see, right now the point is at where the library is. So if I wanted to, I could be like, and tweet. And hopefully that will work. You know, networking. So let's see. So basically, I set something up and I deployed it on Heroku with a free instance. So if any of you go to that, it might just completely fall over. It's a pretty simple app. I just set up my configuration. So like, with my OAuth jam, all I have to do is set a Snotra variable and then using that, like, set notation and stuff. And then with your key, your secret, et cetera. And since I was using Heroku, I set all those up as config-bearers. And then, so I turned off the login and my OAuth commit. It might blow things up. Well, so then, because the update status, reinitializes the login, grabs the longitude and updates it and says it worked or it doesn't work. I'm suspecting that that might end up being a problem. But so then, so anyway, this is just an app using this gem that I created. And what the gem allows you to do is to just require, this is Snotra app, either using classic style. So you just require Snotra dash, Twitter dash, OAuth. And that will register the extension. And then you set up your configuration. And then you can just go log in required and use the user helper to grab the Twitter user, which lets you do updates. And there's a couple of other things. I actually wrote it to do a list manager because a friend of mine was having difficulty with being able to add multiple users to a list at the same time. So it's kind of the domain objects for the Twitter users and lists are the only ones that are there. And some of the features are missing. But so find that sort of thing interesting. And also, you can also use it in a more modular fashion by creating a class that inherits from Snotra base and then registering it explicitly. That's pretty much it. So before Alistair starts, I want to make one thing abundantly clear. This man did not pay admission to the conference. And not only that, this is the second year he's done this. So I want a boo. Let's give him a boo. Now I want a thunderous cheer because this is Alistair Coburn. Very good, thank you. What he neglected to say is, you guys didn't pay me and I'm giving you information for free. So I didn't take any year-valuable information because I was home sleeping. I mean working while you were all talking. Hi-tech here, you'll notice I'm the only person here where I don't have a thing. It's just this whiteboard here. All of this is trying to get anybody here to do an experiment on an architecture that I heard. There's a guy called Greg Young. And if I put his name up here, you probably can't read it. Let's just see if this works. Twitter name at Greg Young, very easy.  And there's an addition on that called CQRS. But I just want to get anybody to take a look at this. The hexagonal architecture says that the app never knows anything about the external world. What Andrew Schaefer says is, give me API or give me depth. And the idea there is if you have a person down here and they have what they think is a UI, the UI is actually an adapter that speaks into the application. And the reason you like this is because you can get rid of that and put a different adapter in which it has your unit tests and everything else. And now your app can be tested on the one side. But the hexagonal architecture says you have to do the same thing with your database. The app is not allowed to know anything about the database but goes through an adapter, which is very nice because then you could get a loopback mechanism and now you can test it. I can't get anybody to implement this stuff, but this guy Greg Young went one step further with something that was very cool. He does high volume automated stock trading systems. And he said he puts basically another hexagon around the database and he connects these two hexagons with a message queue, which he calls events, but basically there's state changes to the data store. And now he's got a perfect thing here because from the UI he sends in a queue of what he calls commands. So you have a user intention expressed as a command going into the app. You have database changes coming out of his events. He can now test this thing perfectly. It's perfectly wrapped in API. And since he's doing stock high security systems, he wants to make sure that the programmers haven't got a backdoor into the database. You can fully test this just by taking a look at the database change events coming out and make sure there are no naughty events coming out. Further, he says you can also outsource this to some other place that you, you know, India or Philippines or whatever because they have a tight spec. They have events coming out and they have data transfer objects going in, coming back out. So again, this is perfectly wrapped. So that's called a command event DTO architecture. And I just thought it was so cool but I don't get the program real systems anymore. So I wanted to come up here, put this up here, see if anybody would be willing to do it. Now I don't know if that breaks rails. That should, right, am I correct that breaks rails? Can't do that. Not at all. Rails is happy with this? Awesome. Right, now the other thing he does if you want to take it one step further, he separates the entire read side out from the right side. So he has what he calls then a CQRS architecture, command query responsibility separation. So he has architectures got an entire right side, command side over here, right? That's the command side. And an entire query side over here and he can get architectural properties on a public subscribe to this with a slow read update while he's got a stream going in here and he can optimize his architecture. So there's like three different architectures here with two stages of development. The hexagonal architecture, which is pretty easy to understand. The one I think is sexy and I would love to see anybody implement smaller big system and produce a report on what is that thing like and anybody wants to go further and do the command query separation and play that game, that would be awesome. Any takers, anybody? So you can look this up, follow Greg Young on Twitter, click on his blog, you can read about it, you can find the, you can chase the threads and find it. He doesn't say a whole lot more than this. He drew this from me on a napkin in a restaurant when we were supposed to be talking about, I don't know who knows what else, but we did that. And so that's my request. Is there any, anybody likes, do you see a problem with this or anybody willing to take it on? We've got 30 seconds left. I got it, Alastair. You got it, all right. Anybody else? One thing I can mention is Paul Diggs has this idea of synchronous race and synchronous rights. And I don't know if you saw the video and who we call, the last one we call, that it's kind of similar. I don't know if I understand it. He just drew this and I thought it was so simple and so slick, but I don't know what the drawbacks are. He uses it in high performance, high security systems. So that's like a pretty good testimony. All right, I'm done, thank you. So I'm gonna do a quick talk about something I've been working on for quite a while, using it in production at my current day job. And it's called the Bash Deployment Server Manager. So later on, someone pointed out to me that that could be used for fun and profit. So that's the logo. Oh no. No, actually it's better. EDS, hello preview, play with me. Here we go. Servers should be submissive. So that's the logo thanks to a very happy user, which I love it when they do that. Anyways, BDSM, what it is is essentially it is a Bash Deployment Server Manager. At the core, it is a framework, nothing more actually. It is essentially positioned to be a single server manager. So it would be used by say, Puppet Chef, whatever, massively distributed, proctological entity you might be using. So basically it allows for service management, so say Nginx, Pa, Apache, whatever, managing those things via something called extensions. It also manages deployments, hence the D in there. At the core, it is very modular. It is, I took all the major things I failed on with RVM and fixed them and made BDSM. So basically it is a wrapper or a CLI for all of these different extensions and as long as you follow its little framework recommendations, you're all set. So basically it's a CLI for the extensions and it allows you to manage the extensions like install, upgrade, whatever, list. So each extension has a bin directory which is basically any executable file. So this could be a bash script, a Ruby script, a Python script, compiled C code, anything you want. As long as it's executable, BDSM will automatically plug it in and allow you to call it from the BDSM CLI with any parameters you pass in afterwards, get passed right to your executable file. Templates directory, any templating system you want to use. So if you're using Ruby, maybe you want to use ERB or Hamel. If you're using bash, you use something intelligent like M4. Scripts, any scripts that you want to use for shared purposes, I use those for bashing, whatever. Config, if you have like Hamel configs or bash, maybe you've got a key value store or database store as a file, use that, version. Version file is important just for extension installations and upgrades and stuff like that. So basically by default extensions our deploy rollback and update because it assumes that you're going to be using BDSM to manage a server and something running on the server, so like a project. So deploy has a lot of hooks. I'd love to show you, not enough time. Rollback update, you get the idea similar to CrapStrono. So extensions essentially, basically it's RVM aware, clearly, I wanted it to work with RVM. So there are Rails extensions, unicorns extensions and Nginx extensions allows you to install a very simple Rails Nginx unicorn stack on a single server very quickly. There's a whole lot more extensions that are in the works in the various states of complete and I'm looking for beta testers. So meet, find me an RVM. Additionally, one minute, oh my God. Well, I guess I'll look real quick. This is the extensions directory. You can see that there's some like maintenance stuff in there like archives for downloading packages and MD5 checking things and not downloading again if you don't need to. The core BDSM directory with bins, you can see deploy, rollback. Oh yeah, everyone should have a help, of course. And see here. So like here's a unicorn extension in the bin directory. This is just a bunch of bash scripts with the executable bit set. And by default, all of these show up on the command line for BDSM. So basically you can say you have a, you could BDSM unicorn start and it'll start up your unicorn processes. You could BDSM increase and decrease. It increases the number of unicorns immediately or decreases them using the signals for unicorn. And you've got the configuration scripts and stuff like that. So, I don't know. It's a neat idea. I've been having a lot of fun with it and I'd love for some fodder. Anyways, I'm done. That's enough. This is a quick talk about a project I started. It's called Giddy. This is Gilly from Saturday Night Live. I blame Ben maybe for thinking of this character every time I talk about Giddy. What is Giddy? It's a Git hook manager and it does it unobtrusively. So it lets you install hooks from a common repository and it lets you share hooks with other developers. So if you're on a team and you want to keep your hooks consistent between your team, this is something you could use. Why would you want to do this? Oh wait, well, it's also unobtrusive. So it doesn't actually change Git. You're still using Git. It's still the Git you love. And your repositories don't become dependent on Giddy so it's very transparent. Not like stacked Git. It's not a different distribution of Git. Okay. This is not how you install GNU Screen. And here's a live demo. So here is why you might want to do this. Does anybody use sub modules? Yeah, anybody hates sub modules? Yeah, okay. So one of the hooks lets you, or takes away some of the pain of using sub modules. So here I've got a project. It's a super project. It's got the sub module directory. This is a sub module. And if I switch to the next branch, it doesn't update my sub module. It makes me run Git sub module update. So if I run Git hook in it, this installs Giddy into the repository or sets up the hooks. And then I've got these hooks that I can install and Git hook install auto sub modules. And when I check out master, and then back to next, it automatically updated my sub module. It did it intelligently too. There's some logic here. If I go to a story branch, it also will auto fast forward your branches as well, your sub module. So if I go into here, I'm, you know, it updated my sub module. So there's that. And then sharing. So the way that it works with sharing is, you know, we've got Tim and Jim here. Tim publishes a hook to origin and then Jim receives it. The way that it happens in a completely detached branch. So no matter what branch you're on or if you check out an older version of the code, you're always using the latest versions of the hooks in the repository. And they get updated with git fetch. And I'll just do a live demo of that. So up here we'll do Tim. Okay. I'm getting lost with all my windows here. Can you see it? Big enough? Okay. So the first thing is you do have to initialize it for sharing because, well, read the website. Why? It's not on by default. Oh, geez. Failure. Okay. And then here, I gotta run it again. Okay.  Git by default lets you do it. But if I publish a hook for clean patches, git hook install clean patches and then share it and then publish it, no more evil white space. Over here, after I do a git fetch on Jim, that hook automatically gets downloaded and the next time I run a git command, it will get activated. So when I try to add more evil white space, and let's say a dash m, and it said trailing white space. So it didn't let me commit it. There's a couple other hooks for not doing. So if you want to not commit debug code, you can put no commit in there and that's it. Don't panic, it's well tested. Get it from my GitHub account or you can just do gem install giddy to play with it. Thanks. So I made all these slides in the last two hours so we'll see how it goes. So there's sort of this reoccurring theme in a lot of these talks about Agile. Who knows what Agile is? Yeah, exactly. So this is what Agile is to me. So I didn't put this in my slides but when Pat Max was talking about his ruby love and how it kind of started negative and then grew and grew and grew, that's sort of how my Agile experience went.   But the way I think about it now is you have kind of two buckets. You have some Agile practices that are about planning and they're about engineering. So like all the XP stuff and like TDD and that kind of stuff is what I consider the engineering and then planning's like stories and this kind of like hand wavy business value stuff. But at the root of it, it's fundamentally like a developers movement or it kind of started. If you look at the manifestos all written and signed by developers. And then there's sort of like a token tester there, Brian Merrick, I don't know if you've heard of him. And then at some point, like even though they're coming from a different direction, like you had to recognize product owners and that kind of gets talked about in Agile. But there's like the circle of happiness and then there's like all these other people that like have to be doing stuff for things to really work. But like Agile doesn't even really know they exist or doesn't know how to talk about them. So then I kind of feel like I've been talking a lot about this problem between developers and operations teams, but I think this really exists between pretty much any role in most organizations. You have people that have different ideas about the world, different worldviews and that could be sales and marketing, that could be developers, testers, that could be developers and product managers, whatever. But you kind of have this wall of confusion between all these roles and that makes people unhappy. And then like they usually don't really talk to each other. Like they have like these weird protocols to talk to each other and then like things get really messed up. So the way that works out is you have this like between every role and then it's like this is like most organizations. So you kind of have like this setup and you're trying to navigate this thing and then right here that's the customer. He's kind of like outside that whole thing. So he's trying to do this. So let's get met. So like what are we actually trying to do? In most cases like people think, okay like I'm a Rubyist or I'm a programmer or whatever and I can hack on stuff and make it do what I want. And like computers will do what I want. But at the end of the day, like the fact that you could program means that you can manifest your thoughts and you can make stuff happen. And if you do that, then there's a potential to recognize little inefficiencies in the world and everywhere there's an inefficiency, like you can solve that problem and you can make cash. There's like ways to turn that into cash. And people do that all the time.   So like video games are like you have this score.  Like that's basically what they're doing, right? So it's like reframing it so that it's fun to like try to make cash. It gives you this opportunity to enable a business. And the reason that you can do Ruby in most cases is because you have money and let you eat and like pay rent and stuff like that. So you can enable someone else's business where you can also enable your own business. And I would encourage, I mean this is going back some of the experiences I had in the last year, but like there's a lot of problems in the world. There's a lot of inefficiencies and you can go out and solve them and think about them.  And if they're all able to communicate effectively, like you're gonna be able to do things a lot better. So I don't know if anyone knows who Jeff Patton is. He used to work for ThoughtWorks. But I feel like this is a problem in a lot of software, where you have people who are not, it's irresponsible to like take a contract where you're like, oh yeah, I'll just build that. And it's like, why, right? Like what is the guy asking for? Well, I need, this is a quote from John, but I need a shovel, well why? So I could dig a hole. So why, so I can plant something and then why? Cause I wanna grow some food and well, here's a sandwich. It's like problem solved, right? So there's other ways. And then this is a quote from Alistair who talked earlier that it's basically like, there's only us, so like let's get together and like do these things and where you can do that internally or with the organization. There's lots of all these other things going on. They're cool. They like add value to Agile. This was a talk last year, if you remember. And then this is also like, you know, Mountain West Ruby Conference, so represent. And then it's like, it's continuing. So you just gotta keep doing this, right? So this is like the short little pitch. There's a conference called Agile Roots that I founded with Kay and a guy named Nate who's not here. We had a conference last year. It was awesome. If you go to Confreaks, which is recording this, there's Agile Roots videos from last year. I highly recommend you watch the Artisanal Retrofuturism Cross with Team Scale Anarcho-Syndicalism video. And you're all invited. Hi, my name's Howard. This is my first conference ever. And this is my first talk. Thanks, thanks. Right, and I have issues.  So it's, and my program is incorrect. So like, it's a total fail, right? And how do we manage all these? Making reliable distributed systems in the presence of software errors. This is the PhD thesis of Joe Armstrong. He's the inventor of, co-inventor of Erlang. And in this paper he talks about, you know, given errors, how like, just unavoidable to have errors within your system. But you still need to somehow derive reliable software from just like this bowl of mud. And how do you do it? Turns out that concurrency, reliability, and scalability, they're exactly the same thing. If you get one, you get all the other. And Erlang is a story about how you get concurrency and all that from this kind of three-legged stool. If you miss one, then you don't get any other. So it's a story, and if you read this, then you'll tell you a story and either you buy it or not. And it could be Erlang. But do I really want to program Erlang? Not really. So, but we can still from Erlang. Just like, get the ideas from Erlang and we'll use Event Machine and NQP and Donkey. ASS stands for Asynchronous Server Service. Right, and here's some demo. So I'll show, I'll show how you can have named actors with zero configuration, with low balancing, low distribution, store them forward with zero downtime, and upgrade, no JS style, event based programming. Okay, so we'll start.  You create a Donkey server, Donkey Actor, actually. It's a reactor with a name, and then you define callback. So the callback would, the callback will respond to any message sent to this actor from anywhere, and it's mediated by MQP. So you just echo the message back, message.data. Then you reply to the caller. Right, that's it. So you get low balancing or that, just doing this. So we can give this a go. So the server is running, or maybe not, here. Wrong method. Right, so you have a server running, and you can start a client, which is, what should I do, have? Right, so here's a client that sends in a message once every second into the server. You can see the server not doing anything, just respond back. But we can, we can tell the server to print something immediately. So you can get a message, it's coming in here. Right, so and very suppose the client is still running, and if you kill the server, the client are still sending requests into the server, but you don't want to lose this message. So this message are still storing the queue. And if you start up the server, then it catches up. So it's like magic to your downtime, all great. You can have, you can run multiple instances of the same server, and it will be low balanced to a server. So I can run another instance here, quickly. Right. So now you have two instances of the server getting requests, and it's all low balanced through AMQP. And so you can upgrade one instance. So this will be server two. So I just like, maybe I did some fixes on the server, and you want to upgrade it. And now I did an upgrade, I can just run the actor again. Then you'll be the new server running the new code. But all while I'm doing this, like there's no downtime. And the other server instance is still serving the request. So we can do this kind of high availability programming trivially with event machine. And it's based on event machine, so it's also high performance and with callbacks. So it's pretty cool. Check it out.


Okay, we're back we're live for the one o'clock show here on a given Tuesday With John David and history professor at HPU today We're going to talk about business cycles and the history of business cycles in this country and beyond this country You know and so we're probably good. We are having a significant business cycle It could get much worse. We should study these business cycles Recessions depressions in order to get a handle on where we are and what we need to have to get out of it again John welcome to the show. Hey, thanks. Jay good to be on. So yeah, you know, it's uh, well, we live in interesting times, huh? Yes, we do that unemployment of almost 40 percent in Hawaii almost 20 percent nationally Wow, this is it's unheard of unthought of I mean, this is great to spread great depression stuff You know, you know, you know what though John the people have it. It's all about people It's all about confidence and you know in the economy and the government and all that People have this strange notion that that that they can go right back. We can just go right back We can return to the way it was and the the machine will tick along just the way it was ticking along before Right, and since we've only we're only out of it by a couple of months now, right? If that, you know There's a certain credibility to that thought well You look at I don't feel it's necessarily something to rely on Well, you look at the stock market and the stock market of course went down pretty dramatically But then it had you know in April it had the best month. I think since the Great Depression actually and so it recovered at least partially and I think this is crazy making honestly.  I don't know 15 20 percent Maybe even more it could be as high as 37 percent So so the stock market by right should not be going up at this time But I think this is some of the same kind of thinking that this is gonna be short term We'll just go back to normal Everything will be fine and and you know the stock market is the worst place to get long-term wisdom Okay, it's it's the place for short-term thinking and for the herd what I would call what many call the herd mentality And so yeah, it's definitely a problem. But Jay before we go further I just wanted to talk to the to the audience about a few of the books, you know been talking about Epidemics I wanted to talk about a few of the books that are really good that you should look at if you want to study the history of epidemics Just interject this and so the first book is a book by William McNeill which was published in the 1970s And he's kind of the grandfather of the history of epidemics. It's a great book by a great world historian And then you have a slew of books published after that around the turn of the century You have you have The Great Influenza by John Berry, which is an award-winning book on on the Spanish flu and then you have Justinian's Flea which is a great book about the plague and you know in in the In the Byzantine Empire and then you have another book about the Spanish flu by Alfred Crosby who is a highly recognized World historian as well And then so you get this you have a you have actually a full bookshelf of books About this especially about the Spanish flu you have another book by Laura Spenny recently that is Internationalized the Spanish flu so it study, you know the Spanish flu and other parts of the world So so you have these these great books and then you also have this book That I was we were just talking about this is a book called this time It's differed by Carmen Reinhardt and Kenneth Rogoff and this is to bring us back to the subject today This is this is not about pandemics, but this is about economic crises specifically about debt and inflation and This book can help us to kind of sort through the historical implications of what it means Today to be in the situation that we're in Yeah, we just can you hold up for a minute. I just got a call my broker Well Jay Okay, if you're in the stock market Push pause You know Everybody's I mean there's a lot of people who are still in the stock market Everybody's saying you know cost average and don't worry about it stay in and I read a very good article by you know A wizened old stockbroker and he said look this time is different And we really need to look at this and we really need to reassess if you have money in stocks right now well, I would reassess because There's a lot of magical thinking about what's going to happen with this recovery The the Federal Reserve says, you know 2021 maybe midway through 2021 will start to see a recovery You can't put, you know Hundreds of millions of people back to work in a month or a couple of weeks.  So It's just not you know, anyway, I hope you're okay, Jay Hope so too, but you know, there's a mechanical issue there I mean, even if the business is just take it in a sequence even if the businesses had not been destroyed There's a tremendous like logistical problem about putting people back again Which ones they all come back and stand in the same place and what do you do about you know Since we really haven't solved the COVID problem What do you do about the risk of COVID?  That's dangerous over there This one of the high, you know The highest incident of COVID in the country you want me to go back and work and you haven't done anything to make it Safer. I'm not gonna do it now. There was one there was one governor And maybe there's more than that who said you got to go back to work or we aren't gonna pay your unemployment insurance anymore Oh, yeah, and arguably, you know, Trump may his name be erased You know, he's he's also on that team. He wants people to go back and work in dangerous situations Just a bit as economy Right Yeah, so I mean, it's it's a struggle because of the tremendous volume of the unemployed You know just in it if you look at it in the general picture in Hawaii here I mean, we have so many unemployed that this the state unemployment system can't deal with it we're talking maybe a third of all more than a third of all workers are unemployed and and Maybe half of those workers haven't gotten access to unemployment benefits yet. So this is two trillion dollar Bill that the Congress passed and the president sign has been a bit of a kind of an empty promise in some ways because because of the quite frankly the antiquated unemployment software that this state uses and the lack of Resourcing, you know, we're used to unemployment about two to three percent, you know We've never in this in this state in Hawaii We've we've had lots of under-employment, but we've had very little unemployment and So and we've never really dealt with the under-employment and now we're having a deal with both that and the unemployment and this huge backlog and I was just I was talking with my wife this morning who Read an article and you know, there are people who are They're spending down their savings and they still haven't gotten their unemployment checks from the state And they're very scared about the future. So it's it's you know It's it's a lot worse than it looks if you're watching the stock market. I'll tell you that Yeah, so, you know, that's and the big question, which is really important for us to understand historically is you reach a certain point and There's no they're there the government has no money to help you. You have no money yourself There's no jobs. There's no immediate future. Maybe a long-term future, but no immediate future What happens to society and we don't know we don't know how the unravel takes place But it will be instructive to look at earlier business cycles other economic failure periods and learn from them So what what do we learn? Right? So if we look at the the Spanish flu, for instance, there were two recessions There was one recession in late 1918 that was short-lived. We think it was pretty deep Although there's not a lot of there's not a lot of economic data from that time period but but seven months and and then there was a recovery but then then in 1919 a year later than there was another much deeper recession which coincided with the end of World War two and it and it coincided with the demobilization of troops and the demobilization of them of American manufacturing and so This is kind of it's been confusing because of the timing of these recessions It's always looked like look these are primarily because of the end of the war not because of the Spanish flu. We just don't know in that situation There was however significant unrest in the summer of 1919 which did coincide with another outbreak of the Spanish flu and It coincided with this second more serious recession. It was just coming on right at the end of that summer of Unrest so you had the race riots in all of the major cities Detroit, Chicago, Wilmington, Atlanta. You had you had You know bomb threats at the Capitol. You had an actual bomb that was what at the door of the Attorney General Attorney General Palmer You had a general strike taking place in late late 1918 in Seattle In other all kinds of labor. I mean the labor unrest was unbelievable. What were they saying with people who were protesting? Striking putting bombs on doorsteps. What what were they saying? What was their Concern, what were they expressing? Well, partly they were nervous about the fact that there was a lot of unemployment and They were scared about the economy and then they were they were you know One of the things that was happening because it was the end of the war is that the government was setting wages and setting wage increases and Workers didn't have control over this They were very concerned that they were the ones you know that the Capitol would keep the money And they were the ones who would get screwed in this so So there was a there was a great deal of unrest and of course, you know Woodrow Wilson is sick in the White House He's had a stroke so he can't provide the leadership that you need To calm things down and that might be similar to the present day and in a sort of way So you have a situation where that that's very serious in 1919 and we just have never historians have never connected it that strongly to the Spanish flu But that had to be a factor. I mean Fear about getting the flu fear about you know the flu coming back again because of course the Spanish flu came back The three times two times, you know, it came back in in fall 1918 and then it came back again in 1919 and Came back in a more virulent form and that's one of the fears about Coronavirus is that it will come back next fall in a more virulent form and then we will wish for spring 2020 because it Let's hope that doesn't happen. That's that's well if we go into, you know, trying to open all open the economy too early It could come back soon in the next fall Come back in a matter of weeks. Yeah, I mean, I'm not against opening up the economy I think that you know, the protocols are very important wearing a mask if everybody wears masks In Kylo where I live everybody's wearing a mask now and this was like this started You know in in early April was like maybe 10% of people wearing men wearing masks and then 50% and then it became the law and then people got on board and Everybody's wearing masks and there's there's hand sanitizer at the in front of all the stores and so If if if we can take those kind of precautions I honestly I'm not too worried because we can knock this down the thing is in the Spanish flu The health care providers wore masks, but the average American did not wear a mask and It should have I mean that should have been the recommendation that that's probably one of the differences is the the health The the polyhealth protocols are better now than they were during the Spanish flu think I think the The magic the magic step would be to have testing we've heard this before but we still don't have Testing at will testing really quick testing 15 minutes Patrick Sullivan of Ocean it was just on the show last hour Yeah, talking about trying to develop a test where you you spit in a coffee cup And it immediately tells you if you have COVID and that would be very helpful in Managing managing the illness even if we were back at work and we'll give us a way a way to protect ourselves back at work And I think also the antibody test. I mean I think I'm gonna go get the antibody test Because I think I might have had COVID and just was a mild case, but I don't know and I'd like to know Would you step back from the camera just a few inches? Yeah, sure Jay Oh, you're worried Don't worry, I don't think this is transmitted via you know via the internet, so I think So we had we had you this book you were talking about the one that's hard to read the last one you referred to That talks about what happened in Germany, right? It's after the war and in the 20s And that is something we should know about yeah, okay, so so when we look forward to what what could happen with the American economy I mean we could have a you know as a standard recovery in in 12 to 18 months You know it could we could come out of this no problem There's some problems though and and so and let me talk about the problems first And then we can go back into the history and look at some examples and essentially It's either Japan or Germany in different time periods in the 20th century And so one of the things one of the problems we have right now is we have tremendous debt Worldwide the global debt situation is unprecedented and I have a slide here about derivative debt and derivative debt is about Credit default swaps and and the collateralized debt obligated It's about it's about taking debt and selling that debt off and you can see there we have 516 trillion dollars worth of derivative debt right now and the world GDP is only about It's a little more than 50 might be 60 trillion or 70 trillion dollars now and and we have this enormous amount of derivative debt and So and it's it's more than the stock market. So I think You know, it's it's this is unprecedented time So so we have the debt overload the United States has a national debt of over twenty twenty trillion dollars now Well, more than half of all of our GDP goes to pay the debt It's over a hundred percent of our of our GDP so More than a hundred percent of our income or national income goes to to pay, you know, the national budget pardon me goes to pay the debt so So our debt has really increased and in that situation There there are two outcomes that could take place That one of the outcomes is we could have the beginnings of inflation Ratcheting up. This is what happened to Germany in World War one Yeah, Germany had to increase the amount of its money supplied by 400 percent That means that's similar to what we're doing right now at the Fed Well, we are increasing the money supply supply. I don't think it's by that much Right now, but yeah, the Fed is actually creating electronic money every day different kinds of ways sending credit out to to businesses sending credit out to other nations buying Treasury bonds so that the Fed is actually doing this But not at the same level as Germany now and there's some other differences. So so that's never without Consequences down the road, right? Right, right. No, that's right. It's it's definitely got consequences But but here's the interesting thing So when you when you increase the money supply that much at least in that time period and you're these are this is a period of Basically national economies. There's not a lot of investment International investment and other people's currencies this kind of thing Then what you can expect is you're going to reduce the value of your currency dramatically and This is what happens in Germany when they printed money printed money for the war and then they reduce the value of their Own currency and then and then it becomes this untenable cycle where you you continue to print more money to pay for the things that become more and more expensive because you have Less value in your currency the currency was the rights mark. And so by 1923 Billions of rights marks, okay, we're spent for a week's wages Rights marks were basically worthless people were throwing rights mark. Yeah, there's there's a picture of children playing with rights marks Building blocks with rights marks another picture of a woman burning rights marks to keep warm You know, you have you have kites made out of rights marks and you have You know, you have big stacks of rights marks that are used to to pay people to make purchases So, you know, you had to use a wheelbarrow to go get a loaf of bread well at the end of the day you couldn't buy a loaf of bread for you know, any reasonable price and So you couldn't have a loaf of bread and people would go hungry and that affects the social fabric and Let me let me ask a question to you on that point that came in while you were speaking just The questioner says good point about protest and violence What challenges do you think our local union shops will be dealing with on the show last week with Eric Gill from local five? That's the hotel workers right you said the trust fund is paying for benefits for their members and the employers are not making their Contribution. Yeah, okay. This is very serious and this is the kind of thing that You know can can be very dangerous in the long term or maybe even in the short term But so so you have Germany in that situation Let me come back to that question in a second because I think that's a great depression question So Germany has this terrible situation the cycle of of in hyperinflation. They can't get out of and What happens is first of all the United States puts money into Germany We put about a billion dollars into Germany by the end of the 1920s to try to to try to make sure that they can actually pay their war debts But the other thing that Germany does which is very interesting is they change currencies in 1925 And they go from the rights mark to the rent and mark and they peg the rights mark as I think it's a million rights marks to one rent and mark the new currency Therefore you if you have debt in rights marks, you can pay it off very easily Now those who had savings in rights marks. They were they were in very bad shape But overnight the German economy recovers from this little trick of creating a new currency the currency by the way was based upon real estate Commercial and private real estate in the country not based upon gold or anything else because Germany simply didn't have enough gold at this time To to actually, you know, provide a solid basis for the currency So so that's Germany in the 1920s now There is some social unrest but surprisingly that The most of the unrest doesn't happen until the late 1920s when Germany slides into the great depression And then of course you have the rise of Nazism in the early 1930s But also in the in the United States when the United States slides into the great depression In the night in the early 1930s, you know stock market crash in 1929 and then depression in 1930 and up until almost World War II And then so in the United States you have you have I mean you have tremendous Problems you have starvation quite frankly in the summer. Uh, pardon me the winter of 1932 1933 And uh, you have businesses that are simply not I mean, they're not, you know to the question of the viewer They're not paying in contributions They're not they're the factories are not open in Detroit. For instance, Detroit had 70 percent unemployment And people starving in the streets In 1932 1933 And so the union benefits will last a while, but they won't last very long and by the mid 1930s you had pitched battles in Detroit between, uh, the hired thugs of for instance ford motor company and Union workers who were who simply wanted to get back and and start working their jobs again So and a lot of times what happened then is they would hire strike breakers So, you know, it's it's impossible to know right now exactly what's going to happen in Hawaii at a local level But at a national level we'll probably see higher levels of social banditry and could be higher levels of Of, you know violence domestic violence and you know violence and workplaces I just don't know but this is one of this is one of the things that happens when Economies to become destabilized as societies, you know, the social fabric begins to be torn. So yeah Well, I think people are feeling a little of that already. There was an article in the paper about a fellow in Kalihi over the weekend who was doing target target practice out of his window and his condo And the neighbor the neighbors complained about that and the police came and took him away But but imagine, you know, he was liberated from The norms that would normally apply and I think that's that's a you know, it's an indicator of some kind of people Loosing it a little bit. Yeah when when people have to begin to choose To not eat enough food To put food in their kid's stomachs before they can have food And we're not quite there yet, but we're we might be close six months three four five months from now We could be close to that then then it becomes a serious social crisis in addition to an economic crisis Uh and so I mean, yeah, I mean, it's it's very serious Well, based on based on the history of it coming out of it Do we just wait this thing through john or is there affirmative action the government can take? I mean, I know that f dr was not perfect, but he certainly he took in the new deal He took a lot of action and for the most part it helped, didn't it? So shouldn't we look at that now? Yeah, well, I think so. I think uh, I think the new deal is is the model I mean, we're using some of that model already and offering temporary relief to to people who don't have jobs and and offering businesses some relief and And uh, you know, we'll see how far the government goes, but you can do other things you can, uh, you know You can drive down supply To induce more demand Um, that was done in the in the new deal with some success in the agricultural sector. So so there's things that you can do Um, the the thing is we don't know exactly where this is going to go One of my concerns is not that we're going to have hyperinflation like germany Okay, I don't think that's going to happen. I mean when you look at the price of of Treasury bonds right now they are they're incredibly low Even compared to a year ago.  It's because uh, there's so pardon me There there's so much instability in the world and And the united states even though it's falling into a recession. Maybe a depression looks relatively stable and so People from other countries are socking their money into american bonds So so it's not hyperinflation just because of the shape of the world economy I don't think we're going to go there at least not yet Even though the the federal reserve is actually creating a lot of money right now I think it could be more like japan Japan from about 1990 to the present Has suffered from very low or no economic growth And and they've been caught in what we call a liquidity trap in which People are you know, your your average person is is hesitant to consume Is hesitant to make investments and therefore takes money Takes money out of the stock market takes money out of the bank or leaves it in the bank But but it holds it in cash now Japan has had One of the best saving countries in in the world in the post-war period They have a huge amount of personal saving The problem with the japanese has always been to get them to spend And it's it's slightly better now But the truth is the japanese economy is still in a situation where people are Are concerned so they're holding back cash and that creates a lack of investment And you know opportunities for businesses to create new products and And then the government is the fallback in this case and the japanese government Has done what the united states government is beginning to do now, which is take a lot of money And invest it over time and so the japanese have had excess budget since the 90s and they're They're spending their national debt is now at about 220 Of their of their GDP And so it's even it's twice as much as the united states now The united states of course has a lot bigger budget than japan but So my concern is that we could end up flatlining and get ourselves into a liquidity trap And i'll be honest with you i've already kind of contributed that because i'm no longer in the stock market When all of this happened i i began to pull out of the stock market and if enough people do that Then what you'll have is a kind of situation where It will be very difficult to generate Inflation and you're gonna have to keep interest rates very low, which means that people Well, there will be very little incentive for people to take their money out of cash and invest it in anything because interest rates are so low So that's my concern is we could end up like japan Well, let me let me ask you that you know at the end of the day um, this is about About the public it's about how people feel and think and how they conduct themselves financially and uh, you know Yes, they could wish to go back to normal or as Trump says normality. I don't think that's a real word But um Or they could do something else and I guess a big question. It's a hard one. I don't know if you have a ready answer But what if people what do people wish what should they think now? How should they see all of this? How should they see the future knowing the risk of recession depression? Coming soon, you know, I suppose if everybody got back out there on the street mask or no mask Um, and and live their lives the lives to the fullest extent as they could that would be good for us May not be good for them individually Right. So this is you know after after 9 11 then george w bush went on tv It said everybody needs to spend they need to consume so we can get the economy going again And that actually kind of worked But in this situation The problem is even if you have money people are afraid to go out and spend because They can't go out or they can go out only if they have masks on So it's a little different. So it's not like a typical recession in that way because Because people are constrained from actually Going out and spending money in ways that they might even in another kind of recession Simply because of covet So this is a complicating factor It could mean that once people can go out and spend that they will have enough money And they'll start to spend and the economy will kick back in here pretty quickly That's possible But the problem with that scenario is the unemployment quite frankly The unemployment in this you know in this situation is something We should have avoided this at all costs because we saw what happened in the 2008 great recession When with 10 unemployment, it took us you know, it took us until 2016 to fully recover from that Yeah, so if there was if there was another president I mean, I I think we agree that this president isn't isn't likely to be able to fix things It's just makes the wrong moves all the time. He has the wrong advisors and he doesn't even listen to them But if there was another president by Biden say for example Would that change the The scenario that you described could it change the scenario you described? Yeah, I mean, you know part of it is confidence right do people feel confident and and You know and and do you know do leader? Do they feel confident in their leaders that they'll do the right thing that they'll protect them? and so You know part of it is j People feel confident Yeah, well, you know in in case you thought this election coming in November was important for in the rule of law for corruption For bringing the branches of government back to proper operation. It's far more important than even that Uh, it will really determine the future of the country The world in our in our individual lives. No, thank you so much for helping us understand this We have to keep on doing it Because you know why change is the only thing that is for sure And uh, I hope to catch you again next next couple weeks And we'll we'll continue this important conversation. Okay j John david and history professor and what what did george santiana said? If you ignore history, you're gonna repeat it. That's what he said, right? Thank you so much. He was wrong about that


Hey Jerry I I just added some heavy cardboard With with that very sticky brown packing tape to the side of the get-go enclosure because I Felt bad for them since they are nocturnal The side of the enclosure facing The the window I Decided to darken it so they don't get that light Hitting their their hide their hide box inside and then they can get Less stress and more more rest in the daytime.  It really stresses them out so anyway, so I Got this from the large box That comes in when Lisa orders things I Love this the packing tape. It's really strong As thin as it is. It's very sticky and very strong. So, you know It's a nocturnal creature. So That will help right now their hide boxes are is an extra jumbo cardboard aid carton. They love it And I also use empty tissue boxes There's no need for people to pay through their nose for ornaments and enclosures In the pet stores Pete was thinking I was setting up a very large arboreal terrarium for poison dart frogs. I says listen Pete They're gorgeous. I'll give them that much. They're stunning but But they're very pricey It's it's a racket and then he's telling me. Oh, you know the prices of these exotic animals are based on the market I said, what does that mean? You know a suggested retail price is like pulling a rabbit out of out of a hat. I Mean it could be anything could be anything the mark mark up. It is no scientific Now if it was scientifically determined You know then it would be a specified percentage of profit But you know, give me a break with these exotic pets and some like arachnids You could pay a high price for one and it could drop that on you and what does Megan's excuse?  You know, they can just drop that. Oh, really? They can just drop that. So why are you charging a lot for them and since the bearded dragon which Pete has a male and a female and he's thinking of us letting the male fertilize the eggs bearded dragons is technically Like diamonds in South Africa.  It's incredible and and then, you know If somebody's selling them like Megan $50 a pop for the babies, that's a that's a fortune Because they really do bang out a lot of eggs a female bearded dragon, you know, so anyway, he wants to give me one Because he has red ones he has the the red hybrids I told him if I get one from you want a male because the males have the big head and the slender body and Males are more entertaining. They do push-ups and and they bob their head females just wave with one hand very slowly, you know, it's like a Hierarchy amongst communal creatures and it shows appeasement to the alpha, you know, but I This is how people have to think, you know, I mean they have to be use their imagination and and Actually create things homemade that work that work very well All right, of course, there's curly on top of the vinaigrette room enclosure which has the isopods at full blast and Okay, you know what they are the roaches with the buffalo beetles and here I have a Dollar zone from Saddlebrook wooden mercury thermometer to Keep me aware of the ambient temperature in the room Oh, by the way, the Medical people said that the old-fashioned mercury thermometer is still more accurate Than the digital thermometers they have now. I guess it's like somebody saying The quality of sound from music is better with a vinyl album Then then a digital mp3