Greetings, hello everyone. I'm here for the composer in Drupal, the past, the present, and the future. I'm Brian Aslet, Mixologic on Drupal.org. I work for the Drupal Association on the engineering team. My breadth of responsibilities include things like packages.drupal.org that composer relies on and some of the build tooling and the Drupal CI system for testing and many other things behind the scenes. I'm here with... I'm Greg Anderson. I'm a Pantheon engineer and I'm involved with projects such as Drush and the composer and core initiative. All right, so what are we covering today? We're going to talk about what the initiative, what we set out to do, and what we are. Cover why we're using composer. What is the, you know, why is Drupal find value in using composer and why are we switching off of what we were doing? What's the composer merge plugin and why it was problematic? Well, I feel like I'm reading some of these slides here. So I'm going to cover like how you should manage a composer managed site in the future now that we've got this all moved into core. And then what the path forward is for sites if you already have a site that is composer managed or a site that is managed using tar balls. And then what's it going to look like in Drupal 9? This is kind of a short list of people that have been involved in the initiative. Myself, Greg, mile 23 has been pretty instrumental in reviewing a lot of patches and providing a lot of patches. Theo Proxima's given us a lot of great reviews and Grasmash, he is the co-maintainer of the composer documentation on Drupal at Org. So he's got a real focus on making sure that what we build people are able to read about it and understand. And then we wouldn't be able to do most of any of this without Webflow, because most of the things that we have taken were proven proof of concepts in the community that we rolled into core. So he built most of those and has kind of paved the way all along the way. So big shout out to him. So the composer in core initiative, who are we, what are we doing? What is this specific initiative about? What's the scope? What were we trying to do? One of the main things was to make Drupal tar balls composer ready. That isn't the sole main thing. Oh, sorry, I'm getting ahead of myself. So our project page for the initiative is, you can find a set, this URL, or the short link up in the upper right hand corner will bring you to direct it to the initiative page, which is a good way to get to what we're working on. There's also a tag in the issue queue just composer initiative, but like two words. So if you find that tag, you'll be able to find all the issues that we're working on, all the things we're trying to do to move forward. So the goals of the composer initiative, we have always had composer as part of Drupal, but we've never had an official document and this is the way you need to do stuff. This is how to build a site using composer. This is the proper way. It's always been, well, you shouldn't be using composer because you're going to need to, however, there's no official way to do it. So it's always been in this weird nebulous space and we're like, we need to fix that. We need to make it so that this is the recommended way since it's the official way. Along the way, we realized that core development has often conflicted with the product itself because the Git repository was always a, like almost like an API, like where the files lived in the Git repository or where the files live on your web server. And those two things don't necessarily need to be tightly coupled like that. This allows us to be able to separate those two things and make core development not so dependent upon, breaking backwards compatibility by moving a file. And the tar balls, we wanted to make those composer ready because right now they're generated out of Git clone. And if we're changing the Git repo to not be the product, we can't use a Git clone anymore. So we wanted to make the tar ball itself composer ready so you can just download a tar ball and start from there. Still would probably prefer that you start with composer create project, but that's a part of that. So in order to do that, we had to stop using the Wikimedia merge plugin. We wanted to add the scaffolding plugin into core and add more composer built support to core, which is including building meta packages that provide safety mechanisms and allow people to have the same versions that core uses for development and things like that. I can interject here.  So if you do a PM update of your site to 880, then you're gonna be composer ready. All right, and of course, anywhere that we can improve upon the existing stuff that's in contrib or in the community space that as we move it into core we can make it even better than that was part of the goals. So why do we use composer? How many people are like very familiar with composer here?  How many of you are the same people? Anyways, oh, sorry. So there's a lot of really good reasons why core is adopted composer. I think the primary one is the fact that we can rely on third party modules or third party code that exists throughout the entire PHP ecosystem and didn't have to be contained with just what Drupal developers have built. And so that allowed core to adopt things like sympathy framework and use that to underpin a lot of what core was doing. And so as we moved along, we realized that this would be good for module maintainers as well. And this would be a great way for module developers to use composer to manage their site. And so we ended up with people who are contrib maintainers saying, oh, we also want to use composer. And then we had site builders that say, and we also want to use composer because a contrib module maintainer wants to be able to have the third party library access as well so they can say, I'm gonna make a contrib module but all it really is is a wrapper for this cool library that stashes things on S3 that somebody else has already built for. So that was the maintainer side of things. And then the site builder side of things is like, well, I wanna use composer to download that module and also get all of its dependencies and also get other Drupal module dependencies. So as you can see here, the old method of installing using tar ball and getting all its libraries, several steps. You have to use Drush to download it, use tar ball to get everything into place and interacting with the file system and hopefully your SSH and things back and forth that the permissions are right. But composer way is just composer require the module. And so that solves a lot of things there. The upgrade is also simplified. You know, we don't have to do any library manipulations just composer update. So symphony, I don't know why this is here. You actually already covered this. So the whole point is that Drupal 8800 wanted to adopt symphonies, symphonies already using composer. There's a whole pile of things with just one step. Drupal could bring all of that in and say, hey, we're gonna do everything for you. And it's gonna be all the same as it was with Drupal 7. But then we had the complication that contrib module said, well, wait, I wanna use this too. So that's where we started to get into this. Right, I'm giving the presentation but I'm moving the slides forward. That's the, so there's also a little bit of history. Like when 8800 came out, there was no packages.drupal.org. People were using composer manager to try and make that happen. Or then Webflow had built a community version of the packages for Drupal modules. And then we decided, well, we wanna be able to make semantic version happen on Drupal.org. So let's figure out a way to make those two things work. And so we built packages.drupal.org around the 8.3 cycle. And the people have been using that and ironing out kinks and that. And then now that we're at the 8.8 cycle, we're like, okay, we really need to fix how composers use for everybody because it's evident that it's growing. Everybody's using it and that's the kind of direction. All right, I'm gonna talk a little bit about the composer merge plugin and the upgrade process as it existed before. We still have the Wikimedia composer merge plugin as part of Drupal 880. And what the Wikimedia merge plugin did in the past is it replaced Drupal Core with the source code was actually inside of the Git repository. So composer merge says, take the contents of this composer JSON file at this path and include it in the root level composer JSON. So the result of this is that you've got your core directory and the things inside of the composer JSON in the core directory are included as part of your project but Drupal Core is not a real composer project. The composer APIs can't find it. It's an illusion maintained by the Wikimedia merge plugin. If you use composer require with the merge plugin it's gonna sort of work. Composer's gonna go ahead and put that module in the right place because we have the composer installers project which will relocate it. But there's still no relationship between the core folder and the rest of the project. If you run composer update when you're using the merge plugin and you're only updating a contrib module this is also going to work. Composer will find the address module, give you the new one, update any of the dependencies in the vendor directory. But if you run Drush PM update when you're using the merge plugin this has a problem because PM update is gonna mass replace your site including the vendor directory. So any of the dependencies that you pulled in from the address module will get overwritten by Drush. So this is historically why composer and Drupal didn't work well together. So in 8.7 you don't have a good way to upgrade by a composer and you didn't have a good way to upgrade by a Drush once you started trying to use composer dependencies. So we just sort of stuck and this is our motivation for revamping things for 8.8.0. So let's talk about what we've changed and what we're doing here. So the idea is that there is a composer template that all projects get started from. We've made a couple of them but we start with two, the legacy and the recommended template. And those templates are your starting point and you'll never need to upgrade those again. They're basically just a here I'm starting my project and it's the starting blocks and then from there you manage your site. And so we put everything, they'll have updates or anything will be changed in the core directory and we use the composer installers plugin alongside the new scaffold plugin to manage the file system layout. And then to build the new tar balls which are not quite working yet because I found that the Drupal org infrastructure has a lot of potential race conditions with different things acting at different times and we didn't want to package something that wasn't some tree split yet. But when it is all being built then it will be built using composer and we'll end up with tar balls that look exactly like they do now except they were built using composer instead of built using a good clone. So the template that I was talking about, the Drupal recommended project, it's going to give you a relocated dog root, right? So we want to have our web assets under our web folder and our vendor folder outside of that so that it's not accessible via the web server so that all of your code was in vendor. And this allows us to, well it's sort of a standard best practice that people have followed and that's what the Drupal composer, Drupal project layout would give you and most people have started from that standpoint or that starting point and move forward. So Drupal recommended project is really the non-opinionated replacement for Drupal composer, Drupal project. And what I mean by opinionated is it comes with things that you're obviously going to want but it's hard for us to roll them into core and say yes, you're just going to get Drosh, you're going to get console, you're going to get these other plugins. So those things are potentially going to be added to this suggests section so that people can see like, oh, I'm starting a Drupal site. These are all things I definitely need for when I'm starting. The legacy project on the other hand is people are still using little tar balls and people have built their sites with everything underneath one folder and we didn't want to force everyone to do a strange upgrade or be in a situation where they couldn't move forward because they didn't have a way to separate their web inventor. So that's what the legacy project template is for. Basically it's for building older tar balls so that we can make sure that people have parity between what they have now and what they'll have in the future. All right, so also in Drupal 8.8.0 we have improved the scaffold process. Now the Drupal scaffold composer plugin was introduced in the third party components and it's something that Drupal Composer Drupal project uses heavily in order to put things into the right place. The old way would cause a download to happen from Drupal.org for every single file on the system and this was really a heavy load for Drupal.org. So the new way to scaffold takes a different tact entirely. We now declare all of our scaffold files inside of Drupal Core in the composer JSON file. There's a little metadata section inside of the extras directory that I'll show you later. And profiles can add or override scaffolding files as can a hosting provider or the Drupal site itself. And the files are copied into place rather than having to download them every time which is going to make the load on Drupal.org a lot better when of course security cache comes out. So in order to enable scaffolding for a profile or some other module, you have to declare it inside of the root level composer JSON file inside of the allowed packages section. Now the reason we do this is it's a little bit surprising in terms of the standard composer module model to have a file copied from one location into your project route. You have to be expecting the project to do this in order for it to actually happen. You wouldn't want to just download some random module and have it change your project route. So by default, Drupal Core is allowed to do this but if you add a profile, you have to specifically whitelist it if you wanted to let it add additional files to your project route. Once a project is enabled, you can declare your scaffold files with a simple mapping. The key is the target location, where the file is going to be placed and the value is the path where it happens to be stored relative to the project that's declaring the scaffold files. So you can see also that we have template substitutions for the project route and the web route because you don't necessarily know at the time you're setting up your project whether the site that is going to be using your project it has a relocated document route or not. So those template substitutions will be replaced with the actual path to the target and everything will get dropped into the right location.  We now have the ability to append to the end of a scaffold file. So if you have a Drupal site and you have custom robot.txt contents that you would like added to your robots text, this has been a problem for Drupal since, well before Drupal 8, it's like, how do you manage your customizations to robot text without having it be overwritten every time you do an upgrade? And now we have a way to do that because the scaffold file has an append operation and you can say that for my robot.txt file I want to append from the contents of this other file that I provide and every single time Drupal is updated this append operation will happen again. So you cleanly get your additions added without having to hack core. You can also remove scaffold files. In this example, some people feel like you have the read me and the change log in your project route and people might find out what version of Drupal you're running which is a concern for people who don't update their sites very often. That's security theater because you can tell from a fingerprint what version you're running pretty easily. But there are other reasons you might want to get rid of these files if there's something you don't want. You can just override it, set it to false and the scaffold plugin will stop managing the file. So the meta packages we touched on this briefly earlier, core itself has a set of dependencies and when we are running core patches all the time we have a specific set of things that composer resolves to that we're testing against but what is the meta package? Okay, so those versions then we are extracting those into a composer meta package is really just a manifest of other packages you want downloaded and installed. And so rather than using a composer lock file which usually is something for a project but it's hard to ship cores lock file and have people rely on it we've actually created a meta package that says here's the exact versions of cores symphony dependencies that you should use if you want to have a tested set of dependencies. And so that's what those meta packages are. And so there's three of them. There's one that is the core basic dependencies there's the core dev dependencies and then there's the core ping dev dependencies and the difference between the two dev ones is one is exact versions and the other one is the actual version ranges but with the core recommended meta package one other advantage you get is that it locks all the dependencies at a specific point in time and so if say upstream twig pushes something out that is not API compatible that suddenly breaks Drupal you're shielded from that update you can keep updating and you're still stuck on that pinned to that one version of twig so that's one of the advantages of the meta packages and so but we have to generate these and make sure that they stay in sync with core and traditionally this has been again webflow building his own Drupal core strict package and Drupal dev dependencies packages and he had a Travis build that would kind of keep up you give or take an hour but sometimes we have a security release and we need that stuff right now and so we wanted to make sure that these meta packages were always up to date so they're actually in core and they're being generated by anytime someone is that the next slide? Yeah, so anytime someone modifies core's dependency tree like if they touch composer JSON or composer lock it's going to regenerate the meta packages and make changes to the core file system in core development so there's a post update hook that does that composer and so these are the three meta packages core recommended core dash dev and core dash dev pinned the latter two are in the process of being renamed to this that issue is almost RTVC not quite but yeah so this and this was all built out of another tool that webflow built called the Drupal package generator so yet another piece of the puzzle that we have pulled in from the community to make this possible. The upshot of this is that when you change composer JSON in a way that modifies the composer lock you'll find the meta package generator will run automatically and you'll have three well one to three extra files that are now modified in your source tree and you just include those in your patch and that way the meta packages are always completely up to date every SHA commit in the Drupal Drupal project is going to have the right meta package. So I'm going to back up real quick because after that gets committed then we have on Drupal.org our packaging systems watching the repo with Jenkins and then running a subtree split that takes every single thing that has a composer JSON in the core repository and creates components and creates the meta packages and also the template files all get subtree split out and so those all exist on packages and on GitHub. Anything with the composer JSON file in the Drupal Drupal repository is going to get sub-split out and it's going to appear on GitHub and in packages. Right, actually that's what the slide's about. Oh yeah, there you go. Yeah, so yeah it's really useful because ideally everything would be split up into just individual packages but Drupal traditionally has had things with projects that contain a bunch of modules and core which can take a whole bunch of functionality but this allows us to have a whole bunch of things in core using the model repo method so that we can change everything all at once but then they're managed as individual little things so end users only need bits and pieces of it. So, and then on the Drupal outer work side of things we are going to be changing our tarball generation script to use composer create project instead of get clone so that these will all be built the same way and using composer. All right, so the slide shows the general layout of the Drupal recommended project. In the traditional third party maintained components we had the aforementioned Drupal core strict and Drupal core dev dependencies and both of these projects in parallel had dependencies that were overlapping and it made it really difficult to run composer update. If you didn't do things exactly right at lockstep then composer would say I can't update this one because this one's in the way and I can't update this one because this one's in the way and you get this multi-page set of messages about dependency conflicts that's really hard to parse. So what we did instead in Drupal 8.8 is we made our meta package Drupal core recommended chain through to Drupal core. So if you use composer to update Drupal core recommended then you're going to get an update of Drupal core at the same time which makes it a lot easier on composer and easier on the user to figure out what's going on. The other change we did is Drupal core dev by default now does not pin to a specific version but instead has the same version constraint range as Drupal Drupal because we figured that this was more useful in terms of having the things you need in order to do your debugging without being hard pinned and it makes the upgrade easier. And this shows how Drupal core is recommended currently a self.version. So Drupal core recommended is going to have tags that parallel all of the Drupal versions and Drupal core is the same way. So self.version lines up but since we're generating this file we have the plan to just actually write the version of Drupal directly into the core recommended meta package. Work the same way though. And here's Drupal core dev. This shows you that it has not specific versions but version ranges and the behatminc and behatminc Selenium two drivers look complicated. These are workarounds for projects that have not have a stable release in three and a half years which causes us some problems but we're doing the best we can so that it doesn't cause problems for you. That's my fault. It's not your fault. One of them is. Wouldn't be anyone's fault if they actually had package stable releases every two years or something. But they don't. The other really neat thing is that we built this cool set of functions but it's gonna make it easier to manage your site but some people actually do get left behind. We're trying to do the Dries train tracks where your train just keeps going down the tracks and you don't have any difficulty in upgrading from one version to another but in practice sometimes even minor releases cause problems for specific sites that are pinned to specific modules that have problems upgrading due to API changes. So if you get stuck on Drupal 8.7 or even 8.6 we've got an out for you. You can still use the new stuff. You just use the same version of the scaffold tool from Drupal 8.8 but our core recommended and our core dev we have back produced those for all of the old versions of Drupal. So you can just include a version of Drupal core recommended for 8.7 or 8.6 and these older versions are kind of magic because instead of chaining directly to Drupal core there's another meta package called scaffold assets and this has all of the scaffold files that appear in Drupal core in version 8.8 but the old versions of Drupal didn't have the asset files so we've made an adapter package that's just silently behind the scenes inserted into your flow so that you can use the new stuff with the old versions of Drupal and this is just what it looks like. It looks exactly the same as Drupal core. It has a composer Jason and it has the file mappings that declare the normal Drupal scaffold files and says where they go in alignment with what Drupal 8.8 is doing. We also have Drupal core dev pin and this is similar to Drupal core strict in that it pins to very exact versions of each dev dependency and we really don't think that any site is going to need this so we're discouraging people from using it. It's there if you somehow discover that you have a need to pin to an exact version of the dependencies that Drupal is using but really we're only intending to use this for the download archived tar generation because we want to have a very high fidelity process to create a tar ball that's exactly the same as what you get from the Drupal Drupal repository. The only tar balls that use this now are current tar balls that you download from Drupal or do not contain the dev dependencies unless it's an actual development version of core than the development things are there so that's basically what this is for. But if you do run Composer install and pull the development dependencies in then you'll get them in the exact same version as you would if you had the Git core. Oh, I am doing this part too. Back forward for existing sites, how do you upgrade? So as I mentioned before, if you run Drift PM update and your site goes to 880 then Drupal core is automatically Composer ready. You can start Composer requiring if you've never used any Contrib modules before then you're already good to go. But if you are using Contrib modules you somehow have to get that list of modules you're using into your Composer JSON file. It is on our roadmap to provide an official Drupal org provided tool for doing this conversion. It's not ready yet but there is a community project Grasmash Composerized Drupal and that will take an existing tar ball based Drupal site and it will convert it to the community Drupal Composer Drupal project with the relocated document route and all of the Composer things involved. So our recommendation for today if you want to get onto a Drupal 880 site managed by Composer and you have a site that's not managed by Composer then you should run this tool and go to the community based version and then you should convert from the Drupal Composer Drupal project layout into the Drupal core. And so how you do that is pretty easy. There are a number of files or projects that the community provides and uses and all you need to do is map those to the new names that we're using in Drupal core. So we're going to change from Drupal Composer Drupal Scapple into Drupal core Composer Scapple and similarly Drupal core becomes Drupal core recommended and you can just remove the Drupal core strict and flip over from using Drupal core Required Dev to Drupal core dev and that's most of it. Then also later on in your Composer JSON file in the Drupal Scapple section, the old version of Drupal Scapple has an initial configuration tag that you don't need anymore so you can optionally just remove it and then the other thing you need to do is set up a locations element that declares where your web route goes and if you want your web route to go somewhere else like if you need doc route for some specific hosting provider then you can change that in your Composer JSON and you don't have to make send links to do any other funny fanciness. So do you have to commit to upgrading or if you're already running Drupal Composer Drupal project you can keep doing that until Drupal 9 and Webflow has already declared that he's not interested in making Drupal 9 versions of these packages so you're going to be obligated to switch at Drupal 9 time. We hope that people will switch before Drupal 9 because as I mentioned, it's a big load on Drupal Org whenever a core release comes out and all of these Drupal Scappals start downloading these files all individually and it's pretty easy to upgrade so hopefully this will happen. This is your section, right? Sure. Yeah, so in Drupal 9, kind of a question of what's the goal, what do we help them do? First of all, right now we've kept all of the kept all the scaffold files, starting with the bottom bullet here, the scaffold files exist in both places because we weren't sure if that was going to break any backwards compatibility if people were expecting file to be there in the tarball in the Git repo. They're there, but they also are duplicated in a scaffold files directory and core. So we have a test to make sure that people don't modify one and not the other. So basically we've literally got copies of stuff in core that are duplicated, so they need to be duplicated. In nine, we've got to remove the original one so that all that is left when you clone a Git repo from core they'll be just a core directory and there won't be anything else or well a composer directory too. Now, the root cusp, not sure if this one is actually the first one. Oh, okay, sorry. So when you clone Drupal core, you're getting a development version of core. You're getting the version that you should be using for writing patches to core, working on contrib modules, doing actual development, but you should not be using that for a site. And so there's stuff in the root composer JSON that's customized for core development and the expectation is that you're not gonna be operating that in place. You're not going to be doing normal site management stuff with a Git clone. You should always be using a composer project to be doing that or a tarball. The reason we do this is like imagine at some point someone wants to change the way scaffolding works and they have to change the way scaffolding works. At the same time, they're changing the files that are being scaffolded. And this allows you to do one patch that modifies the scaffold tool and also modifies Drupal and then they'll be tested by the test bot together. The core composer scaffold plugin is included as a path repository so that when you do start with your Git clone and there's only a core directory and then you do a composer install, it'll find that plugin and then run it because it sees it in that path repo. So it acts as if it were a package that we're already downloading for you. So that's what causes it to kind of unfold all the files into place. Then yeah, there's no vendor directory and Git of course, like so when the composer installed that continues to work. And then like I mentioned before we're gonna be removing all of those scaffold files. Now, there's sort of a future that we talked about for Drupal 9 into Drupal 10 that we were like, well how far down the composer rabbit hole can we go? And a lot of that depends upon how much better we can make it perform. And so we've got like several ideas about I'm sure a lot of you that have been using Composer have spent a lot of time waiting on Composer and there's a lot of reasons for that and I've seen the reasons and I think we don't need any of them. So I think we've got a lot of paths forward to making Composer run not in minutes and not use a gigabyte and a half of memory but to be able to reduce it down to where it's a very quick, very useful thing but we still have some experimentation to do. But once it's there, then we can do stuff like use Composer to power automatic updates and use Composer to manage extensions in general. So like the update manager that's the GUI built into core that would be nice for people to someday be able to install modules that have Composer requirements via that interface. And so eventually it could be where Drupal's entire dependency management layer is replaced with Composer and we don't have to maintain that code anymore. We're completely off the island for things we're doing there. So if you're interested in this come and find us in the spring room we don't have a large enough margin to talk about Composer optimizations here but we've really got some good ideas and I think it's gonna work out. So like in 9.x, the Composer Wikimedia Merge plugin is still sitting there. So there's some people may have maybe are relying on that to do custom modules to have it included in their route. You'll probably need to add that back in. We just want to make sure that it wasn't definitely part of core. So if you need it, the Drupal core is no longer in there because it's a path repository, right? Yeah, so whenever you check out core it's using the version that you've checked out looking at the path repository to figure out which version of core you have. So it's this kind of circular thing with the path repos. And of course there's the scaffold plugin and currently there's another path repo for vendor hardening that makes sure that the vendor directory doesn't have any test files or other things that we don't want in there. So that's sort of a throwback to everything goes under one doc route which you know, if we can get rid of that idea if we can get everybody on board with using a web route and a vendor directory separate from each other then we may be able to get rid of that security issue because. Yeah, so it's vendor hardening only exists if you're using the legacy project. If you use the recommended project with the recommended doc route it's not even in there. And we can go on to questions but first we'll say that there are going to be contribution opportunities. The metric contribution is going to be at 9 a.m. in foyer two. It's going to be a first time contributors workshop at nine o'clock in the Diamond Lounge and general contribution is going to be in foyer two. Hashtag Drupal Contributions and also please provide feedback for the server, the session. Also in the upper right hand corner again we have the short URL to the project page for the composer initiative. If you want to get more involved with what we are doing. Now you can open for questions. Yeah, I have a question there. And move the site support. How have you had that in thought? Kind of how to handle that when you have different several sites using the same code base but they might want to have different version of modules on the sites folders. Like composer optimizations I think that our margin is too small to talk about multi-site with composer. Composer itself does not support the concept of multi-site very well at all. It would be possible to shoehorn the concept of multi-site into composer and there's a big issue in core that I commented on and like if I were to write it this is how I would write it but I have no interest in writing this because it's alien to composer. But if you're interested in that you can come down to the square room area so we can talk about it. Is there any reason composer patches wouldn't work with this? Composer patches does work with this and it's going to be one of our sections we suggested it, it's not included right it's just suggested. Suggested? Yeah. And it's not something we're pulling into core because the community project works exactly the same way that we would make it work so we don't see any motivation for changing it at all right now. You mentioned the part about going from the Drupal Composer project to the new way and it's by replacing some of the packages. How do you do it? Do you do composer remove any composer goodbye or you change the composer JSON and then update and just log? Yeah my suggestion on that slide was to just change your composer JSON and then run update but if you remember the Dries note from yesterday we got together a list of composer commands that you can run three in a row and Ryan mentioned earlier that we're renaming the dev dependencies to core dev instead and so that will allow us to use a wild card and then we should be able to get an upgrade from Drupal 8 to Drupal 9 in a single composer line. But for now just change the composer JSON. Yeah. Well I think we're in our time box with questions and everything about that. Cool. Well hey. Trim if you want to play the composer. Yeah.


