Good morning, good afternoon, good evening. Wherever you're hailing from, welcome to another episode of the Level Up Hour here on OpenShift TV. I am Chris Short, Executive Producer of OpenShift TV. I'm joined by the one and only, the illustrious Langdon White this morning for the show with the most, Langdon White and the Level Up Hour. So- And the most internet points. The most internet points for sure, by far. Right. How you doing, buddy? You doing all right? Not too bad, not too bad. I'm definitely under caffeinated today. As am I, I've been up since 3.30. Oh! I don't know why.  And finally, like 4.45, I just gave it up and said goodbye. Right, that's very early. And I'm waiting for Red Hat's SSO to let me into the slides, so that's fine. Oh, well, that sounds good. So yeah, as I was mentioning before the show, I was struggling to figure out how to actually connect to the show this morning. You take one week off. Right, exactly. Everything goes... What happens? Everything goes all in a handbath. Sideways. Whatever you want to call it. Sideways, yeah, there you go. I realized I also have a typo, which I wanted to fix really quick. You know we can't fail on the show ever. Exactly. We cannot have any mistakes. No mistakes. No mistakes. So yeah, that's kind of the topic of the show this morning, right? Right, right. We kind of, basically the last stream that we did two weeks ago was, if you watch American football, was the equivalent of watching both football teams fumble the football all the way down the field. Or in soccer, it would be like goal kick, goal kick, goal kick, goal kick, for real football. It was just like, okay, how else could this fail? So today we hope to spruce this up, right? Exactly, exactly. So first and foremost, Mea Coppa, we had a scheduling snafu. So we were supposed to be doing Podman V3 today, but our special guest stars couldn't make it today at kind of at the last minute. So we had a reschedule. So you should have seen it on the Twitters that it changed around a little bit. However, yeah, or the calendar. But we will be having them next time. So we will, we are still planning on doing that episode. We just weren't able to do it today, sadly. Rescreen bot is being extra spammy this morning. Yeah. I saw a lot of chat. So, all right. So as we usually do, let us start with the slides. Assuming I can click all the right buttons to make that occur. That's a big assumption. Exactly. Look at that.   So let me grab those, which will take just a second. They are not familiar. If you wanna talk through it, you can, go ahead. No, go ahead. If you're not familiar, you know, every show we have a topic, but you're more than welcome to ask any kind of question related to containers, you know, being a, you know, former CIS admin, now working in OpenShift and Kubernetes land, you know, I understand that that transition is not exactly smooth sometimes, right? Like containers are kind of hard to conceptualize at first. And then orchestrating them is even more difficult at times. So we tried to provide you with the capabilities to do just that, to level up your adoption of containers and embrace cloud native technologies of the future. Yes. And I will say, like my big thing is, and a little bit more than that, in that hopefully to convince you why containers will make your life better. It's not just another technology you have to learn and get under your belt, because that's the way the industry is moving, which is true, but also that they're super handy and that hopefully you will find that to be a positive experience. So level up our, and so I have my handy links, which theoretically we will share in the chat in a second. But right now, we will say, we are on the Twitter's, I'm Langdon with a one and Chris is Chris Short. Two S's. With two S's, yes, he's Chris Short, maybe. No, it's Chris Short, it's just, there happen to be two S's right there. I think it's funny how people kind of get these like, it's not a mantra, but like it's a word like mantra that I'm looking for, but like you get these like flows to how you say to spell your name and stuff. Like a friend of mine always said, his name is two P's, two I's, two T's, but he says it's super fast, right? So it's barely understandable by the time it comes out of his mouth. I would say like two S's like Mississippi, but Mississippi actually has two sets of S's. Right, that would be extra confusing, right? Like, yeah, yeah. Extra sinister, maybe? Extra AB, yes. Next time I ever walk into a coffee shop, I will say my name is Chris Short, two S's like Mississippi and see what they come up with. Exactly, you know, it'll have little to do with English or anything like that. But you can also join us on our Discord and that I think has already landed in the restream or in the chat. So join us there. There's often discussions, you know, don't limit yourself to any particular channel. If you feel free to say stuff, you know, the live stream channel obviously is live streaming. So if you say stuff there, it will show up everywhere else. So, but as I usually do, I also talk about the show notes. And so last episode was 27. And so we have some brief show notes there with a little bit of how to learn more about things, which you might find handy. And this is Dev Sandbox take two. So hopefully we will have a slightly better time with the Dev Sandbox. One kind of random note, if you remember way back around episode like two, and then for a few episodes, we talked about doing command line rendering for Blender using a container. One of my colleagues is actually, who's actually sometimes on the show Christian is unhappy with exactly how it works. So he's making some changes hopefully to improve it. So if you are interested in, you know, or if you're using that or use Blender or whatever you might want to take a look, we are, I will take a look at his pull requests imminently and then we can, you can see the merge assuming it's a good one. So yeah, so if you like that sort of thing, let us know. And just for everybody here, there's the link to the show notes. And yeah, let's move on from there. No more slides. No more slides. Exactly, exactly. Later, later. Now we are going to, okay, so we did a fair amount of the intro last time. So I'm not going to do too much of that this time. Right. We have this thing called the developer sandbox now. We have this thing called the developer sandbox. Really awesome. When you can figure out how to use it. Yeah, it's, you know, it is in beta. So it's kind of, you know, limited right now. I know the length has been extended from 14 to 30 days, how long this cluster will be alive. Right. But, and I think like, I was watching something, I don't know if it was one of our videos or if it was last show or what, but like, like any given unit is 30 days in the sense that you can go get another 30 days anytime you want. It's just that, you know, if you're trying to run that Bitcoin mining operation, you're going to have to restart it after 30 days. Yeah. I don't think these are good processors for Bitcoin mining. Probably not. Probably not. But basically, you know, putting a quasi, personally, I think putting a quasi arbitrary limit on it is just primarily going after bad actors. Not, you know, it's the intent is not to tell you that you shouldn't use it longer than 30 days. And specifically, the reason I'm commenting on this is because in whatever it was that I was watching, somebody commented, is that enough time to learn, you know, did you open shift or code ready workspaces or whatever? I don't know, maybe. But if it's not, you can certainly do it longer. You just need to re-add your stuff. And if you don't have other copies of your stuff when using this kind of demo where I, you know, it's probably a bad idea anyway. So basically, save all your yamls, right? Back up everything as you can, and you can apply them on the new cluster.  Yes. So I'm going to stop sharing for one second and fix that. Not that that one actually I have memorized, but it will be a lot faster and more efficient if we can log in correctly. So let me actually just log in. So what I'm doing right now and one thing to note, you know, so you need to go sign up for developer subscription. It is free aside from, you know, some T's and C's. You can go and create your own account or you can use the various socials to do your logging in with. And then you can, sorry, just looking for the window to share. Then you can get this set up. And apparently this link is not good. So we will use this one anyway, but at least I'm logged in now, right? There you go. So do-to-do thing they're looking up for you, Langdon. Exactly. Yeah. All right, so a few things that I learned since last time, as well as, you know, kind of doing some experimentation and some more thoughts or whatever. Let's discuss this. So first and foremost, actually let me close these so that it's less likely to be angry with me. I tend to have a lot of windows open. I don't know if you've noticed. I notice, like me, I can't see my desktop, like the wallpaper. Right, right. I can't see it. Yeah, right. Actually, just a little sliver right here, I can see, never mind. One thing Noam did a few years ago, which was basically take the ability of putting, you know, like icons on your desktop, like putting, you know, saves or whatever. You can still turn it off, like you can still do it. But it has made me a much cleaner person. I will say, you know, as far as, Yeah, a little bit more organized, better, more likely to take notes. All right, so back to Dev Sandbox. So you get into Dev Sandbox by going to developers.readout.com, you sign up for an account, then you click the big button that says Developer Sandbox and it launches this site. If you're lucky, the SSO will be SSOE and you will just get logged in. If not, you will have to log in again. One thing I actually kind of glossed over is you will be presented two login boxes, one that says OpenShift SRE and one that says Dev Sandbox. Click the Dev Sandbox one, that is a known issue that they are working on fixing. So just, you know, ignore that other box for now. And speaking of SREs, I had a meeting with someone on the OpenShift dedicated team yesterday about an SRE show. Oh. To the channel. So that is in the works, no promises, no future stuff, but it's in the works and we're probably gonna have some SREs on the channel talking about not just OpenShift, of course, but how and why they built SREs the way they did, yeah. Yeah, I will say it's really, it's an interesting phenomenon. Like if you haven't read the book that kind of started it all from, some people at Google called Site Reliability Engineering. It's a quick read, take a look. Also, the Phoenix Project about DevOps, you know, if you kind of read both of those, I think you get a really interesting sense of the change in the philosophy of how software was delivered. But the thing to remember with that book is you are not Google. Just always remember. Right, right, right. You don't need to scale a database globally. Right, right. In real time, like they have, right? Like they have Spanner, right? You don't necessarily need to do that, right? Yeah, like that's not you. Yeah, I mean, as quasi or I don't know if it's actually insulting, but it seems like it should be, I mean, unicorns are unicorns, right? So they refer to Google and Facebook and a bunch of those other companies as unicorns a lot. I don't, you know, there's probably some underhanded nastiness to that, but really, you know, the core of it is true, which is that they are really unique, but that doesn't mean we can't learn from them. You know, and so yeah, so yeah, as you say, remember you're not Google, but the real point I was trying to get to there, even though I'm kind of long-winded sometimes, is I'm shocked by the amount of interest amongst, because I teach a course over at a university, the amount of interest among the students about growing up to be an SRE, which I think is really interesting, you know, and so actually one of my classes, I'm gonna have a guest lecture come in to talk about what it means to be an SRE. So I think that might be cool. Yeah. Okay, so back to Dev Sandbox, it's a developer sandbox. So first and foremost, I was very confused by, okay, so when you work with OpenShift, there's this concept of projects, alternately called namespaces, where basically that's kind of where all your code lives for a given, the word is so hard these days, but so let's say given application, even though an application may be made up of a number of applications. So when we talk about like the cool store, for example, it's actually made up of a bunch of different services, right, it has a web front end, it has a catalog component, it has an inventory component, all those things combine to build an application. So as a way to corral those things into one thing, we have this concept of a namespace or a project, those being synonymous. When Dev Sandbox sets up, we have access to three different projects, and we can't create more, so these are the three we get. And the idea of the setup is first and foremost, that Langdon code one that you will have, it will be your username dash code, that's actually not, I mean, you could use it, but it's not meant to be used. And that's why, I don't know if you remember from the last episode, but I was surprised because when I came into it, I landed in Langdon Dev, because I've worked with some organizations where they called the unit test level deployment code. And so I assumed that it was essentially unit test level deployment, but it's not. That's where some of your kind of infrastructure stuff lives, specifically where the backing store is essentially for your code ready workspace lands. So long story short, the thing called dash code, you should just ignore. Oh really? Yeah, just forget about it altogether. And in fact, if I set up the code ready workspace, I don't think any of them are running. You should see, you'll see it land. So I just started my code ready workspace and look at that. It's coming up as a thing right in Langdon code in that project. And it's not something I'm on a mess with unless I get really excited about how workspace works and want to go take a round in it for some reason. So is this like the default location where CRW is deployed every time, no matter what kind of deal? Yes, okay. Yeah, or at least as far as I can tell. You know, I don't have that confirmed from the. Yeah, we probably should get somebody to talk about this more in depth maybe. Right. If you continue to struggle, yeah. Yeah, I think, I don't know if it's for this show, but I think for a show, it might be interesting to talk about how workspaces works as an application on OpenShift. And to be clear, right? There's no particular affinity for your workspace back end or whatever to live in something called dash code. It's just, this is how Dev Sandbox was set up. And part of why I got confused is because other setups I've seen, it's been in other projects. If you're right. And like, I think I even mislead you myself because I was like, I wonder if code is like where you're supposed to just do stuff. That's, I thought it was a very reasonable assumption, right? So I thought that was too. So yeah. So first and foremost, ignore this thing that I have just spent so much time talking about. So your stuff should go in dash Dev. And this is where we get into kind of more traditional deployment, you know, stories or whatever where Dev is kind of where you play around with stuff.  And, you know, because it's beta, because it's a demo, all that stuff, you know, I don't think anybody on the works, on the, sorry, on the Dev Sandbox team wanted to call anything prod, right? Yeah, like we don't want you running production stuff in these instances. Exactly. Like this is for you to learn, train, you know, figure it out, break safely, you know. Right, right. But, you know, you know, that said, the thing that you should be expecting to surface if you want to collaborate with somebody else, you know, and check the UI of something or whatever, the idea here is stage. And the reason we have at least two is because one of the things that you should be or might want to be experimenting with is the transition from one project to another or one, even, you know, obviously not in this scenario, but, you know, one of the things you want to be thinking about is how you're transitioning your applications from one environment to another environment, be it on the same cluster, on different clusters, et cetera. So that's why, or at least, you know, that's why these two different projects are included. Not so much the idea being that you would be running multiple, and again, I struggle with the word application. So, you know, you don't want to be, it would be surprising for you to run, you know, the cool store and, you know, your, what's the most popular software these days, it's like to-do system, you know, like the idea with OpenShift, with Dev Sandbox, right, is that you're going to work on kind of one application here, even if it's made up of 37 different services. So it's kind of set up for that kind of scenario. Doesn't mean you can't do something else, I'm just saying that that's like the philosophy behind it, as I've often said on the show, if you understand the philosophy behind software, it makes it much easier, in my experience, makes it much easier to grok, you know, your choices or guess what to do next. So, again, relatively long-winded way of saying, these are what these projects are for, and so, you know, play around with it, knowing that and things will go better for you. All right, so moving on from there, what I first wanted to show here, or next wanted to show, I'm going to actually go and do this in stage because I don't have anything there. As I just got done saying, this is probably not the right way to do it, but, you know, if I were to do the show, I'm going to go delete stuff later, right? So you're presented with this from the get-go.   Go figure out what's going on behind the scenes there. Right, right.  You know, if you remember from a few shows ago, I was really struggling, I think before the show, I think I figured it out before we actually did the show, with why my container wasn't working properly, and it turned out that the error was way at the beginning of the logs and that it couldn't get the base container that I was looking for. And so, because all of my Docker file after that assumed the one I had, everything was broken, but I was only getting a warning about the fact that I couldn't get to the container I actually wanted. So this is engaging with the Red Hat catalog, you have to have a secret if you want something that's privileged.  We're not really gonna go through it too deeply today, but as you can see, you know, we get this nice sample, it has come up. This is, I think one of the coolest things in software is that I can just click that little button and I will get two of them. Like, I know I'm easily amused but it's still amazing. I know, I am easily amused as well and I have to say that like my first experience with OpenShift 4, like out in the field, I was like, oh man, I really like this. And I believe this was in OpenShift 3 as well and it was just... Yeah, yeah, it's been around for a while. Click, click, click. Oh, there's four more. Okay, fine, thanks. Right, and if you are messing with the serverless stuff, watching it go automatically to zero when you don't use it is also super cool. You know... There's nothing in this workspace. Well, that's because there's nothing to do. Right, right. And actually the serverless stuff is where you really see why corkis is kind of amazing because wait, do I have... I don't have a corkis project up and running but maybe we'll get to that. Hold on, we'll get to it. Table it. Yeah, one thing at a time. All right, so, okay, so in order to access like an application inside of OpenShift, you need some sort of what, you know, the fancy term is some sort of ingress. Into OpenShift and in order to get that, what we create is called a route. Now, when I created that sample application, it included a bunch of nice things, right? It included the obvious code bits, which is what this build part is, right?  And so the service, this is one of the things that I most appreciate actually about Kubernetes and OpenShift is that by, almost by default, the expectation is that you put a layer of indirection between your application and the URL you use to get to it. Why is this so important? Because applications change and when applications change, you wanna do things like, you know, have some of your, sorry, some of your visitors continuing to hit your old one while you deploy your new one and new visitors start hitting the new one, things like that. So there are lots and lots of scenarios where having that layer of indirection between the URL and the actual application is a lifesaver. And so the default coming up with that layer of indirection, even though to a lot of people, I think the reason they shy away from it is they feel like it's over-engineering. And this is one of those places where I, while I tend to over-engineer, I strongly recommend kind of that layer of indirection. So when you're setting up your own application, consider putting in a service even though it's not required. Right, like it's not required, but it's always great to have. Exactly. So here is our fancy fancy, apparently Django application on OpenShift. If you're unfamiliar with Django, it's basically a content management system, open source written in Python, kind of does all the things that CMS does. So if you want to run your heavyweight blog, think about Django. If you want a lighter weight one, excuse me, something like Flask might be a better choice. Now I lost one window. It'll work for anybody, right? Like no judgment here. Yeah, yeah, yeah. For you to run with it, right? I'm a little judgy of Django. Well, I'm not. Yeah, there you go, there you go. Okay, so that's my little Python sample application. I am actually just gonna delete it. And one of the things, this is something that I'm trying to figure out how to file a bug about this because I'm not sure what exactly I'm trying to say, but when I click this delete here, I expect to immediately be able to go and create the thing again. And you can't a lot of the time. So when I delete it, what I want to do is then, okay, so it's deleting, it's doing its little cooking. I go and look at the project and notice a couple of things. For example, hey, look, my service is still there. So arguably my service is still there and so now I could put some other thing behind it. I could keep that old route, because I think the route was there too. I could keep the old route and the service and put something else behind that. So there's a really strong positive argument for being able to do that. The thing is, if I go into the topology view and right click delete, my expectation, I think, is that all of that stuff is blown away and that I could immediately recreate it. So I wonder if almost we need another option in the menu that is something like really, really destroy it versus mostly destroy it. So in order to get this back to square one, so that I can redeploy that same Python sample app, I need to actually manually remove both the route, the sample, and then I think an image stream. And what particularly annoys me about image streams is that you have to go to the administrator view and then go to builds and then image streams and then delete it here. So there's, like I said, there's a few different ways this could be handled. So I'm not convinced I know the right one, but that experience right is like, I want an expectation that if there should be a button, I think in the topology view that says completely destroy this. The other way you could do this is that the Python sample or any application could do the general Kubernetes thing of being relatively idempotent. And so the other option would be that it shouldn't fail when the things it's trying to create already exist. So normally how you would blow all of it away is delete the namespace or the project, right? Right, that's how I would do it. But you can do that here, so. Right, that actually won't kill the image build though. It won't? Or the image stream. Oh, no, it won't because that's hot. Yeah, kind of outside. So yeah, yeah. So I often will also delete the workspace and my suspicion is that the engineers who work on this stuff for the most part do the same thing. But like in the Dev Sandbox scenario, or I imagine in most like enterprise production scenarios, I probably can't delete the namespace at all, right? Because if you have a namespace, it's like your namespace and you have to go get another one and there's some process behind that. Right, right, exactly. It's not something I can casually just wipe out, right? Depends on the permissions in your environment, but yeah. Exactly, exactly. But at least if I was a junior developer at an organization, it's not something I would risk. I wouldn't even ask the question.   I'm gonna keep using it. I'm gonna keep trying to fix whatever's wrong with it. I don't know, maybe I'm crazy. Okay, so going back a little bit. So I flipped back over to the dev one just because I put a couple of projects in here. So for a few episodes, we talked about the cool store. We wanna talk about it more. And so these are two parts of the cool store. Let me rearrange some windows so I can show you basically, so I can show you this desktop, but there's a lot of junk up here. So many windows. All right, I don't know where the proliferation comes from. It's called work. Exactly. All right, hopefully... Yeah, okay. Let's stop that sharing and start this sharing. Did that freeze or something? What happened there? No, I just wanna have two windows at the same time. And I wasn't sure exactly how I was gonna talk about it, so I didn't prepare for it. That is very tiny, so... Yeah, okay, sorry. How did I... I had it set so that it was bigger and I had it nicely bigger. Oh, really? Yeah, just so I remember how I did it before. Global settings? Yeah, it was something like global... Text size or font size, I think. That didn't seem to make any difference whatsoever. Save or... I think I did. Like, I think it's immediate cloud. So the right side is fine. I think the left side is... They actually use the control plus-plus interface. Yeah, it's like a different font setting. I don't know, how's that? You don't really need to see this part that much anyway. Yeah, don't worry about the left-hand side, too, folks. The right-hand side, we want you to see. Right, right, so... All right, so what I wanna show here is... Okay, so I know it's cut off because of poor naming on my part, but so I was... Because I was experimenting, I gave it the brilliant name of EXP for Experimental Catalog Go. And so that's this directory here, this Experimental. And so this is a Go application that... Oh, I do have a Quarkus app, so I can show you how fast it is. So if I can click on the thing. So what I wanna show here is... So this is in a public repo. It's just under my normal namespace. I didn't put it under the level of power because the content is not interesting per se. I may move it and add it into the actual level of power stuff, but it's just kind of like meh. But so the reason it has to be public though is... So I'll just show you... Actually, why don't we just do it? Yeah, do that. So what I can do is I'll delete this Yahoo and go over here. Deployment config is gone. Deployment config is gone and then I gotta kill the image stream. Make sure I get the right one.  And then I said I usually just check the project itself to make sure I hit everything. And I did because the deployment config, that's why I prefer to use deployment configs because it should kind of take down everything when I take the one piece away. So what I do here is I do an ad, but I'm gonna do an ad from Git. And of course, I don't remember the user or the URL. I didn't log in. How is that possible? This is my level of our browser. And so I'm gonna get an HTTPS URL. I've had bad luck with the SSH URLs, so just keep that in mind. Oh, yeah, you're not gonna be able to use the SSH URL because you don't have keys in that pairing setup. Right, right. One of the things... This is another thing, though, I kind of feel like I should go file a bug for. Like, you can easily convert the SSH URL into an HTTP URL. So it'd be nice if I dropped the SSH one. It would say something like, you know, mostly validated, but I changed it to an HTTPS URL that looks like this. You know, that would be nice. That would be cool. I should tell Serena from the future that. Well, that's... Yeah, that's what I was gonna say. That's what I was gonna file a bug. Oops, wrong button altogether. Just don't disconnect. I was gonna show... Yeah, exactly. That would be awkward. Chris is gonna pull up his thing and try to do something. Well, I'm gonna reconnect. Yeah. If I do... I think it's... Yeah, here. So, yeah, one thing I just noticed, I was trying to find the, like, you know, machine size, like the whole compute sidebar thing in the sandbox is not there. So that's interesting. Really? Yeah, on the administration side. I mean, it's not germane to the discussion. I just realized this all... Yeah, no, I'm curious though now. I thought, oh, you have quotas. Oh, well, I have no quotas, apparently. Yeah, it is kind of not there. Yeah. So this is what it's like to work as a real user and not always have close to that. No, I'm scared. Okay, so the point I was trying to make with... What is this catalog? Was the big reason is because if I do... Oh, my God, Mike. What's the... Let's see. Export PS1 equals... Let's just do dollar. Oops. Let's kill... I'm just trying to...  I don't know why it's so long. Open in like a bash prompt or something. Like a... Or if you have the opposite, right? Like ZSH versus Bash kind of thing. Oh, yeah, I could try that. Nope. Oh, it works in ZSH too. It's not found. I mean, I could do SH. It doesn't... I don't know if it's going to help. Let's see. Well, SH, I think, still reads the bash RCA file and everything. It does? That's weird. In your user environment, yeah. And like home, yeah. All right, let me just... I'm actually just going to disable PowerLine. Okay, that works too. But my typing is prone to failure, as we all know. Just slightly. Yes. All right, so theoretically, this one will be a little better. Are you sure? There we go. There we go. Okay, so the reason I was commenting on it primarily is because if I do remote-v, I would like to be able to just drop this in there, right? I don't... And it's easily translatable from that to be an HTTPS URL because then I don't have to go open up a web browser and go find out what the HTTPS URL is because I have no idea. Maybe there's a way and get that you can actually tell it to give me the other URL, but that's why I think it'd be kind of nice if you could just drop an SC20 in there. All right, so continuing on. Okay, so it's smartly detected that this is a Go project. It said, okay, I'm going to plop that on top of this version of Go. I have some other options, but I'm going to take the one it guessed. It decided to create it as a... Oh, I didn't know this was there. This was. Today we learned. Today we learned. Let's do Cool Store. And then I'm going to do deployment config just to make my life easier later. And then we're going to say, yes, create a route, please. Oh, see, this is why I get annoyed. So, yeah, I forgot about secrets is also sometimes they're trying to think about where it is. So in the secrets, there is a webhook for the Go app. There's actually two. Hopefully I didn't delete the wrong one. You know, things go poorly. So that should work now. Oh, that's I was wondering. I thought it would yell at me earlier. Oops, click. Oh, yeah. So because, yeah, this is another thing I should go file a bug about. Sometimes, even though I hit the create and it failed, it actually started. Yeah, it's just like a timeout, I think. Well, and so now I have created something like a build config, even though I didn't successfully do the create. So to try to do the create again, I have to go delete the build config. It's very weird. So I need to go like I need to go experiment with this carefully because I could be completely crazy, which is certainly possible. But I have experienced that if I hit create and the create fails, sometimes it did create some parts of it. And so if I try to do the create again, it will fail because part of it already exists. I can see by the look on your face, you think I'm crazy. No, I'm actually typing in chat. I'm sorry. Oh, yeah, no worries. So you can also think I'm crazy. When it comes to these dev sandboxes, right, since they are in beta right now, I'm not like I need to put this lightly because I don't want to insult anybody, right? Like I'm not expecting full perfectionality and perfection right now, right? Like I'm hoping for pods to come up, deployments to work, those basic core Kubernetes services or components, I should say, because service is a component in Kubernetes. Those core components all work, right? So right now, I'm not surprised. Right, right. When we ship this thing without the beta label, that would surprise me, right? Like, mm-hmm, mm-hmm. So in their end of, I had forgotten that I actually do have fish installed. I didn't have ZSH. I did have fish, so I could have used fish. My, I was trying, I actually have one of my computers is actually using fish exclusively now. It's a great shell. But my bashisms are so ingrained. Oh yeah. It's hard to use.  And I found actually a cool script that will convert your bash aliases to fish functions, fish commands, I can't remember what it's called, and put them in the right place because they go in this like config directory and stuff. And so most of them work, but there are some of them that I need to go figure out how they work. But yeah, so I've been slowly trying it out. I just haven't had, you know, it's just, it's only been a couple of months. So I have it on one computer so that it doesn't like destroy my productivity all the rest of the time while I kind of learn it. Carlos, sadly, it does not support serverless. I'm personally deeply offended. I do know that both service mesh and serverless are very high on the list for things that should land or that we want to land really soon. That said, though, if you go to learn.openshift, right, that's the one with all the demos, you can go and experiment with serverless in there directly because those like the setups for those workshops are set up to use serverless, et cetera. So you can play with it. OK, we were talking a bit. Logs ran by. You know, it built out some stuff. Let's go see how it did poorly, apparently. Wow, bad. Was it saying little check fail? OK, so this is where I was struggling with the Dev Sandbox kind of setup versus OpenShift setup. So the problem here is that this application is set up to be pushed into OpenShift, not kind of read by OpenShift. And this is a thing that we would like to or like I would like to kind of see how to fix it. I'm not sure if the problem is in the code base for the catalog go here or if the problem is kind of like how OpenShift approaches it. It's not you? It could very well be me. But I don't think it's me. So what I can show you is if you go back to and this is why I was messing around with with the works with workspaces. I cannot talk. So I think I need to. Oops, I need to delete this. You can only have two workspaces. But I'm not sure if it's to total or to running. So I'm just going to let's see. So I can say I'll go workspace. Yeah, so you can only have two workspaces on this setup.  And then I'm afraid this is actually going to inject code. Yeah, so I need to stop this one. So you have to you have to have two or less total and then you can run one at a time. And it's pretty easy to kind of go back and forth. It's just I'm still getting used to what the numbers are. I don't know. Did we have good comments in the chat while we're waiting for this to load? Wanting to onboard people with serverless right out of the box. Oh, yeah. I'm totally down with that. Yeah, like I am too. It's just not there yet. Yeah, like we're working on it. Does the sandbox allow installed operators that can be installed on the space of scope? Nope, not there yet. Yeah, so basically available to you and the interface. The fundamental flaw is operators are not available. And so the operator hub is not available within OpenShift. Right. Well, let's say user installed operators. Yeah, kind of in any way because the challenge right now is that for at least this is my understanding is that to get kind of a user scoped operator is not something OpenShift does very well at this point. You have to have them at the kind of cluster level. So in order for OpenShift, like the dev sandbox to be able to offer an operator, it needs to be able to install at the user level rather than at the cluster admin level. And so that's what's in progress. But it's a problem like it's not just a problem for dev sandbox. So it's very high on the priority list. Like this is something we really want to see. Hopefully that helps. So yeah, so it's not that the like it's not that hub isn't available per se. It's just you don't have privileges to install operators. That said, you can go and get any other kind of container you want to get. You just can't use an operator because the privileges it requires are too high for a regular user. Does that make sense? Yeah. All right. And yeah, to your point, right, there are operators installed. There's nothing wrong with us having operators. It's just that you can't install them as a user or can't choose to consume them as a user. In fact, I don't want to put words in the dedicated team's mouth, but this is almost like OpenShift running in OpenShift, right? So there is a nested layer here that you're not going to see. There's some abstraction being taken away because this is a Dev Sandbox. Right. So. But there's other scenarios where this operators by users in a sense is also a problem like something else that people want fixed. So like I said, at least for me, right, if I was looking at Red Hat and I said, oh, Dev Sandbox has this problem, what's the priority of that, right? Right. What I'm just trying to elaborate on is that Dev Sandbox is just one instance of this problem. It is a problem for a number of other scenarios as well. And so as a result, it's a pretty high priority, specifically with actually service mesh and serverless. So you may even see a solution where service mesh and serverless just become available to developers in Dev Sandbox without you mucking with the operator in a sense, it'll just kind of be set up. Okay, moving on. So I went and did the go like sample in code ready workspaces. And as you can see, I have like a go application here, right? The thing is, is that it's just like a go application. So that's actually not really what I wanted, right? What I really wanted was a way to say, give me kind of a go framework so that I can go and put my own code there. So this isn't quite what we want, but I would like to point out how the similarity, if you haven't used code ready workspaces, the similarity between this, which is Visual Studio Code and this, which is code ready workspaces, which is based on Che. The two projects, VS Code and Che, share a ton of code, which is super cool, I think, that we have this like open source community that's kind of going two different directions, but with the same code base. Che and code ready workspaces are looking for an online IDE and Visual Studio is looking for an offline IDE. One of the super neat features in code ready workspaces, which I don't know of a way to do in Visual Studio might exist, is this thing called a dev file, which if you've ever worked, especially as a team lead for a software development team, it is incredibly difficult. I find this video very distracting, sorry. It's incredibly difficult to onboard new people onto an existing software project that's been going on for a long time. And one of the reasons, obviously there's all the teaching and stuff about how you do things, but there's also the reason of I want to make sure they have the exact right operating system, the exact rate code base, exact rate patch level, et cetera, et cetera, so that we're all operating from the same exact position. Whether we decide to continuously integrate patches or we decide to delay them for a patch day or whatever, what I want is my whole team to be operating from the same position at any given point. So Vagrant, if you've ever used Vagrant, tried to solve this or it does solve this to some extent, for many years now using virtual machines, basically you have this thing called a Vagrant file, I give it to everyone on my team, they click Vagrant up and bang, they have an environment that looks like everybody else is on the team. Code ready workspaces with this dev file thing, which let's see if I can find it. Actually I know it's easily accessible here. Nope, wrong button. It's easily accessible here. This dev file thing, I can give somebody else this dev file and it will create exactly the same development environment. And on top of that, if you're using something like code ready workspaces, which is being deployed on an open shift, you know exactly what it looks like because it's all coming from the same open shift, it's all coming from the same operator, which is then in turn creating the exact same development environment. So yeah, a Vagrant VM and open shift, but we should totally do that for a show. Oh my gosh, that would be so funny. We would have to have Andrew on to make sure that I didn't script C and V too badly. Well, no, you wouldn't be interfacing with C and V, right? Like you would just run Vagrant in a pod at that point. Right? But where's the VM go? In that same pod. I don't think it's gonna be lightweight or anything. No, see I was imagining, so one of the things Vagrant can do is you can actually say, give me an EC2 machine rather than a local machine. So I was imagining doing, there might be an open shift plugin where I can say, give me a VM inside open shift. I've actually, if you like open shift, sorry, if you like Vagrant, I have experimented a bunch with their container tooling. So you can actually say, instead of a Vagrant VM, you can have a Vagrant container. And many years ago, if you've ever seen the container development kit, the original version of that actually works in Vagrant. So it's entirely in Vagrant. And if you use Vagrant all the time and you use it with rel all the time, I also wrote a plugin for Vagrant that does your Red Hat registration for rel automatically. Which may be interesting to people who use Vagrant and rel quite a lot. And I have since discontinued my support for it, but it was popular enough in the community that it has now grown its own owners who now maintain and do a good job. So little sidebar, go check out Vagrant. We should totally do a Vagrant VM inside of OpenShift one of these days. Okay, so back to Dev Sandbox and CodeReady Workspaces. So the experience here is really, really good for I didn't actually want to experiment with OpenShift. I wanted an online IDE, which I could experiment with this online IDE. So that's cool, but not quite what I was looking for. What we were looking for was I want an online IDE for the things I'm using in OpenShift, if that makes sense. So I'm actually going to go back here and destroy this because it's not what I want. But the reason I bring it up is like, if that's your goal, it's a good one and you have to do it kind of differently. So what instead I want to do is a custom workspace. Now, I'm trying to remember how you do this. I'm going to say, give me a generic go Dev file. Excuse me, a generic go Dev file. And I can create and open that and then give it a second. Now I'm confused about who's brother is vagrant. Yeah, I don't know. Is their logo still like a vagrant? Yeah, yeah, I know they went all corporate a few years ago. So, you know, yeah, I mean, I remember using it when it was primarily targeted as as for like web developers on Mac, which was how I started using it, not on Mac or as a web developer, but that was when I started using it. I just found it super handy to be able to pre describe. It was basically config management for developers, right? Is that like, well, it was like, yeah, like consistent environment every single time, kind of, right? Right. And pre and elsewhere. Yeah, exactly. And so you couldn't do it for everything. Yeah. Yeah. And I didn't want to go figure it out. Puppet to create my development environment. OK, so now we have a code base that, you know, is is a little more basic and then, you know, basically what I can do is I can now add my files to this workspace by trying to remember how to do it. Oh, wait a minute. It gave me the whole sample again. And I want the whole sample again. I swear I made this work before. So what I really what I really want is I want an IDE workspace based on my Git repo, right? And I'm not sure that I figured out exactly how to do that. And so this is something that, you know, maybe we cover again when we're when we're doing vagrant VMs and OpenShift, you know, and kind of come back to once I go and try to figure this out because like, at least for me, like, I really like code ready workspaces and I like OpenShift, but my goal with Dev Sandbox is actually to be using them more together. And what I haven't found a good way of doing is saying, OK, I made this project over here from a Git repo. Give me the code ready workspace based on that, you know, component, right? So I can kind of go through eventually and do it manually. But like, I feel like I must be missing something about how to do this more dynamically, you know, where I can kind of, you know, right click and say go and things will happen. So hopefully that's a little bit of an introduction. I was going to, I was kind of thinking about stopping there. Maybe loading the, yeah, do the points. Maybe see what the corkis one looks like. Oh, one thing I wanted to see if I could do quickly, but I think it's all broken is, yeah. So the thing that's really cool about corkis is it's a Java JVM, right? And it's based on grail or grail, however you want to say. Yeah, and a grail. But it's the thing that's crazy about it for anybody who's worked with Java is the JVM startup load time, you know, to get an application up and running is literally 10 to 15 milliseconds. Yeah. Which if you've done any Java stuff whatsoever is normally like a minute. And like Java in my experience, right? Like I did a bunch of Java work. It's really performant once it's going. But if you want to do something like serverless where you wanted to be able to scale to zero, you cannot scale it to zero. You have to keep at least one hot, right? And what corkis lets you do is have one that is zero and then still can respond to a request in a reasonable enough time frame, even though it's starting up the entire JVM. So somebody asks, is the same file for Odo and CRW? Yeah. So Odo, right. Odo is working on dev file stuff. There's a dev file v2 in the works as well. So I really like, I think dev file, that concept is amazing. And I really, I don't know anywhere near enough about it. Oh, so Narendra brings up that corkis is not a great way to learn Java. I could see that. Yeah.  It's kind of like, it's like, I wouldn't want to learn C, C plus plus from the Facebook PHP compiler either. Right. Yeah. You know, like they have a compiler for PHP this, I think it's C or C plus plus.  I think that corkis, though, like the corkis team wants to be a place to go and learn Java. So if you have feedback for them, you know, feel free to share it with us, share it with them, probably better off sharing it with them. And, you know, just talk about why, you know, why you might not find it to be particularly easy to understand. Okay. Points. Where is that window? I wonder. You probably closed it, I bet. Yeah, probably. I did not. In fact, good for you. Look at that. So you all should be able to see it. And we're going to stress it out a little bit. And so points. 4,600 for Nurendev. Very nice. Very nice. Netherlands hack them with 4,500. Then haven't seen a lot of movement from Noah friction and Joe fuzz the past couple of episodes. So we, I'm hoping that we'll, we'll see that movement. Detective Conan Kudo and bacon fork. Definitely up and coming. And let me throw the. Today's points into the chat. Thank you. Playing risky says speaking of image builds. I'm looking forward to the build pack. Yes. Yeah. Yeah. I know a lot of, I know a number of you are working on that. Yeah. I am too. I'm really curious how that's going to work. Exactly. I haven't really experimented with it at all. But it's something it's like on my list of things to do. It's just the list isn't like any kind of reasonable length. So yeah. Yeah. But. Current status of the points. Thank you all so much for coming along. We, we are. So close. So close. To giving out. You know, extrinsic rewards for the points rather than just intrinsic. We are, we are kind of waiting on legal at the moment. As you do. And. Yeah. So Kona Kudo who was masquerading as the eighth doctor is back to Kona Kudo. And thanks all for joining us. I think I wanted to kind of, I think wrap up there. Unless anybody else had any more questions. Give it like good sevens, eight seconds before we. Pull the plug. So everybody can actually hear what we just said. Yeah, right. Right. But, you know, like I said, I kind of wanted to give a little bit better overview of dev sandbox. I think some of my. Challenges in the last episode were related to these things that I think like. At least for me, it's a little bit unintuitive how some of these pieces connect together. And so, you know, hopefully this episode has helped you intuit it better so that you can have a more positive experience than we did the first time we took a swing at it. But it is super powerful. Like you can, you really can do a lot of stuff. You know, you can use tools like we mentioned in the chat. You can use tools like Odo. We have not done Odo on the show. We really should. You know, we've only done. The developer advocate hour. Oh, right. Okay. Yes. We've done on the channel. Not for a while. I don't think we've talked about it in months to be honest with you. So yeah, we've done it elsewhere on the channel, but yeah, we can bring it back here. Okay. The other thing I wanted to, oh, sorry. I meant to also do was. We have a couple of other shows. Shows a couple of other episodes that were about the dev sandbox. That I grabbed the video links for. That if anybody wanted to see some, you know, more accomplished people do things with dev sandbox. So the first one is a guy named Don shank. Who is a big dot net advocate within red hat. And has worked on a lot of dot net applications over the years. And he's talking about dev sandbox particularly. It's kind of like launch day talk, but at the same time he talks a lot about using dot net on, on the dev sandbox. So I think that's kind of neat. I would, I'm a big fantasy sharp have been for a long time. The other video is a dev nation talk about using dev sandbox and walking through. I want to say it's a Node.js app, but now I can't remember. I might be, I might be misremembering. So that's, it's definitely dev nation. It's definitely interesting. I just can't remember if it was Node.js or if it was some other language. But yeah, who knows who knows exactly. Yeah. All right. So everyone had a chance to get their questions. And I think you just mentioned coming up next on the channel is the wonderful ask an admin or ask an open shift admin show. We're going to be talking about DNS and cluster network game. It's going to be super, super fun. You know, you'll have used some DNS. And remember pod man v3. We'll be talking about that next week on this show. And then with any luck, if I can make the, if I can make the timing work, I'm going to be help hosting the rail show in a few weeks. And we may, who knows, maybe there'll be some points given out then snap. Right. So you never could, you never know. So yeah, I just, I have a conflict that I'm trying to get out of basically at this point to try to be able to host the show. I mean, do you need me to step in? Well, it would be with Boston University. So I'm not sure it'd be a big help. But yeah, so I'm, I'm trying. So we'll see what happens. But thanks everybody for coming. And we will see you next time. Yeah. Take it easy everybody. Stay safe out there. Thanks.


