Okay, so welcome everybody again. We're going to continue from where we were last time and the plan today is to finish this tutorial and also get into dependencies and go over them as well. So just to pick it up from where we have been so we're discussing how for example you could inject scheduler options to the generated JavaScript, and this is one way. This, the problem with this way is that one could say okay, but this requires that you know that you have for example to learn behind the scenes. And for this reason there is also another way that is a bit more portable that could be adapted to different backends. And that's what is you can achieve with this flag here called extra resources. So these are type of resources that you can define in your configuration and associate them with any type of options, scheduler options, it could be number of GPUs that you get, like with gds or processor types and things like that. Let's see how how this is done. So we have to modify the configuration. And we add one section that's called resources inside the partition. I'm going to explain you in a moment how exactly it works and what it means. Okay, so here essentially is a list of resource objects let's say that they each one has a name. So this is the name that you're going to use to access that resource from within your desk and then there is a set of options that will be passed the scheduler. And there you can have also placeholders which you can fill in in your test. And that's quite flexible because you can name your resources we want as you want. For example, in our real tests, we have a resource they named no switches, I think, or switches, which essentially asks us learn to to to pass the minus minus switches option, which restricts the job allocation to a certain set of nodes under the same switch. So the good thing is that, if, although you can specify those in your test. Like we do here. If I'm running on a system that there's no not if this resource is not defined, it's going to be simply ignored. So it's whereas here it's just it's going to be there you already have to put it yourself if I am on that system then use that with the other. It's going to be more flexible, let's say. And now let's see it in practice. I think the test is called here. Another thing is if you pass both the minus L and minus R option, the minus L option which is about listing, it will always take precedence. Okay, let's see if we essentially got it. Apparently if the test passes it seems that it has put the memory because we're testing the, the actual out of memory messages there but we can have a look. Let me know if the font is is too small. I think we were in the environment. And that's the memory limit with resources test. And there you have it. So without having to know how the option is. I find this is quite useful, especially if you have for example a cluster with canal nodes, or, or, I mean, or a mixed class that don't want to define partitions or for some tests. It's another, it's another, I mean, more test specific resource specification, that's it. So that's about it. And one other thing is how, for example, you could modify the parallel launcher command. Sometimes you might need to pass options to the parallel to the parallel launcher like the MPI run, or the SRAM. And I mean by options options that they are not the standard ones like the minus and four or things like that which refrain automatically generates them if needed based on the company based on the, on the launcher you use you have specified in your configuration file. For example, in this case is an example of a finite test what actually doesn't. It just run an affinity test it doesn't check exactly affinity. So there we want to pass the minus minus CPU bind equals scores to the launcher. Now, this you can do it. Let's open the test. So it's not to be here. So again, very, very similarly to what we did with the minus minus ma'am again with the hook after you can access the launcher through through the job so surf dot job dot launcher and add to it some option. And there we add this. Now if you ask me whether you can do that more portably, I would say, you can't for the moment, not for the money you can't. So that's the thing. So there if you want to to guard it against different systems, you have to do it manually with if I am on that system or that partition. So this is going to add those options to the launcher and I'm going to run around this right now. We call that affinity. Oh yeah, I forgot to add our cluster. And also, for example, here I can let me put see. Let me put here you have I think. No, see it. Yeah. So that's it. Let's do the. Let's run it. Sometimes as a, as a hints on it, when you have affinity tests, all with that always test all the different environments, because different compilers and different opening period and times make different assumptions and they do can do different placements so we have seen differences for example, between in how Intel and for example can interact with the SRN affinity so whenever you have an affinity test just just keep this in mind. So, I'll put the frame. So you see how it generated this. So, depending on the back end. If you had, for example, MPI run, the frame would have MPI run minus and one minus NP one, etc. And then it would add those options that the users pass. Now another thing is, what if you want to test a debugger. And the, so the bugger is usually the, you have to wrap the the parallel launcher command. So here is a case of how you can do that so you can basically replace the launcher and basically wrap it so this is a kind of pseudo launcher that takes the actual one and wraps it with your own command so did it the offline here. And then it will generate this thing I don't I don't have an example about this because I did acquire for example have DDT on the cluster and this this works. Another is closely related to this is, for example, when you want to test something that has its own launcher for example there is. And then you can wrap it by parallel greasy or some visualization software, they do come with their own manage parallel launchers that they essentially behind the scenes they leverage MPI run or SRAM, but essentially it's not the user facing thing. So there you can still do. So here in that in those cases this is the trick. So you can set the executable which is the custom scheduler for example take crazy it's going to be crazy. Pass any options there. And then you you replace the actual launcher that the frame would normally use with the local launcher the local launcher is just basically amidst nothing. It's like the one when you run your executable, which is the empty string practically. And with this thing you can do that so actually this get launcher thing. The name takes the name of the registered name of the launcher of the registered names of the launchers you can find them in the documentation. So the those those are the names have with more details what exactly it's one does. So it will give you back this this this object that then you can also play with it if you want, but that's the way in those cases. Okay, how about if I want to add more SRAM commands, more parallel launcher. So in this example we have a test that we're going to run multiple SRAM, we're going to get an allocation of certain number of nodes here for, and we're going to have four SRAM commands, each one running with four number of nodes. You could theoretically see that I mean there are cases that you might have to pack multiple SRAM in a script. Or when you for example you would need to do a scaling thing but again then you could also use parameterized that's but let's let's see this example for the sake of it. So here is again you have to to fiddle a bit with this launcher job dot launcher.  And there is here a small thing that's the launcher has a method all this is documented in if you go into the references so you can see the exact documentation for these functions. So here you just say, okay, give me the command that you would run based on this job. Now it always takes the job because the job might have it has in the information about new tasks, etc, and some launchers may want that information like the NPRM, you need to pass for example NPRM minus NP. And what this thing will give you back is the actual command, which then you can use to add additional options like we do in this case, where practically, as you will see it with their essentially SRAM and then we just add more options and our executable. And here we generate everything in the pre run you could put it in the post run. Remember the tip run and pre run and post run are things that they go before the SRAM or parallel launch executable command. So again, I would need here we always forget. Ah, yes. Okay, we have an error, but let's see what it says now let's examine it. It says that society the error and there we have an assert equal. And instead of getting 10 things we get to one. Let's go back to the test. Okay, but we're testing. Okay, so we have. The same pattern is different, because on Dane they're named and ID but here they're named the frame. So I'm going to do it like that so we can even say no pattern habits in Eric one that matches everything. And then let's make the test a bit more generic. If I am named. And my node pattern equals this thing. If I am on the reframe if you am pattern equals. It's a name. Okay, and then let's put also this part here. And here we simply say that should be. Should do the job. Okay. So it works also it seems that our test, our sanity check works. And, but let's also examine a bit the output. What's the model. So you see, so everything here is in the pre run thing, and you get, as you would expect. And here is also the output. We could even be more strict here and counting the instances of how many times we've seen the same knowledge, things like that. Let's keep it simple. Okay. Change of topic. So flexible regression tests. Yeah, I need to rush a bit. So flexible regression test is a test that sets the new tasks to either zero. Like in this case, or to a negative value which means that I will need at least that number of, at least that number of tasks at least minus tasks. It's a host name check that I'm going to spin it. And it will essentially run in all the nodes. So that's why I'm not only using great here. Am I using great. Okay. Yeah, that's that's a it should have been using built in is just that. Yeah, I forgot to update that that's a bug. It's a bug in the documentation. So that's an interesting. Yeah, that's an interesting feature for diagnostics, because it will spawn by default it will get all the nodes that they are in all the nodes that they are idle. So for example, here let's examine the output. We call it. So you see we got the whole cluster. Now if, if multiple of you run the same test. And for example the time I frame checks it can't find a node, then it will make the test fail. But the other cool thing about it is that it will only for example now it doesn't take all the nodes of the whole cluster, it takes the nodes that they correspond to that partition that you are accessing. So if you have constraints if you have minus be partition etc, it will all take it into account and therefore going to see that this is only valid for this learn backend. And of course the local backend because they're always one of them. Another interesting thing is if I'm if now I'm going to pass it an option directly to the slam minus j partition equals I think lower right Victor. I'm going to get only half of the nodes because it will include the option. Yeah, but it's down. I put it down. Sorry. Okay, I'm going to I'm going to do the thing if I put a note list here and I'm going to put just 10 to 12. I think I have called this thing. I have to call it so that it's happy. Now we're going to just take to these three nodes. Let's see. Yeah, so you see, so that's very useful. For example, when you have like a reservation of nodes, or you want to specific run a benchmark on a specific node and things like that. I find it quite useful. And then you can do several magic here. For example, one thing that I didn't mention is Yeah, so the new tasks attribute of the test will be set by the by the framework as soon as it gets the actual number of nodes. So then you can use that with this deferred expression here to check that you actually got the number of nodes that you, I mean, or do something with the number of nodes that you got, for example, here we check that we actually got an output from all the nodes that everybody we got to print out from everything. You have 10 minutes only so moving on to how you could, for example, test containerized applications you can use that with you can launch containers with refrain. And first thing you need to do is adapt your configuration. And there is this kind of object here, the container platforms, which is a list of the actual container run times that you have. So in this case we just have singularity on your laptop you could have like also docker. And that's another thing that goes here per partition. And actually what you say here is the type of the container. Oh, okay, here, sorry for that. And in case there is a module that you need to load or to set some environment variables as well in our case it's already installed so we don't need to load anything. So that's that's how it is from the configuration side. And then from the test side, it's, it's this one. So it's very similar to the build system in how the way you write it. Let's also put here our guy program environments practically that's why you need a built in environment that loads nothing is for this type of test as well because it doesn't matter. So then you say container platform singularity, and then there are several things that you cannot there so there is the image there's some common to all of them but there's some others that they're more specific to to each platform, the image and actually the commands you want to to run. The self executable is not going to be taken into account. And also you can specify a working directory, which honestly this I don't remember so yeah I think that this one. Yeah, I think this is where it's going to bind. So what the frame does it mount binds the bind mounts the scratch that the stage directory inside the container. And I think the work here is where it's going to do that. But I need to check that. So here and the nice thing is that then you can still use the machinery that the frame gives you with with a sunny patterns to check what has run inside the container because essentially that stage directory has been bound in the inside the container. And let's let's do this. Let's run the test right now. So this is a question. And Yeah, just just give me a second just to run the example Kenneth. Okay, let's let's see. Let's see first what it generates. Okay, this is what we generate. So, and that's but thing. And then as a singularity exec and there you see how we bind the stage directory inside the container as work did. And then we just run what it has to be done. So that's what we do and and let's see also the output. So you see you got the output as expected, which this thing is what the frame then looks at in your son into checking. So yeah, Kenneth, if you can you easily parameterize over different container images as well. So say you want to run the same tests but in different images. Yes, yes, you can you can you can have a parameterized test here and then you can parameterized over the image. Yeah. But that's something we're interested in for easy build so running easy build in different versions configurations. Yeah, it's it's you have the whole machinery of refrain. So the only thing that it ignores is the self dot executable. Because then it wouldn't be the semantics wouldn't be so straightforward. So we just put the commands in here. Okay. Okay, so moving to another chapter. That's it's it's it's five minutes we can't make it but I don't know. Can I kind of get up. I mean, can I have like another five minutes. Yeah, you can. We will have to end the stream. Definitely 10 to so 10 before the hour. So if you still want to have time for some questions at the end, so that means 25 minutes. Yes, then we have to end the stream. So ideally that includes some questions as well. Okay, okay, okay, that's that's fine. I thought we had like five minutes or something for some reason. So, okay, so yeah, dependencies. That's a so that's a nice chapter. Now, before, I think it's first explain a bit something before going into dependencies so that you understand why dependence with with three frame and different tests are not as straightforward as you would, for example, imagine them for a for for like build system like easy build or spot. Let me I think. Okay, just give me I'm going to show you in the documentation. I'm going to point you to some things instead of has some nice figures. So one first thing is how to frame exec test that's that's one thing that you need to keep in mind. So here is is your idea of test, and you say that this test is valid for those systems and for those programming environments. Now, when it loads, when it frame loads the test from the disk, it instantiated. So it will call its init method. That's one thing also to keep in mind if no matter what it will instantiate it, even if it is if it is meant for the system you're on or not the filtering happens just afterwards. So it will then filter the test based on the options you pass on what are the programming environments that needs to be tested and so on. And from this point on, actually, yeah, it, I think it's it generates. Yeah, I think this should be changed now. So after it loaded it generates combinations by cloning the test with different programming environments and with different partitions. So it creates proliferation of of test cases as we call them out of your test, which is those that they will eventually send down to the runner, which will be responsible for running for for, yeah, for the whole round. So the runner basically takes those that doesn't know anything about the test, except just an API and just scan it. And you can schedule them for running, but it deals. It doesn't know anything about the test, all it takes is the test cases which this specific instantiations, or, yeah, not exactly instantiations but clones, let's say, of your test. Now, the dependencies work in that level. But actually you write your test at the, at the higher level but the dependencies essentially work at the test case level, not at the test level. Before come here. So conceptually, okay, let me let me open first test with dependencies. Let's hear this one is enough. Let's go later to the examples. So here, what constitutes dependency to create dependencies is this thing. So depends on and you put the name of the target. So here T zero. And that conceptually is distinct T one depends on things of the T zero. However, if in reality T zero is not just a single test it have multiple test cases. And the same for T one, it has multiple test cases. So the question is when we were designing that, okay, do we need to provide to give control as of how individual test cases are connected. And we came and we came to the decision that guess it's better if you can do that because for example, you might not necessarily want to depend on, on another test case on an irrelevant programming environment, for example, or that has an irrelevant partition. So you define your dependencies conceptually, but then they are kind of expanded in a more detailed graph. And there are different ways that you can specify those connections their shortcuts for those connections. So there is the by case which is the default. So as soon as you say that T one depends on T zero, then practically this means that there's the graph is like that. So I only depend on the same on T on T zero when I'm on the same partition and on the same programming environment. There's no things like cross cutting here at all. Of course there are different ways. So fully that's that could be the obvious for example implementation that gives you no flexibility, I will not start running T one until all the cases from T zero have started, but you can still do that. So if so depends on takes a how argument, which is how you depend on the other guy. So by fully means that none of the test cases of T one can can proceed if not if if it will proceed only for the cases of the zero have finished. And by finished we mean finished like completely the pipeline. Both sanity and performance and clean up everything. And then you have different bipartisan by environment is someone I'm not going to go into the details here so that's that's a basic thing to understand with dependencies. So it's not just this the just think this thing which is the conceptual where it's usually a big system like easy build stop because there we have from this one for us to see them in T one are essentially multiple things that we're going to schedule and run so we need to know what is the relation here. So let's go to the examples. So here I'm going to show you what we picked the awesome benchmarks for the dependencies and we split it in like three. Yeah, let's say three broad categories one test that downloads the test. The code just for demonstration purposes. So that builds it and then we have a set of tests that essentially run some benchmarks. So if we didn't have dependencies. It's of the for example also also latency or also bandwidth benchmarks we would have to download and compile every time there are benchmarks which is not efficient. So in this example, I'm going to show you how we're going to we split that into dependencies. And let's let's start and let's start gradually. So one thing is here I have we have mixed up the test there's no I mean the order the tests are defined they have doesn't matter. And just to prove that they are a bit mixed here so the download test I think it's at the end. So here is you know everything so we doubly you get essentially the test just executes doubly you get post run and then just runs the the entire Z and this apparently only runs on the looking node with a built-in environment. Now, let's go to the build test so build test here. So for the big build test. Let's also doubt it here we need the force. So we say that it depends on the download test fully so we can proceed if download test and we could. Yeah, we couldn't admit that so we because because they run on different partitions. So we say just we depend on also downloads test fully so we can't proceed if it can it has not executed all its test cases have executed. Then you see now and then another example of build systems we're saying we're using auto tools. Yes, use make minus j eight and yeah check for errors. And now how for example game we depend on another guy but how we use the result that of that other guy. Now this is again you you can do that with this pipeline type of hooks with another type of decorator so so so you define your own function here we call it set sources there because we're going to test set the sources there of our test. And here you put the name of your target dependency. As an argument, and that decorator does some magic here so that you can essentially, it essentially binds that thing to a special function that you, you call essentially to retrieve the actual dependence let's see it in practice before because it's better if. So here we say okay from the also download test test case, I want from the also download test I want the test case that has run on the login partition with the built in environment and. And from that I want the stage deal, which then I used to make up the path and set my own sources there. Now the nice thing about this is that this call here. It really gives you access to the actual test case that has run so to another test so you have all the information of the targets test, even it's no tasks, all these things for the target test you have them at the state that it is after it has finished this execution. So it's, you can really be a stretch your imagination with the things for example that you can do it's really really flexible. And, but here we just take the states did that stage did the target one and we. Yeah, we combine that path which is the download path essentially, and we set our sources there that's what the build test does. Now let's see the different tests. So, yeah, then we have the latency and but with test and since they're very very similar. We created a base test here. That's also practice that you can use we use it a lot in our tests, where we define everything that's that's common. So, the valid system. Let's add a guy here. This guy doesn't says the sources there because it's going to be said. No, this is an only test so it doesn't matter. So, I'm not, I'm not going to, I'm not having any resources. We set by default doing tasks and does per note, and then we set the sanity patterns and our dependency so whoever inherits this test, it will depend on the build test. So here's the latency test, who just put it in the description. Yeah, we inherit from our base class. So, we have a difference with this generic way so just to have the units that I showed you before. And then we set the executable. So, now the executable we should take it from it's generated by the build test. So again we use the same trick here so we don't think I didn't mention that when I was talking about dependencies. So here we say we depend on the build test by environment. So, that means that I the test cases between partitions are independent. But if I'm running with force, I want that the build test that has run with force to finish but I don't care if the build test with Intel or PGI has finished, for example, I will proceed as soon as the build test of force will finish. If we didn't have this granularity here then you would simply have to wait for example for the Intel test to be built and that could be and imagine you have a license server with few licenses that you would block your whole sequence of tests. So, again the same trick here so here I'm not passing anything because if you don't pass anything a reframe will pass will pass the current system and the current environment as the current partition the current environment. So, no need to pass here anything because we will be drawing no reframe CN and on force. And then I'm just constructing the path where the also latency benchmark executable base and I pass also the executable option. Exactly analogous is the bandwidth test like that. And then, and then for the also reduce test which exactly analogous except that for this case, we said, okay, let's be a bit more imaginative and make this like a scaling. I mean, scale it on different number of notes so we parameterize the test. Again, each of those tests will depend on the build test so it's it's what I really like it that is that it's really really composable. Okay, let's see first let's list the test because there's also some interesting things here. Okay, we've said all of those stuff. Let's list the test. That's the whole thing. Okay. The download test doesn't have a valid system. Which one then. Which which one does not have the download. It only lists. Oh, yeah, you're right. Let's see if we have put it everywhere. Yes. Yes. Let's see what we're going to get. Okay, that's a nice sign that it has listed everything. So the least option is also a bit smart, especially if you want to work with dependencies. So I'm going to just pick. Let's say the also bond with test right. And I'm going to list it. So here it says it instead of listing just the also bond with it listed also all its dependencies because if you want to run those bond with you have it you have to run its dependencies. Right. So it automatically picks them now. List them in dependency order. It just lists them. Yeah, exactly. Just listen. It's random order. Now, you might want to see. Also bond with if with if you make uppercase L you will get more details about the listing. So, again, you get your three tests but let's go a bit to. Let's take one by one. Let's start with a basic one. Again, they're not in order. They're not in topological order here. So no download test. Yeah, nothing no dependencies build test. Okay. Now dependencies so you have the conceptual dependencies. Which is on the download test, and then you have the actual dependencies. The actual dependencies may may change depending on the system you're running and depending on the programming environments you're running, but here you get the exact graph essentially the edges in the exact dependency graph. So, so it says that the build test on CN with GNU depends on the download test on the login with building and similarly here. And the reason that this cross dependency you say it's not like the classic one that you had depend on the refrain EUM CN here and GNU is because we use the fully dependent property in the how argument. So then you say I depend on whatever you do with download test. I have a full, fully connected sub graph between those two cases. So here you get the actual dependencies and for the bandwidth test you see I depend on build test but here you see it differently. So you see we we have this by environment. So, I depend on the refrain EUM GNU and CN and force and CN and force. And actually I believe that we could even be specified. We didn't even have to pass the how argument to this guy. But let's run first and then. Okay, so let's run everything. I remember we had a small, a small problem with a cluster I remember. Okay, let me just run. I will run everything. So it's, let's see if the message is so when a test is kind of blocked due to dependencies that if rain prints a depth and message and just go once to the next. This is how the synchronous policy works. If you are on the serial execution policy. It will just block until the dependency has finished. It will take some time now to build. I need to wrap up the recording and the stream soon so maybe. Okay, so if there are questions that people will ask. Yeah, please, please go ahead because I don't have anything more with dependencies. Simply. Okay, I would just run the bond with here. And I can take any questions. Yeah, we have one. So, with a simple HPC system where you have built your modules using easy build. For example, how would this thing work for the dependency test you already sort of, you don't need to sort of download stuff you already installed let's say OSU benchmarks. Yeah, I mean, there can be different scenarios. I don't know when you want to that you want to structure your run only test that they, for example, I don't know. You might don't want to run something if some not something else has passed. Right. Yeah, it's. You give me a lot of example allow me to give an example have one. Yeah. So what I do is basically, it makes no sense for me to be running the gromax test. If the version of gromax is wrong, if the minimal things of gromax is not passing. So what I do I basically use the module load of gromax and check if it's actually the divisions are correct if the inputs are being correctly constructed. And after that I didn't go run gromax. So they have like the actual run depends on the input creation and then also the input validation step. Got it. Okay. Yeah. So let me explain to you what I'm doing here is that I'm, I'm removing the GNUG environment if I am on reframing the system. Because it doesn't make sense because there's no MPI compiler there. So I'm doing that. And yeah, any other, any other question as I fix the test. The next step if I may add is that even though you can have easy build things you can still have like compile only tests and also compile and read completely reframing tests imagine that you have build HDF five easy build and you want to test HDF five is working. So what you do basically you do first you download the test and you know you compile it and then you run several HDF five different tests based on that initial one. I think that brings up an interesting point I mean if I actually want to build using easy build in the reframe. Victor you are the. I don't that you want to take that. I have a test of easy build that actually I'm in response of a gromax at CSCS. So, so what I do is basically I generate on the fly using easy build, I mean using reframe easy build recipes and then I compile all different version of gromax with plume D with great storming conversion with great back and then I do all the tests in the after that they run all the other tests right. So I have experimented with the easy build installation with reframe works really well, but currently on this spring, we have a colleague of us a Raphael is actually working on getting a proper build system for easy build. So you can do that season dot build system eco easy build and then voila and actually going to call and do everything for you. I would love to see that I mean that's like exactly my use case scenario. And, you know, would love to see you and when you guys have that available. So, I can, I can point you because that's an interesting with, we have a draft PR it's really just he just pushed. So we don't think if it's working yet but so if you want this thing because we're going to do. Okay, let me just make this bigger. Yeah, so the idea is, yeah, if as soon as it comes a bit more mature I think soon. I mean it would be very nice if you try this out or make some comments because the idea there is that Yeah, so you say as self build system equals easy build, and then you will have reframe. Yeah, use easy build to build something but not to install though, it's going to do it how we have it in mind it's going to use easy build to install it in a stage directory of reframe, and then you use that for testing and then you have to figure out some machinery there for for the so that you load the modules automatically and sets out the module path etc but But all this is going to be handled automatically by by the test that's the idea and we plan to do the same also for spark so you can have built system equals spark and have reframe do the Awesome. Awesome. Awesome. Yeah, I mean, was it decided we envision to start on the stage directory, which will be the default, but you can also sell self dot variables and changing is a bit prefix and change to the path you can install it right. So you can still using this build system change where to use reframe to drive your installation to the global central repository or whatever. But I have to say something about this because I mean the reason why I don't have my test online is because my test is found in practice, more than 3000 reframe tests of grow max right if you really take into account all the combinations of versions and we have a very limited instrument and we flew me without plenty. Then it just like goes crazy. So you have to be careful with the regarding conversation have a regarding parameter test parameterization there is a very very cool feature that we just put in three dots for we just we have only basically document we have not a tutorial about it yet, but it is documented and it's the direction where we're also going for this library of tests and it's so there is a section here called directives that's new. We should have put it here the new inversion three dot four. So, instead of doing parameterized test. I'll quickly interrupt. I'll end the stream here on the recording, but you can keep going in the zoom session.


