So today I'm going to be talking about decoupling weather storms in Drupal, partially decoupling them. So as Mike said, this is a preview of my submission for Drupal South Wellington. I guess this is not what happened in a lot of talks, but I'll be asking for feedback. Please note that it is not complete because I don't have that much time to do things. And any feedback is useful, whether I did touch on something you'd like to know or I did touch on something you'd like to know and didn't talk about it enough or there was something that I thought about linking with anything about it. That would be helpful. Hi, I'm Bryn. I am a CSS wizard, but I need a day job, so I do Drupal sites. I do Drupal sites really, but mostly with Drupal. I work for iPhone Agency. I previously worked with Modern AX, but didn't do anything. I think that's about a month now. You know, putting out buyers there and there, that's very common. We have a few of these partially decoupled web forms down in the wild, and it's very cool. I will show you one today if I remember correctly, but it's, yeah, interesting. I have a few running locally on another machine in my bag. I am interested in more complex forms, and ones that don't require submissions because they can't run on a CSS. Anyway, so I guess what is user experience? It's basically when a user lands on your site, isn't it good? Are the, in this case, user-friendly, or do we just give them 1,000 builds to fill out, and we don't put any aspects on it? Things require it, and we've all been on that site. We've already get to the end, and you can fill out 1,000 right at the top, and that just is a disaster. So I guess user experience is how the user experiences you, so I'm going to skip over this, because I think it's pretty good. So why do we need to decouple web forms? Kind of bad. So in my opinion, the web form module is a very good administrative tool, and it allows a user to build web forms very easily and quickly with conditions, pages, and all sorts of wild things that I've seen in my time. But I guess the front-end is kind of cringey, as someone that enjoys looking at pretty things. Web form is not one of them. Specifically with multi-page forms. It kind of looks like it was made in 2001. I never progressed past that. It's got issues, but nonetheless, they do work. And we kind of like the back-end, but we kind of don't like the front-end. So in my opinion, that kind of gives us a good candidate for something that we should probably decouple and make nice. So these are a few screenshots of some sites that I've worked on with very cool, boring PHP-based forms. As you can see, they're pretty fun. I actually couldn't find many page forms. And any that were paginated were kind of fine, so I didn't want to show them to you. But they kind of... I'll get into the technicalities later about why there's some things, but as you can see, basic forms... I don't think you really need to do a couple basic forms if you've just got a standing contact form or something. This is pretty fine. There's a lot of work for not much reward if you're doing something like this. Yeah, so those are... When you're using paginated or like page-based forms, you access the headache. The UI is kind of bad. You've got to send an Ajax request all the time. Go to the server, don't make sure everything's fine. Use the experience. So I guess why is progressively de-coupling this a good option? Like I said before, the webform module handles webforms really well and building them. It's very easy for administrators to build a form out. They just select the builds they want, the types of builds they want. It's very easy. But I guess there's a few... There's five things that are sort of lacking in a way. Once you start to have one, you kind of don't want to change it because it can make things go a bit varied. But there's some things that we can do to make it a bit better. So then we need to think, okay, if this is a candidate for de-coupling, should I fully de-couple this form or should we progressively or partially de-couple this form? I guess fully de-coupled for anyone that doesn't. How many people don't know what de-coupled forms or de-coupled things are? One, two, three. Okay, you. So when we're talking about de-coupling, we're talking about using... So if we talk about de-coupled, here's your... So this is traditionally a traditional sort of renderer or a couple. And then a fully de-coupled, in this case I'm just going to keep saying form, but this could be any kind of component on the page. We would have the CMS just acting on its own and then maybe like an API endpoint or something passing the data to that component and then it would be rendered in the page without Drupal rendering the page at all. So things like Facebook and stuff, they're using technology that allows them to, you know, build out their pages without having to have like a PHP render the page in that instance. And then we have this progressively de-coupled on the bar side, which takes advantage of Drupal doing its thing so Drupal still renders the page, but then we use, you know, a framework, ReactU to render a page component. And in this case that's a word form. So we would still render the page with Drupal, you would still get all the nice things, big pipe, et cetera, making sure that like your page is still performant and you're getting all the other nice things from Drupal, you're getting some context from users or any of that other stuff. Or like I guess we might want to use this in a page where we have page content and then we're just attaching a word form to the bottom of the instance. We don't really want to decouple the whole site, we just want this form to be nice. In this case partially or progressively decoupled components are a really good way of sort of like rolling forward. I mean at some point you could have decoupled every component on the page and then you're basically here and you don't really need to worry about Drupal rendering anything anymore, but progressively we're talking about let's just do one thing at a time, ship a feature, make it good. Eventually you could get to this point, this is another bag of cats. This one will just work as long as you can run the JavaScript on the page. So I guess that's basically fully and progressively decoupled out of the brief overview. I don't want to do too much detail about that. So how do we implement those things? We build our form like normal. So if anyone that's never seen a web form that we built, this is what it looks like in Drupal. Very cool, very snazzy, pretty easy for a person to understand. You can add elements, pages and all sorts of things. That's all well and good, but I don't have a picture of it. It's going to be a bit really cringy, but I'll show it later. So we build our form like normal, which is exactly what we want. We don't want to change that because this bit's good. We have to decide how we're going to get our information to our components because it doesn't just appear in places. So we have three choices. Drupal has a JSON API module. It uses REST API by default. And then there's this little bundle of fun in every Drupal cycle of Drupal settings, which is my weapon of choice in this case, only because I don't need asterisks, I don't need another module to do the REST API. So I could use that by default, but webforms aren't enabled because it's a third party module. So that requires the webform REST module. And if I want to make submit, I'll asterisk this now. If you want to make submissions with that, you will need to use the webform REST module, but I will talk about other cases where we don't really need to make the submission. We just want to use the form builder for making nice things. And the JSON API module, it's all well and good, but you need a module. It's going things like, I guess the thing I like about this is that we can use it on Gulfseam Earth because we don't need to install anything unless you're on the submission. Don't ask me about that. But basically, we choose Drupal settings because it's a native thing inside of Drupal and every page gets rendered with the Drupal settings. So we use this very basic snippet of code that attaches to the Drupal settings, a new webform object.  But this trimmed down version basically says, like, I want an object, I want a webform object and the form ID and then just, like, all the data and that's where I'm storing all the field data and stuff. I'll show you the version a little later. And then we want to add some sparkles. Anyone that likes the Simpsons? This is Thomas and this is Sparkles. Very cool. So you pick your framework of choice, never pick Angular for anyone in the crowd. This is a really bad choice. Never do it. I prefer Vue.js just because it's better. Bring it to your question. Yes? What was the logo on the bottom right-hand corner? Stanley. Thank you. I have heard that word. It's a very cool new Earth framework. I've used it one time for a side project and it's pretty nice. But I like Vue.js. I don't know why. Like, bring. So in Vue.js, I just have a form function that just grabs the window object and then looks for the variable settings webform and data and that's going to return all that information into the form object and that is how we get our information into Vue.js. Let's have a little bit of fun. I will just quickly show that this does work. So we have like a basic webform here. I can still choose these things. I'll choose Sunday. Next. January. Next. You can see I'm rendering out different parts of webform. This is just plain text. I can go backwards. You can see my progress by a little while dating because I'm in a framework now. I don't need to make a request. Like Ajax doesn't need to send a request back to Drupal. We'll get more information. In this example, I don't have any conditions but we basically read great conditions in JavaScript. So we were able to use logic in forms. I had to do some funky stuff on the PHP side as well but that all gets in there. I'm just going to press next and then submit. I'm not going to do anything because I haven't put in the redirect yet but nothing has changed too much and I can check my results. Yay! That's why I said it's cool. So we can see my information got into Drupal. I'm going to show that that was a form. I'm seeing that I have UVS running on the page. Yay! Very cool. I guess some advantages for using this. I'll show you one in a while. This is where we first started using this technique. I guess when we first started using it it was mostly because our designers wanted animations to start in forms and that's really not what PHP is called. Or Drupal in general. But you know, I guess JavaScript is really good at that kind of stuff. So let's try it. This is kind of an unsolicited plug for the energy innovation tool kit. But pretty much from this moment on everything from here down is all JavaScripts. Well, all UJS rendering it. All of this content. So this isn't built-in GovCMOS but so we can make custom models. So we've got a custom model that adds party settings into Drupal for everyone to know what that is. We basically have some nice things that allow us for the user to be able to just add more content into the form without having to create content somewhere else and then do some complicated stuff in Webform to grab the identity references and then grab that later if it's complicated. But all of these models can start all rendered from Webform. We're going to make a real submission here because it's fun and cool and I want to do that on my size. But this site uses conditions. I have a local version running on my computer and they will go back if anyone wants to look at it after. We're happy to spin up the local environment and actually get into the weeds a little bit. But so I'm just going to quick through this thing. You'll see that the progress bar is responsive to our answers. Actually, one... I think they are important there. So this form is like 57 different... Oh man, there's so many outputs. So this particular form here has about a total of 47 questions and then at the end when you submit those results you get central result page and that gives you a very specific set of content. Based on how you answered everything. I mean so there's a plan in the ass to sort of make sure that there's no regressions but we wrote Cyprus tests to make sure that this continues to operate as per we thought it would. If you can imagine, I've got this very cool form extra thing that I built. If I turn this off and we go back and look at that whole form. As you can see, this is the grossest that exists. You can imagine having those questions in this giant long cool bar at the top telling you how many questions you've got to do and how much you're going to hate your life by the time you get to the end of it. It's kind of frustrating and users don't want to see this gross. Like yeah, we could use CSS to tidy all this stuff up and that would be fine. That wouldn't really matter. This progress bar at the top, you don't get any nice animations. I should probably share this first, hey. I better like reload my page. I may have to turn on AJAX but I better wait for the request. It's kind of annoying.  I don't want to sell gas or electricity. I get contextual updates to where I'm at in my form. If I say yes to this, it doesn't move this bar because I've got more questions to fill out. It's going to be too much None of them require that simple same job. But we have built forms that do they're very fun. Yeah, I think you can tell this is very normal but if I press the menu, I get sent to this very cool page. And this is already a bit triple. We wouldn't even know. So this page in particular is already a bit triple. There's a big component here. No worries. It's like your results and stuff is all just content sorted and triple. We want to know. These are all nodes. You've got to pass them on to do the conditions for this page. But you wouldn't even know the difference if you have a few JSs or if you're running on the page. It's very performant and wild. But yeah, I guess I haven't really thought about how to conclude this at all. Another gift. Another gift? No, not one. I can just look at this while I go. Nah, you're so smart. I guess the reason why we do this in this case was there was a bit of a unique reason for having animations and stuff. We were trying to just deliver that single question at a time. We wanted someone to be able to step through the form in a smooth way without having to wait for a response from Drupal. If you have a slow connection once the form's loaded, that's it. You don't really need to worry about load times or anything like that. The server's choked up for some reason. You've got to share those in computer for a while now. Or something like that is it's not an issue. We do a couple of few other components like the back of top button and stuff but we already have VJS running on the site. I don't think there's any reason not to. We've used it in a few other cases where users had quizzes and stuff because of the way for someone to be able to build out a little questionnaire. So we used the form because it already has that sort of building capability. You can already make pages. Really, I don't need a way to handle text and results. And then we're building GovCM. So there were some crazy ways that if you were building your own site and it wasn't mostly GovCM you could just write custom builds and build types that went form and it would be really easy. Like once you had the button down it's easy. But yeah, I guess in short, it makes a better user experience. Mostly because it's smooth and not janky. It's pretty lightweight as well. Not too bad. You're not really imposing any models on Drupal because Drupal settings is kind of it's already there in the head. Now in Drupal 10 I should put a new one. Yeah, so he used to be at the bottom but basically I know it's going on and on now. I might just stop talking for a minute about Drupal settings. Very cool. So if anyone has any questions you can ask the phone or ask what it is you want. So obviously and I agree with a lot of perspectives building with forms behind the scenes front end. I like it's obviously helped some of that stuff the progress part of the classic one where it just jumps around and obviously from a maintenance and up-to-date perspective that's a good one because you get this super technical like you get them in constant tweaks for one thing. Is there any sort of overhead challenges on the other side if people start I don't know, adjusting a bit a bit deeper adjusting those sort of things is there a flaw on that? I guess if you write a PhD properly now Essentially this is what form includes one you can easily switch back and forth by turning off that toggle in Gov Seam as you could and do that so we add any category to the form and we just check to see if someone was using the modern form category there's a toggle in some cases. But basically it just loops over all the fields and just provides a type if UJS doesn't find a type it just doesn't render it. So like if you're putting in a weird or a complainant that hasn't been configured yet in view then you're not really running into any issues unless someone's made a required thing on the form and someone tries to submit it So if you're writing pages and you've got pages you've found but if someone's trying to put in a capture can they configure them?  Yeah I think like it's reasonably robust of course with any of these sort of like running any magic things that exist there's a lot of each statement because you're kind of just a bit worried that someone's going to do something wrong or there's something that you're expecting to be there and then someone thinks that I've forwarded this as you can tell I never delete this but I've forwarded this to maybe five different instances of Drupal and it worked pretty straight I spun this up last night and I played third as well so I didn't really I guess need to do that much you kind of just plug and play a little bit there's like some you have to do a template so it's this basic thing using that modern form just render the app around it and if not then just render the form but like there's not many pieces to puzzle that's kind of the surprising part and the best is like once you get sort of I've found that as you start to develop more you get kids coming in with their JavaScript skills their backwards caps um not really wanting to touch Drupal or when they do they kind of make it cringe like Drupal is a very good content management system you kind of do it right and you can get you can go wrong real quick and sort of end up in a snowball of terror because your content model is bad at least with this you can just have your Drupal person come in and build out the things and then you can get your kids with their backwards hats making their JavaScript things if you want but in an ideal world maybe the time is I guess probably with my good case most likely we built that way I reckon but now I think like this partially decoupled components are a really solid get the best of both worlds Drupal is quite good at rendering but we can all agree that this thing in Drupal never really did there's also things that aren't great so we should just fix them sometimes we can't fix all of this because we can't fix all the maintainers abandoned or whatever I guess I would rather be fired right um and I think that this is like robots and I use it in a few sites now in production and it hasn't formed over yet so I'm feeling that's pretty good so if I understand this properly so it's data driven the form still gets constructed what sort of coverage do you have in terms of webform components that will actually render in the front end like what kind of surprises are there there are some there's a few so I don't know if anyone's really ever dug in for webform birds I might have just held together a big paper string and that's put in the pilot webform is a module is kind of just like this kit of everything there's a lot of modules like submodels inside of it with addresses and all sorts of crazy stuff like building bad SVG and making maps and stuff that's crazy why does that exist because like some government agency in America was like oh hey it was like okay any good open source there um but I guess some of the gotchas really came in when we were looking at not the standard type of form because they had a different like the built object that came from Drupal was different than everything else which is kind of frustrating and so that this webform php file just ended up being a longer thing of just like if it's this part please just like re-render these things to be these things um but in general it was pretty good like if it was like text fields HTML radio checkbox like the standard suite of things that you needed in in a form then I can almost guarantee that you could just go and play this thing and like if someone just had amazing bite in this in this project but whatever compiler of choice or tool of choices all set up probably pretty much works pretty good must say that you know it will probably help me a lot but in business just free but yeah once we got this sort of this php side working getting it in once it's in a framework it's just like lots of dots basically access your objects yeah I think once it was in there there's some weird things like we could have gone down we looked down the rest api pathway first let me tell you I'll put it back take me on that one you can take that to the bank there's lots of stuff in there that's just like not required submissions are like deep bubbled out from the initial rest call you've got to go back and like reference oh I've got this idea from my field okay cool let me make another request to go and get the field now pay me off this way easier people say maybe never put ideas in my life never ever and now I'll put this on every side of that yeah yeah Kyle have you noticed any difference in table size to what you're turning it all back on any competition no I haven't particularly checked too much I mean that slide that I was showing before runs in platform usage barely see any any issues on the creation side or anything like that it's not really a problem I think it's just compiled JavaScript at that point barely have any issues at all basically objective what you're exploring and can I give this all an example of what you're talking about I do talk now but yeah that's probably a presentation yeah cool yep I will do that Kyle I can there's probably some like Facebook and all those Twitter people Twitter kids out there if you use that up you use that decoupled up fully because JavaScript doesn't need any there's no render up like it's just a HTML file with an app in it I don't know how else to explain it really progressively decoupled things I think the people in previous notes do some cool work in that area so I'm sure I could probably track down some slides that use it I don't know too many but I guess it's good because you can just sprinkle it in if that's necessary but yeah I think it would be a good idea to sort of add that in some good solid examples with those that would be good yeah? how do you handle I'm not even doing some hindsight validation but what if you need to do something like that in the PHP you can so we pass across conditions and like one of the conditions is that this build is required if you can do it in my form we can do it in the form obviously that's what you're saying still three different settings like we just basically process the form and just pull out all the stuff and reorganize the order so it's not gross but like you can see there's there is conditions on this page of like one of these must be selected so I can't go next but maybe if my dribble source gets accepted I'll have a better explanation around conditions and stuff that might be helpful but yeah I think conditions do work I'll boot up a site and I'm having to show you we've got those quizzes and stuff that I was talking about earlier they use conditions that sort of render out the right page in certain circumstances like there's a bit of a if you select yes on this you get this score and you get that score and then you should be sharing this if you're going to get a binary score so webform handles all those like those conditions are from the webform itself we're going to have a silly question so the normal form that you like can be used in the webform and then pass all the validations to the front end for the coincident kind of design with the with the decoupled form so you could use something like vvalidate in view I'm sure that's React libraries that do it for you or you can just write custom validators so like we've basically a rewrite of our group of this sort figuring out those things and then the conditions are just passed in by an object from somewhere in here where check to see if the pages are valid process conditions which basically is what's running here but basically you pass the field and the values that it should be expecting and then you each field has an object on it for each condition and then it just moves over every field, like every condition and in Drupal you just say like this field needs this condition to render and that would work normally but in this case we just take that condition and then just do a jump script check in some of the PHP one and then we just render that field if it can be or not so which means you only need to set the validation once and then if it took all it can render the validation so when the page initially loads it goes and grabs all of the fields and all of the pages and all of the conditions it just bombs it all up in that setting it bombs it on the page and then when we get to you can see here in this form we have form pages and then but just like for every page just make a page view form page and then that has fields attached to it and each page has each field attached to it and then the conditions are also faster with those fields if I have a running example that I can show you in the web form it's clear but web form facilitates you being able to do those like that validation and so that's another question let's say that you have a website and you're going to make like 10 forms and you're going to use a whole range which means you're going to use a huge add to build those 10 forms and how many real apps you want to create with your format? Is it like one where I have not all of those things online you want to create a 10-year app so in this example we create just one and you'll see that I just declare the app here and then I just declare the components in that complex form so we could just declare all different types of components here so I could have form 1, form 2 50 if you want and because I'm only creating the app one time here I'm not like creating it like on per page we would be creating a new app but like in the AER one we just wrap the whole site in the app view because it's back to top but in theory you only need to create one so one app with 10 form component yeah you just have to make each form if it needs to be there's no real reason why it needs to be 10 different components you could just make one form component and then like if you make your component correctly you should just be able to create a new web form and use it talk with me after but I will just create a web form and I'll show you that it works yeah, like there's no real reason to unless these unless form 1 and form 2 are distinctly different then there's no real reason to really create components like that and even if they were I would suggest there's a better way within web form to define like you could render a different component if it had these categories like if this form was in category A and this form was in category B category B renders components X, Y and Z and then component A does A, B and C like there's not really any real reason why you need to create different components essentially they're all the same form right? we don't really care for me the JSON API is what I'm used to working with so it's good but I need a model technically I need a model with triple settings as well so it's not really a valid argument if I want to make a submission because the web form endpoints unexposed with the REST API out of the box um the REST API I don't know I just don't like the REST API they're alright but triple settings seems like it gets rendered on the page anyway so if I'm doing partially big couples there's not really a reason to have another endpoint that I'm hitting every time like I'm already learning the page and triple settings are already there so may as well use it I guess if it's a herring so when I say endpoint like if I was to use the JSON API for instance and not triple settings when I load the form I would have to get another URL to get that data sent back to it so the web form would have to request information from caller slash API slash dot form slash ID or whatever the thing is and then I would have to yeah I would have to get the data from there and then it would have to be sent to the component and then my component would then have to handle that information might be already but with triple settings like when I render the page and it's a web form like the web form is on the page it's already automatically being put into the triple settings as a JSON object already so I don't need to do another request like it could be slow it could be some weird validator somewhere that broke down but I know that with triple settings it's 100% it's that making requests kind of stuff but it's not too bad I mean it's not a valid option to go like if I was to choose between JSON or REST API I think I'd go JSON API just because it's sort of what I'm used to looking at I don't like JSON rules but yeah with the triple settings I have a bit more of a droopy way of doing it yeah, now see you