Next up, South Korea. Yeah, I'm smiling because I am in South Korea. But yeah, South Korea continues to be a great destination for teaching English abroad. Also in 2021, there are also a lot of attractive benefits in South Korea, like paid airfare, paid housing, the pension scheme, which you basically pay into the national pension scheme. And then when you leave Korea, you get all of that money back. So depending on how long you stay, it's a couple of thousand dollars that you then get in addition to your end of contract bonuses and all of that, that's really nice. South Korea also has some of the highest salaries to be found anywhere in Asia between 1,600 to 2,400 US dollars. And there's, like we said earlier, the Epic Inter-Talk Program. So again, those are two government funded programs that place teachers into public schools in South Korea. The requirements are usually a bachelor's degree in any subject. So again, it doesn't have to be education. It doesn't have to be in English. My bachelor's degree was in business management. And I was so hired a TEFL certificate. But for South Korea, you need to be a passport holder of certain English speaking countries. So to get this E2, that's the E2 teaching visa, you need to be from either Canada, the US, the UK, Ireland, South Africa, Australia, or New Zealand. So those seven. However, there are workarounds. So if you're not from those countries, there are certain workarounds. South Korea also has a work and travel visa for many countries. There's also creator visas you could get. And there's other options for long term visas.  So there's different kinds of options. All right. And oh, COVID. Forgot the COVID-19 info by Korea. It's also a 14-day quarantine that everybody has to go into. And the quarantine costs are also mostly free. So typically how it works when, because you get paid housing. So your housing is already lined up before you come. And you have a permanent visa when you enter. So people who have a permanent long term visa, they can quarantine at home. And since you already have a house lined up, you can quarantine there instead of at a hospital or a government facility. And then it doesn't cost you anything. And you also get a little, depending on where you teach, in what province or city, you get a COVID starter pack thing with food in it and masks and necessities when you first arrive. And I know a couple of people who have gone through that. Of course, it's really hard, two weeks in quarantine. I mean, it's hard anywhere. But imagine you're new in this new country that you've always wanted to go to. And you have to sit in your apartment for two weeks and you can't go out. I just thought it's really horrible. But yeah, you go through it. You have this little starter pack. And yeah, then you start teaching. And so yeah, it's really good. Let me go back to some questions. OK, Muza, Muzaware asked when China will start issuing visa and what are the latest news to go to China? I just talked about that in the beginning. So you could re-watch that part. But basically, China is issuing visas for teachers. Right now, you just need an additional document called a PU letter, which is an invitation letter. And usually your company or the school, they will get that for you. OK, Kenny asks, how do countries hire teachers for international teacher jobs in COVID situation, by video calling, Zoom meeting, or video conferencing? This was also the case before COVID. A lot of countries hire in advance from when you are still in your own country. And then it usually goes like a Skype interview. So that's not really new or because of COVID. That's been going on before as well. So you do a Skype interview. And sometimes you also have to teach a mock lesson. So they would give you a topic. You have to teach this and this and this. Prepare a 20-minute mock lesson and teach it. Or sometimes you need to record it and send it to them, things like that. Yeah. OK, then we have a question from Madi. Is it the teacher who chooses the coursebook and what to be taught? Or is it the school's responsibility? So this depends on the school. The schools that I worked at, so in China, it was more like the school that I worked at there. They did have coursebooks. But you could also create your own lesson plans and your own activities and stuff. And at the school that I worked for in South Korea, they provided everything. They had a very outlined curriculum at that school because it was a national chain. So the idea is that all of those schools do the same thing every week, basically. And it needs to be in line with all the other schools in the country. So we knew exactly what we had to do and when and what page and which worksheet, et cetera. So it depends. Some schools, they want their teachers to create their materials and the curriculums and stuff like that. And other schools, they give you everything. So it depends. Yeah. OK. Thanks so much for watching. We are ITTT, the leading provider for TEFL and TESOL training courses. If you like this video, please subscribe by clicking the button down here and click on any of the videos here on the left for more interesting teaching tips for getting certified to teach English abroad and online.