and he's shoot. What I've done is I've written like unlimited rounds just about shuffling cups of tea. That's how you shuffle tea. I get it. I need to rewrite them like this. So, yeah, how have you, because you obviously know his style, he's done loads and battles, he's got a lot of views on him, he's very clear what his style is. How are you gonna write, because obviously your style usually is incredibly different to his. So how would you approach this one? I've got Marlowe to write my bars. Yes, you have. No, no, no, no, no, no. Syroship. No, Syroship. I'm just gonna do what I do and I'll let my performance do the talking for me. Woo! But the talking does need to involve bars. Sorry, that's what I'm asking you.  So, because obviously you're known for a certain style that I'm gonna assume maybe taking a guess, you're not gonna hit him with, because it might not.  But, yeah, so I guess I don't wanna give too much away with what I'm gonna say, you know what I mean? I think I'll battle better rappers than Shuffle, but I don't think I'll battle anybody as credible as Shuffle Tea. Woo! I'll battle Tony, I'll battle Shotty, I'll battle this. They're all good for a different reason as to why Shuffle is good. Shuffle's good because he does what he does.  Have you done that? Yeah, you know, I've written quite a few gunfires. So, yeah, you know, I've been there, I've been down there, as long as you can tell. I rank him high, to answer your question, I rank him high. The same question to you, before we trade a lot, where do you rank unanimous? You've battled a lot of people now as well. The thing is, you know, I've battled RS, I've battled Liquid, you know. I've been there, I've battled Sergio and Red GSD. He's a fucking, he's three-old, you know.  And here I am against unanim, Puss.  He didn't, did he? Yeah, he did. But you're still, where do you rank him? Where do you rank him? Fourth, is that what you want to hear? Fourth from bottom, or fourth from top? How many people have I battled? Do you know better than me? I don't take any notice of it. You know, I see all these people, I see all these names. And I go, look, oh, God, yeah, I've battled this person now, but no, no, no, I don't think about it. You know, unanim Puss isn't, he's only solid for our 20,000s. That's why I rate him. You know, shuffle tea, I'm not a tall guy. Gemini, Gemini, not so much. Do you think you'll be able to find a pyramid big enough?   Damage. It's a group cage. Well, you bring a pyramid to this valley. Only, only about three or four. The thing is, I think about that question is that, I think what everyone has a problem with is that as soon as you start to enter a pyramid into someone's ribs, you look at the diameter of a pyramid, and you go, you look at it, and you go, look, as soon as it gets past the two, three, four, maybe five inch as a max, it's gonna start ripping apart to the other side. And then it's not through the ribs anymore, is it? It's higher quality. Exactly, and that's why it's not a good bar because you have to go, maybe a pin, maybe a sewing needle, maybe something like that would go through the ribs, a pyramid, you're gonna tear the flesh apart. Honestly, like jokes aside or whatever, right? Obviously, you've all seen that. After. What the fucking? Just do it after.     Yeah, but that's a gimmick though, that's not even gonna last so long, bro. I'm a gimmick. That's not even gonna last so long.  Look!  You say about gimmicks and you say about people getting angry in the best way. Sean, look, three-odd you, bro.  But then we look back at the past couple of performances and then we go, villain, how did he do? Sharon, how did he do? Tony, how did he do? Every time you ask for a battle, you go, I want this battle, I want that battle. Stop asking for battles.  I want this battle!  Who?  I get it now. He didn't want to be villain or Sharon or Tony.  He wanted to lose, and that's the point. Yeah. I guess maybe, yeah, I guess if that's the point. And I've been bodied worse than Shuffle could bodied.  Shuffle, what about you? Do you respect him as a writer or do you not? No. No, no, no, no, I respect, yeah, no, I respect him as a writer, in the same way that I respect Ernest Hemingway. Like, you know, I can read it and I can go, oh, this is great, but Ernest Hemingway isn't gonna win in a battle, is he?  Have you read any of it? And he's, no, I haven't, no, I haven't. No, I haven't, you should read some. But I know, Blight, his name, that you're similar to him. At a mountain claws, at a mountain paw claws. But my point would be that like, you know, you have this whole thing about the monstrosity. Yeah. But you're not a monstrosity. Why? Why? Because you're the person who everyone wants to battle, but nobody wants to see. Mm. What's more like, like, no, no, no, no, it isn't. No! That's why I'm serious. I mean, it kind of is like, like you have this whole thing on the line. Bro, the battles for a half-assed it are classic.  When you're half-assed it, you're classic. It's true. But my point is that you have this whole kind of, when did you last hear somebody say, oh, I want to see Shuffle Tea battle on his own? When did you last hear that? When did you last hear someone say that? Oh, I want to see Shuffle Tea versus, oh yeah, fuck, no one cares. If you actually asked him two days ago. Who's that Marlowe? No, no, no. You should probably battle Chris Lees, mate.  You should battle Chris Lees, and me and Marlowe should battle. You sound a little bit desperate, but my point is that when people say, you know, they want to see me battle you, they're saying that for the reason that they want to see you ridiculed. Exactly. Yeah, exactly. And I know what you're going to do, which is why you're going to lose. You're sounding a little bit desperate again. That's not, how is that desperate? Because you're shouting over me. I'm not, I'm waiting for you to pause and then talking. I'm not pausing, so my point is that, You just did. No, I'm talking. My point is that, like, you've got this whole thing around you.  We don't know what he's doing here. It's kind of confusing. It's like, if you're working in an office and some guy joined as the new sales guy, and you'd be like, oh, hey, Jamiah, how you doing? And they'd be like, yeah, yeah, I'm doing good. And then they'd be like, oh, how many sales have you got in the last five days? None yet. But I'm really looking forward to getting my first sale. Oh, yeah, cool, man, yeah, cool. Six months down the line. Jamiah, have you got any first sales yet? Nah, but I'm really looking forward to my first... Cool, man.    Looking for a botlight. I'm not fighting, bro. That analogy was so bad. The reason I take so many battles is because Ur is really good at being persuasive. I agree with that. That is true. That is true. It's very good. It's very good. It's making it sound like it's gonna benefit me. So there you go.