Hi everyone, Sean with jazzy's case breaks calm here doing 20 20 penini origins football eight box half case break pick your team number nine where Number nine and number ten both from a fresh case So second half of this from the same case guys your teams all teams available Just some details on here all card ship We did a couple random number blocks, so we'll go ahead and show that right now Here's our case. We're gonna cut that open and figure out which eight boxes We're doing now in which eight boxes. We're gonna save or pick your team number ten You can see on here. There's two different random number blocks So Falcons, there's one that's includes the Miami Dolphins, Kansas City Chiefs Detroit Lions, etc And one that does the Packers Eagles Cowboys Colts Raiders and a bunch of other teams, so Here is the Dolphins Kansas City Chiefs Lions randomizer as far as random number block and here is the Packers Eagles Cowboys and other teams Random number block as well, so we'll be keeping track of those there are in some cases for those random number blocks There are unnumbered cards that can be either relics autos or just base cards We will take all unnumbered cards for all both of those random number blocks and randomize them to one person in The random number block per group So we will be doing that at the end as well, so let's open up this case So we're gonna get these out. We're gonna go left side right side There you go. So two stacks of You split it like this left side It's gonna be dice roll one two or three right side. It's gonna be a dice roll four five or six. Here's our lucky dice Good luck everybody And it's a two So we're with the left side right side will be for pick your team 10 Not a right PYT Cool. Nope not random PYT 10 PYT 10 So those will be in the store and here's the ones we're doing right now Good luck everybody. I apologize for that guys Pack slipped out. I'll check everything on that box. Make sure it's all good though Looking to trade for a two RPA Is it one booklet per case? I? Did not know that so here's our first four start right here So first off drew lock 120 out of 175 Going to the Denver Broncos and Derek Mortensen Raheem Moster 287 out of 299 For the San Francisco 49ers and Lee Cheesman Ryan Fitzpatrick base going to the Dolphins Which is random number block? It's a little part of the unnumbered random number block Amari Cooper for the Dallas Cowboys Also random number block, but the Green Bay random number block unnumbered. So that'll be part of that unnumbered card randomizer and Indianapolis Colts origins relic Jonathan Taylor 62 out of 99 For the Colts and random number block Green Bay random number block. She's right here spot two That is Patrick Keseek Last spot mojo on card auto For the Jacksonville Jaguars 28 out of 99 Jacksonville Jaguars Green Bay random number block spot eight Derek Mortensen very good card and Rookie patch auto 48 out of 99 Lynn Bowden, Jr For the Las Vegas Raiders random number block part of the Green Bay random number block That's going to spot eight as well and Derek Mortensen Well, since we all saw that that's the booklet. We'll skip that stack for now Sony Michelle 109 out of 175 For the New England Patriots random number block for the Miami Dolphins random number block spot nine is Johnny Cannon Jimmy Garoppolo 179 of 299 for the 49ers. That's straight up to Lee Cheesman Adam Thielen base for the Vikings random number lock packers. So that'll be part of the unnumbered Or an unnumbered random number block or randomizer Judas Ms. Schuster for the Steelers Michael Mary two color relic five out of 49 Anthony McFarlane, Jr For the Steelers and Michael Mary Very nice Joshua Kelly Origins rookie out of for the Los Angeles Chargers and Sean Mattick Congrats Sean and Whoo, we were just talking about him Justin Herbert Four color patch and out of Los Angeles Chargers Sean Mattick Nice Chargers box there Congrats man Austin Hooper to 175 For the Cleveland Browns random number block part of the Dolphins random number block spot six is Sean Mattick Drew lock 48 of 299 Denver Broncos straight up to Derrick Mortensen Lavey on Bell for the New York Jets and Ian Hunt and Marlon Mack from Indianapolis Colts part of the Green Bay Packers random number block also part of the unnumbered randomizer JK Dobbins three color patch to 49 for the Baltimore Ravens Part of the Packers random number block spot one Patrick Ketzyke Anthony McFarlane, Jr. Rookie Auto Pittsburgh Steelers Michael Mary Jonathan Taylor two color patch and out of For the Indianapolis Colts Green Bay Packer random number block. This one is unnumbered So that's part of the unnumbered random number the randomizer at the end Patrick Mahomes 129 of 299 going to the Chiefs Dolphins random number block spot nine Johnny Cannon JJ Watt 262 out of 299 for the Houston Texans Rob Delabovey Stefan Diggs for the Bills Packers random number lock Unnumbered and Tyrod Taylor for the Chargers going to Sean Maddock Tyler Johnson relic 50 out of 99 For the Tampa Bay Buccaneers part of the Dolphins random number block going to spot zero Johnny Cannon Which one bogey? I don't think I've hit you yet. I Don't think I've hit a five Darrington Evans three color patch and auto Tennessee Titans Eric Ainge Non-numbered, but obviously bought straight up and we did get a booklet Las Vegas Raiders part of the random number block for the Green Bay Packers random number block Henry rugs Three color patch and auto. This is part of the Packers random number block and it's 26 out of 49 spot six Rick Serrano Congrats Rick very nice Booklet RPA there for you Congrats unfortunately now It was very nice. That's why I had to make sure that we got the numbering in the in the video So there wasn't any questions second half guys Ryan, I you know I will do anything I can man. I'd like to get you all I don't think so. I think it's short. I think the I think the booklet box is short one One base card so it ends up weighing exactly the same. I don't remember I Mean it looked thicker, but like obviously once you take the thing out, but it's not me Ryan Trust me. I Have nothing to do with the random riser or what's in here. Unfortunately. I'm just a guy that clicks the buttons opens the packs and Says people's names Whether it's the player or the person that's now getting that player. What's up Rockstar this one? No This was the only case there was Ryan So no pick in case when there's only one and a lot of the stuff recently. It's been only one case And then like we've been ordering multiple after we like do so I think like Even like the contenders optic stuff I think we only had the one case then we ordered another one once we ran it sold out of those other two box breaks Cool. Good luck everybody Starting off with Jirik stittum 70 out of 299 For the New England Patriots random number block for the Dolphins spot zero is Johnny Cannon a Mari Cooper 95 out of 99 for the Cowboys is the Packers Random number block spot five going to Patrick Fernando Lamar Jackson base for the Ravens part of the Packers random number block unnumbered randomizer and Matthew Stafford for the Lions and the Dolphins random block non-numbered nice four-color patch here 13 out of 49 for the Chargers and Sean Mattick very nice Is this it? This is a case it right five out of 25 Clyde Edwards E-Lair For the Kansas City Chiefs, that is the Dolphins random number block Five out of 25 going to spot five Oliver Soria Congrats Oliver And LaMichele Pirine three-color patch and auto to 75 For the New York Jets Ian Hunt last spot mojo Austin Eckler 42 out of 299 going to the Chargers Sean Mattick Leonard Fordette 78 out of 79 For the Jacksonville Jaguars, which is part of the Green Bay and spot eight Derek Mortensen DJ shark jr. Unnumbered for that same random number block and Todd girly for the Falcons part of the Dolphins random Number block and unnumbered Of course, Oliver congrats man Chase Young Relic 192 out of 199 Washington football team going to the Dolphins random number block spot two And Travis Gomez Very nice Jalen Hertz auto for the Philadelphia Eagles part of the Green Bay Packers random number block And this is unnumbered so You know what that means this is part of the unnumbered randomizer at the end guys Anthony McFarland two-color patch and auto For the Pittsburgh Steelers and Michael Mary Congrats Michael Shaquille Barrett 167 out of 175 Tampa Bay Buccaneers part of the Dolphins random number block spot seven rich ferratus Josh Jacobs 32 out of 99 for the Raiders part of the Packers random number block spot two Patrick get seek Last spot mojo Carson Wentz for the Eagles Packers random number block unnumbered and Stefan Gilmore For the Patriots Dolphins random number block unnumbered Daniel Jones gold hometown roots auto or relic two colors New York Giants Madison Abeta Congrats Madison numbered four out of 10 Brian Edwards for the Raiders random number block Packers unnumbered Also part of the unnumbered randomizer at the end Four-color patch auto Gabriel Davis Buffalo Bills Also part of the Green Bay random number block also unnumbered. So that'll also be part of the randomizer at the end That's starting to stack up with some autos guys Kyler Murray 50 out of 299 for the Cardinals Madison Abeta Teddy Bridgewater 278 out of 299 for the Carolina Panthers and Madison Abeta Jared Goff for the Rams part of the Dolphins random number block unnumbered randomizer and carry on Johnson for the Detroit Lions Dolphins random number block unnumbered Yeah, it's one of the shoulder patches pat Relic 17 out of 75 for the Green Bay Packers A.J. Dillon Obviously Green Bay random number block spot seven Ryan Harold La Michael P. Ryan Origins auto 16 out of 49 for the New York Jets and Ian Hunt He'll have some increased production And last but not least cam acres rookie patch auto 78 out of 99 for the Los Angeles Rams part of the Dolphins random number block spot eight rich for autos There you go guys. The only randomizers we have left are the unnumbered randomizers for the Green Bay Packers random number block and the Dolphins random number block. So let's go back over here Let me set this up So for the Dolphins random number block, we're going to use the original list and for the Packers random number lock when you use that original list as well and dice roll To randomize both lists same dice roll for both One and one two times. So this is going to be quick This is for the Dolphins random number block all unnumbered random cards. So one and two Rich for autos you're going to get all unnumbered cards Which I don't think in this case were any autos for the Dolphins But it was obviously a lot of bass So carry on Johnson, Jared Goff, Stefan Gilmore, Todd Gurley, Matthew Stafford and Ryan Fitzpatrick If there were any other ones that were unnumbered that were missed in that obviously they will Be going to you anyways once it gets sorted and back to the randomizer two times on the Green Bay Packers list one And two congratulations to Thomas Maki you'll be getting A whole bunch of stuff actually including A couple autos and a couple one patch auto as well So let's go through that for you Thomas So your base Carson Wentz, DJ Chart, Lamar Jackson, Stefan Diggs, Marlon Mack, Adam Thielen and Mari Cooper as well as Rookie patch auto Jonathan Taylor unnumbered Jaylin Hertz on card rookie auto Gabriel Davis rookie patch auto and Brian Edwards on card rookie auto all unnumbered Congratulations, Thomas Those are all going to you plus whatever else you got in the random number block and guys That was 2020 Panini Origins football eight box half case break pick your team number nine I'm Sean jaspyscasebreaks.com Thanks for hanging out and we'll see you next time