Alright so this morning in our philosophy lesson we're going to just talk a bit about what philosophy is before we get started and then we're going to get into looking at some questions for philosophy on the question quadrant which we'll build, making some philosophical questions, sequencing them to make a discussion plan and then starting the discussion and having some reflection. So that's what we're hoping to get through today. So first we're just going to have a little bit of a discussion about what philosophy is when you're passing the ball we need to be careful don't we. So the first thing I want you to talk about is what do you, what do you, when we say we do philosophy what do we actually mean by that, what do we mean when we say we do philosophy? When we do philosophy we say we come together in a community and discuss issues, topics and sometimes things of books and politics and arrange of different things. Okay, anybody else want to add to that? What do we say when we, what do we mean when we say we do philosophy? When we do philosophy it's like we come together then look for the, we have a topic then it starts like describe that topic and find out more about it to build something and find one decision that can help. Well philosophy is when it's when we come together as a community and like we're given maybe a theme or a topic or all those things that I have to say and we work towards finding an answer and yes sometimes we don't find an answer and sometimes we don't. Sometimes we don't find an answer. When we do often not everyone agrees on it. That's it. And that's okay. We also agree and disagree on things which help us see people's perspective of things and for example if I agree with something and if I see Hector disagreeing with it then then I can understand how Hector sees the situation of things about the topic and like I can get new ideas. And if the people are frowning beta it's alright isn't it? This means they're thinking what have you learnt through doing philosophy that's helped you in other areas of your learning in school? Us we learnt like for questions you learnt the problem solve as Harry said earlier. It can also help you just physically build your brain and mentally build your brain to make it stronger and all the neural pathways like bridges in your brain like a comprehension test and you have to think of the answer well it can help you think outside of the box and sort of challenge what you would think it would be. Challenge your first answer to think a second time think a bit deeper yeah. Philosophy can help a lot in life. When you think you have only one option and then you think about like philosophy like there's all these other way like in philosophy like you argue your one point and then with other people saying like you can learn and then in life later like you know you have other choices. It helps you to see different choices. Building on what beta previously said just said what Mia said and what Finn said I'd like to kind of tie it together and say what it helps us see different perspectives it can help us see different ways in maths so we can look at it differently and it helps us in life but I think it also can help us understand world events and history okay. It's not easy for us to understand how slaves felt in the 16th century but using our philosophical brains and minds we can actually look back and and try and get kind of a glimpse through their perspective and kind of you know kind of start to feel how they felt back then so we can kind of build on that and enrich our lives and so we're not just focusing on ourselves but we know how everyone else is. Try to think about it do you know what that's called perspectives yeah taking different perspectives and that feeling how other people felt building empathy. I think that philosophy isn't always about logically thinking it's more about thinking about what it means to like be human or something it's not like what being human is it's like what it means to be human so again like it's looking at a question from a different perspective and to get a new answer. Yes it's not just about like remember yesterday afternoon and Justin was talking about the maze and the tree you built on it later on he started off with the maze and the tree and then you built on that metaphor so it's about thinking creatively and thinking laterally as well not just logically not just in a linear way. Thinking on Willow's idea it can do the thing where you have all these questions and you've got so many answers for it and it can be it can be like a triangle so you have all these questions down the bottom and then you narrow that down to only the ones that make sense and that help you and then you take the answers off them and pull them together to make one big answer that can answer your question. Okay before we go on can you think about a way that it helps all of us think together in a group. Make us see sense as in some people have already said that like say someone's got an idea you can it's through philosophy you can understand it better you can like know how like know more of what they're saying then. Why is that Finn what does philosophy do for you or what does it help you learn to do? It doesn't just help you with your thinking it helps you to meet other people's thinking how to almost like understand exactly what they're saying. Can someone expand on what Finn's saying and think about how does that actually happen what do we do in philosophy that helps you to think more deeply about what other people are saying. Yeah well we build on each other's ideas so yeah if we do that then we can all come to like a conclusion which then well it helps you a bit more. Okay what about somebody who hasn't had a say is there something we do in philosophy that helps us build on each other's ideas? I think agreeing and disagreeing because if you understand what someone is saying to disagree it shows that you know what they're saying and you're challenging what they're saying so that it gets a deeper conversation and then you might disagree someone might agree with you but then someone else might disagree with you and if it bounces back on agreeing and disagreeing I think it makes a deeper conversation and then that could maybe help you find an answer or something close to it. It helps everyone to be less stubborn. Even me? How do you know that Katelyn? Because you're open to other perspectives and you can see what they're thinking as well as you. Yeah so you're not a stubborn in your thinking. If you're not a stubborn in your thinking what are you? What sort of thinking are you doing? It's like a growth mindset. It's like a growth mindset yeah. Philosophy is not just a discussion with people just sitting like this then we start discussing. Philosophy is like your brain. You can stand there and think even yeah children prep they think fast if I do this how is the teacher going to fail? So that is philosophy is how you discuss in yourself and think what is good thing or good way and so philosophy is not just discussion it's your brain how you think and how you open your mind to think. Is there anything about the whole school it's held with? Can anyone talk about that? Maybe somebody who's been to a different school and has a comparison. Well in other schools they don't like when we talk about philosophy we understand most of the schools don't have this and in other schools they just don't understand. Like in here we talk about other cultures other religions and in other schools they don't understand that so they think just because they came from another country that I'm bad and I do bad things. But in this school because of philosophy everyone understands more. You can talk to people and they can understand it's like easier to communicate with people. The rules of philosophy. What do we got Morgan? Yay. Pass it over to Morgan. What do you know? What's going to be about the rules? There may be no single right answer. There may be no single right answer. Why do you pick that one Morgan? What do you know about that rule? Why do we have that one? Because it makes it a deeper conversation which is why there's no single right answer. That's great so people having no single right answer lets us have a more open mind and be more flexible. Another rule? We are going to listen to each other. We are going to listen to each other and how is that helpful? It's helpful to listen to them and think of an idea of what they are thinking. That's how we get the building on isn't it? We have to think about their ideas so if we listen first. Beatrice? We build on each other's ideas. We build on each other's ideas? How is that real helpful? If we don't build on each other's ideas then the philosophy lesson won't grow and we won't be able to build. We don't get deeper into ideas. It doesn't grow. Your ideas don't grow. What's the one that follows, listen? Respect. Respect each other. Can you tell me what you mean by that? So as respects are, like what Xavier said, to listen you need to look at them but that would also be going on to be the founding thing a couple of weeks ago and you don't have to look at someone to be listening. So I could be looking at, I mean just one, all Hector's talking but I could be listening to them. But we are going to try and look at the speaker aren't we? Yeah. Yeah but not stare at them. Yeah. We're going to give them our attention. Like Justin talked about listening the other week about giving people not just your eyes but your ears and your whole self when you're listening to them. We're going to be reasonable. We're going to be reasonable. We're going to be reasonable and to be reasonable what word are we going to use? Because. Because. Yay. Thank you. Be reasonable which means we're going to be able to give our reasons. We're going to use the word because. We're going to try and be appropriate. Really hard. And Ella hasn't had to say yet. Relevant. And we're going to be relevant and that's got something to do with what Hector was saying about making connections. With what everyone's talking about. So you're going to try and stick to the point, not digress. Who was in Annika's class last year? She always digressed, took us off the track. And sometimes we found out it was okay actually. Another few things I want you to think about while we're doing these next few activities is some of the skills that we use in doing philosophy. I want you to think about asking each other questions. Giving examples. Giving counter examples. Forming analogies or metaphors. Uncovering assumptions and making distinctions. And I want you, when you think about doing those things, just to do them, we already have done a little bit of some of those things like Finn was starting to form analogies about caves and French doors and that sort of thing. So actually name the skill that you're using. I want to ask a question about, I'd like to give an example. I'd like to give a counter example. So if you can name the skill that you're using as well, that would be really, really good.