Regular physical activity is important for children's physical and mental well-being and academic performance. Unfortunately, too many children are not moving enough. Globally, 50% of children don't meet the internationally recognized target of 60 minutes of daily moderate to vigorous physical activity. This rises to 4 out of 5 children in westernized high-income countries. While school systems and teachers can play a central role in providing high-quality physical activity and transform this statistic, at present, little guidance exists on what a true whole-school physical activity approach should look like. Now, researchers, policymakers, and practitioners from the UK have laid the groundwork for getting there. This is the Creating Active Schools Framework. Using experience-based co-design, 50 school experts recently gathered to co-create a comprehensive whole-school physical activity framework. These experts included teachers, headteachers, active school coordinators, public health specialists, active partnerships, national organizations, Sport England local delivery pilots, and UK and international researchers. Experts worked in same-and-then mixed-stakeholder groups as they undertook a six-phase design sprint using the UK Design Council's double-diamond approach. Drawing on their strong understanding of the research and practice-based evidence on what works and what doesn't within schools, groups began by identifying the components of a school system that would improve physical activity among pupils. Then, each group drew a framework. After feedback and revision of each new framework, participants voted on the final framework, the Creating Active Schools Framework, or CAS. For the first time, CAS integrates the key working parts of a whole-school physical activity system, emphasizing the value of establishing whole-school practice and ethos. Practice and ethos drive the work of five key stakeholders who operate within the school's physical and social environments. Combined, these influence the delivery of physical activity programs across seven opportunities within the school day. Some of these opportunities, such as classroom lessons and recess, are easier to influence than others, such as time spent with school clubs and family. Beyond individual schools, CAS identifies the importance of aligning national organizations and policies to deliver clear messages on the importance of physical activity, driving change by enhancing the capability, opportunity, and motivation of the system and stakeholders within. The CAS framework has already empowering schools in the UK and other countries to embed a whole-school approach to physical activity. To create whole-system change, CAS should be adopted within national policies to consolidate and align the work of organizations to deliver one clear message for whole-school physical activity implementation. Finally, if we achieve these aims, CAS can drive systems change for physical activity and improve the lives of children and young people.