Ideally, as you started this process, you had some initial curiosity to kind of continue to further your interest in going into medicine. And ideally, as you go through the process, that reason continues to grow through further experiences. So for me, my reason to going into medicine was that I could see that myself helping a patient not only helped them, but as soon as they left the hospital or the clinic, as they started to feel better, they could start impacting everybody else in their life. Now, this was kind of an initial why, but as I had more and more experiences that kind of backed this up, my motivation stayed and maintained. Now, does that mean that I'm never demotivated on the medical journey? Absolutely not. There's days where I just don't want to be in the hospital. I just want to go home, sleep, or make some YouTube videos. And honestly, there's nothing wrong with having days where you're just not feeling in the moment. But there's this concept that was made really famous by Steve Jobs, is that if you wake up day in and day out, not enjoying what you're about to do that day, then something is wrong and you should make a change. One of the first things that you can do is go ahead and take a step back. Ask yourself, what was step one that really led me down this path? And what have been experiences that have kept me on that path?


Hi, good morning and welcome to today's products and focus. So we had a little bit of a late sell-off there in the US markets As more economic data coming out of the Eurozone was was it was a little bit flat and obviously ongoing issues with with China and Everything else. So a lot of volatility yesterday. We were a higher cap of the 21 period SMA Well of the session those kind of a doji formation But already this morning we began to to move a little bit on the downside as well I'm looking at some of the FX periods You can see the dollar is losing a little bit of momentum as well against the the sterling Euro and the Japanese yen We had the Fed member flock art last night saying that people should concentrate on the strength of the US economy and stop worrying so much about China But I think people are just a little bit apprehensive so many Different struggles going on right now in different parts of the world That's having a bit of a knock-on effect. It's worth noting as well that News on that a lot of news wires is mooring in relation to Brazil the world's seventh biggest economy Their currency is a slump the lowest ever Against the US dollar as they're fighting big corruption probes everything else and when you consider what's happening with Volkswagen loads of car Manufacturers also getting hurt and looking Japan 2 to 5. It's also a little bit lower Obviously big exposure to to the industry over in Japan as many other firms out there are now scrambling to get a handle on what other Areas that might be exposed to because if it was a VW it might be other firms as well But a lot of other global car firms are already down Though obviously not as far down as Volkswagen had a bit of 5% bounce yesterday, but still down Pretty much 30% from the height of that Scandal that that came out earlier on this week. So that's where we are with the US 13 Moving on to the UK 100 Actually a much better Chart than the US 30 had yesterday. We actually quite a strong reversal higher But you can see that it got capped by that potential resistance at 6073 in fact to hit bang on then to Stop shine and we're a little bit in the lower side right now Commodity prices some of them are ticking up You've got gold probably more safe haven buying than anything else That's moving the right direction for us crude has reversed course even though inventories were better than were lower than what was expected global growth concerns still impacting that but 6073 will be the impact. I'll be the potential resistance on the UK 100 and Obviously it's got quite a big UK 100's got quite a big exposure to oil and miners as well So there must be a little bit of a rebound and copper prices as well. So having a look there at Japan 225 17,500 is potential support we bounce off there a number of times before we might get back down there again I almost got a negative cross on the MACD So having looked then at dollar yen Dullion I just actually pretty much doing nothing just oscillating around that 21 period SMA I'm not gonna waste that much time on there Looking at West Texas crude, you can see the the negative bearish engulfing pattern we had yesterday as I said the inventory data was lower than expected, which should have been crude positive But there's a much bigger supply of gasoline distillate storage in the US as well and just the general Maldese round China slow down You know, we had the PMI yesterday, which was worse than expected So $42 the next potential support with 45 85 still being potential resistance So even as flock hearts come out a fed member flock heart saying, oh, you know, strength to use economies fantastic blah blah It's not really kind of dampening the spirits of gold or people's expectations at a December rate hike Probably just isn't gonna happen Especially when you've got the world economy in the toilet the way that it is right now 1137 is potential resistance. We're pretty much on there just now But it's probably the tips of these candles here. You're probably a little bit higher 1140 This potential support was all the way back Slash resistance as all the way back in November And we're at the top end of our range this morning on the day charge We're literally Freaking fresh ground as we're looking at this chart. So gold could be interesting today And we do have us durable goods to consider unemployment claims. We've already had some German IFO data So we've had the the CCI come on a little bit worse than expected You would thought that would pressure the euro a little bit, but the dollar seems to be in the weakening at 9 a.m. UK time We've still got businesses expectations index to come out of Germany. So looking at your dollar. We had a modest bounce of one spot 11 Nothing really has changed here though. We're trading in between the two moving averages other technicals are relatively flat We'll see how things go with that that German data and durable goods and the employment data if you're your dollar trader That's worth checking out Cable has not been having that much love. You can see it's just been getting smashed the last couple days. It's not so good One spot 51 85 is a potential support. We're getting quite close to there now We're in positive territory right now, but enter a day charts. It looks anemic Negative cost over there on the Mac D And but yeah, I think a lot people just waiting for 151 85 to decide what to do next So this is the data that's due out today fast forward tomorrow I think tomorrow we've actually got a speech by Janet Yellen as well Which is as worth being aware of but because us GDP at 130 and that's going to be a big one to To think about so guys as ever keep you on the chart forum Megan says probably going forward and join me again tomorrow to find out what happened next