of the benefit powers devolved to us and 85 per cent remain at Westminster, the reality is not that we are looking to the past but that we are looking to the present and that, if the member really does want assistance for those who want to go into employment, she and her colleagues will turn to the UK Government of which she is so proud and remind them not to cut benefits and support to long-term unemployed and people with disabilities who want to be unemployed and stop trying to believe and make us believe that somehow we are the backward-looking ones and you are forward-looking, far from the truth. There is top-up benefits that this Government will have control over as well, so I think that we need to work together. That is what I am trying to say here. We work together in this chamber to deliver the best for the people of Scotland. We should be mindful that Scotland's social security—no, I have done that. For instance, with the integration of health and social care, we should explore whether attendance rounds and DLA and PIP should be part of a similarly integrated system, either by devolving further control to local authorities' health boards or to the new health and social care partnerships. Indeed, on that subject, the Convention of Scottish Local Authorities has said that full devolution of the disability and carers benefits to Scottish local authorities could be used to develop more rounded personal budgets to enhance health and wellbeing and improve personal independence. That option could allow a more localised, personalised and flexible disability benefit system. I instinctively believe that the decisions are best taken as close to those who are affected as possible. Such innovations could result in not only a more effective social security system but a fairer and more engaged one as well, one that focuses on looking at people as individuals rather than just focusing on physical abilities. In short, we should work to ensure that people are supported to achieve personal independence holistically. That, again, brings me to an important point. In striving for dignity and personal independence for disabled people, we should always strive to help those who can and want to work into employment. It is also the case that, for an individual to be supported to find work and for that individual to be working and contributing to society, it is surely also a dignified and fair outcome. I welcome Joanne Lamont's comments during her speech about supporting the people who are getting into work and keeping them in work. When thinking about fairness in relation to people who have a disability, I would ask, is it fair that the employment rates for disabled people are currently 43 per cent lower than that of those who are not classes disabled? Of course it is not, and it is clear to me that we need to do more to help those who are looking for work, whether it is in terms of developing skills and boosting confidence or a more practical support and advice. It is vital that the support is ready and available for those people who are looking for work. Many disabled people can work and want to work and need some support to get into work. I am wholeheartedly committed to ensuring that all disabled people who want to work have the opportunity and support the need to get and keep a job. The words dignity and respect to me imply empowerment and opportunity as much as protection and security. In short, we have two core aims when it comes to the disability benefits system. We want to be supportive of those who cannot work and we want to be effective at helping those who want to work. Again, I welcome, in line with her own policy, the proposed plan to increase the carers' irons. I want to start by congratulating Jeremy Balfour on his maiden speech. I listened to it with interest, particularly the parts about his experience as a serving member of the tribunal. I just hope that the Tories have had the good sense to place him on the Social Security Committee. I want to start by talking about mental health and mental illness. It has been a feature of this debate today. Sandra White has spoken about it and Marie Todd very powerfully has spoken about the impact of hopelessness and what that does to people's mental health. The mental health issues have also been a thread throughout many of the debates that we have had over the past few weeks as we have began this new parliamentary session, not least thanks to Alex Cole-Hamilton. As a consequence, I have been recalling the words of my old social work boss who was trying to support and comfort me as a newly qualified mental health officer when a young woman that I had been working with had later went on to commit suicide. I remember him saying, Angela, that mental illness is sometimes terminal. What he meant is that mental illness, such as physical illness, can be life-limiting and at times fatal, but with mental illness it can be invisible. There are people who are going about their daily life, going about their business in our community day by day, week by week, and we do not see or understand the invisible turmoil and torment that they go through as a result of a wide range of mental health issues. I mention this because for anyone who works with or for people with vulnerabilities or difficulties of any description, and for those of us who are charged with the responsibility to design, build, provide and to provide a new service such as the Scottish Social Security Agency, the largest-scale project in the history of this Parliament. That is where I agree with Mark Griffin. We will have to have the insight, understanding and the humility to know how hard we are all going to have to work to get this right and to get it right from the start, because dignity, fairness and respect will be built in with the bricks of the new agency. Johann Lamont was right that this has to be more than war and words, and we will proceed in that spirit of co-production, working with those with the lived experience of the benefit system, and we will at all times think about how it feels when the person doing the assessment wants to examine their stomach when the problem is that they cannot get up out of their bed in the morning for due to crying constantly due to depression, or how it feels when you read a report written about you and you are described as it. We should not underestimate the value and how we will need to ensure that the culture and the correct values are at the heart of this new agency. Mr Tomkins spoke about timescales and made no mistake about it. Yes, we want these new powers as soon as is practical. Indeed, we wanted more powers and we want to be making different choices, but our number one priority, our number one responsibility has to be the safe and secure transfer. That means that we have to work as part of the joint ministerial working group on welfare to ensure that the powers and resources are transferred appropriately. I hope that Mr Tomkins is relieved that I received his letter and that an acknowledgement was sent to him yesterday, but I can tell him that the joint ministerial working group on welfare will, for the first time after the election, meet next week. I have had constructive discussions both with David Mundell and Stephen Crabb, but I have to emphasise the practicalities here. Focs rely on their benefits, and we will not be gestured or bullied into unrealistic timescales despite our eagerness. We have to get this right. I am very grateful to Angela Constance for giving way. Can the cabinet secretary give even a hint of a suggestion as to the sort of timetable in terms of actual months and years when we can expect these powers to be transferred to this parliament? As Mr Tomkins acknowledged in his letter to me, the implementation dates for welfare will be agreed by the joint ministerial working group on welfare. He also knows that this Government will be undertaking, over the summer months, a pre-legislative consultation on the new Scottish Social Security Agency. We are proceeding with a wealth of work. It is detailed work. We will proceed as fast as we can, but with great care and cautious, because we will not compromise this getting it right because people depend on us and they depend on receiving the right benefit at the right time for the right amount. I can turn my attention just briefly to the Conservative motion. Many members have picked up on the fact that the Conservatives have completed some of the issues in and around disability with employment and how that covertly feeds into a nasty narrative that is about the deserving and undeserving poor. We have to remember that we do not have all the powers in terms of supporting people into work. I regret that deeply, and we will ensure that we use the powers that we have to maximum impact. It would be remiss of me not to reiterate that, before employment services were devolved, they received a whopping 87 per cent cut before the powers and resources were transferred. We have to question the Conservatives on some of their practices, because now 100 per cent of the welfare state remains with them. When we get the new powers, we will indeed have 15 per cent. We have to question how losing your motability vehicle helps you to get to work, and that makes a sham of their claim to be ambitious about reducing the disability employment gap, or how does it help people making them fight for what should be theirs by right? How does that increase their confidence and insist them into the workplace? Presiding Officer, we will continue to oppose all attacks to social security for disabled people from the UK Government. It is imperative that expenditure is protected, not just for the benefits that are to be devolved to Scotland, but for those benefits that will remain reserved. That includes ESA. We have heard Tories today appeal against those unwarranted attacks on Westminster. Like Pauline McNeill, what about the unwarranted attacks on the poor? I have not heard any Tory member today stand up for the poorest in our society. We have to remember that £6 billion has been taken from welfare expenditure in Scotland, and £1 billion of that is from our children. We have heard today an appeal for consensus. If Mr Tomkins thinks that he can come to this chamber and appeal for consensus when they are cutting £30 a week for employment support agency, or to defend a sanction system that is not fit for purpose to quote an infamous Tory, he can get on his bike. If they were really serious about consensus, they would be voting with the far more progressive voices on a range of benches tonight. They would be voting against the £12 billion of cuts that have still to come, and the £12 billion of cuts on top of the £21 billion already taken out of welfare, the length and breadth of the UK. Finally, I know that Tories like to vote no, so why do they vote with us tonight? Vote no, stand up to Westminster and, along with the rest of the chamber, vote no to welfare cuts. That concludes our debate on dignity, fairness and respect and disability benefits. The next item of business is decision time, to which we now come. There are three questions to be put as a result of today's business, and I wish to remind members that if the amendment in the name of Adam Tomkins is agreed, the amendment in the name of Mark Griffin falls. The first question is that amendment 374.2, in the name of Adam Tomkins, which seeks to amend motion 374 in the name of Angela Constance on dignity, fairness and respect and disability benefits, be agreed. Are we all agreed? We are not agreed. There should be a vote, members should cast their votes now. The result of the vote is as follows. Yes, 29, no, 88, and there were no abstentions, the amendment is therefore not agreed. The next question is that amendment 374.3, in the name of Mark Griffin, which seeks to amend motion 374 in the name of Angela Constance, be agreed. Are we all agreed? We are not agreed. We shall therefore move to a vote. Members should cast their votes now. The result of the vote is as follows. Yes, 88, no, 29, there were no abstentions, the amendment is therefore agreed. The next question is that amendment 374, in the name of Angela Constance, as amended, be agreed. Are we all agreed? We are not agreed. There should be a vote, members should cast their votes now. The result of the vote is as follows. Yes, 88, no, 29, there were no abstentions, the motion as amended is therefore agreed. That concludes decision time and I now close this meeting of parliament.


