 Welcome. Welcome. The proud the few. So it's really quite exciting. So one of the real big surprises of this conference is the amount of training going on. There's something like 3,000 people who are gonna go through training, different trainings and all the rest of it. And I'm sure you've all kind of seen what that training looks like. It's usually somebody standing up there and you know kind of talking. And so there's a good reason why we're all sitting down here to kind of explain the way that this this can work. So let me get into it. My name is David Flanders. Everybody calls me Flanders thanks to some television show which you might have seen. And basically my job at the Foundation is to help build out the application developer community and you know try to do the best we can. And this is a really important initiative for us because obviously the OpenStack group has OpenStack community has really been operators and contributors and we believe our users are application developers but there's there's not a ton of application developers wondering the halls here. So this is a really big important initiative to start bringing more application developers our so-called users into the fold. So we'll definitely get some feedback here. In fact I am gonna pass around the mic because I'll let you guys say where you're from and what you're doing because this will matter eventually. Chris. Okay Stefano yeah. Stefano Maffulli I work at three most director of community and one of the objective of my group is to inspire and instruct our customers. Brett Kugler, GDT. I'm the software architect for GDT Labs. We do all sorts of engagements with customers and also internal trainings. I'm Bruno Morrell from InterNAP. So I'm the software development director. So I manage the software team that contributes to OpenStack and currently I'm the future author of the IOS firmware. I'm Leong. I'm from Intel Senior Software Cloud Architect. So I have a mixed background in application development as well as infrastructure provisioning. My name is Hill Boylan and I work under Stef at Dreamhost as the customer advocate intern. My name is Christopher Aido. I work for IBM. I'm the PTL also of the community app catalog project. So my objective or agenda here is overall to help continue to build the ecosystem of application developers for OpenStack which also really for me I want to be really part of this. So I speak to more developers and figure out what their needs are and even see how developers define an OpenStack application and how they think about packaging and distributing applications. Excellent. Cool. All right. So you guys can stop me at any time and we'll have a conversation about this. I definitely want feedback. You know this is early days. So as we grow this thing from summit to summit and I am expecting it to take you know a year or two years before we really kind of get this thing up and going powerfully. So let's start at the itch and the scratch. Start by scratching developers, personal itch, cathedral and bazaar. So as I've wondered around the hallways here and we've started to have all these conversations around application development as I've said everybody has opinion on the way people should use the infrastructure and the way they should build apps and all the rest of it. And rather than try to dictate how that should be done I really want this to be a forum, a place where we can start to allow multiple people to come and actually provide a place where they can push forward their own agenda and then most importantly share that agenda so that we can start telling people how we want to get them to work. And in addition to that I don't want it to just be training where you have one person standing up there and doing Simon says and hacking on the command line and saying this is the way the world should work. That's not good learning and actually science tells us otherwise. The other big part of this is we've often fallen back to docs always being the key solution and for me the key phrase I keep using in this is prevention is better than a cure, right? If we go ahead and preempt them and show them the way we want them to use this then we've got a lot better chance of actually getting application developers not complaining and our users not being angry at us when the docs aren't a good thing. So you need both absolutely but I really feel like good communities if you look at other application developer communities it's having both training and docs. So any additional itches anybody has on this that they really want to share things that we really could fix and solve if we're going to engage application developers? No, we're in agreement. The flame wars, yeah, yeah, okay, yep. And look that that's part of it and let's come back around to that. So the scratch, so I've been involved in a couple of different communities and I'll go into this but there is good ways to actually do training nowadays and there's a reason why you're all sitting around here and that we're recording this is because this is much more real to what it is like to build an application, right? You need a group of people who you know you need your DevOps, your sys admin, your your product manager, your usability expert, this is much more like what it actually looks like to build an application. And so I really want the training to follow best practice in the science of learning. And there's some really good research on this coincidentally. And it goes back quite a way it goes back all the way to 1780 and Robert Reichs when he first he actually had the exact same problem he would there was a 1780. Obviously, the Bible and the church was really powerful, except there was a big problem with regard to the commoners can't understand the Bible. It's too difficult to understand. And so Robert Reichs actually proposed Sunday school. So he's the inventor of Sunday school. And he said, look, we just need to lower the bar and we need to find a good set of ways, metaphors and analogies and key principles to teach people so that they can understand this really complex thing called the Bible. So I'm not saying open stacks of the Bible, but it is complex. Okay, so today what this where we're going to be doing in this little group is these are the learning objectives. So we're going to talk about how to set up this learning space. We're using this metaphor of a code dojo though Bruno yesterday, we had a really good talk. There's this new initiative out there. Everybody's talking about called mob programming, which is an iteration of pair programming. We'll come back to that. But for the time being, I'm going to stick with the metaphor of an app dojo or a code dojo. We're going to talk about how to assign learning roles. Again, like I said, you know, app developer teams are going to have usability and product managers and all these different roles, why you need to assign those roles and how that works well in this training forum. We're going to talk about how to facilitate training as a sensei and I'm using sensei very specifically here because it's not good to be a teacher where you're standing up and just talking and talking and boring people to death. That's that's not a good way for us to retain community members, you know, and we have a massive spike every summit in people coming to these events, and then they don't, you know, they don't stick around long term. Or at least, you know, not the majority of them are about half actually. Finally, craft learning challenges. So you can stick with the metaphor that's called kata in terms of martial arts for varying skill levels. It actually also applies to Japanese tea as well as Japanese theater. And then finally, share your learning challenges with the wider community. So, you know, it's open source. So there's a good way we should be able to share the way that we're training and teaching people in these things. Okay, so let's actually get into this little bit. So the dojo precedent. So what are we building on here? I'm not just making this up. This has been around for a while now. Coding dojos originated in Paris in the early 2000. There is a big foundation called the Coding Dojo Academy, which took that metaphor and actually is using it to train kids. Very much the Sunday School of Coding, if you will. So good way to learn is if you can teach kids, you can usually teach app developers and DevOps for that matter. We'll see, indeed. One of the things I really like about this community is it's about building diversity. And having kids, their community is actually great diversity. More women than men, girls than boys participating in that community, let alone just trying to pull in different communities all over the place. The other big precedent in this is Weekly Quizless Serves. If you guys have ever been in the Pearl or Ruby communities, they're really big on this. Every fortnight or every week they actually publish a quiz. There's even a Ruby quiz book now that you can buy. And so that's something I'd really like for OpenStack is just to see a bunch of quizzes shared around where people, because we all know that there's no one way to do these things. There's a dozen different ways. So a good challenge will instruct people to be like, oh, there's a dozen different ways. Let's talk about the ways we can do these things. So it's a good way to learn. And then finally, there's really good practice to be built into this. Again, Bruno probably could say more of this because I know your team uses it, but mob programming. There's a growing body of literature. I was Googling it and reading a bunch of articles this morning. And it's really interesting because there's even a mob programming conference now and stuff like that. So the latest in Zeke Geist. But nonetheless, I do think it's about core things. So the theory is really around pedagogy. And there's actually a really good body of evidence around this, what's called the science of learning pedagogy. Problem-based learning. They've done massive surveys on the way people actually learn. They learn much better when you put them in you give problems. And the same with participatory learning. It works much better when people work in teams. But let's get down to the practicals. So this is kind of what a code dojo looks like or mob coding. I'll break each one of these down as we go through it. And hopefully everybody will ask me questions because it is a little bit confusing at first. Don't worry. We'll come back to this slide time and time again. But there's an overview. Let me dive in. That's that's kind of the deep dive XKCD style cartoon here. Cloud App dojos can take any form. So even though I'm kind of showing you, you know, here's what the typical form looks like which is the same room, the same laptop, the same keyboard, the same problem that a group of people are solving. That's kind of what it's all about. It can take any form. So there's no reason why you can't create a good learning challenge and use it in a chalk-and-talk presentation where you have voting in multiple choice, command line Simon says stuff, certification training, riddle evenings, brown bike lunch, quiz hours, pre-conference game nights. And I've seen these at Python conferences and all kinds of things. They become really fun once you have a good repository of learning challenges. And so again just the essence of all of this is about riddles, games, role play, creating that instead of us having slide decks and saying you should use my slide deck to train people on this, all we need to do is be able to say here's the cool quiz and eventually once we build up a large enough repository of challenges, I think we'll very much be able to start to provide certified training. You know, we could very much think about app developer certified training. So that's kind of the long-term goal in the two to three year sense. Okay, so roles. First is the sensei. So what this, again the reason why we say sensei is because we really need people to not be the teacher. It's not about getting the glory and standing up and having the spotlight on you. It's actually about you the learners learning all of this. So we'll come back to this time and time again but I can't express enough that in fact Bruno I think you've got some nice instructional challenge. Peach a page for you showed me yesterday. And it's as easy as you taking that piece of paper and setting it on the table. Like a Lego building block instruction and saying here you go, here's the instructions, go for it, raise your hand if you need me and then you can literally go off and just kind of sit in the corner and do your thing. So it actually becomes the easiest way to do training. I'm sure you've all spent hours on PowerPoint slides or something like that. And that's not actually the best way to teach people. It actually the best way to teach people is to prepare a nice set of quizzes and challenges. So again that's what the sensei or the Yoda person does. They will state the problem whether it's on a piece of paper and they set down the instructions or normally there's a whiteboard up on the side of the wall and we'd write okay here's the problem, here's what you should try to solve. Normally those problems take the form of a basic one so you try to choose a really simple one. You then have a more intermediate one and then an advanced one. And so the group then has to solve that problem. In the sensei the Yoda kind of stays in the shadows and you know asks questions more than they give answers. Yes Chris? You might get to this later but I'm wondering is there like required reading or homework that people are expected to do before this because I'm just wondering in this scenario how do you set the levels properly because already I've experienced here and at every summit in fact when I think I'm talking to an audience of people who know what Open Stack is I've literally had a roomful of people who say but what is Open Stack? Could you explain that first? Yep your spot on absolutely you could add in pre-readings though I find people tend not to do them when I do it. Yeah what I will show you is that what I'm really talking about is one of the cool advantages of doing training in this format is you know this this room will hold a hundred people so actually what we could do is we could have you know all of this small groups like this seven to eight people in parallel all around the room and you could be training them all because what you're doing is you're saying okay here's for the novices here's for the first time you're using Open Stack here are a bunch of rest curl commands to be able to understand the services you guys go off and solve that one then you walk to the next table and you say okay you're intermediate you guys are ready to you know launch a VM and put your application up on it here's your here's your challenge and then that way you really have a much more effective way of paralyzing do it doing the training in parallel so this is really borrowing from our own community right we're all about parallel computing and making our lives easier and spreading the job so and it is it's just it's just a lot more effective because what you'll have naturally is people will then start to kind of take over just like you and I are certain have a conversation in this little space that engages everybody you know everybody's you know actually paying attention rather than on their laptops doing emails right now and it's because it's in a small group setting okay let me push on quickly so the other big part of this is the pair programming I don't need to tell you all that pair programming is but basically if you do have new people a really easy way to explain it is the brain and the hands so I would be sitting here typing on the command line and Chris as my brain would be telling me what to do so my job is to actually learn the thing in my hands the kinesthetic and intelligence if you will Chris's job is to ask all of you questions and to be like guys what do you think what do we need to type in and that way I don't have to think I can just focus on the syntax and actually learn the syntax so you know the first rule of a code dojo is everyone must fight or everyone must you know actually put their hands on the keys and field the code and again that's a really great way to make people pay attention to the syntax and learn what they're doing and it's also really important that you repeat this stuff over and over again right because when you send commands and you get errors thrown all the time so if you don't do it three or four times you're not going to know that that's an error or what wasn't a robust error code looks like so there's a big part of just you know the maneuvers you know doing a maneuver over and over again even though you know the basics of doing a defensive maneuver a defensive programming or writing a test doesn't mean that it's always going to work so it's it's a great way to reproduce it so again just like we're sitting here so Stefano could be my my brain and I could be the hands here and so his job would be to be talking to everybody and asking me what I'm doing so he'd be the one saying can I please get some help suggestions from the audience and then making the decision I guess kind of the product manager and asking questions yeah I think there's also a lot of value in looking at other people's code so even in a small group like this as you shift around and people people will implement things differently right and that integration piece that reading back seeing what happened that's extremely valuable and in the learning exercise as well spot on Brett absolutely so what are the participants do it is the job of the sensei and the brain to actually engage people you know so a lot of people want to hide you know there is imposter syndrome everybody's afraid of being called out as a as a fraud and all the rest of it we all want to think that we know the whole stack none of us know the whole stack you know it's just impossible so it's really important to as a sensei you know if Chris is wondering around the room and he's got six different dojos happening at the same time as sensei to notice that dojo which isn't engaging people and to come in and try to engage them and you know be able to say oh Brett what do you think about this are you confused about it are you understanding it you know and getting everybody to talk what they're thinking so again that very much looks like you know these people in the corners who are saying what if we tried this you know there's going to be that person who's okay with throwing out bad ideas some people are just going to be thinking to themselves oh I see two different ways of doing this I don't look stupid so it's about asking that person hey what do you think you know there's no wrong answers here we're just trying to figure it out you'll obviously have the smug person who feels they know everything and stuff like that so again as sensei you come in and you're less concerned with how to solve the problem that's the job of the brain and maybe more concerned with the person who's trying to dominate the conversation and tell you how the world should work when we all know there's different ways to to build these these applications any questions in terms of roles before I go on to set up which we've covered a little bit makes all sense and pretty easy isn't it I mean the dojo metaphor is a nice one and again you don't have to stick to it what's really important is that you're setting problems and people are setting problems rather than telling them how to do things you're letting them find the way to do things so who knows science works right pedagogical educational psychologists doing all these surveys you know might actually have something so again this is the in parallel instruction format so again this is a this is why it's valuable is because this would never work unless you could do it in parallel so obviously there's still prep to do so Chris's sensei would you know maybe do the intermediate one the advanced the expert and that's what would be nice about sharing all the challenges so that as we dump these onto a github repo and we have the different challenges and you have a nice little paper instruction sheet you can just go lay it down or write it up on the board and all the rest of it so it makes all of our jobs easier right none of us want to recreate yeah we might want to create our own slides and tell our view of the world you know here's the dream host version of the way we want you guys to do stuff but that's great you know there's no reason why Bruno then can't take it and develop it for internet and change it just a little bit so it works with the SDK that he's working with so and and then you can add your own your own branding and all the rest of it so that that's why I'm hoping this will be a good community for allowing all the companies to participate because we all have training programs we all have consultants who are going to have to go in and actually train whether it's inside the company or the the company the groups that we're hiring yes please yeah that's a question back to this going back to this setup right so I'll be ready to try to do this setup because they had to run all this application do all the testing so we need to have a opens that cloud environments right so is that going to be doing online or having a local setup here fantastic point in question so actually one of the things I will actively do is you can come to me and I've already chatted with Bruno and Stefano and we've just had chats with Rackspace they'll provide clouds because they want to provide their cloud because they want to give out free accounts and they want the people to come back and use their clouds you could use dev stack if you want but I would really recommend one of the coolest things is is if you decide to run one of these big training things so say you're a local ambassador right we've already had this case University of Texas and Antonio they want to run one of these things and I want all the clouds there I want you know one table to be internet I want one to be Rackspace I want want to be dream host I want one to be in winstack so forth and so on so that allows those clouds to run and for those people to put forward their challenges and bring their trainers does that make sense are we also considering like I mean inviting different vendors to set up locally for example Miranti's to have a training to have good training so we can get Miranti set up here or different provide other open to all cannot go cannot go to a set of a local environment here is that options absolutely anything you're comfortable with you know I mean there's also dev stack that you can install and that's the other nice thing about this because you only need one computer to get a group of people working together and that's actually what you don't want you don't want everybody on their computers you want just one computer and one screen with everybody paying attention and using these computers up here to interface and in parallel there's no reason why you couldn't use tri stack you know if you're running into a problem or again the coolest thing about open stack right is that we can bring all the vendors in the communities in so you know take advantage of the sponsorship and bring people in whether it's a local ambassador or whether it's a company event you want everybody to start using that cloud it's a great way to get people going on that space so whatever is your technical setup of preference absolutely absolutely so the other thing which I should mention in the in the macro context is that this community will be really important for the hackathons were running so you yesterday you guys would have seen the keynote and the hackathon we ran in Taiwan we actually ran training as as well pre training to the hackathon and everybody always thinks that the hackathon is about the prizes and who we've gotten all the rest of it it's fun and it's cool weekend but I've never seen a hackathon go on to be a big startup company or something like that right you know that all those rumors of Twitter starting as an internal hackathon sure but it's because they had been around as a company for a long time and they knew how to work so the prizes are cool the hack stuff is great will continue to bring the winners but my real value and objective of the hackathon is all the pre training will do in set up to that so we're already setting up pre training for the Guadalajara hackathon in September we're basically every Wednesday for a month leading up to the event every Wednesday night will set up in a bar and people will be able to come along and welcome welcome yeah come on up people will be able to come along and learn this stuff so that it's not just about one person winning a prize for the hackathon it's actually about everybody walking with training skills and that's the real value of the hackathons that the foundational continue to support and run okay so we are going to participate here it would be bad form for me to be talking at you the entire time and not actually get you to participate so what we're going to do is we're going to take a little challenge actually of ourselves trying to build one of these challenges and look there's no right way and we definitely have to go away and think about it but we are going to use the little format ourselves to basically write a challenge here and we'll we'll run a dummy dojo if you will the thing we'll be doing essentially like I said there's there's a lot of good precedence for writing a good challenge and I would highly recommend check out Pearl communities in the ruby community community you can Google for bowling game cata there's some really good ones that I've highlighted called the bowling game cata the web authentication cata and the ruby countdown quiz stuff so check those out if you if you're not sure what a good one looks like there's plenty examples on the web these are little tips that I would suggest though there is no you know hard fast form for writing a challenge try to make it a real world scenario people deal a lot better if you role play with them a little bit and I'm you know I'm going to say Bruno you're the usability person and you know you're the you're the dev ops and Bruno is going to be app dev number one and you know Chris is going to be app dev number two and then that kind of gets them into a place where it's not them being represented at the table they're just taking on a persona so it allows them to not feel like an imposter have the people declare the role and what they're doing so you know get them to talk about that we'll show that in a second provide a couple of different challenges so do a really really easy one do a novice one that everybody's going to be able to solve so they get a quick win then you can scale it up after the easy one don't be afraid to create constraints you know like time constraints or it has to have this feature and then last but not least make sure that they always review what they learn so once they've solved the challenge get them to reflect on it because by reflecting it actually embeds it in the brain because it recalls it from the memory part of the brain the hippocampus back into the prefrontal cortex associates a tag with it and then stores it back into the memory part of the brain so really important in that sense so let's try let's have a go at creating an example challenge so I'm going to set people up in into roles I'm going to play the sensei part it everyone's it yeah this is where you're like oh crap right what did I what did I get pulled into so is Bruno do you want to come and be the hands yep come sit here and Chris do you mind if I ask you to be the brain yeah exactly so we'll have to get out of there this is this is also where you'll get really angry at people's keyboards because you know it's not it's not Dvorak at least you know I haven't put you in there but first things first let's let me just get you set up to where what we're going to do so I've created a github repository so let me take you there into bingo you don't have to yeah you don't have to be the genius right you know this is this is about actually asking people it's it's quite nice to be in the brain position because what you can do is just ask the questions you're thinking and not and not worry too much about it so here's the repo and so what I'll do is I'll assign some roles so I've already assigned my my hands and here's my brain so almost you could say look well Chris you're the you're the product manager right you're the you're the one yeah don't do that don't make me in that yeah yeah and Bruno you're let's say you're the intern you know you're just learning this for the first time Stefano let's make you the overall boss you are the CEO and you really care about this because you're rolling out training for everybody and everybody else pick the role you will so so Brett what role would you like in the company IT infrastructure manager excellent anyone else want to declare a role for we get going just think of yourself as a company so the scenario I'm putting you all in is we're trying to create training right so let's pick we'll pick a silly company the company's called cloud foo and cloud foo you guys are all trying to agree the training you want to provide in one of these dojos so you've got a new cloud set up and you want to get people using that cloud so this will obviously this maps to dream host and what internet potentially you're trying to do here and Chris what you're trying to get them to do is to just agree how to do these trainings so very much your instructions are to get a novice challenge up and going to get an intermediate challenge and an advanced challenge so again I'll I'll switch back to some of these slides and show you my instructions as the sense I'm providing and then you know obviously if this the instructions don't make sense you as the trainer get a you get a as the brain you get a complaint about that and say I don't understand sensei so tell me how to do this let me let me pull up the instructions and then we'll go from there so Chris I will actually let me get another Mike this will make it a little bit easier you have this Mike as well guys guys can you turn on this one thank you okay so the instructions are here can you see those Chris to those make sense so Chris I'm going to back out literally I'm going to start to disappear as the sensei I'm going to go off to the other training and what I want you to do and of course you're welcome to ask me questions but just walk people through the group and you know obviously don't take it too serious so it looks like we want to start by going to my the first app training guide guide right or do we do I assume everyone has seen the first app training thing wondering has who has seen the first app training there we go now you've shifted into it three of us have four okay but I think that's enough for us to proceed and now we need to we need to come up with a scenario for us to solve and I think maybe the brain comes up with a scenario for us to solve right yeah so the scenario the scenario you're in like I said is you want to teach people how to use your cloud so what's what's the first thing in fact what it look what I'd really recommend is go ahead and have a look at the first app cloud let's everybody should have a quick look at that so if you click that link here goes the joys of everybody's computer so maybe start with the simple first one just have a look at what's in getting started well and maybe could I take a quick minute for for our team and and see what you guys think would be a good way to introduce someone to the cloud a good place to start at this point would it do you think you agree it would be to start with the build your first app on live cloud maybe we should ask I mean what kind of languages you prefer to use right every developer is in their own languages right some people use Java some using Python or Ruby and different languages are different SDK then I think that if we structure questions in a more generic way then we'll see what creativity people have like the Haskell the Go or PHP or Perl yeah why not Perl 6 is a thing I don't believe you so go back to the instructions let's have a look at let's look at the problem statement again and this is where the instructions always come in handy because you can just point people back to to where you want them to go and what you wanted to do so the the scenario I've set up and I'm going to skip ahead a little bit because we don't have a ton of time and the computer is going to break any minute I'm going to show you kind of what I created in this space just to kind of give you an idea I mean we've set up the basic scenario here and obviously it's easy enough to just kind of to move on with it but if we go back to I will show you the one I created and you will get the general idea because obviously one of the things you do is sense here is you'd give them a little bit more time to actually get acquainted with this and understand what's going on with it so the problem scenario I have is something like this so the novice challenge would be deploy on a small image with a problem IP I want you to write and test showing the app is live and that this app needs to be done in five minutes so really simple thing to be able to pull up shade I don't know coincidentally we don't have the cloud set up right now for this and I'm not going to push people through this but that's the kind of low level thing that we would get people going inside of it obviously you'd spend a little bit more time working through this and the main point of all of this is that we actually start to share these things so I've actually like I said I've set up the additional GitHub repo so people can start to go to it and actually add in the challenges they'd want to add so there's a basic challenge of you know how to add oh sorry let me go to the template and all you're doing in there is just putting in those three things and then that way you you have a basic instruction to lay down in fact Bruno do you have your instructions can we pull those out thank you it's very helpful sorry Chris it's I just wanted to I wanted to get the roles in the setup so everybody could see what it looks like and how it gets going oh yeah let's look at shade yeah yeah yeah definitely so at this stage the other key thing that you would do is as we switch challenges is we'd actually switch out people so everybody in the group would actually have to touch the keyboard at some stage so at this stage I'd probably switch out brains maybe keep brains but I'd say okay Stefano's now got to sit and work their way through so and this is a really good example what we'll do is because this session I'm not intending it to go for too much longer but we could have a go with playing around with this I don't want it that we don't need to get it recorded from anywhere here on out but it would be good for us to just kind of work on this if anybody has some extra time I don't want to take up too much time because I know we all need to get back to container track and obviously I'll put this online so people can see it as well sure yep last but not least let me just show you the last couple of things and actually you you did bring up a question too I've noticed you haven't mentioned Docker at all in this where does Docker fit in well and so Docker we you know so we allow the Docker you know the people who really love Docker they can create their own challenges inside of this and you know solve the Damon problem and all the rest of it so yep and this is the just to end it all off properly so obviously the next steps are the hackathon working group to be announced by the user committee mailing list so we'll start to put quizzes up probably via the dev mailing list on a regular basis and start getting people working on those I've already got a couple of people who've suggested cool quizzes that we could post online and start testing those and then the other part like I said is training will be a big part of hackathon working group so today at 3.30 if anybody wants to come and join the hackathon working group that's where we'll start to if you want to plan a hackathon this is the place to come and we've actually got four of them already queued up since the keynote tomorrow they're never going to end they're never going to end step on it so who asked the question to the mic so we have it yeah so I I'm not sure I understand how we're going to be I mean how this comes into the picture the instructions yeah yeah so again to run through the yeah let me let me make the scenario obvious so Bruno have another seat as as the hands so what I would do is sense is I would actually come up and I would say so yeah so let's let's let's switch it out Chris you come and take the hands position so you're you're sitting here and again this is just good good people Stefano you're now the product manager you're the one who's actually going to run through the instructions so you could almost treat this like a guide so you now as brain would stand up and say okay here is my instructions here's my specification and these are the types of things that will actually start to add into the code repository so you can just take this thing print it up hand it to the brain and now you can just run the session so you're essentially that you're delegating your your teaching to the person who runs it so you've now got the instructions and you can just go ahead and work your way through this I tell him okay let's create the your cloud YAML configuration file and it needs to be done with the clouds top class I mean and then internet and branch and profile you specify internet yep Chris thank you Chris yep so that's that's really as easy as it gets the nice bit is is Stefano what you'd also be doing is asking questions is there other ways that people would want to do this is this making sense getting everybody to participate and if it's as obvious and instructional as this is a novice just keep moving people in and out of the thing so the whole group actually gets an effort to try to be able to do this coding stuff so all this instruction to be very language specific right yes and that's the other point is that we're going to have a lot of different SDKs a lot of different languages a lot of different container paradigm or API paradigm or SDK paradigm so we want to be able to have a bunch of these and eventually we'll get really great sense of what we're going to do in the next few days who can actually mostly these are going to be people who are paid at companies to be trainers and so they'll have this big nice repository so they can walk into a room and they can train six or seven people all at the same time the other nice bit is you don't have to be the expert there's between the lot of us will be able to figure this out you don't need to come in and be like oh I understand all of this so again like that Sunday school paradigm let's lower the bar and actually allow app dev to not get lost when we're trying to pull them into our ways just one question so I'm a bit puzzling here so are you trying to aim to create such training sessions in the next summit? yeah okay so in the next we're going to set up that's exactly why we're recording this so that everybody when they come next summit we're like okay we really want to have these app dev training rooms up and going people will know what they're coming to this will be the setup times five or six or seven based on that and then that way this will just start to become a regular way of doing training and learning okay so on top of that so speaking on that right so are we also targeting on the specific language because every instruction let's say for the personal summit are we just aiming for Python? are we looking at also aiming to Java or dotnet because if we're aiming for other languages we need to make sure the instructions or SDK is ready for them to use it's mature enough and look I think we could do it a lot of different ways you know if dream host customers who want to do Python well they're probably going to do shade and you know libcloud and they'll do a couple they'll do a beginner shade a novice shade an intermediate shade and then libcloud will be a little bit different so this allows for people to actually specify the communities they want to target so it's not us dictating this is the way it should work it's about who are the customers you have who do you want to actually work with so you can take the training you developed with a customer around shade and say yeah we're going to we're going to run shade training because that's what works for us and that's what we're doing with customers and people will show up to it they really will 3,000 people showed up to this training here and it was just very quickly thrown together I would I would expect or maybe have a little bit of different viewpoint on that and if you're doing novice sessions then the assumption is that maybe they're novice developers maybe they're novice in OpenStack maybe they're novice in both but regardless I think the introductory platform there is really irrelevant from a language perspective it should be agnostic right and this is a great example of that right these these instructions are very straightforward once you start getting into intermediate or expert type sessions then again I think the language is irrelevant mainly because you should have developers in there that are skilled enough to be flexible in their language of choice yep and I'd look I personally if I worked on anything and again it'll be personal preference I would like to work more on just using you know the Curl client and doing basic API like especially with the open API working group stuff I think there could be a whole cool set of little lessons just built around let's university students come and fresh out of UniCompci teaching them Curl and understanding how to call the different sources and what resources each one of those over glance ironic all provide that in itself like the hackathon in Taipei that's what they were using right it was that simple they just wanted to do the straight up API the straight up API calls but we will we'll want more advanced ones and I really really want to feature rich python client as well right which we all agree on is the python client that we all want to use the python SDK client for this kind of stuff Yee did you have another question no any last questions before we finish it all off and guys thank you so much for coming along I know this is very novice like I said I promise you I'll be dedicating a lot of my time to this if there are any questions I should get out of the screens way contact me on flatenders at openstack.org IRC and Twitter is both DFF Flanders so hit me up there Stefano that's a good question where do you think we should put those that's a really because I've actually been wondering that myself because normally sort of dev list but I feel like our general dev is a bit more question and answer focused which could be good right you know people who throw up their generic questions maybe just throwing out challenges every now and again would be a fun way to engage people I would only recommend that we provide some preliminary guidance to our broader open stack development community because frankly the dev list is very very expert and focused on open stack and I will argue strongly that the dev list does not know anything about open stack users and in fact is hostile and angry at open stack users so where would you recommend maybe a separate list or what are you thinking I hate to say it but we might need a separate list and just start driving people there none of us want more lists but at the same time I'm on all of the list and I can't think of any that is really would be a good place and welcoming place just to add on to that and this I'm fairly I won't say I'm fairly new to open stack I've been kind of in the community for a while but not heavily engaged but you know I'm still coming to terms with drawing the distinction between developing for open stack working on the actual components working on applications that kind of monitor, manage, maintain open stack or then this kind of what I'm thinking this app dev thing is really using open stack more as like an OS to run your applications right so I think those are separate communities so definitely there's value and separating those gaps and by the way you actually up to 1230 in this session I just didn't want to hold up everybody because like I said the session needed to be recorded I have no desire to push us into this but I I don't think I would I don't think I would in demos involved in it I'm wondering whether it would make sense to instead of using a mailing list to use a website like Ruby does that so Ruby post has just a blog and they post regular challenges and then you post the link out and then what they do is people reply to a special mailing list or both like you push the challenge on the blog or AskOpenStack and then that's not a bad idea AskOpenStack if we could figure out a way to actually make it part of that because then people could vote up the solutions up and down so it might be a nice way to drive more info to AskOpenStack yeah this is why we get the brain trust together yes this is why people work in groups you come up with solutions I like it yeah I'll do that coming along I think this is the start of a beautiful thing it's the glimmer in the eye of a new community well I know all of us have talked about it and we really want to see application developers and our users be more informed in this space so thanks again and yeah we'll see you around the conference venue thanks guys cheers bye