Wash your hands, wash them right. With soap and lots of water, get between fingers, get under the nails, go above the wrists. Do this for no less than 15 seconds. Rinse properly, dry with a clean towel. If there is no water, do the same washing motions with an alcohol based hand sanitizer containing at least 70% alcohol. Wash your hands, wash them right. This message brought to you courtesy the Bureau of Health Education of the Ministry of Health and Wellness. Thank you.


Next up, we have Lausche Laggisch with incentivizing open science via research and publication awards. Thank you. Can you hear me? Thank you for the opportunity to present at this conference. It's really, really exciting to be here. So my talk has two parts. First part is about completed project where we surveyed best paper and best research awards available to early career and mid-career researchers in ecology and evolution. In the second part, I will present an ongoing project where we widened our focus and we look just at best paper awards, but across all disciplines and all career stages. And I will present some preliminary results. I need to start from acknowledging my contributors. For this first project, those were ecologists and evolutionary biologists representing four different continents and different career stages. Why we decided to look at awards? They are not just carrots for researchers. They actually reflect our scientific systems, culture and our values. So they also come with some practical implications for individual researchers such as getting some cash, invitations to present plenary talks, covering conference travel, but also providing and opening new opportunities for collaboration, networking, funding and ultimately jobs. Shouldn't we look at those big and famous awards like the Nobel Prize? Because they come with lots of public attention, media attention and of course lots of cash, but such awards usually go to senior researchers. And we know that when it comes to late career awards, there is quite often, most of the time, a clear bias, a clear issue because there is very little diversity among the winners. And this has been raised actually a long time ago and unfortunately there was no much progress in addressing this issue. And our committees usually say, oh, we cannot do anything because they are just not enough diverse, high quality nominees. But why is that? What's the root of the problem? So probably there is no single simple answers and there are many contributing factors, but we think one of the mechanisms is the Matthew effect. You already heard about it multiple times during this conference. And it's kind of in a nutshell, it's what you know from all sayings like success breeds success, rich get richer. In context of awards and this problem, it's what happens where you get at your late career is largely determined at your mid-career stage and also your early career. And if you start from a privileged position and you experience early success, you are most likely to proceed to those higher levels. But on the flip side, if you start from under privileged position, you are most likely to accumulate this disadvantage and drop off or stay at very low ranks of academia if you manage to stay. And because there was already quite a lot of research on late career awards and those early and mid-career awards were not studied, we decided to focus just on those. So we knew that in ecology and evolution at least and we started from this discipline because that's our background. There are two main types of awards. One is best researcher award which is awarded for the body of your achievements, usually multiple publications and other activities. And those are usually awarded by societies. And the other one is best paper award which is for a single published article. So we conducted a survey of international journals and societies that are not focused on specific sub-discipline but broad ecology and evolution. And we wanted to ask multiple questions and one is which awards from those that are available will foster equitable access and assessment, how they would do that and whether they value open science practices called sharing data sharing, pre-registering, replicating or just transparently reporting your methods. And we also quantified gender ratios in the list of past winners to look at historical trends. Overall, for both types of awards what we realized there is usually very little transparency and descriptions are either missing or vague and unclear. So we quite often don't know who does the assessment how they do that or even sometimes even how to apply. And typical award description is something like oh, this is an award for excellent research or this is an award for outstanding contribution whatever that means. So some specific selected results for 13 best researcher awards that we assessed somehow nowadays most of them provide flexibility in terms of eligibility period. If you had career interruption they can take it into account and that's great news. But only four out of 13 allowed self-nomination which means that most of the time a young researcher will need somebody senior or supportive colleague to nominate them and write recommendation letters which may actually be a problem for those from underrepresented minorities or those who lack confidence to ask for some references and it also can potentially introduce some biases in the assessment process. And finally we only found a single award that explicitly valued open science practices. And this is an award that was established last year by SOTI Society for Open Reliable, Transparent Ecology and Evolution. So no surprises, they value this. But none of the others. Before 2010 usually there were many more male winners than female winners but in last 10 years this ratio became equal which actually reflects the gender ratio at this career stage in ecology and evolution. So now 10 best paper awards and those are usually awarded by specific journals. So here some still offer this flexible eligibility criteria so they will take into account your career interruptions but sometimes it's even not relevant because they may say okay it just needs to be researched that you've done during your PhD or undergrad studies and that's okay no time limit or maybe vase but it's hidden. Most of them surprisingly allow self-nomination and they make it really really easy. So when you submit a manuscript you just tick a box saying I want to be considered for this award and I think I'm eligible because I'm a young career researcher. And is this surprising? Okay nobody. So no comment on this. Before 2010 again more male than female winners and after 2010 again this ratio became equal somehow. Okay we can move now to part two and look at all disciplines and all career stages. And now my team is much bigger and I work with people with many different disciplinary backgrounds and different career stages and all six continents. So what we did this time we focused just on awards from top hundred journals from SIMARGO journal ranking and we also looked at the societies that are associated with those journals because sometimes journal is run by society there is no information on the journal page but society has awards and one of them could be for best article. And so most of them associated with the journal many also with a learned society and out of 232 eligible awards we realized that 20% don't have any award description. They just have an award name and then list of the winners. And most of them can go to any career stage researchers but there is also a small group around 38 awards that are specifically targeting mid and early career researchers. And here six were offering some flexibility in terms of career interruptions. It's a much lower rate than previously in ecology evolution but still something, okay, could be more. 60% provided at least a vague statement who will be doing assessment and most of the time they would say our journal editors will pick the best papers. So we scored that as yes but still there were remaining 40% that didn't say anything. Almost 80% had no clear assessment criteria. Again, they would just say something or it's gonna be for best article for outstanding contribution or excellent research. And we found one, one of around 200 that explicitly mentioned something related to open time and they said one of the criteria is transparency of the methods. So conclusions so far from those two projects are that overall generally there is little transparency we don't know how those awards are given out and potentially in many cases there are issues with potential issues with accessibility and equitability of the assessment. Almost nobody values open science so clearly not important. And at least in ecology evolution there was some shift in last 10 years towards more equitable awards in terms of gender. So somehow something happened that they started looking at it and addressing this problem without changing any assessment criteria it was possible. Probably it was result of lots of publications coming out bringing up this issue of gender imbalance. We don't know what's happening with other biases there because it's much harder to collect data so there are potentially some positive developments there but overall it gives us hope that if we start talking about other issues there will be some change. So we recently published a paper describing our first project and we make 12 recommendations for making awards more equitable and accessible and more open. And one of the recommendations like all of them actually the picture is messed up so most of those things are already been said and they are really easy to implement so we hope that our land societies and journal editors will start making some little changes but we think that actually this is a great untapped opportunity to incentivize open science. And the final carrot, yes. Thank you. Thanks for that talk. Tell me first whether or not many of these papers were sole authored papers or multi-authored papers and if the person who is getting the award is say the first author on a long list of authors. It depends on the... if it's like an award for best paper across disciplines it looks like it's a mixed bag. Quite often it's for the whole paper and they don't look who is the author kind of but sometimes you can have a specific person and they put a buyer and say this person got his award for this paper and usually they would require it's a first author or a corresponding author. Given that if there are a bunch of multi-authored papers in this dataset I wonder if there's room to include either in the theoretical framework or the analysis. Some sort of analysis of Matilda effects where the credit is actually going to somebody else other than the person who gets the award by virtue of them being associated with an award-winning paper rather than being the award winner themselves. Yeah, it's possible. That would require actually disentangling who contributed what to that paper which might be tricky if there is no good credit statement at least and yeah, credit statement could be biased as well too. So yeah, it's a good idea and we are thinking about doing follow-up analysis on the actually authors and papers themselves for both projects. Thank you for the question. Just a comment on the publishing venue. It's behind a paywall. Your paper that you just recommended. The recommended paper, your paper, is not open access. Yes, I know but it's published as a preprint as well. Yeah, thank you.