Hello artistic visitors and subscribers. I'm artist Susan Jenkins and welcome to my YouTube channel. I call Monet Cafe. Today's lesson will be on painting dark to light. I'm calling it darkness to light for some symbolic reasons too. Many of you know I'm with my mom right now during her cancer treatments and I truly believe we are moving from darkness to light. The album here I thought was interesting. It's called The Healing and I just thought the music was beautiful. I often add verses to my paintings and this one was just perfect. A rise shine for your light has come. Alright let's learn how to paint these pastel techniques. For this painting I'm using a piece of Sennelier pastel card. It's called La Carte pastel card and it comes in these pads which I love. Different size pads. This one I think is my smaller one. They do make a larger one and within the pad there are multiple colors to choose from. Just so you know pastel card is pretty coarse and so I love it because it helps to keep me very loose and impressionistic. However keep in mind that it is not a water friendly surface so I never add water to this. Now I've chosen actually my mom I allowed her to pick a reference photo out of many that I have. She chose this and I'm just showing you here how I have a little technique where I can make my painting equal proportions to my reference photo. Here are the pastels I've chosen. Just some nice bright especially some reds. I've got a good combination of cooler and warmer reds for those poppies which I'll talk about more as I paint. I wanted to quickly mention here if you're interested in finding more of my videos this is just go to my videos on my channel and you see I have I have close to 170 videos on pastel painting but if you look specifically in this little area I'm pointing out here called playlists. If you click that that's where I have organized my videos by different topics for example you can see the first one's drawing lessons on a budget color value and composition. Now I'm going to focus on this one here because if you want to know more about warm versus cool colors or just a little bit more about the color wheel this is the place you should go. That's a little ad playing on the side but over to the right-hand side you'll see all of the lessons that I've put in this playlist. That one right there soft pastel organization and color lesson is a good one and I'm scrolling down to another one right there. What's the difference between warm versus cool colors? So that's just a quick thing I wanted to show you guys so you can know how to navigate and perhaps find more videos of things that you're looking to learn. Okay back to the lesson. Now once again the topic or focus of this particular tutorial well I'll talk about a lot of things but the focus is mostly about painting dark to light. It was interesting because during this well let me add right here I'm just using a actually a very small new pastel that is in you pastel it's a brand of pastel made by Prismacolor I think it's Prismacolor that is a little bit harder. They're really great for sketching in your underpainting. Again in this case I am using all pastels rather than any kind of wet medium for an underpainting which is something I do a lot if you've seen my past videos so I always give you lots of options of how to paint. So this one is just using pastels and again focusing on dark to light. That's how we work with pastels I'll be talking about that more but back to my point my parents were literally at one point at the beginning phases here sitting right behind me on a sofa that's right behind me in their basement while I'm there with them during my mom's treatments and I think we're all enjoying being together and I do think they really loved watching my creative process here. They've known I've been artistic since a child and I think it was kind of neat for them to watch me paint as an adult and it was just a beautiful moment together but I noticed that my mom and my dad both mentioned about the fact that I start very dark. You'll see as I'm doing this underpainting I actually I got a darker pastel now and the darkest dark if you look in the reference photo above the darkest dark is that tree. Now that's an obvious dark but my mom was kind of wondering why you'll see in a minute how I go in and I add a darker color with different pressure. I don't go as dark as this tree but over a lot of the painting she was like I'm just fascinated that you put that dark color down first because it's our tendency especially if you're a new artist to look at those greens in the field for example and just put green down with nothing underneath it. Now you see what I'm doing here I'm adding that dark and I'm actually making somewhat of a subtle trail the reason I'm doing this most of it will get covered up but the little bit of darkness does kind of peek through and it gives a subtle lead into the painting that just leads your eye in and back it makes a much more pleasing composition than if I just had a flat surface of poppies right there on the front so that's why I put that down. Now I am adding lighter pressure but believe it or not even though those mountains look like a kind of a medium value blue it actually is better to go ahead and put some dark down first before you add that color and you'll see I even put more dark down later. Now I'm kind of playing with colors in this tree I've realized that blue I had was a little bit too light but it's going to give a lot more interest if I use multiple darks in in my dark areas it gives because that's how it really works in life things aren't just one flat color our brains often perceive that but there's lots of colors playing with each other in nature for example like that tree photography often help or causes us unfortunately to paint very flat colors but in life our real eyes are always the best that's why plein air painting painting on location is always best because your eyes can really see the color that's there but again look at how I'm taking this mountain and right now what you see that I've painted is a lot darker than the mountain in the reference photo right can you see that and the reason is because when we add a dark base it gives the light something to contrast the lighter values or the medium values and you're going to basically have a much richer and fuller end result than if you just use the one color or a couple of colors so I know it's often confusing as why we put dark down first and you don't always have to put dark down first I mean there are different ways this can be done but it is a good general rule in pastels to work dark to light and because it's really hard to get those darks back again if you add them at the end it's just so much better to add your lightest lights on top now the color that I'm using here is more of an earthy color what does grass grow on dirt right the earth is what produces the grasses and the trees and everything so we do have some kind of a rich usually earthy tone underneath those grasses and again that's in art that is actually a compliment or complimentary color to green reds and oranges and yellows that side of the color wheel color wheel is a compliment to green so they just really work well together now you can see I added that blue little bit of a lighter blue on top of the darker now this is what I call a color note I'm reminding myself that I want to make a little bit of distant mountains or trees whatever those are in the distance that I had that little teal color a little bit too light but later I darken it up now I want some fun and variety of color in my sky so I'm not just going to do blue if you look at the reference photo you could pick like a medium value blue and just paint the sky blue and that would result in a sky that's very flat and kind of boring so I like to sometimes notice the first color put down was a purple and now I've got more of a blue color and I'm just kind of taking my blue there I can see in the photo a little bit more than you can see here in this video where there is some lighter and darker in the sky typically the lighter values of the sky are towards the horizon or like behind the trees but not up in the heavens usually it gets darker up as you go up into the sky but just keep that as a general rule of thumb and just something to keep in mind so now you can see here how I have used this color that I'm using here is a lighter value but it's also a little bit more in the purple family or the warmer blue you might call it and if you have a problem with color temperature or just you still confuses you I do have quite a few videos where I talk about the color wheel and color temperature and what it means when you talk about a cool green versus a warm green cool blue warm blue cool red warm red you think how can that be but hopefully that video will help you out a few I do have let me add here notice how I'm adding a little bit of a teal okay that would be a warmer blue okay on top of that mountain or tree base that I have there and these things can be subtle again it looks like it's a mountain in the reference photo but by the end of the painting you're not really sure are these mountains are they trees but that's actually good because that's not the central focus of the painting you really want it to be those poppies and then for it to draw your eye in around the painting and now I'm adding a little bit more of that teal to the landscape in the back and the reason I'm doing that is because in the distance colors cool off in temperature they're not as warm so that dirt that I added in the front I don't really need that warm dirt in the back there so I'm giving it more of a teal color and I will add some a little bit of greens lighter value greens in the distance but they'll not be on top of a warm color that may sound like a lot but it does get better the more you do this the better it gets so as I paint here just a little bit more a couple more minutes you'll see this is pretty much the foundation for the painting I've got in the basic big shapes you know I'm always talking about work big to small less detail to more detail also notice too like that mountain in the distance and even that path nothing has a hard or a sharp edge remember we're not drawing we're painting and that's something that I believe I have another video on it with lost edges it's called things if people often ask how do I get a more painterly look well lost edges is a way to do that to where there's no direct line dividing things it's more of an edge that is an illusion of an edge between value and between color so it's not all that hard some of these things sound complicated but they're they're really the more you do it the easier they get now is the point where I do have my base and now I'm starting to add some of the lighter values on top of the darker values know how I mentioned before I put a more of a teal dirt color in the background because it's far away colors cool off in the distance it gives that illusion of those grasses being further away whereas the greens that I'm now going to add on top of the dirt color things get warmer as they come to the foreground I'm adding my greens on top of that warmer dirt color and also as I progress in this video you'll see I kind of keep my dark area almost like there's a shadow underneath that tree I know it doesn't look that way in the photo but I make my darker area down towards the lower left I keep most of my values darker in that area and then gradually get them lighter I keep them darker and cooler down towards the bottom left I just decided I wanted that to be more like a shadow and coolness and that's kind of the entry point that I have in my mind imagination of someone coming into the painting at about that point so I'm going to speed this up just a bit but stay tuned because I've got a couple of other points I've I've gotten pretty much you know my point across about working dark to light which is the focus of this video but I do have a couple of other little things I want to point out so enjoy the music as I speed this up a bit and stay tuned for some more commentary at this point you can see that I've pretty much got my not just my darks and general base or foundation I've added a little more color trying to get even this is kind of I would call it my second layer foundation and on top of these colors is when I'm going to start adding the flowers I'm putting the flowers on more towards the end because they are they're more like icing on the cake in this particular painting when flowers are smaller they can usually be added more towards the end you don't want them to look like they're pasted on the top or floating on the top so you can add grasses and things later to bury them a bit but I typically don't have to do the flowers at the beginning because they're small if you have larger flowers it's a good idea to kind of go ahead and get in some of the flower shapes that are larger early on so I just wanted to explain that that's why I've got my grass I've got my dirt my earth I've got my my values getting correct here and I've got some of my grass colors and now I'm kind of especially in the background there I'm kind of glazing some of those flowers in the back now the way things work perspective is of course we know things are larger if they're close to us and smaller when they're far away but also in nature and landscapes typically things are more vertical when they're close to us and they kind of flatten out to more horizontal in the background for example if you're imagine laying down in a field of grass and your head's kind of just prop your head up on your on your hands looking at it the grass is right in front of you you would see the vertical blades of grass going up and down but as you look in the distance you can't see those anymore all of a sudden the grass has become more of bands horizontal bands in the distance so that's going to be a way that you can create that illusion of distance now i'm working a little bit more on color temperature my green there i'm using is a cooler green again if you're not sure what those terms mean at about it's it's about a minute 30 or two minutes into this particular videos where i show where you can find that playlist and cooler colors will make your eye or your brain believe that things are further away not that you can't have cooler colors in the foreground but that's a general artistic rule now i'm just kind of creating little again little notes for myself about how things are positioned and the direction of things i want to where i want these flowers to be kind of the motion and that's something to keep in mind too even though in the particular reference photo i'm using here it's more of a just some poppies really kind of like right along the middle maybe middle to lower is all the red is right like in a band right across i wanted my poppies to have more energy and movement pulling the eye back into the painting and that's what we have this artistic license that we can do this once you learn a few simple rules you may say hey that that kind of looks a little boring with them right across another photographer did a great job that just happened to be how the flowers were growing so um you can actually make a more beautiful composition by just getting some of these basic rules of composition and understanding how what makes a more beautiful painting so now i'm using an even lighter kind of a cooler green that i'm making a few little bands these are going to be grass bands that are kind of going in the distance and as i as things go in the distance they don't only cool in temperature they get lighter in value now this is a much better i'm so glad i finally zoomed in on this you can see a lot better what i'm doing here so now you can see see in my grasses that i know i'm working on the sky here again lighter values towards the horizon or towards a tree line can you see that and also you see that loose edge that called lost edges see how my trees or mountains don't really have a line in between the sky that gives that painterly look again what i was saying about the grass is you can see now that your close up that i've given some direction to the grass is growing trying to lead that eye and also notice i'm not getting too fussy or detailed anywhere in the painting yet that's another huge rule and tip that i give whenever anybody asked me how do i get more painterly how do i get looser that more impressionistic feel is huge big of course i said already big shapes first just large shapes and then don't get too fussy or too detailed too quick work all over your painting and that's really going to help with that all right i'm going to paint a little while longer and i'll pop back in with more commentary here i wanted to mention to take notice of how i'm using more of a blue a teal i guess i would say it's a it's a cooler green and the reason i'm using that is because down deep in those grasses even though in the photo we see mostly green i get questions all the time one of my most popular questions i get is how do i deviate from the color that i see in the photograph to make my painting more interesting and one of them one of the things you can do is just kind of learn the rules of nature and again i'm using cooler temperatures where there are more shadows and so i know in now i'm working in the tree now but i know that deep down in those grasses there are going to be some cooler more shadowy colors so i'm kind of making that apparent by my color choices and my value choices that i use now i'm going to go ahead and keep this sped up a bit for the remainder of the painting but try to take notice again look at in the already look at where i've added kind of those blues as they kind of cascade and meander into the distance it's pulling your eye back into the background and then i will i'll keep this going with the music but then i i'm going to come back in when i add some commentary about more of the the poppies that i add on top notice how i've been adding some purples also another color you don't see in the photograph that much but down in particular roots of the where the flowers are growing up from that does that creates more depth and also notice how i've got a general mass of poppies and now i'm adding my lighter red values on top and in some places cooler values of red or cooler colors of red and again that's back to the point of this video i have been working dark to light even with the flowers even with sometimes white flowers especially if they're large white flowers we usually put down a darker color before we add the white so now notice how now is the icing on the cake now are coming those lightest values that are going to just make those poppies pop no pun intended but now it's almost like they're the ones that are up closest to where the sun might just be hitting on those tops of those poppies and that is just a way to make it more believable more interesting and also by the way when we add layers the final layers if you have quite a few layers often using softer pastels are going to be the ones that really allow you to get that color down for it to still look fresh and crisp and the ones that i'm using now especially the brightest reds that i'm putting on top the lightest value are i think that one is a senelier pastel which i happened to absolutely love on senelier paper they just work so well but sometimes the terry Ludwig's and i'm also trying here even though there are some lighter flowers that i'm putting down on the lower left i'm being careful not to brighten them too much i want that eye not to get stuck right at the beginning with too much detail of those poppies i want to lead it in i like i can't remember which artist says to keep an impressionistic feel and a pretty pleasing composition you want to keep your edges almost imagine like an oval going around the outside edges of your painting you want to keep your edges blurry if i got so much detail right at the entry part the lower part of the painting there as your eye comes in you kind of get stuck on all that detail so keep it very subtle to allow the eye to enter now i'm just doing some general lightening up the clouds adding a little bit more purple you see how from where i started this painting look how many colors i've put in that distant mountain started out with very darks and then i got some deeper blues then i added some more medium values then some purples and some teals and and all of that helps to push that back when i added those lighter values and make it just a more interesting color treat for your eyes again keep in mind i'm keeping cooler values down in that lower left corner i'm imagining that tree like has a little bit of a shadow there and now i'm kind of adding a little hints of stems on the flowers i don't want too many again i don't want to distract from the eye entering into the painting and really the only places you're going to see the stems is right at the beginning at right at the entry way into this painting because as things progress in the distance you don't see the stems anymore they all of a sudden get blurry and buried deep down into the grasses now i'm also too adding instead of just stems everywhere i'm taking the side of my pastel and kind of glazing it to kind of simulate or emulate grass is growing in there without adding every single stem and every single blade of grass otherwise that would get monotonous and boring again i my focus usually or my love is more impressionistic artwork so a lot of times that's what my lessons are kind of on so again now look here how i'm adding the horizontal bands of grass in the distance it's giving that illusion of distance and giving the eye something to draw it back and to have a little bit more interest interest in the distance all right so i'm going to conclude this video here and come in at the end with just some more comments all right guys enjoy okay so i'm wrapping up the painting at this point getting close to done and just so you know the video this video is probably going to be about 40 minutes but the actual painting took just under an hour i think maybe right at an hour and i took my camera and decided to zoom in a bit so you could see a little bit more of the detail and also notice where i snuck in those bits of blue and purple to add some interest which will hopefully help to answer the question a lot of you have had which i mentioned about how to veer away from the reference photo and give a little more life and color to your painting so i hope you guys enjoyed this once again here's that beautiful verse arise shine for your light has come and the glory of the lord has risen upon you that's from the book of isaiah now you guys i know i have many of you who've become my patrons on my patreon page that's listed right there i want to say a great big thank you i am so grateful to your support right now you know i'm going to be adding more to my patreon page when i return to my home studio and again thank you you have blessed me so much by your support all right guys i hope you enjoyed this and learned something happy painting