The most powerful of the convergence test that we have is known as the integral test. Suppose I have a series of positive terms where our terms are given by some function where the function is eventually decreasing. So let's focus on the section where the function is eventually decreasing. Take some sufficiently large k. Consider the area under y equals f of x and above the x-axis over the interval from k to infinity. If we take the left rectangles of width 1, we find the area of each rectangle is f of n times 1. Or, since a sub n is f of n, then the area of this rectangle is going to be a sub n. And because our function is decreasing, these left rectangles will form an upper bound for the area. And this means that the integral from k to infinity of f of x dx will be less than or equal to the series sum from k to infinity of an. Now consider the area under y equals f of x and above the x-axis over the interval from k minus 1 to infinity. In other words, we're going to extend that region back a little bit towards the y-axis. Now suppose we take the right rectangles of width 1. The area of each rectangle is f n times 1, or an. And the sum of the right rectangles is going to be a lower bound for the area. And so the sum from n equals k to infinity of our an is less than or equal to the integral from k minus 1 to infinity. And what this means is that the series sum from k to infinity is bounded from below by one improper integral and bounded above by another improper integral. We can use the additivity property of the definite integral to rewrite these bounds. And since the integral from k minus 1 to k of f of x dx must be finite, this suggests the following result. Let our series be an eventually positive series where the terms an are given by f n for some eventually decreasing function f of x. Then our series converges if and only if the improper integral converges. And while strictly speaking this improper integral does need a starting point, as long as our series is eventually decreasing, it doesn't actually matter where we start. As you might expect, there's a catch. The integral test is the most powerful test available. It applies to any eventually decreasing series of positive terms and it always returns a decision on the convergence or divergence of a series. However, there's one important limitation. We have to evaluate an integral and evaluating the improper integral is not always possible or practical. For example, say we want to determine the convergence or divergence of the series 1 over n squared. So first of all, we note that f n equals 1 over n squared is positive and eventually decreasing. So we can apply the integral test. So we'll evaluate our integral from some place to infinity of 1 over x squared dx. Since that's an improper integral, we have to rephrase this as a limit. We'll find the antiderivative. We'll evaluate it. We'll take the limit. And since the integral converges 1 over k is a finite value, then our series also converges.