Jared Anderson is the president and founder of the Olam Institute, a religious nonprofit that nurtures constructive approaches to religion and religious education. His primary goal will be to establish religious humanism, first online and then in physical communities. Jared has taught religion courses over the past 10 years at Westminster College, the University of Utah and the University of North Carolina at Chapel Hill, where he is currently completing his PhD. Really grateful that Jared can make it out today. Thanks. Okay, thank you very much. I am really glad to be presenting this right here. I've been incredibly impressed as I've listened to you all and I'm glad to know you because as with others, I want my presentation not to be a one-way presentation but the beginning of a conversation and I think it also flows well with several presentations. I want to propose what reverse engineering religion might look like. First a couple of my presuppositions. Religion is a cultural technology that co-evolved with homo sapiens. It's at least as old as the cognitive revolution and it has proved uniquely powerful as I'll discuss in just a moment. Religion has been found arguably in every culture and it maintains stubbornly even frustratingly pertinent in our lives. As I said, I intend this presentation to be part of a conversation. Every point I make will require careful exploration, extrapolation, debate and nuance. Within the next month, I will have forums up at religioushumanism.org and this is where I want to organically hash out what the details of reverse engineering religion would look like. Does this look familiar to any of you? When you were younger, I feel like disproportionately this audience would have made codes in elementary school your own. To create an artificial alphabet is different of course than creating your own language and I feel like challenging someone, okay, inventor religion, come up with your own religion would be on par with asking someone, okay, now invent your own language. Of course there have been some fun and creative, you know, Klingon and Elvish and there are invented languages but it's very, very difficult and far beyond the ability of most individuals. You need a lot of specialization, a lot of creativity. I feel like when someone leaves the structure of organized religion in a sense they are being asked to invent their own religion but we can't even handle an alphabet. We can't handle a new alphabet let alone a new religion so this is the international phonetic alphabet. It is fantastic. There is one and precisely one character for every possible sound. You can write every sound in every language on the planet in this. Here's an example of Alice in Wonderland in the international phonetic alphabet but even though it's practically perfect it's not practical because no one is going to learn, we can't even handle the metric system in America let alone a perfect alphabet. So religion is incredibly powerful. In fact every semester I offer students an automatic A, first day of class they can walk away with an A in the class if they can name any cultural institution more powerful than religion. It doesn't exist. Yes on an individual level for lots of us religion may not be the most powerful influence in our lives but culturally, historically it is the most powerful force and it motivates what could be called absurd or at least extreme investments of time and resources and anxiety. People worry about religion it's an imagined reality that motivates tremendous investment. Now religion, these slides are not working I actually I'm going to see if I can pull up my PDF. Now the problem is that religion is the most powerful technology that we have in the world and yet it's aimed at the wrong targets and that's a serious problem. So the tragedy of religion is that even though it motivates like nothing else it motivates anxiety about things like but sex to be crass. When we are faced in the world with issues such as unsustainable use of resources, unsustainable systems, consumerism, pollution, waste, climate change, exploitation of human animals, the planet, mass extinctions, conflict, war, terrorism, America also qualifies as terrorist with its drone strikes, radical inequality, corruption and stability, disease, inadequate access to education, infrastructure, birth control with even with all of these problems because we are so focused on religion a lot of people not only don't worry or you know don't think about these problems they're barely aware of them or they don't they don't believe in them. That's the word. So we have these urgent problems so is it possible to take this uniquely powerful cultural technology of religion, improve it, make it more beneficial, more useful, more efficient and then aim it at the urgent problems that the world faces today as we have done with other features such as the domestication agriculture society itself in fact Daniel Dennett argues that religion itself is basically domesticated ritualized superstition which is why we still believe crazy things. So what would reverse engineering religion look like? Well first we need to start with what is religion? My proposal is that religion is an interconnected system of beliefs and rituals in the context of community with reference to a transcendent reality usually an agent. The transcendent reality usually has feelings about how we live our lives and a religion needs to have all of these elements. Now our culture is full of aspects that are almost religion. They motivate myths, they have ritualized behavior, they have superstitions. Sports is actually one of the closest near religions. In fact a quarter of Americans believe that God determines the outcome of the Super Bowl. That's a real statistic and also nationalism, patriotism, if you've ever been to court you notice the ritualized behavior, you know when a certain someone puts a piece of paper on your car it requires you to take symbolic action and give them money because of this improper taboo that you committed by parking in the wrong space. Nationalism is a near religion and you could argue that nationalism in fact Robert Bella has is that nationalism could even be considered perhaps a full religion because to be a good American you need to believe in God so it has that transcendent reality. So these are near religions but they're not quite religions. We'll look more closely at the components of religion. So once we've determined what religion is and we're on this task of reverse engineering and making it better we need to decide what flavor of religion we want to replicate. And two among many options but two options that we have are high church and low church. Low church began as a disparaging term but generally low church refers to a low liturgy not much embodied worship you know you have prayers in the full spectrum of both our evolution and the individual and collective advantages that religion gives. So when I think about reverse engineering religion I'm going to set as a target a high church tradition. In other words and I literally have this goal I want to help build religious humanist cathedrals not chapels cathedrals. I think we need that level of engagement. So how to make religion you know what goes into religion we have as I said in my definition we have beliefs we have rituals there's scripture usually myth scripture is written myth and then we have community transcendent reality fits into belief and this is where the conversation really needs to begin because there are so many possibilities and what I'm planning on doing is on these religious humanist forums I want to engage with a wide variety of people and there will be lots of areas in the forums to discuss the ethical issues the meta issues the application issues but there are a lot of questions to answer so when we talk about reverse engineering religion and what what should be in the religion so we need a lot of different things so for example we need a cosmology we need origin stories we need meaning we need morality we need stories of identity I want to speak for a moment about the question of literal belief because a lot of the people we talk to as liberal or fringe or post in the spectrum of Mormonism there's a lot of disparagement about literal belief in fact I pushed back really hard when a good friend of mine said that he is trying with his podcast to promote a post-literal Mormonism and I had a really hard time with that because I asked him I said aren't you just affirming a new dogma you're you're affirming a new target that everyone has to adhere to and that's the same problem as people who say literal belief is the only way to believe in Mormonism now I think the ideal technology of belief is one that allows for a spectrum of approaches depending on need depending on personality so for example literal belief does work that figurative belief just can't so for example the placebo effect is dosed based on your belief the authority of the person administering that placebo and our physiology chelsea shields does research on this our physiology actually responds to our literal belief I laugh when I see these pharmaceutical commercials where they're like and the placebo effect helped in 40% of the cases and our drug that makes you poop blood and may kill you helps in 50% of the cases it's like please give me the sugar pill and I want to have that amount of benefit so what should be our target with what I will call religious humanism which is this reversed engineered religion that I propose I think that we do need literal belief we need concrete specific engaged narratives that allow for literal belief but do not require literal belief now it's in human nature to give each other a hard time if people believe differently than you but that's unavoidable so to jump a little bit ahead and I'll come back to this one humanist denomination that I'll talk about is earth church an earth church is religionized environmentalism neo paganism and so mother earth what is mother earth is mother earth an anthropomorphic goddess with a really great rack maybe you know I mean if that is the kind of mother earth that you believe in that's great is mother earth literally the spirit of planet earth maybe you know that is one option is mother earth a symbol to remind us of the importance of environmentalism demonstrably yes and so it's this range of belief so not only is there belief but there has to be ritual and there are so many wonderful questions when it comes to what should be in religion I've also thought about a companion app kind of like sim city or something where you need to design your own religion and see if the little sims will follow your religion but first we need to have a conversation what are the individual rituals what are daily rituals what are weekly rituals what are yearly rituals what are rites of passage what do you do at birth what do you do at maturity what do you do initiation and what I mean by high church tradition is these are this is rigorous religion one of the problems of religion as Nathaniel said so well is that we need to motivate people to do more than they themselves want to do we need to motivate people because as human beings we don't know what we want to do we only know what we are glad to have done or regret to have done think about a workout routine or a challenging diet in fact as we look back some of the most rewarding experiences of our lives are some of the most difficult experiences of our lives and I think one of the greatest failings in American culture right now is the idolatry of individualism and the privilege of preference that what so I think young Americans they're not bad they're not selfish but they are very individualistic and the idea is they want to do good on their own terms they want to do good when they want to and I think this is a major limitation of a lot of liberal organizations so liberal organizations and I'm drawing on Jonathan height here usually have superior ethics fairness and so forth but conservative organizations get things done much better than liberal organizations do so what I propose in religious humanism if we can pull it off is that we have a conservative structure and a conservative organization or framework with liberal ideas and conservative ideal at the same time so what is scripture I'll get back to that in a moment I'm thinking about if we were to reverse engineer scripture a quick moment about why I'm using the Christian or post-Christian terms Bible church and so forth I think Americans are the ones who most desperately need this new form of religion and these words have entered our wider vocabulary so a Bible needs and there's going to be a geek Bible that I really hope to present to Stanley so we need to get on that geek Bible earth Bible life Bible and so forth so we talk about origins virtues morals motivation range of emotions co-ons parables saints heroes commandments legends stories we need creeds these rigorous religions need community what are the leaders what is the hierarchy what is worship service accountability and again this is what I mean by rigorous and we'll get to this question with the dark side the dark side of religion and this is another limitation when it comes to these liberal ideal ideals and liberal values is well okay heaven forbid we ask anyone to do more than they want to do because that'd be bad my thesis is that in order to get anything done in order to address the urgent problems of today's world and human civilization may be hanging by a thread based on how well we can address these problems it will require more horsepower than preference can engage and yet all the conservative groups aren't even looking at these urgent problems so I'm hoping with religious humanism to bring these together I think that we need to embrace the totality of human experience we need to embrace the dark side we need to embrace in group out group behavior elitism fear-based motivation helmets dogma now there are limits I don't want anyone to die for religious humanism I don't want anyone to kill for religious humanism so I don't think religious humanism should be cult strength even though I think it should be rigorous and high church so what do we do with this engineered religion my three approaches that I'm working on are what I call religion better than true a spiritual training app and religious humanist denominations so religion better than true I've spoken on this before this is a hypothetical ideal version of existing religions that is created by a mediation dialogue between a former member atheist and a literal believing member of the religion and they need to agree on their religion and this is what pope Francis is basically doing by himself is that he is pushing Catholicism to its limits in fact he I think maybe more atheists love pope Francis than conservative Catholics love Francis and I have a Sunday school podcast engaging gospel doctrine where basically I teach humanism in Mormonese and I've done it for four years and sure enough both literal believers and atheists love this podcast because it's Ted talks mingled with scripture and it sounds it sounds Mormon so it's recognizable and it's distinctive so a spiritual training app I'm running out of time but I literally want to develop this it is a personalized rigorous religion where there's a personality test and preference and you ritually you choose your scripture what are five texts that are meaningful to you and you check in through social media you ritually drink whatever your sacred beverage is and then you you check in and you know that they go to your sacred space and finally in conclusion I want to realize humanist denominations life church which is religionizing in high church religionized education science earth church religionized environmentalism geek church religionized popular culture and then tech church which this is a really good audience to first talk about that which is religionized technology transhumanism and so this is what I want to spend my life doing and you are ideal interlocutors to help make that happen so thank you