Live from the Fairmont Hotel in San Jose, California, it's The Cube at Big Data SV 2015. Okay, welcome back everyone. We are live in Silicon Valley for Big Data SV. This is our event, Silicon Angle Media with Wikibon and The Cube, where we extract the sylvanian noise for Big Data Week in conjunction with Stratoconference at Duke World. We're here to extract the sylvanian noise, talk to the experts, have a great time, do some social media, do some crowd chats, but more importantly, share all that data with you. I'm John Furrier with Jeff Kelly, Chief Data Analyst at Wikibon. We've had too many data sciences on. Our next guest is Sam Groca, Senior Vice President of Marketing and Product Management at EMC's Emerging Technologies Division, ETD, which essentially they're working on all the cutting-edge stuff. That is where the big data is. Welcome, Sam, to The Cube. Thanks for having me. We love talking to the Emerging Technology Division at EMC World because it's some really good content. Thank you. You've got to go deep and you've got to get weird in the long-range plan, but then bring it down to reality, right? Go into the fog, come back to the reality. Big Data. You've seen clear visibility now on some things. On the app side for sure. There's some movement on the converge infrastructure side. We talked to your federation partners over there, Pat Gelsinger. You've got vSphere now coming out. You've got vVolves, you've got a lot of integration going on. But this middle layer, the other federation partner is throwing out this red meat called Open Data Platform in the middleware. Cloud Foundry. That's a stack. What do you guys look at that? What's emerging? What's clear visibility and where are the emerging areas that you guys are focused on? From an emerging perspective, what we now say is the EMC Data Lake Foundation. What we really focus on is providing a storage tier that can provide native Hadoop analytics, whatever the Hadoop distribution is. Whether it's Hortonworks, Pivotal, Cloud Area, we plug right into that and support those ecosystems. So as ODP emerges and as Cloud Area moves forward with their community, Apache moves forward with theirs, we plug seamlessly into that. So we're really, you know, from a storage perspective, Switzerland all these different distributions and Switzerland to these communities and we want to make sure we provide our customers with the best integration, the best enterprise class storage for Hadoop analytics. I definitely want to get into the details of the announcement, but let's just take a step back and can you articulate for us EMC's of a Data Lake. What does that mean to EMC? I actually think there's different definitions depending on who you talk to. How do you look at the Data Lake? Yes, so the Data Lake Foundation is a first step in building the EMC strategy from a Data Lake perspective. It's consolidating all your unstructured data into a single pool of storage, a single volume. We call this single Data Lake. So we have a couple of offerings, ISON and ECS, depending on if you want to build a file-based architecture, an object-based architecture, but the concept is the same. Consolidate your unstructured data from your traditional workloads, whether it's a file servers, project shares, your HBC sands, wherever your data is being created, consolidate that into a single pool of storage, but also be able to pull in these next generation protocols, whether it's HDFS, object data sets, even mobile assets via Swift, OpenStack, etc. Be able to provide both traditional workloads and next generation workloads a single pool of storage. So consolidation step one. Step two is then be able to offer these next generation protocols like HDFS, for example, and be able to drive insights and analytics across those. So our Data Lake is consolidation of data and then being able to open that up for analytics and be able to drive insights out of that. That's our definition. See, I think that is a bit of a wider definition than I think some people have. So if you talk to some people in the Hadoop space, well, to them, the Data Lake, it's Hadoop. Yeah. And it's, you know, some of the new things that you're bringing in Hadoop, but it's not necessarily bringing in the old world and some of the more traditional workloads. But that's where your focus is on. The biggest challenge with a traditional Hadoop Data Lake, which is typically built on a DAZ scale, a clustered environment where you have compute and storage together, is you have to move the data. If you build, your primary storage, which is what EMC offers as primary storage, is also Hadoop ready and Hadoop enabled, you never have to move the data. So it removes that ingest of information, which by the way, typically is mirrored three times. So there's certainly a storage capacity requirement that is triple what you would need in your primary storage. So not only is it time to analytics delayed because of the copy time, and we're talking about the environments we're focused on is not tens of terabytes, it's hundreds, it's not thousands of terabytes. You move it in, you've got to store it three times more just to start running analytics. The beauty of the EMC Data Lake foundation is you run analytics in real time where it's at. There's no movement and it's very efficient. Which is one of the key concepts of big data is bring that code by data and run the analytics there. Sam, take us through some of the internal EMC as much as you can, share publicly around Icelon EMC, because we were talking before he came on, Jeremy Burton really set the agenda with cloud meets big data in 2011 when he came in as CMO, now he's president. We have a crowd chat with Jeremy at 10 o'clock on Friday and ask me anything, so that's going to be awesome. He likes to take risks, but back then EMC had to really run and put that positioning in place. At the time Icelon was exploding in value, so a lot of the big hyper scale companies, web scale companies, Facebook, you name it, all buy an Icelon and droves. Was that the big data, initial big data, but it wasn't viewed as big data internally. You had to earn that in, and what has changed in the definition of big data from the Icelon days? Because Hadoop was just on the radars, this batch open source project where you guys were selling Icelon drives at Icelon's. Can you talk about that dynamic, and what does it mean for today? Where are we with what does big data mean? It's a great story and I'll never forget the first time I heard the word big data was during the announcement that Icelon was being acquired by EMC. Joe Tucci was on the announcement call and he talked about, hey we bought Icelon because of big data, and we're all sitting around like, yeah, we store a lot of data, and it's big in capacity, but we don't quite get this big so we're like, okay, but to Joe and Jeremy's credit, there was a much bigger, broader vision. You had huge customer base, too. Absolutely, but it was, our first reaction is, yes, we store petabytes of data, it's big, but it obviously they had a much bigger, grander vision of what big data meant, so I think the EMC's credit, they've seen very, very early on this trend of really being able to grab insights from all of this information being created, and that's kind of the broader term of big data, it's really the value you're getting out of data versus the creation, storage or management of that data. Those are some of the challenges, the means, the ends, but the value creation is really what big data represents to us. So from very, very early on the big data term, and I think as you looked at the industry, it moved from massive capacity, massive quantities to now really landing into a firm connection to analytics. Those things are one and of the same now. So talk a little bit more about the details of the announcement you made today, around things like, things that people think about in the new space that Data Lake has performed, its security, its ability to scale, obviously. What are some of the details of the announcement from Tesla? So a couple things, so we announced a new Isilon platform, the HD400, it's 2.5x more scalable, so we can go from 20 petabytes in a single Data Lake to now 50, so much, much more scalable, more importantly though it's much more dense, so we can pack 60 drives in a 4U form factor versus 36, which was our most dense node we had before. So the economics are greater than 50% TCO savings because of the density. So that's key piece number one. Second piece is we've already been certified and supported by Pivotal and Cloudera. We're integrated into Cloudera's management tools, but what's new today is we announced certification with Hortonworks and integration into Ambari. So now we've got that strong ecosystem across the board, both with certification and providing that customer with that end-to-end distribution and enterprise class storage, integration points, they can deploy us in confidence knowing that the distribution and storage will work together, but we're also not integrated in their management tools as well. So that's the second piece. The third piece is we announced the availability of the ECS object scale-out platform as a Data Lake option as well. So ECS does multi-protocol across many different object interfaces and protocols, but also HDFS as well. So if you want to build and design a platform that was or an application that was designed in kind of the emerging use cases or third platform that it's constantly continually referenced around, object is a starting point for a lot of those applications. We have a best-in-class object storage system with ECS that can also run Hadoop against it. So whether you want an enterprise scale-out NAS file offering from Iceland or a scale-out kind of cloud-based object platform, both of those can do analytics in a multi-protocol protocol fashion. Those were really the big three announcements that we rolled out today. So I'm sure driving these announcements are what you're hearing from customers. So what are you hearing on the ground from customers? What are their biggest pain points when it comes to building the Data Lake and actually turning all this, we keep hearing about Data Lakes or Data Oceans as John likes to refer to it, and they're great buzzwords, but when you get down to it, all right, how do I practically get started with this? Because when we talk to practitioners, they're struggling. This is a challenge to build these out. Even the Data Lake where they're just offloading some data is challenging. Forget about doing some of the more advanced analytics. What are you hearing in terms of pain points from enterprises and how does this announcement address some of those? So EMC focus is clearly on that enterprise user. The biggest pain point we're hearing now versus a year ago is those proof of concept, those lines of businesses who have been kicking around Hadoop for a couple of years now that it's becoming so big and so mission critical, it's now becoming an IT problem.  I don't really know what they're doing. I don't even want to know what they're doing now. It's like, okay, this is actually very, very important to the business. I understand that, but how do I do this while not trading off or sacrificing all of my other ecosystem of integration points across the data center and across IT, the security, the governance, the compliance issues, the interoperability with the other parts of IT and so forth. And that's really where EMC is filling a huge gap is we're delivering technology that gives you the best of both worlds, enterprise grade capabilities, that plug and play and what you would expect from a NAS or more an emerging space, an object archive, but without, with also including those next generation capabilities. So you can run your Hadoop use cases against an ISLON for example, but you can still snapshot it, you can replicate it, you can back it up, you can do all of your applications can see the data, read the data, rewrite the data. It's not these yet net new silo environment, so it really is taking that enterprise grade plug and play issue off the table for these IT users that this is now a reality that is today and it's definitely not going away. So that knowledge gap is probably the second thing that needs to be filled. There's a features, functions, enterprise integration and then the knowledge around how to deploy this quickly. It's kind of the second gap. Obviously as an SVP, you've got to lead the troops and also set the agenda. And you've got to deal with the market chess board which is challenging while you get paid the big bucks. What's the landscape view for you? What's the focus? I mean, obviously you have to look at navigation, make sure it's on that bus to do what you guys want to do. What are you focused on for the outcome for your group and the emerging group? And what within the big data world are you watching closely that will be a lever for your success? Yeah, I think one of the big things that you'll see us focus more and more on this year is being very active in communities, being active in the development space. Especially in this use case, so to speak, in analytics and Hadoop specifically, EMC we need to be very, very active participants in this community because it is going to be one of the key drivers of innovation versus historically it's been vendor driven innovation. Now it's time for EMC and all the vendors frankly to find that middle ground where you're working together leveraging. So whether it's Hadoop, whether it's OpenStack, whether it's community and developer support and integration, that space for us is very important. What does that mean to you when you're going to contribute code, resources? I think you're going to see it. I think you're going to see it. No, I think it's you know, we definitely don't want that attitude of if you build it, they will come. Field of Dreams is not going to be successful here. So we have to one, we have to one, we have to acknowledge our participation. We have to bring products that support and integrate with these applications, these use cases, these OpenStack communities and then we have to provide. We have to deliver. We can't just open our arms and think that it's all going to come to us. So I think that's definitely an area that you'll see much more from you this year. We were talking when he was on who was really active with customers by this inside out organization where everything is done in the open. You can't hide in the shadows anymore the transparency of the information flow. It's big data. It's mobile network. Things are connected. You're going to find out what you had for breakfast and the minute you walk out the door for the house. And the last thing from an emerging sample, I don't want to be on the outside looking in and watch this all happen. So we are going to be from an emerging technology division. We are going to lead and we're going to lead from the front and we're going to become much, much more active than historically you've seen. Keeping with that theme, the big announcement this week that everyone's talking about is the open data platform where Pivotal Hortonworks, other members like IBM and of course EMC are playing a role as well. Talk a little bit about the open data platform. Why EMC, it's important for EMC to play a role there and what do you hope the open data platform is going to achieve? Yeah, so whether it's ODP or other communities that are getting together I think there is that problem of okay IT is now dealing with this new emergence of Hadoop and analytics and their IT infrastructure. Anything that progresses any movement, any groups any technology that progresses an enterprise experience meaning it's more predictable. It's more manageable as innovation has been so quick in the Hadoop space and the analytics space customers and organizations are looking for something that they can count on more consistently and be more predictable to work within this much more complex environment versus again the POC closet. So things like ODP I think will help to bring forward that predictability and be able to bring forward that consistency that these enterprise environments are looking for. I think from a Claude era perspective they're very strong in their community and their strategy around bringing that predictability as well and so from an EMC perspective why did we join, we're a gold sponsor of the ODP is we think anything that advances that agenda of getting these applications into more of an enterprise grade level is great and we'll support any and all of them so we're very much committed to that. What do you think the ODP can and should do that maybe the Apache community can't do? In other words because you're hearing some criticism from the open source community that this is an vendor driven thing and we've already got this standards board it's called Apache. What role do they play to complement what Apache is doing? What are they going to do that maybe the Apache community, the open source community can't? Yeah so I think the members of ODP the segment that is a member now they will be collaborating incrementally above and beyond because they're all members and contributors to the Apache open source community as well so I think it's going to provide that ability for these partners to collaborate much more closely be able to leverage each other's strengths in a more coordinated fashion and then again provide that customer base and that user community with that more predictable enterprise experience I think is positive now is it going to be dramatically different or am I saying that the Apache open source community won't be able to deliver on that? No I'm not saying that all but again it's a new commitment it's a new initiative that is going to look at this problem a little bit differently with a broader ecosystem of partners I think that's positive for the industry positive for all of us. So I got to ask you one of the things we were talking about earlier and again this is something that we're watching in real time is playing out is the convergence of open source community out in the open with governance of standards bodies we've all been through the hydropole W3C and so on and so forth and there's a criticism out there that these new land grabs or Barney deals or in their marketing programs when people have these consortiums but OpenStack is successful it's gone through some trials and tribulations Cloud Foundry it was very skeptical of it at the beginning like it's never going to work it's just got one together but you know what it's working so this new concept in this new environment is it different now why are these projects becoming successful is it the new era of open source is it the transparency is it the access to information I think what's driving it is more so from more than we've ever seen from a customer expectation perspective I think why these things are being more successful now is the amplification of the voice of the customer and the expectations that are being drawn into these organizations is requiring them to really get focused and get their acts together and solve problems that are being driven by this wider use case so as OpenStack has proliferated and gotten more and more momentum behind it adobe analytics as well you're going to continue to see these type of organizations OpenStack looked good great launch similar to ODP which has to prove itself time will tell and then OpenStack turned into a marketing program we were very critical of it this is a total cluster but what happened was they got their act together internally and said let's ship with code and then OpenStack got on the rails again and it's doing great open foundation so the question is is it because the customers are now connected to the projects because you could argue that things like in the land manager days and the UNIX days that the customer's intention was best in mind so is it the fact that the customers are now actually part of the contribution you know the DevOps space is obviously has emerged dramatically over the last couple of years the people who are also managing the storage and operating the IT environment broader are also now becoming contributors and also participating in that community at a level that they've never participated before there is historically a strong divide between the developers and the operators this world is coming together so I do think that is probably one of the key differences in today's world and then you've seen over the last few years awesome so final question what's the outlook what are people what should people pay attention to that's not being talked about in the press in the events that you guys are keeping your eye on and you think around the corner that we should be paying attention to yeah I think I think the big thing that is still not as well understood throughout the entire IT industry is just the true value and breakthroughs that analytics can provide organizations you know as I meet with customers and CXOs all over the world there is a clear set of environments that understand the value and this is top of mind this is a board room discussion it is a clear cut competitive differentiation and then there is a segment of the market a large segment that are not operating at that level I think that is probably the biggest missed opportunity that we'll see change very quickly now we've seen it accelerate over the last couple of years this year is that breakthrough year where I expect the entire industry and this is what will determine winners and losers in the marketplaces across these key markets if they can harness the power they can understand how to take advantage of these massive resource called their data that they've created and they're throwing tons of money at that is going to be the breakthrough that you know a lot of organizations haven't even started down that process so I think this is a year where you're going to see that accelerate to the masses and you're going to start seeing winners and losers across mega mega industries decided by who is able to harness this information faster and get to market sooner Sam Groekrod, Senior Vice President of Marketing and Product Management at EMC's Emerging Technologies and they're building up the future great to see you on theCUBE appreciate it thanks for sharing in the open way on theCUBE and sharing your opinions and what's happening with EMC great to see you guys out in the open with the community it's fantastic to watch certainly your cohorts at VMware and Pivotal doing the same thing so a lot of great stuff coming from the Federation we are here live in Silicon Valley I'm John Furrier with Jeff Kelly it's theCUBE we'll be right back after this short break