Our third and last speaker will now zoom to the subject of investment business right away. Dr. Klaus Wellershoff is also an ideal guest at our event this evening. Now chairman of the board at Wellershoff and partners. Klaus Wellershoff was formerly chief economist at the Swiss Bank Corporation and then at UBS. He's also president of the supervisory board of the Institute of Economics at the University of St. Gallen and works pro bono with several foundations and organizations supporting science, culture and sports. In 2008 Warren Buffett called derivatives financial weapons of mass destruction. Of the quants those formula loving number wizards had brought the world to the brink of destruction with their illusionary risk models. Whether we are talking nuclear, digital or financial weapons of mass destruction, the question remains what determines at the end of the day whether a devastating catastrophe occurs or not. I launched our series of keynote speakers here with a look at the outbreak of the first world war. I would like to introduce our final speaker with a true fact regarding the danger of weapons of mass destruction during the Cold War. And at the same time I would like to pay tribute to Stanislav Yevgravovich Petrov. You never heard of him? Yes.  We all do, provided we were born before September 25, 1983 even though you may not have been aware of this until now. Because in the night of September 25 to 26, 1983 Stanislav Petrov saved the world and he did it single handedly and unlike James Bond he had no screenplay to count on in which the happy ending is as firmly scheduled as the Amen in the church. On the evening of September 25, Lieutenant Colonel Stanislav Petrov was the duty officer of the Soviet satellite surveillance command center 50 kilometers north of Moscow. Suddenly all the screens in his bunker started flashing giving the alarm that a nuclear missile had just been launched from a US base in Montana and was heading towards Moscow. The satellite radar then showed that four more were on their way. Then at the very latest he should have followed orders and reported the incidents to the top Soviet leadership who would have retaliated within maximum 28 minutes with their own nuclear missiles against the west. But to comrade Petrov it didn't really make sense for the Americans to attack with just five missiles. He had a hunch that it might be a technical false alarm and he knew for well that if he transmitted the alarm to Moscow this would most likely mean the start of the third world war and total annihilation. So Lieutenant Colonel Petrov took a decision that changed the world although it was kept secret for a long time. He listened to his intuition rather than the computers a decision that could have cost him his neck. He later explained his reason for doing so after all we humans are more intelligent than computers because we built them. So that is why in those few fateful minutes he told the top Soviet leadership that it was merely a false alarm on the control screens in his bunker but he didn't know. And the man who saved the world from destruction on the evening of September 25 1983 and on all the evenings thereafter was right. The Soviet satellites had wrongly thought that the reflection of sunlight of clouds above the US nuclear bases was a missile attack. After all the humans are more intelligent than computers because we built them. I'm looking forward to hearing whether our final speaker is more a fan of intuition and gut feeling or of algorithms and formal models. Ladies and gentlemen please welcome him with an explosive round of applause resonating with our confidence that he will tell us how to invest in such a way as not to regret the decision the day after the crash. Dr. Wellesoff ladies and gentlemen. I'm not in the business of scaring people these two gentlemen are apparently but therefore a good reason and in a sense I will be sharing some of the attitude they have. And I do think the attitude that has been projected to us and I 100% would subscribe to it is that we need to be realistic. And sometimes it hurts and it makes you sick when you look at things and I come from a military family. My father was an admiral and I feel very sick about the German Navy. I'm a German national. We have six submarines left which is for Germans a strange number as you might British like that by the way six submarines left. Only five five of them are not operational at the moment because of lack of funding in the military services. Now I said I'm not in the scaring business and then and I try to be optimistic. I think in many ways there are reasons to be optimistic when it comes to our field and with that I mean economics and finance if we are realistic. And I try to give you some sense of optimism in my presentation. I know that is not an easy thing because when you look at the media and the way our field or my field at least is portrayed there. There's that we see lots of big letter headlines which can frighten you which can fright you as well. I will not talk about these things that the gentlemen have talked about because we will discuss about it. I will not talk about Donald Trump. It's one of the few evenings in this autumn where I'm not asked to talk about Donald Trump or say anything. My reason for being optimistic is actually is a look back into history and I don't know whether you know what Winston Churchill has said about the Americans. Winston Churchill who was war minister, British war minister in the first world war prime minister in the second. And he said something like you can count on the Americans that they will do the right thing. But only after they have exhausted all other opportunities. So that's my sense of optimism when I look at the Americans. So I will not go into trade war and these things in a way I will because I will try to convince you that these headlines are rubbish useless and should influence his political beings but not in our assessment of the world economy. And I will do that with data. I know that's very old fashioned to show data. This is all fake news that I will be representing. You probably have read about the interview with Donald Trump. I didn't want to talk about him. I shouldn't but I think last night he was interviewed and he said there are no terrorists. Who's talking about terrorists? We're not imposing any terrorists. So data don't matter. In my world they do and in you as well. And I do believe in markets in general they matter even though markets can be very irrational. I think I couldn't fulfill my role as an advisor and previously I couldn't have fulfilled my role as a chief economist or as the head of a buy side research at a very large private bank and the chairman of the investment committee of that bank if I wouldn't believe that in the end rationality would carry the day. So my first piece of data in my first observation I'm going to make about what is going on in the world is that we are foolishly tempted by these media to believe that politics matter and I do think politics matter much less than we think. They matter when it comes to things of war and peace but they do not matter very much when it comes to trade policy and not even monetary policy. That's probably something that you guys tend to think a lot about and I do this. I dare to say this because I like charts like this. This is a look at the U.S. national income. So the only country where we have, well it's hard to say reasonable data, we have some data which is really long term. It starts in the year 1800 and what I really like about the chart is that you don't see anything. I think that's a very instructive chart. You don't see politics with the exception of the Second World War. You see this little wiggling in the middle of the, that's war. We see politics when it comes to war but you don't see whether there was a Democrat or Republican at the helm. You don't see any protectionist policies there. You don't see any impact of monetary policy at all on this. So when you do think long term and I thought investment was partially about the long run, you can be reasonably relaxed that growth is a very strong process that is much stronger than politics. By the way, there's something else that you don't see and that's technology. Isn't that fascinating? Particularly in these days where ATH is constantly bombarding us with this digitization terror, I would call it, and these calls to arms to support the mint faculties, which is absolute nonsense because the mint faculties and none of the new innovations we'll see will bring us better growth in the future. This starts in 1800. Do you see any of the big technological waves there? Do you see the Industrial Revolution, for example? Most people's states started around 1820 to 1840 in the United States of America. Do you see the Industrial Revolution? Do you see the chemical industry? Electricity? Railways? Do you see the internet? Nothing, right? Man is a very curious, creative, inventive animal and of course we will need technology and of course technology will decide on whether the company that you work in or my companies that I have founded will survive, be successful or will just go under. But if you look at it from a macro perspective for the country, the next technology will not bring us the next big growth spurt. So forget about that when you try to analyze the world. If you really have a sharp eye, you see something else in there. You see next to these little wiggles that this is not a straight line. I probably would have to go down here and I can see it. It's not a straight line. It's getting slightly flat, even though it's a logarithmic scale and all of you are trained in that so you know what this means. This means that the trend growth rate is actually coming down and that's a very natural phenomenon and I don't know, I haven't really looked at the CFA economic schedule. I hope you are familiar with basic growth theory and you've learned that there is something within the economic system that is the situation where the richer you are, the less fast you can grow. So it's diminishing returns to your investments that you actually make. If you look at productivity, that is what technology is going to show. There is one relationship that is quite firm and that is that the additional growth that productivity can bring diminishes with the level of average income in the society. So the more advanced, the more development your economy is, the more these additions actually receive. That's actually very important for another remark I want to make. Trend growth is coming down not only because of demographics for example but also just because of a very simple growth engine that we operate. My second observation is now more closer to home in the sense of finance. This is the real economy. This is real. This is volumes. This is production. This is cars. This is things that you can count. The financial world is very often described as less real and people use this difference between the real economy and the other economy which most of us actually work in. And I also see an observation which there's also an observation that sometimes frightens me. I do think people don't take their models very seriously. When you look at the financial markets at the moment, well not the last three weeks but in very general terms, you might think that we are very rich. We look at real estate prices for example. You might think that real estate prices are really high and we are wealthy but are we? Are we really? I think sometimes people have forgotten about basic economics. We live in a world of zero interest rates. So how rich are we? What does this mean zero interest rates?  Because there's no return. Isn't that a frightening thought? Have you thought about that? It's this very old formula that all of you I'm sure have learned. What is the value of a perpetual bond? It's the one divided by the interest rate formula. It's the simplest, the only one I can remember in finance actually. It gives us the answer to the puzzle that we all think we're rich. We have these account statements which are very bulky and the banks make a lot of money of that because they charge fees in percentage terms on the assets under management. I think today we had a large bank which made some nice quarterly profit on it and created good news on it. But are we really rich? Well, it's for sure we're not, right? What has happened over the last 40 years or so, interest rates have fallen. So if you take the value of anything which is a perpetual income stream, that value of the income stream has gone up, right? Assume you have one Swiss franc in terms of pension and the interest rate 40 years ago was 10%. What was the value of that permanent income stream was 10, right? One divided by 0.10 which is one tenth or 10% was 10. So you need to take 10 Swiss francs to put into a bank account. At 10% that gives you the one franc.  But it's easy to forget. It's the simple things which are sometimes very powerful but they're very, very easy to forget. Now, in recent times, interest rates have fallen from 10 to 1. So what is the value of this one Swiss franc pension you're receiving? One divided by 0.01. So that's 100. That's the ingenuity of this asset management business model that you charge a percentage on this, right? So the income of the banks and the asset managers has actually gone tenfold. Are we richer after that decrease in interest rates? Well, we have a bank account which says, or a portfolio which says 100. But how much can we spend? We still only have one Swiss franc of pension, right? There is a huge illusion in our minds that in a world where interest rates are very, very low that we all feel very, very rich. Now you will say, but Klaus, wait, you talk about a fixed income stream and there's no growth in your model, right? And you're absolutely right, there's no growth in my model and I need to amend that with the growth rate of my income stream. But you know all about these models to understand that at least for some time, for 40 years now, we have had a period where the account statements were growing very, very fast and at interest rates at zero or very low, that growth will not repeat itself, right? So whatever my future expectation for income from capital is needs to be much lower than the last 40 years. You can look at the data. It's actually borne out very nicely. Always use US data, I don't know why, maybe the theory is from the US and then it works out better. This is just what I described in words, right? You've seen the yellow line is the corporate bond yield. I take a valuation of stocks here as an example. You see these tools in 1960, it starts to the recent period. This is a corporate bond yield, pretty difficult stuff as published on the Federal Reserve Banks of St. Louis website. I should have put the source under it, my apologies. And you see these two periods where you have rising interest rates first up until 1980 roughly and then you have falling interest rates. These are the two trends. Will interest rates fall further? Your call, maybe they will fall again. Probably they will fall again in the next recession but we don't see that recession for the time being. Will they fall for another 40 years? I doubt it. My kids would say I doubt it, Daddy, I doubt it. In Switzerland it's very difficult to imagine that interest rates would fall further from these levels, even corporate bond yields. So what does this mean? This means that the performance of the blue line, that's the price index of the standard post 500 large wide US stock index, will probably not look like what it has looked like in the 1980 onwards, which was fantastic, which instills all the hope that we have that asset management is a great business, right? Which by the way still drive a lot of expectations in asset allocation models when it comes to expected returns because we have only significant data on a larger area of asset classes we only have out of that period where interest rates are falling. So most of our data is actually contaminated by that falling interest rate effect but we never really care to think about it. Anyway, what will it look like? It will probably look like the red line, right? Normal GDP. Isn't that fascinating? Thomas, whether you've seen that before when you take a long lens, suddenly macro things matter and actually work. I really find this interesting. So are we rich? Are we poor? I think we're much poorer than we think, even though we will have growth in our earnings. We will have positive returns to some extent in some asset classes, but it will be much, much less than we were used to. My third observation is really close to home. I mean, this is really close to home. It's right at the center of what most of us are doing, and now I'll talk about asset allocation for a moment and I'll share an experience with you. I had in the year 2004, still working for my previous employer there and we were asking ourselves in those days, so are we really good at what we're doing? How do you measure that, whether you're good at what you're doing? We would say you have to have a benchmark. You measure yourself with a benchmark. But in asset allocation terms, what is the benchmark for the benchmark? It's a difficult question, right? What is the benchmark for the benchmark? And in those days, there was a new field of research coming up, and some people suggest it, and I'm not claiming any originality here. It's everything stolen that you'll see in a moment.  It's a bit like the monkey throwing darts at the Wall Street Journal's page with all the stock prices. So what does that mean? So how would a non-educated, well, probably still reasonably rational investor invest? Non-educated means they have no clue what the returns look like, whether stocks are better than bonds in the long run, how they are correlated, or how you would match the asset classes into an asset allocation. So that basic finance stuff that we are using to create these portfolios would be not available to that person. So what would that person do? He would take, look, count the number of asset classes he or she has in front of her, and would put equal amounts into each bucket, right? That's the naive asset allocation. You would put as much money as you, you would put into bonds, into stocks, into real estate, into gold, and whatever you would accept as an asset class. Well, well, let's check. Let's see whether we can beat that benchmark, and I first saw this picture, but a very similar picture in the year 2004. And we compared strategy funds. That was my business. I was on the buy side if you want to. We compared strategy funds performance with this benchmark, and I've updated it a little bit for you. And this is what you would get. It's the average of the Swiss strategy funds, so I'm not trying to pick on any bank or any asset manager. And the average actually, by the way, in the beginning, I think is only one, and then it's two and three relatively quickly, and now we have much more, obviously, in there. It's statistically, academically, probably a very difficult way of doing this, but as an illustrative approach, I think it's kind of nice, and it's probably reliable. And you can see what the re-outcome is.  By the way, you would not have only had a better return, but also a lower volatility, as you probably can see from the chart. I find this a devastating observation for industry. All of the things that I've been doing in my career, I mean, I started to apply economics in the year 1995. It's with Bank Corporation, so this is basically my career, which you see there. Actually, in a large chunk of it, I was responsible for some of that nonsense, right? All of that was not adding value, but was destroying value. My takeaway from this is finance needs to improve, and I'm optimistic it can. But we can only, if we dare to challenge the fundamental tenets that we hold. And sometimes we will be successful, I'm sure, sometimes we won't, but we have to be very honest, because the clients that we service with these products, they're not stupid. They have understood this all the way, and it's one of the main reasons why they're so skeptical with the industry. It's not only bonuses and this bogus discussions we have in the media. It's the performance that we actually have delivered in the industry. Now, how can you improve? You have to be extremely critical, I think, and realistic. And I give you an example how difficult that can be. And my example is for me personally very difficult, because I could not think, I cannot imagine a way how financial markets could work if they wouldn't work the way that finance postulates. And I'm talking about risk and return. I cannot envisage an equilibrium world in which there's not a relationship between risk and return. So you take on higher risk, eventually you will be rewarded by higher returns. Eventually. Not every year, we know. Eventually. If we are brutally honest and realistic and we look at data, we have to realize that this is a very, very difficult model in our minds. It's, again, strategy fund data I'm presenting to you. Risk and return, the way you are used to seeing the data. Ten-year periods, so the ten, so 18 isn't done yet, so I had to take 17. So 8 to 17, 98 to 07, 88 to 97. Fascinating, right? And I'm not saying there's no relationship between risk and return, but over the last 20 years or so, it has grown very weak. Again, I cannot envisage how the world could work if there was not that relationship.  And the young guys in the room find a better way. And I would be very happy to sign up to your school and listen to how you teach me to rethink this. But if you have to improve in the real world, what should you do or what is it that you should not do? I think the first conclusion that we have to draw from this is we shouldn't build business models around this. If we have clients that look at our results at the way we service them, outside of a framework of 30 years. So if you have somebody in over the 30 years, it has worked, right? You can build averages. I don't need to do that for you. So if you're a life insurance company, maybe that's the right thing to think about the problem. But if you service private clients, I think that's a very dangerous business model. We have to rethink business models. Why is it dangerous? Because you have frustrated clients. You told them in the last 20 years or so, we told the clients take on a little bit more risk and you get a little bit more return, right? Let's see how much risk you can take. Or you can take a little bit more, right? That's the way things work. It doesn't work. 20 years, it didn't work. For 20 years, it didn't work. So give me one bank in this country that doesn't have a value proposition in private banking built around this model. And I give you seven out of eight banks within the market and material who claim there is this relationship. And what happens with the clients? You believe, of course, you believe the expert. You believe your banker. It is a respectable person. And next year, you'll be disappointed. The banker says, well, there's volatility and there's always a little bit of risk in the markets. And next year, you're disappointed. 10 years, you're disappointed. 15 years, you're disappointed. 20 years, do you think these clients love you? Well, ask them. Try to ask them. A friend of mine have opened a little company which is called Swigh Wealth Experts. You might want to check it out. We try to sit on the other side of this table. We advise private clients to find good asset managers and asset managers that don't screw them in the process. Actually, the subsection of good asset manager and not screwing is actually relatively small. But they do exist. There are good asset managers which are fair with their clients. It's funny. It's funny to listen to you guys, actually, when you sit there.  There's one way of what you should not be doing, right? This is something that has to stop. Otherwise, the industry will never regain its credibility. I talk about private wealth management, all of the other people in the room. One way of being honest and getting there. So my conclusions in simple terms are this. We have to be realistic about growth. It's about financial returns. We have to rethink our value proposition. Have you tried and looked into fintech solutions in the asset management side? What is built in there? You have these neat little things.  Forget that nonsense. It's not going to work. It's going to frustrate your clients even more because the lure of technology, the credibility that these wonderful surfaces that you can work on actually brings with them will give even higher and firmer expectations that what you promise, a higher return for taking on more risk is a reasonable promise. And I tell you it's not a tenable promise, at least not in the short run. Your business model and rethink your fintech solutions. Maybe to put it on an even more abstract level, I think what I've tried to tell to you or say to you is that what is going on? We have a problem of the elites and I count all of you amongst them telling stories which are not true. And when you think the populists are populist because they are using fake data, use your data first before you go out and proclaim that you know how to make it. Thank you very much.