Hi, Dr. Jared here. A little bit late. We had a snow day. I had fun with the kids So Friday flop here on a Saturday, but I am here working a little bit on presentations here for next week Finalizing things touching things up and the flop is the words that we use We talk a lot about the words and the verbiage at our office now that we use with our patients with financing I'm gonna share a lot of that that we've learned through actually Kathy Jameson and Jameson management but one of the words that I find that I use a lot is small and you have a small cavity and that devalues the treatment for that tooth that needs to be treated Yes, it may be small, but that doesn't make someone want to move forward with the treatment So one way that you can change the verbiage on this is to say an area of concern Instead of a small area, you know a small spot That's one way that you can change the language to still put importance on the treatment Or maybe it's something you're waiting on and I'm going to share a lot of these tips with our colleagues on definitely with billing And how to communicate with patients. It's really astounding what I just learned Putting this together from the cost What it cost to send statements out so keep that in mind Pay attention what you say and if you're saying small you pay attention On next Monday, or if you're open for Martin Luther King pay attention See how many times you say small and start changing that to an area of concern


Hello friends, welcome back to the channel to brand new Pokemon mystery gift events have just dropped in Scarlet and Violet We're going to cover all of the details so you can get these exclusive Pokemon in your games in today's video It's off the back of the latest Indigo disc trailer We've had two brand new Pokemon mystery gifts drop in Scarlet and Violet You can take advantage of and get in your games right now One of these mystery gifts is for a shiny Lucario, which will be running until the 3rd of January And the other one is going to be for a mythical Pokemon in Darkrai Which will be running for a little bit less time until the 21st of December to get these Pokemon in your game You're going to make sure that you are connected to the internet then come down to your poker portal And we'll do the Lucario one first you want to come down to your mystery gifts And then in mystery gifts get with code or password and in this screen You're going to want to use the code shiny buddy As always the code will be on the screen for you to kind of copy on to your own game And again this event will be running until the 3rd of January 2024 So you've got a little bit of time to claim this shiny Lucario in your game But a great mystery gift not often that we get shiny Pokemon is mystery gift So definitely want to take advantage of and the fact that Lucario is one of the best Chinese in my opinion anywhere that you can have in the game So a really great mystery gift to get your hands on it will come in a cherish ball as always And the other mystery gift that we are going to be able to get access to as well if we come in with code or password It is going to be for dark cry and the code for this one is going to be a new moon is coming And again, it will be on the screen. This one will not be running as long as the Lucario one This will be finishing up on the 21st of December But you're going to be able to put this code in and get yourself the mythical Pokemon dark cry And your copy of scholar and violet which is and again another great mystery gift Of the back of that latest indigo disc trailer But getting a shiny Lucario and dark cry on your game while these events are running is a very very Unexpected kind of mystery gift But definitely ones that you're going to want to take advantage of both the dark cry and the Lucario both come in those cherished balls to kind Of represent that they are event Pokemon. You can see the details here There's Lucario is going to have the steel terror type dark We're going to have dark terror type and you're going to be able to get them in your copy of scholar and violet Both will come with the classic ribbon as well But really nice Pokemon to get access to in your games definitely something that you want to take advantage of all these events are running But that is everything for today's video. Let me know your thoughts down below on these mystery gifts below We've got another mystery gift that will be coming on the 14th of December as well Which will be for a master ball but that event doesn't go live until the indigo disc is released So that will be coinciding with the indigo disc going live I guess we'll be able to go into our games and get the master ball that way So another mystery gift that will be coming very soon next week But we'll cover that as soon as that event goes live so you don't miss that one while that one is running But thank you so much for tuning in to today's video friends Really great that we've got these mystery gifts coming up and we are getting into real hype season now with the indigo disc Dropping in just one week's time. If you've enjoyed today's video Do drop a like do subscribe to the channel to stay up to date with all of our Pokemon scholar and violet content And I will see you all in another video very soon. So then friends take care of yourselves and bye