What's up everybody? Jason here with jasperjasecasebreaks.com. Showed us the 1920 upper deck Ultimate Collection Hockey, eight box case-free cricketers, number four just sold out. Second half of this master. And again, Don gets the Islander's Last Bomb Mojo. Here you go. Forsberg, a little retro right there. And even though he was an avalanche, Peter Forsberg and Flyer, so good. He didn't get to have his injury problems, man. It's been crazy to see how his career would have turned. Even better. All right, so we got Tarle there for the Red Wings. We got 88 out of 99, Peter Forsberg. We have Max Varnault. Ultimate Introductions, Autos. We got, for the Ottawa Senators, Ryan Redman. Not a shield, but a little Adidas little patch in there. It's a three out of six, and it's Brent Burns. Nice autograph too, Brent.  Nice little auto. Sounds like sharks going to Don. Pizzle, yes it is, sir. Jake Wallman. Morgan Frost, 24 to 25. It is, man. I mean, I think a lot of us have liked it here. That's why we're on Pikachu number four already. Wish I could do five and six, but I think we're still a little ways to go with that. Nick just posted it like an hour ago. But Joe will definitely be able to do that today too, guys. I think we're down to like 15 left on each one. Rasmus Asplund. And it's always clean. The only thing that just bothers me a little bit is that I feel like the packing is a little too tight.  But not always. And nice. Bill, William, Carlson. Eight out of 99. Little three color patch, signature Lariatts materials for the Vegas Golden Knights. That's going to Anthony O. No shields, Joe Pizzle, hopefully here. I have a feeling Joe's going to pull one though. We got Leon Drysidle. Oilers by Michael. Wendell Clark. Yeah. Every time I see a thicker car, I'm just thinking shield. Shield. Shield. You know, all the time. Connor Clifton. Bruins going to William. And we got Rookie of Sense for the Blackhawks. Dominic. 74.99. I'm going to Jason. All right, halfway through after this box, guys. We got Cole. Not yet, Tyler. We're halfway through, though. I don't think I've called the blue jackets just yet. So this box in four more. Matt Roy. The Ultimate Introductions Auto. LA Kings, Mulder, Gwana Shang. And ooh, look at that. One off the jersey number. Three color patch and autograph out of 49. Macar for the Avalanche. Very nice. All right, a little two color for the Hawks. We got JT, John Tavarez. Yeah, this one felt a little thicker than the last one. So hopefully we got one, but maybe not. That was 225. There's a little Igor. Edward, very nice. Ah, Juso Valamaki. 20 out of 175. Whoa. Is that the way the card is or? I don't know. I thought that's the way the card is, but it might be the design. I don't know. No, that's not the card. Cogger Flames, you gotta answer me. Ooh, that's very nice right there. Look at that. Carson Coleman. Look at this one, guys. Out of nine. Juna. For the Winnipeg Jets going to John. Carter, reggae heat to 2.99. Under Brad and the Lightning. And a little John Gibson auto. For the Ducks going to Eric. Last two here, guys. Oh, auto-drifters are in the box. Maxime Comtois. That's a little update there for the Ducks from 1819. No one there for the Ducks and Eric. We got Philippe Maier. Another update. Another Maxime Comtois. This was last year's Ultimate Introductions and the Autograph as well. And the last one is Jacob Truva. For the Rangers. All right, you guys. Last one. Little quad here to 99. Pasternak, there's a little chip right there. Piatur's your own. Brad Marchand and Tuka Rass. Mitch Marner. We got Noah Dobson, Ultimate Rookies. 225, that's last spot mojo. And Don. Daniel R., if you go hit the Son of Box.  And to 99. Little rookie patch autograph of Jimmy Schult for the Vegas Golden Knights. Unfortunately, you don't get anything, Daniel. That's the risk you're taking in a group break. So that's the only risk about getting into a group break. So if you go hit this, of course you don't get anything, but in a heavier based product, sometimes you'll get the rookies in all card ships, stuff like that. But some of these ones like this where it's just like six cards per box, five cards per box, that would deal. You might go hit this. Well, there you go. But instead of paying, you know, let's say the box price at 150 while you're paying for 25, 30, 40 bucks for the whole team that would have cost maybe $1,000 for the whole case.  Nice inner though, guys. Although we didn't get another, we didn't get no shields. Very nice stuff here. As always, ultimate collection hockey.  Pretty sure to guys, jaspyscasebreaks.com. The next two are in the store, Nick just put them up not too long ago. And if you're looking at it guys, we are already down to 14 and 14 left. The muscles are definitely gonna be breaking today as well, guys. Appreciate it.