Hey, welcome back everybody. Jeff Frick here with theCUBE. We're at Zoroastro, subscribed in San Francisco. David G is here. Last we saw you, David, I think it was January when this was all building up. Now you said you got 1,500 of people passionate about subscriptions right here in downtown San Francisco. Congratulations. Thank you, it's great to be here and it's great to be on-prem and on-site like last time we talked. We were at your offices, you were getting ready to move. That's right, you have to come see the new space. It's like way bigger. We're looking forward to it, that'd be great. So, great selection of customer stories up here today. We love the customer stories and you think of classic subscriptions like Adobe, Creative Cloud, or you think of Spotify and the things we're used to. You don't think about Caterpillar. You don't necessarily think about Ford. So to see those guys up on stage with you and team this morning was pretty impressive. Yeah, so we're very excited about how the subscription economy has really expanded into the mainstream and large infrastructure companies who are changing the way people interact has really taken hold. I mean, couple of examples you mentioned. So Caterpillar are here today and they're showcasing today. They have all of this machinery out in the field spinning out terabytes and petabytes of telemetry data and they're able to monetize those. They have autonomous vehicles, virtual reality, drones over job sites. All of that is available now as a subscription. We have Ford here today who are talking about the next generation of the company moving from a car an automobile company to a transportation company and meeting their customers where they need to be meeting. Matt, whether it's van services here in San Francisco like chariot and bicycles and knowing their customer from the moment they pick up their vehicle from they call it from bed to bed from waking up in the morning till the last and negative at night and having the whole transportation infrastructure around them enabling them to do things like that. It's all very exciting. I thought it was funny. Todd Buckler who was up on stage from Caterpillar explicitly said, we're not going to be a software company. We like making big iron things. But man, oh man, listen to the description of the services that they're delivering to their customers, the benefit the customers get, the benefit they get as you said with all this telemetry data. It's very different than just building a unit, chipping it to the dealer, the dealer sends it to the farmer, the construction worker and maybe you get some data back when it comes in for maintenance down then. Totally changing. It totally changes. And what it does is it helps predict downtime. It helps predict offline activity which can be in the hundreds of thousands or millions of dollars in the case of aircraft engines with GE we who we have on stage as well today. When those things go down in an unpredictable fashion, that causes enormous impact from a revenue profitability and forecasting standpoint. So that telemetry data can understand the stresses and constraints based on environmental factors. Am I in a desert? I'm in a cold weather or a climate. If I'm a jet engine doing short hops versus long hops, that provides enormous insight and sophistication for a customer to enable them to plan. And it's all based on this data which in turn is delivered as part of the subscription economy. And then take it to the next level, right? This whole theme around democratization of data, democratization of the tools to the data. Yeah, obviously a plane operating in Alaska is going to have different characteristics in one operating in the desert. But what about pilot characteristics? You know, you can leverage the power of all the people in your company to start developing hypothesis, testing those hypothesis and driving innovation around a much broader kind of front, if you will. Absolutely, and what we're seeing is that the sensors are going into everything. So we think about sensors in engines, but the aircraft frames themselves are now increasingly having sensors in them. How many stresses and strains? We know how many takeoffs and landings, but are they short hop, are they long hop? Are they going over the pole? Are they going over the Atlanta? Are they going over the United States? As an example, all of those have different implications for the service and the support and longevity and also the economics. And that data telemetry has intrinsic value that is now being monetized in ways that we've never seen before. So the other interesting thing to me that I don't think it's enough talk, David, is thinking of your customers as either in a club or as a member with this recurring membership as opposed to transactional customer. We had Inspirato on, they have a club.  It's a very different way to think about the people that are your customers. And because you have this ongoing repeat revenue process with them, you have to keep delivering value. You have to keep them subscribed, if you will, because it's a very different way to build a relationship and engagement. Yeah, so we see that as this evolution from ownership to being a subscriber, whether it is a second vacation home, is a great example. In the case of Inspirato, they've gone from zero to 15,000 members in just a few short years and they're offering this highly curated, personalized, luxury vacation experience that is very individual and curated. That's a whole new marketplace and it's disrupting high-end hotels, it's disrupting whether you want a second vacation home, which you always have to go back to. Also on the show floor here, we have companies like Eleven James.  But instead of owning them and putting those assets in the safe or in the drawer for months at a time, why don't you have a new one sent to you every single month or every quarter and just change them out for variety. So we see that time and time again as we move from ownership to subscription. You see it in cars, you see it in assets. Music is probably the case that most people are familiar with. You've gone from your case full of CDs, your case full of DVDs to your streaming services and you're seeing it with entertainment as well. Right, it's interesting, Tina and the keynote talked about being free of the shackles of time, ownership, obsolescence.  So it's a really interesting way to think of it now. It supports this whole kind of experience-based economy. I wanted to share a funny story with you with Inspirato is that they see your commitment to subscribing to their club as really a demonstrated commitment to your family. That you now have put on the dotted line that you're going to take quality vacation time with your family and if you could afford it, you're probably a pretty busy person. So a really interesting twist on what their value proposition is and why it's important to their members. And actually what they said this morning was really interesting. You think about a vacation club and a luxury curated experience, maybe that's a week or two weeks a year. They're also filling in the gaps for the other 50 weeks a year with all kinds of local events as well and building this lifestyle. So it's a fascinating physical experience of this subscription economy and they're very sophisticated in how they look at the data and look at who their subscribers, their customers are. And their subscribers and customers, by definition, I suspect are very demanding. Right. So you've been doing the MC job. You did a great job this morning. I'm just curious as you're walking around the show now that the keynotes are done and you can kind of walk around the exhibit hall and bump into people. Any surprising stories? What are you hearing? What are the buzz that you're hearing? A lot of hard work for a lot of teams. So first of all, we have an amazing group here and we're so proud of the work that we do to bring the subscription economy to a physical life. You know, we had this vision some months ago and you and I talked about having a showcase and having our customers tell their stories and you can see from the energy that we have on the show floor today, there are hundreds, we have 1,500 people here this week who are experiencing lots and lots of different customers and companies, subscription economy experiences. Tomorrow we'll hear from Andy Mooney who is the CEO of Fender Guitar.  They want to turn that into a lifelong music experience and really change the way from learning how to play an instrument to being part of a community and having a long-term relationship versus just walking out the store with a guitar. I love the Fender story, because again, it's easy to think of Spotify and digital assets that you're subscribing to and deliver digitally, but to really redefine your relationship with your customer and then to get the lifetime value, the benefits of that because then they play more, they buy more sheet music, they buy another guitar, you know, they hang out at the store and it becomes a hobby part of a community engagement. What a brilliant, brilliant move. Exactly, and I would say if I leave you with one final closing thought, you know, the other big aha is that there is a looming financial accounting change that's coming where the way subscription economy companies, any company with recurring revenue is going to have to change the way they account for their revenue and their expenses. It's something called ASC606, if you're in the financial community, you're having sleepless nights right now because it's as important as socks, Sarbanes Oxley or Y2K and that's an accounting standard that's coming down the line and will be mandatory in December 17 or December 18, depending on whether you're a private or a public company and we just acquired a company that is the market leader in automated revenue recognition. So we're educating the market in what is a very compelling value proposition and a compelling event that's going to hit almost everybody. Right, all right, we'll leave that there and we'll pick it up next time and we'll have a little bit more accounting talk. Sounds great. All right, David. Thanks for taking a few minutes out of your busy day and again, congratulations on a super event. We appreciate you coming. Thanks for having us. Absolutely, all right, he's David G. I'm Jeff Rick, you're watching theCUBE from Zora Subscribe 2017 in San Francisco. Thanks for watching.