 Hi everyone, good morning. Thank you for joining us today. We're going to be talking with magic logics and talking about different approaches to developing Drupal websites Just a little bit about us the Drupal Association We are in we are charged with helping Drupal.org improvements. We host Drupal.org We also host a little conference called DrupalCon We have one in North America and we have one in Europe each year and then this year. We're really excited. We have one in Latin America coming up We also give community cultivation grants to Drupal communities that are building their Drupal community and and need help with any sort of project they're working on meet-ups or a Drupal camp and then we also have a really cool program called global training days The next one is coming up at the end of August This is an opportunity for our training companies to really highlight their skills invite new Drupal developers to learn about Just the basics of Drupal and and grow the community in their specific area So we're really excited about this program and you can find out more information on our website about that Next slide, please Great. Just some upcoming events that we have we had DrupalCon Amsterdam coming up at the end of September and That'll be A really great event held in Europe. We're expecting 2010 B's great keynotes and some really fantastic sessions like I said earlier, we have Drupal global training days and You can learn more about that on our site Link is right there and then our next webinar is going to be on August 5th And we're talking about our community elections. So definitely something you don't want to miss Next slide great and just a quick shout out. Thank you so much for our supporting partners Magicalogix has been with us and their supporting partner and we really couldn't do what we do Without the support of some of these great companies and and really helping us foster the program grow the community And you know provide educational resources for you guys. So thank you so much and Without further ado, I'm going to introduce Sam and Chris from Magic Logix. They're going to be talking today About our everyday applications and implementation tips Awesome, thank you so much Morning everybody. My name is Chris Appalisti. I'm a social media director and one of our marketing managers here at Magic Logix And I'm joined by Sam Timmelstein over here Hello, look Sam is one of our senior web developers And is by far one of the best people that I can think of to do this webinar with so we're really excited to kind of get going and Talk with you guys this morning. I'm excited to So I'm gonna tell you a little bit just a quick rundown about Magic Logix who we are what we do We're an integrated marketing agency and as Lauren mentioned, we're also a Drupal Association supporting partner So as far as integrated marketing goes, I like to look at kind of four Big areas of web design web development search engine and social marketing or social market Social media marketing. However, we also do marketing automation and e-commerce services as well We create a lot of responsive websites and use a lot of Drupal and we're out here in Dallas, Texas The wonderful state of Texas. We've been active since 2004. So just about a decade now As far as this webinar goes we plan to kind of look at a lot of projects We've worked on and give you guys some insight on different Drupal projects. So We've basically locked it down to different approaches and development There's an easy way to Drupal development and kind of a more advanced approach So what we're going to do is kind of go through both those methods See what we would quantify as the easy way and then also look at it Maybe a more advanced approach and see how both of these can Provide insight into building your own websites for Drupal We're also going to look at three different examples challenges and solutions for other web projects So we quantify these into a smaller website a medium website and a large-scale project So this way we actually give you specific examples and that's where Sam takes a look into the coding and all the Wonderful wonderful things that he does in that realm that I will never comprehend myself So we're going to look at also how to approach each type of project And then we've also got a little section talking about a modern workflow for Drupal development So without further ado, I'm going to get Sam in here on the easy way of Drupal development to start this discussion Thanks, Chris. So At the start I'd like to start up by saying I'm not a Drupal expert, but I'm getting there Okay. Yeah, so this is a list of slides with prepare and it's the you know result of some years of experience using Drupal and So let's start by talking about the easy way of Drupal development So once you set up once you install Drupal by default Drupal Gives you, you know some core modules and by itself Drupal is a very strong CMS I would say it's one of the best CMS open source So the first thing that you do, you know, when you want to, you know, develop Drupal in an easy way The first thing that you do is install a theme You can start up by using base themes like the GenThem, the Bootstrap There are plenty of themes out there and I think you can also buy a lot of themes out there in the marketplace. Is there any favorite thing in yours or? Well, I use Bootstrap and Foundation a lot, but they are base themes and we'll talk about that later on And the next thing that you do is Well, I forgot to mention you always plan ahead your website before you even start so I'm assuming you already done that So once you have your theme installed and the next thing that you do is install modules And the good thing about Drupal is you have an endless list of, you know, modules built by the community, you know You can, there are modules you can, you know, install for any purposes. Do you want to YouTube media? Vimeo, you know, do you want your site to be social, you know, there are modules for anything they want Well, that's the thing about Drupal. There's a module for for everything. There are the ones SEO, social-saving, GQ, e-commerce They're really great e-commerce, you know, modules and we'll talk about that later on, but We have something called the Well, we'll talk about that later on, but We have We have basically modules for everything that you want in a website. So one website will need There's basic things, you know, social is very important right now. SEO is very important, you know, media is very important So you have modules for everything in Drupal. So in the easy way, you install, you find your module in Drupal.org, you know, and Install your module for your site Yes, this was what I was talking about. Sometimes you forget what you're trying to say, right? Drupal distributions, I'm sorry So we have full feature Drupal distributions created for basic types of sites and the commerce keep start is really really big and This is for people who want to, you know, jumpstart your e-commerce website and They can get ready. Well, let me talk about Drupal distributions a bit. It's a set of modules and You know profiles that that's ready to, you know, for a type of website There's so many different kinds of websites. For example, we build sites there for, you know Education purposes, we build sites for, you know charity, those kind of stuff, you know, so we have commerce keep start We have open publics Open office, open quality, there's a lot of Drupal distributions and not all of them are published in Drupal or I mean We are also developing distribution for our own purposes, right? So You can you can either You know, install a vanilla Drupal and install, you know, whatever modules you need as you go or you can Get a head start using a Drupal distribution So what's your basic approach then? We'll get to that in a moment. So here's the basic approach You first install your Drupal, that's the vanilla Drupal Drupal without any modules, you know, just download it from Drupal org or you install a Drupal distribution The next thing that you do is Install, I think it doesn't have to be necessarily this but if I was starting a very basic website then I would I'll do it this way and You set up and configure your modules, you know and your theme And the next thing that you do is create a content types and the content types are really really important They are basically different types of data that you have on your website be articles, blog team members, anything you can think of in a set of data and the last thing that you do is add data Well, this is just one approach, you know a very basic approach You don't have to follow it, but this is one way to do it and this is this is Typically very enough for small websites But there are trade-offs using the easy way, you know, if you are a developer and you look at, you know, the markup that Drupal produces, that's one of the trade-offs of using Drupal Out of the box without any overrides. You see a lot of markup. You see a lot of CSS's And when you look at the markup that is produced, you see a lot of elaborate class names, you know But they are there for a reason because they help you style your websites and And without having to create your own class names and adding class names is really Really difficult if you do not know how to add class names to your components Yeah, like I said, they add a lot of CSS and JavaScript and The more the CSS and JavaScript that we have in a website, the slower your sites going to be So those are the trade-offs of using Those are just two of the trade-offs if you're using the Drupal in the easy way and Yeah, it's really difficult to change anything If the modules that you just downloaded and using does not have the exact same pieces that you need mean say you have You you want to have social There are modules for doing that there are modules like share this add this and when you do that It may not exactly Work the same way that same way that you needed to work Like you can have a module that embeds a YouTube video, but you want that module to You know do something before it, you know renders the YouTube video. Maybe you want the How long the YouTube video plays for example, it's five second five minutes and some some seconds You want to so that it the model that you install does not do that So it's it's really difficult to change something, you know, if the model does not Support that so that's one of the trade-offs and The most important trade-off. I mean is that if you're using Modules for for I mean you always use models, but because there are so many modules And in the easy way you do everything By using modules then just a chance you're gonna break your site if some some module breaks And we see a lot of that problems When when clients come to us and they say well my site is broken and it's it's sometimes it's because of simple module That's not working. That's not updated. So Then you had it. Those are the trade-offs of the easy way of triple development All right, so Kind of looking at the easy way before we get into what's the hard way, which is really more of an advanced way That's with the easy way you're discussing is good for SMB's can you use that for large-scale player? No, and no I would not okay It's at least good for set up then and then of course the hard way. Let's get into this Even though we've got the little frowning face and druple guy It's really not kind of as hard as you would you would think in that sense Do you mean it more of an advanced? I'd like to think of this guy as titanine. They're not angry All right, fair enough. He's he's ready to get it out there. So Well, it's not really Hard it might be a misnomer. It's it's the advanced way. It's the I think it's the right way of doing triple and But it requires, you know some knowledge of Drupal the underlying technology that the API's how it works, you know notes and These you know those kind of stuff users. So you need to you need to really understand The underlying technology to do the right way. So we're going to get more into customization and that's that's right It's all about customization. Okay, and and it is it is It has been easy to do the hard way because druple has a very solid API, you know It has a great community and there's a lot of a lot of active members We have you know who who selflessly promote to Drupal and You know give to the community. So that's that that's the good thing about Drupal is you can customize it because it has It has such great platform Okay, so what exactly is the hard way it's it's it's like Drupal already out of box does some things very good You know, you can create content types that out of box in triple seven and But it does not well when you create a note a content type and I'm getting into more technical You know, I'm getting more technical here, but I think this is necessary because we're talking about the hard way When you when you create a content type by default it produces it renders a markup That may necessarily may not necessarily be what you what you need, you know and You may have content types, you know a layout a theme that you know is is very customized for your website and To do that may not be possible using, you know the default Drupal rendering so It allows you that the hard way is actually building custom things to look exactly the way you want Exactly what your designer gives you so that's the hard way and to do that You either build custom modules to exactly match requirements by custom models. We're not talking about Reinventing the will that's very important. We're not trying to reinvent the wheel So if there are models out there that do those things very good and those are, you know Used by thousands of websites that are well documented that are well maintained that Produce, you know, but patches that have security updates very regular security updates that You must use those kind of modules, but I'm talking about Building custom models for your requirements and for websites that we've built We've always had to build some models. So that's the thing So the the the advanced we have Using Drupal is you built your custom modules for your requirements. So that's one thing and Build custom behavior that otherwise doesn't exist in Drupal. So it might be, you know Something that Drupal doesn't do by default For example, you want to have you know when someone Updates a content type, you know for a particular role and email is sent out, you know there was one project what we did was it was called the systems data space and You could subscribe to that base. It was so when something changed Then anyone subscribed to that base would get get emailed, you know, I Think that there could be a model that existed. I did not look for that module. Well, I think I tried but We ended up building our own module for that one so Custom behavior that's that's the That's another thing that makes it the hard way so here are some rules to understand when you are thinking about Building a website the the advanced way use only production ready modules So how do you know some modules of production ready? You need to look at the status of Drupal modules when you when you when you go to a mod a project a module project Then you see whether it's not it is well maintained whether it is in beta Whether it's in Dave whether it's production ready. You can see how many websites Are using it you can see the Demography and you can also see the bug reports if there's a lot of bug reports you may not want to use that and You can also find a list of models that are Useful to use in all projects for example views and Displacement that those are the models we always use and the next important thing is use models very sparingly You do not want to use a lot of modules For big sites and there's some really good reasons for that one And we'll talk about that later on and The important thing is the next important thing is you plan your content types and fields ahead of time and This is really important. This is This is all planning a great website is not only built by developers. You have to include designers marketers You have to include content writers You want to you want to learn what as a developer I always try to you know talk to Designers will end up using the website. That's a really important if you build a website that your Your admin was was going to end up using the website doesn't understand how to use and that's one thing Drupal has you know got some Things to you know fix and I think it's it's it's going to direction now is Drupal is not really You know user friendly in the back end that's that's something we hear a lot of times from clients You know we have to walk them through a lot of you know menus because they are accustomed to using WordPress or you know a One-click solution and it's up to We developers to make that easy for them the transition So that's that's important. So you have planning content types and fields ahead of time. That's that's you get a thing And you can also, you know, get get in touch with your your content writers and see if they can use it that's really important and And this is one of the core requirements of doing the Drupal the hard way is you write your own templates for pages for notes for blocks for views Because Drupal allows that, you know, you can you can you can team your note per content type you can You can target views you can target blocks and that's this is this is something I'll talk about in detail in a minute Well, I'm looking at the hardware of Drupal development or the more advanced way obviously Customization is really really clutch. I just kind of in summation of that which is which is really really good And that's kind of a nice way to add your own spin and taste on it You know, obviously if we're looking at a choosing your approach big factors are going to be timing your level of comfort I think like a very very high level of comfort or at least moderate would say The approach to doing so much customization obviously, but then also to knowing what kind of scale Site you're building it. So, you know with with that in mind as we go here We're gonna talk a little bit about choosing your approach We're gonna look at a few tips And then we're finally gonna get in to give some of these real-life examples of what we've been talking about so you can see kind of Using panels and different things that we've done for all approach. So I'll kind of let you take it from there regarding these next tips there Sam Yeah, so Well, let me just Tell you this the easy way and the you know The hard way is not just the two different approaches you can take This is really important to understand. These are the two ends of the spectrum of That the things you can do you can combine, you know You can you can do a lot of things and will so in the examples of sites. We've done Sometimes it's important to use a lot of modules because you don't have the time, you know, sometimes You know There's budget constraint sometimes There would be a lot of factors in deciding Whether to use the easy way the hard way, but often it's it's the compromise the easy way In the hard way, there's just all this hundreds of you know Lines between those two approaches So the factors that you must consider whether or not to devote a lot of time customizing triple is Well, how much time you have for the project if it's if it has to be submitted, you know Has to be production ready in a certain time and you know that Customizing triple to exactly specification could take you more more than that time. I mean If you plan ahead of time, you could always, you know Come to a compromise but So the time that you need and the level of comfort meaning how much level of Competence you have using a certain part of Drupal Templating a certain part of Drupal whether you are So you have to you have to consider how much time you want to devote, you know, and how much Proficient you are in Drupal before you decide What approach to tech so I always recommend a compromise If you have limited time and limited comfort using Drupal and here are some tips where we're talking about If you have used Drupal a lot, you'll find using the same kinds of modules the same types of content types a lot So here's a tip you create profiles for frequently used project types And you end up creating all your own distributions Or you could use Drupal distributions for head start. Those are two nice tips and You can reuse a lot of Codes that you use Many times I use github guests and I can insert them. I Use the template PSP file a lot because there are some functions that I use a lot And it's it's really easy for me to insert those Bit of snippets inside my code faster. So this is one one thing I did do And this is really important. You must follow the Drupal best practices and getting back to installing less models This is if you read the Drupal best practices, this is one of the recommendations use use as less models as possible and But you must remember this is this is a good tip you our customization is not always better. It is not update proof so if you if you update if you hook to a module that Updates and does not support that hook or you know, it really happens But you you must consider it must your customization must be update proof and you must also update your code Okay, so we'll we'll we'll talk about this is the range of so going from small sites to large and enterprise sites Yes, the bullet list of things that you must think about So modules and themes and testing production service in small sites I would I mean it's it's recommended that use testing staging and production service for all your projects, but In the real world there are Some some developers they are stuck in in some countries. You're stuck with using, you know shared service servers Some people must develop locally and the machines before they can upload the final code to the server so for large and enterprise sites are not recommend that but Okay, let's start from from the modules. It's for small sites. It's more beneficial if you install modules rather than, you know, you know Creating all your own modules. You you also might have to trade off, you know functionality in small really small sites If you if you do not want you you rather have to you know modify your And this is this is the set part for for modules some some modules if you really need to I'm going off on a tangent. So I'll stop right there. I know we have some some remitted time. So I'll speed up Okay And this is this is this is the this is the biggest differences I think the teaming is the biggest difference is that I must I must talk about this you can use You can use panels just place your panel is there's so many different options you can use to create Layouts for smaller sites and it's much faster that way, but for large enterprise Sites you have to override your pages notes and blocks and use you know to get the exact Specification if you haven't looked at really nice sites We have such beautiful layouts and to do that, you know, you have to do some work And a lot of people have done work on really great science So I'm going to give you an example of really small part of a website and Take a look. It's it's the footer of It's it's fairly complex. We have Two columns on the right side you have logo and some some Menu items. It's a footer menu on the left side. We have a block And there's so many different ways you could do it I'll show you some examples So we can there's a model out there using panels You can build if you are if you are in real hurry you can build a custom layout. So remember we had two Two columns and we want to build that you can use the Builder function in the in the in the panels and you can create Using the layout designer. So I have created a reason left footer right and credit There's also a credit at the bottom This was created using the layout designer now putting needed and this is this is really fast It takes two minutes and once you do that you can start adding your content Like this. So you have the blog block on the left the site logo and the footer menu and the right hand side and the credit We have a custom block and This is fast Okay, so once you have the footer mini panel ready and you can start adding your Your content using the blocks UI And I'll show you the markup that's generated using the mini panel and this is this is what's the difference and I don't think you can you can see it to this Markup, but there's a lot of lot of markup and This is there for a reason like I said previous you use this markup the the panels Produce this markup so that you can style it you can use the styles and The the classes and style them This slightly better way. This is a one-step further. You can create your own layout Using for panels remember we use a custom Layout using the designer Function, but this another way you can create your own files It's it's using the mini panel layout interface And I'm sorry you use your own Layout and those are in code. Let me show you this example. So we are we are Describing a layout and If you want we can we can publish this Code in our site later on for your use. This is just an example So I am describing a Layout that has three reasons a footer left a footer right and credit and this is described in this PHP file and Here's the markup. This is the market that you want. We do not want a lot of classes Because we are gonna style it Like we need so I'm using ring if you look at it and for those who know bootstrap You'll you'll see that there's Bootstrap classes your container row Six column and six column and custom class and this would have been real difficult using the Default layout to designer and this is the markup we have We'll just insert the content using a PHP and This is the this is what you see begin we can style it so that it looks The footer left is actually on the left and footer right is actually in the right, but we're saving time here and You use you add the content like you did like you always do in using panels And here's the markup that is produced. So you see the markup is greatly reduced here So it does not it doesn't have though it does have some Classes that that is produced outside this this layout block, but still that the The market that is produced inside is much less now Here's the here's the way I do it if the footer is a really important reason. I tend to create its its own Reasons in the team info file. So the team info file is where you create your reasons for using the website and We use that to add content using the blocks UI and on the front end This is a part of the footer and We're just rendering using PHP The footer left footer right and the created reasons that we described in the the info file so This is this is one other way to do it and it produces a little less markup Okay The the good thing about using a custom template is Like I mentioned just so to an example it produces less markup and It doesn't rely on the panel's model So if you did not have panels module and if you're using panels module just for layout purposes and you do not have a complex functionality you can get rid of the panels module and just just using the Drupal reasons and adding content from the blocks UI so they'll have it you can get rid of one dependency You cut away one dependency. That's a good thing In short like less is always better You can do similar things in other places. You can have custom templates paces You can you can you can team Certain pages differently than other pages. You do not have to rely on The the pace manager module. I'll also sign ways give you examples here paces You can either custom template or you can use the pace manager module If you're you doing it the easy way you have to create different layouts for different paces Then you do the paces manager module By default blocks are rendered with their block IDs and some classes, you know You can If you if you do not like seeing those classes, you do not like the markup. You can always change that Overwrite the blocks and notes is really important a lot of content a lot of Paces that we have in Drupal different notes and you can you can Overwrite nodes you can you can theme a node Using custom templates or you can use a lot of different models You can use something called panorize panelizer and that lets you create a purely complex Layout and add different contents into the node page But you can always do it, you know From from from from a template file. You can also Overwrite fields so if you want a field to render in a certain way You have to override that field and there are a lot of modules that overwrite fields one example is The UT module You install that module and what it's good to do is get to either Render on the front end the in the preview image or Render the actual video embed the video in an iFrame. That's an example. That's what the module is doing right there In in in complex big websites, there could be situations when we have to you know Get the input in certain set of certain data and you have to output it in a different way using that data And you override that field You'd only be able to do that, you know using a custom template Or you can also you can also custom template forms By default what the form is rendering is much different than what Your design gives you then you have to override the B forms and you can also write the piece You're you can override a lot of things in Drupal. You can override a lot of modules If you want to really see you can go to the views module or you can go to the blocks module And you can see they have their own templates and you can copy them to your to your team and you can start over writing They have very good Documentation So for customizing Drupal what you need to learn is Use hooks, so hooks and Drupal provide functionality to you know access Drupal objects or contributed modules and I'm not really sure what excuse me, so For customizing Drupal the other things you can Customize in Drupal is you can optimize views you can you can set custom text formats, you know UT1 was one example, so it was a custom text format that I just own You know output in the front end you can also create your own types of custom text formats I've been done that several times in our projects, so our I'll give you one example in a certain project we have the the admin Insert a Marketo form ID, and we use that marketo form ID To render a marketo form on the front end, so this is one example of custom text format and For big websites you When they have those kind of functionalities you need to do that and the other thing you can do is customize your editor It's really important. It's it's what the admin uses all the time and you want to make that as Friendly as possible and we try To make it look as if you know like the front end I'll show you an example shortly It's it's one of the examples that I have so here are the examples of Three websites are not I'm not call them You know small medium or large websites there are a combination of all those three, but Let's get into it. So this is Interwest.com this is a Website that we built in I think 2011 2011 and This has a really nice layout a clean clean layout and We use the base manager module a lot and panels and views The way we did it was we use the base manager for layout and Because this had a fairly complex Layout in different pages Base manager allowed us to create those layout fast. Here's one example It's one of the content type for partners You can see a lot of things happening on this space. There's a lot of blocks on the left hand side on the bottom When you click on one of them you get More so the news the perspectives and on the top right you have The tabs going on and the left-hand side you have a menu. So this is a fairly complex layout and we used the base manager for doing this layout So the the challenges we faced was there was an absurd amount of markup And We didn't really have granular control over the layout You know, it's not really great the base manager is not really great the complex layout So that's that's one of the biggest challenges we faced but it did allow us to create those layout, which is nice Here's another example. It's it's it's one of the recent sites with it and It's for the glorious restaurant, which is really big in Texas. It has 15 locations it's a nice website and We use this module we have tried to use as less modules as possible on this website We used views we used the display suite and some other small modules The implementation was we used template files to override all nodes paces blocks waveforms etc and We use the display suite for the view modes In in triple the view modes are different Different modes of displaying the nodes you can have the full display mode You can have the teaser mode. You can have any other mode you want to describe And the views used a display suite to render notes So here's just I think I know this is really a granular, but you see a lot of what's happening here We have the overrides for blocks. We have overrides for nodes paces Sometimes even specific notes And on the right side you see we're using display suite for rendering in the views This is a part of the view We're not using any fields and the mark of that is produced was completely in control So so this is what we're aiming for and here's some some screenshots of the website and The designer that produced was quite happy that we were able to reproduce and we are happy to as developers with the level of control we had and sometimes when we had to You know style Particularly node differently than it was really easy and Forms and this is this is something that we're proud about Forms, you know, they can have insane layouts and it's really easy using Overrides Sam I just Sam I just want to let you know that we have ten minutes before we wrap up and That we want to take some questions and answers at the end So if you guys listening right now have any questions, please feel free to send me something in our question box And I'll make sure that we have time to do that. Thanks Okay, I'll just breeze through this last example Just want to show you This is a different this is the Displaced would be used for different view modes and Some custom layouts that we used The back end And how it renders on the front end And this is the customization we do to the editor and We try to reflect what the admin would see on the front ends. So This is what they see on the front end I'm really sorry. This is going real fast, but I wish we had more time and Different we use the panel is a model here for different Styles or different layouts for any content type. They had more than one content type Well in this model we used in this project we used panelizer because it lets lead let the client have more control They didn't have to go to the code But however the challenges was the panelizer produces a lot of markup Okay, this is the end of The webinar I would like to end this with the modern workflow we use In magic logics The tools that we use are get for any project that we use its person control We have dross That is the Drupal cell If if any of you have not used to yourself, please consider it. It's it's very handy and We have a local lamp stack And the editor of our choices sublime text. We also use not not bad plus plus and As developers our choice of module system well, we cannot do live without develop we use features and examples is really a good way of Getting into the Drupal API There are the models thin developer and backup and migrate And the modern workflow is once you have your site ready. You have set up the get You'd basically start by pulling up willing code from the repository You update your Drupal core and the modules You make whatever changes you need to make locally you test it and You approve it you push the code to the dev server And you test that also test and approve and finally once everything is tested You push the code to production. This is just one one of our Workflows There could be slight modification if you have more than one developer and you have a test server But for any modern workflow, I'd recommend at least using get at least using dross and At least us teasing Our developing server besides the production Cool. Well, thank you. Yeah, thanks guys. I guess we'll see if Lauren has any questions As you can see Sam will probably answer them. I'm kind of the color commentator. He's the play-by-play guy So You guys are really great. Thank you so much for your time. It looks like we don't have any questions. I I have a quick question Sam where would you recommend to follow up on? Kind of where you started as an introduction, but where where could you find some resources to really hone in on these skills? That's a good question. I had the same question myself a lot of times I basically started, you know in Drupal org itself But as a developer you have to, you know, make mistakes and Learn from your past you you get you get better as you do more projects, right and for actual, you know Real great content. I follow a lot of great blogs Out there a lot of companies doing Drupal and Planning to start out So you can look forward to getting great content from magic projects that I can say perfect and You know other than next steps. Is there anything really quickly you wanted to add to? to our participants on how to either explore any best tips or practices for You know Drupal Drupal sites and really how to get started with that I do have one one one thing I want to comment is we really need a community in Drupal We really need a lot of Web developing agencies to come out and you know if it's possible give out of your approach to Drupal development We can learn from each other. This is what magic logic does and we'll definitely be improving on this one But we'd really like to see how other agencies approach their development the choices of module I've read a lot of blogs and other companies and it has helped me And my developers, you know improve their skills So like we have You know Drupal showcases we could we could have you know Drupal, you know developer focused on so cases and real detailed case studies that would be really nice That's awesome. We did have a couple of questions come in really quick one from one of our Participants says I just ran spring the cm.com under the Built with comm site There's a lot of other stuff running. Do you have any comments on that? Could you repeat that, please? I think what you're sure it says I just ran spring cm.com Under the built with comm site a lot of other stuff running. Do you have any comments about that? Well, there's a lot of JavaScript running. I'll give you that. There's a lot of Marketo stuff happening Social and obviously Google analytics, I Mean, there's a lot of other modules that we're using But we are with I think I Didn't quite understand if you could you could say what other those other things are running. I could give a better answer Okay I'll let him respond and then I'll take another question really I think if you'd love to you know here feedback you can directly email us At info at magic logics.com all my personal Astimulcina at magic logics.com and I'd be really happy to respond great So just to make sure everyone heard it's on the slide actually right now You're more than welcome to email Sam at info at magic logics.com and I would just put a question for Sam in the Subject line and then I'm sure it could get forwarded to him Sam. I have one last question really quick Is there a public test server? That I can point an underdevelopment Drupal site Come again. Is there a public test server that someone can point an underdevelopment Drupal site? So like I'm assuming a staging site. Yes, I think you can use pantheon If you've heard about it, they let you you know developers Develop sites there for free That's that's one that's one easy one might want to look Okay, great So I think that covers our questions and answers and you know, like Sam said, please feel free to reach out to him at info at magic logics.com and I'm sure he's happy to follow up on some pretty basic questions To get those those answers for you guys So thank you so much Sam and Chris and magic logics, of course for your expertise and time And this really beautiful slide show so If you could move to the next slide, that would be great just a quick reminder for some of us that weren't on the Webinar in the beginning we have a couple of upcoming events for the Drupal Association We have our big at Drupal con in Europe Amsterdam coming up at the end of September the beginning of October and The the link is on the webinar slide deck right now We also have our Drupal global training days coming up You can go to that site and learn more about that program and then of course, you know Our next webinars are coming up as well next slide please and Just a reminder that we have Drupal Association Organization memberships and individual memberships you can find out more about Those listed below and of course these help fund more scholarship grants and support for our servers and our program So thank you everyone for joining us Just a reminder that I'll be uploading this and sending you guys an email for the recorded YouTube video and We look forward to hearing you and having you on our other calls. Thank you