Welcome. That's right, get out of here. Well, I'm sure everything will be good, Stephen. Passive, aggressive, good. Just so you know, I got that on tape. I'm sure it is, Stephen. Thank you for coming. I'd introduce myself, but if you don't know me by now, I've been talking all morning, so... Hi, I'm Stephen Gallagher. I'm with Red Hat. I've been working on the Fedora server edition since it began. Actually, it's before it began. It has been an interesting ride. So it's now been, what is it, four years? I think it was... It was first thrown together as an idea at the first vlog from Charleston, which was... That would be six years, so... That can't be right, finally. I guess we'll split the difference. We'll call it five years. So I've been giving one of these at each vlog since. Most of you have probably been to one in the past. What I will do is I'll probably talk for 10 or 15 minutes, and then it will be a discussion at which point we'll probably turn off the recording because it won't pick anything up. So I'm going to go over a little bit about what we've done in the last year and some of our trials, some of our tribulations, a few successes, and then we'll talk a little bit about where we think the Fedora server is going to go in the next year or in the year after that.  We were talking about this a bit at the previous vlog in Cape Cod, and the idea at the time was that Fedora server was going to be the prototype for this completely new way of building the distribution. From the ground up, it was going to be just these interchangeable modules that you could swap out in and out as we pleased. And, you know, we made some good headway towards this, but we really, really were boiling the ocean. And not all that long after the last vlog, we ended up more or less scrapping the plan. So that, and that was pretty disheartening. I can speak for myself and I suspect for a number of the people who were working on it that that was a pretty low point in the fall. There was a lot of people that put in a lot of hours on this and we thought that this was, it turned out to be a dead end. However, we did come up with a backup plan and we were able to reuse a lot of the same framework that we had been using for modularity 1.0 when we figured out that almost by accident the technique that we had been using turned out to be possible to just fake it into thinking that the main Fedora repository was one big module and go from there and hey, what do you know? All of a sudden, modules sit on the top and they're great. We were happy again. And we've pretty much been putting all of our effort into this modularity 2.0 thing now. And it's been a real labor of love for a number of people, many of whom are in this room, which you guys already know this. But it's involved a lot of people and a lot of teams. And I will say this, I've been at Red Hat now for over a decade. There are few times, I've experienced very few times like this where this many teams and this many people have actually come together to work on a project with the same goal in mind and actually idealistic about achieving it. And you know what? We've got something good now. So I'm actually going to applaud you guys for a moment. That really didn't work. But it wasn't just the modularity team or the base OS team or the DNF team or the relinch team or the infrastructure team or the docs team. It was all of these groups working together. So we actually did achieve something really, really nice with modularity 2.0. And we had our first successful release in Fedora 28 with Fedora 28 server edition. And I'll talk a little bit more about it when I get to the future slide. But as of two weeks ago, Rawhide now has modularity enabled for all users of Fedora. So that's pretty exciting. In the last year, when we started the server edition of Fedora's key fundamentals was, we were going to just design these server roles. We were going to do these basically pre-packaged best practices solutions for how you would deploy a popular service. And we were going to try to make that the de facto standard for how you do this in the next. This is still a good idea. And Matthew is saying this is still a good idea. I think that's true. I think that the world around us has moved on such that they have found other better ways to do that than roll kit, which we finally put out of its misery this year. It was a simple D-Bus API for doing deployments. It only ever really supported two server roles, free IPA and PostgreSQL. It was mostly limping along and I hadn't killed it before this because QA was using it because it was really easy to set up in free IPA or QPU or PostgreSQL server for their testing. However, it did not survive the move to Python 3.7 and it was sufficiently complicated that I didn't feel like keeping it on life support any longer. So, yeah. Sorry, kitty.  So, one of the interesting problems we have right now is we've actually done almost too good of a job, especially with modularity. We've still have some bugs to work out and we definitely need to clean up the user experience a little bit, but the technology is sound and we've proven that it can work. But, so we started in the server sink doing a little bit of a thought experiment. So, where does this go in the future? Well, the obvious next step is, well, we get this into Apple. Because, of course, as Matthew showed in his state of Fedora speech, Apple is what, two orders of magnitude more popular than Fedora proper, something in that area? Three, okay. Three orders of magnitude more, it hits to the mirror, at least. That's pretty sizable and... Binary orders of magnitude, not decimal ones. Binary orders of magnitude, not decimal ones. It's not really, it's not a thousand times more popular. You kernel panicked me. So, but, and I think, you know, that is the logical next step is that we migrate this to being able to support our enterprise users as well. But, that's a bit of a double-edged sword because what we will have effectively done at that point is maybe Fedora server edition completely redundant as far as, from a user's perspective. We will have reached a point at which, right now we have a very small but dedicated and loyal set of people who actually deploy Fedora as a server. What we know from, well, from ANNIC data is that approximately zero of them actually use the server edition. They use the server install media to install the smallest set of packages they can find. So, although... My mirror stats, they showed actually it's better than that, right? Yeah, because that slightly showed, like... Oh, great. Fedora server has... Matthew is correcting me that his mirror stats didn't show that there were people actually hitting the modular repo which was only enabled by default on the server edition. It did not mean that they couldn't have manually selected that to play around with it either. There was a small blip in the statistics that said somebody was using this. It's more than zero. It asymptotically approached zero. So, we are sort of engineering ourselves out of a job, but we're in kind of an odd place because, of course, Fedora, in all practical purposes, I think everybody knows that REL ultimately comes from Fedora server. It's a place where we try things out where we start to stabilize them. Sorry, hotspot. We try to start stabilizing them where we fail fast, too. We try out new things and we figure out which ones of those are likely to be useful to an enterprise customer down the road. I don't think this is surprising anyone. I apologize to Red Hat if I'm not supposed to tell that secret, but I don't think anybody doesn't know this. So, we have value to Red Hat, but we're rapidly getting to a point where it doesn't appear that we have value to users, which makes it difficult to actually use it as a testing ground and to figure out what will be in the next enterprise release. So, where are we here? This is where we are. We really don't have a clear vision past modularity of what we are doing next. We talked in the servicing and I think it was Adam Williamson that pointed out that most of what servicing has accomplished and its server addition has accomplished and its life has been because somebody was really interested about something and drove it to completion and that was what happened with... Early on, that was what happened with Rollgate and it kind of petered out. Later, it was the modularity stuff that was a matter of this is an interesting new thing and we drove it through and now we're approaching that annoying part where you have to actually make it stable but that's where the career folks of us step in. But how do we expand the servicing? How do we grow it? What is the next exciting thing that we can get people to work on that we can get people to come and say, hey, I've got this idea and right now we don't have a lot of good ideas for that because we've kind of engineered ourselves into a position where we expect that people will probably start using less because of the things we've done. So this is the part of the talk where I point the microphone in your direction and you help me figure out what the hell we're doing next. The floor recognizes Langdon. Are we using the microphone?  Yeah, I think we should probably cut the recording at this point because the conversation is just going to be in the room. So the big gap that I think the server can still fill is one of the problems that I haven't been able to articulate. This is my first arm release where I built the lock and it has a special signature. It accepts all the solutions that it doesn't actually display. Okay, I'm going to renegotiate some of this. I'll just turn the laptop around. Everybody can just crowd them. That depends on how you want to use the slides. Can you just read and articulate? To some extent. But then you'll miss the funny cat pictures is the problem. Alright, so as most of you know I'm Langdon White, Steve Gallagher and you want to go to the next slide? So I always try to include some pictures of my kids because that way I can embarrass them for a long time. But this is my current running joke of trying to get them all in the same picture at the same time looking reasonable. I joined Red Hat actually as a developer advocate and my joke about it is that they got tired of me complaining about all the problems and pulled me into engineering to try to fix them. Then I got suckered into basically the Fedora next kind of project and kind of been involved in that for a few years now. So most of you know me, I'm Steve Gallagher that is an actual photo of me doing my job in Fedora. Alright, so first a little bit of the history of the problem that we're trying to solve. So I try to this is kind of the short version of this conversation which is that we have different life cycles we have different styles of things that's kind of what the planes are supposed to represent that you know we have you know some planes that fly fast and some that fly slower and sometimes you need to be able to hook them up together because you know one needs to feed gas to the other. You know the the boba I think that's what it's called is this cliff here kind of represents the idea that all the stuff in the distro is very tightly integrated one big huge vertical stack and so as a result it has a lot of problems with trying to shift things around because that whole wall will just crumble down. Also it's easy to fall off. That too. Another thing I'd like to point out is that over the last kind of 10 years or so in particular software development has really changed a lot. We've really shifted in a lot of ways to the power being with developers rather than the power being with sysadmins. So when the distros started kind of the concept of the distros sysadmins were trying to take power back from developers and by developers I mean I can meet vendors or literally software developers in your IT department but the distros were trying to simplify the overall problem that they were having by locking down what developers could do and so over the last maybe 10 years the pendulum has started to swing back the other way and software developers are now taking more control so we see things like containers are a great example of developers wanting to put what they want to put in production and forget about the sysadmins in the way. How we do development has also significantly changed you put up a website now and it's on top of a million several million lines of code before you get your little smattering of code on the very very top so we have a couple of interesting things there both you have that vertical stack problem but on the flip side it means you can tear down your entire architecture and replace it in sometimes a matter of a day sometimes a couple of weeks versus when I started doing software development where you literally spend six months just building the architecture before you even got to your real content then kind of the last thing is and I still haven't found a better way to show this is that different use cases have different needs so my little graph up there is kind of talking about mutual funds and so when you're trying to plan for retirement where you are, what age you are means you should make different investments so you want to make lower, more conservative investments later in life and riskier investments earlier in life this is also true so for the same person you want to make different financial decisions depending on the position you're in right now so that's what we have this problem with software as well and distros don't really tolerate that very well and that is one use case I installed a web server it must be for production when in fact when I install a web server I may be installing it so that I can do development on the web server like I want to actually make commits to htpd or I might be writing html pages or I might be writing php all those use cases are kind of different and they require different things to kind of be installed or how they're set up this is why developers instantly install firewall because they don't have the time or the energy to figure out how to make this highly hardened production ready system into one that they can just do work with this is tying to our next slide here yeah so basically those are kind of the problems that we saw when we wanted to go into this to this solution so this is how we think of well this is how the distribution thinks of its users right they're all neat and tidy right and we're kind of running with the joke of it's the 1995 Fedora distro and that's what I think it was it was like 2007 yeah it's 2003 Fedora as a distribution is still trapped in the Red Hat Linux days it originates at a time when a distribution was really your only way of getting open source software you started from a distro you started from a basic install and then you know once yum came around you yum installed everything before that you went through RPM hell but everything came from a single source you generally would decide you either trust it or didn't trust that source and that's how you got your software and if it wasn't there your two choices were package it don't use it that world we want open source one we are the default choice for writing new software throughout the world now and the distros didn't keep up with that the distros are still thinking we're the only way you can get software safely and we have to test it all together and it has to be delivered on this schedule and if you don't miss that schedule you go you're out six months and it envisions a world where this is what your distros desk looks like they are very rigid they are very cautious and no yeah and so if we move on to the next slide this is what it actually looks like and I'll argue this is actually what it always looked like it's just that we could force them a little bit into the slide before so I tried to find some fun pictures here Steven actually had the idea yesterday of getting a toddler to go around with a stamper and that's what you end up with for the Venn Diagram of your users and so I tried to make it but I'm not a very good artist so this is kind of the idea is that users are actually very messy it's about use cases it's about what they are trying to accomplish that day and when I say users I mean a kind of broad swath I mean developers, I mean maintainers whoever is actually your user and all of those considerations need to be thought about and that's kind of what we led to modularity and so this is kind of where modularity fits we didn't really have a whole lot of great pictures for this slide so what I did was I decided to take an example when we did Fedora 28 one of the examples I used was I've been maintaining a package called Review Board in Apple for the better part of a decade now it lived in Fedora for two years before its dependent stack Django moved past where it could support and that happened back in Fedora 17 or 18 it's been out of the distribution simply because it's upstream decided to lock on an old version they maintained the old version of Django outside of upstream but we just couldn't have it in our distro because Fedora is first Fedora only has the latest one so when we came when we came up with this modularity idea suddenly I was able to actually package this old but still supported version of Django and then bring my my pet package back into Fedora where it's been very popular in Apple but you know it's always been kind of an embarrassment to us that we couldn't keep it in the main Fedora repositories and so that was an opportunity that this gave us right so what we're going to move on to basically this is kind of the introduction this is why we did modularity this is kind of the point and I wouldn't say that modularity necessarily meets all of these goals perfectly but it's a start and I think the important part is that it's a start at the OS level instead of things like alternatives or like Python M Python M yeah virtual M I always mix them up because there's RBM and 87 different ones so all those different solutions are trying to solve very similar problems but they're doing it from a particular perspective so the Ruby developer who wants to use multiple versions of Ruby has a particular solution for Ruby whereas somebody who wants to run different versions of Java in production might use the alternative infrastructure so they're coming from different perspectives and so making different trade-offs and not actually providing a quasi-universal solution and one that's integrated into when I say the OS package management and all that in a way that is part of the system and so that's what we're trying to do with modularity is we're trying to make it so that it's at the lowest level and part of the overall system itself was alternatives not part of the OS? in a sense so the question is alternatives not part of the OS? I would say it's sort of part of the OS, it's an add-on in the sense that it's a new piece that is not part of the things that a normal user uses regularly when we were designing this we looked at our potential set of requirements and alternatives was one of the solutions we had looked at as well as the software collections and containers and what we realized with feedback from PM talking to customers and us talking to users was that people didn't actually care about parallel installability as a general case, there was a one or two percent that did but for the most part people only really cared about having the availability of these alternative versions and so doing multiple packages with alternatives was kind of heavy weight it required users to make conscious choices the same way they did with SCLs they required them to change their install scripts and change their deployment scripts to be aware of that and to use it whereas the approach we took with modularity and just switching the streams allows people to just drop their software in exactly where the upstream expects it to be and that just cut out a huge barrier to entry for users and is why it's a much simpler way of doing things than, for example, software collections. It loses the parallel installability on the side of things but we've reasoned that that was probably not important enough. And I would also add to that it doesn't necessarily lose parallel install forever it's just right now in our current state the other thing I would add about alternatives too is that it's very sysadmin biased. As a developer it's hard to use the alternatives infrastructure to switch between language versions a lot or especially if you're a polyglot developer and you jump between different versions of different languages the alternatives infrastructure is very hard it's a very high barrier to learn because it's a new thing you have to learn whereas I already know Ruby, right? So that's also an argument for it I don't know, it's tough. Go ahead Is it modularity? Theoretically almost no that's the goal, right? Is that modularity... oh sorry the question was, isn't modularity a new thing I have to learn? The idea with modularity as a user is that it's basically transparent. You have to indicate that you want a different version of something but that part is obvious and so, but you can still just use it exactly the same way you've been using the system this whole time because we have the defaults component and so in that way if I wanted to just get Postgres that is shipped by Fedora, I'd just say dnf install Postgres and it's done. I don't know anything about modularity. So it's only when you want to get further. I think what he was saying though is yes, it is still learning that you have to type dnf module enable this version, this stream is something you have to learn but it is essentially a one-liner compared to alternatives where you have to understand how alternatives interact especially in the case of Java where you have to actually change a whole bunch of different commands all at the same time and know exactly which ones you have to change. At the very least it narrows it down to a single command that we can document really easily as opposed to a just labyrinth of esoterica. Yeah, good. I'm sorry, thank you for understanding your information point. I know that in Fedora there are several times you have to keep multiple versions of the one package because you have the Fedora repo and the updates and as I could understand you can make the backdoor of the infrastructure to keep multiple versions of the same. So the question is don't we already have multiple versions of something given that we have multiple repos, right? So there's like the everything repo, we have the updates. Fedora tries to on the infrastructure by keeping or providing the latest packages and the latest and as I could understand you provide a new approach to, let's say all around this restriction provides a multiple version of the same function. Okay, so the I guess I'm not sure what the question is though. Are you just saying are you correct? Yeah. Correct, if I could understand the point, yeah. So the comment is basically what we have today is that we have say the everything repo and the updates on top of that and basically we keep at most ish two versions of any given thing the one that was shipped and then whatever the current update is excluding tricks and hacks like specialized naming. Right, so we already do hack around that, so and that's actually a little bit of the point and that with modularity we would potentially massively increase the number of copies of any given thing that we might have in the repo side and that is definitely a possibility however, I would argue a couple of things, one we do that already to this extent, maybe not to this extent by using name mangling rather than actually using the metadata that we have and could provide so I think it's kind of ugly the way we do it now and the other thing is that I think people forget how much policy we have in place around RPM we could do all kinds of that stuff right now today by just standing up new repos or whatever but we have policies in place that says you know what, we're only going to have new things, it's not because we technically can't so with modularity we have the same problem we just haven't built up 10 years of knowledge of what those policies should be so we do need policy that says hey we need to limit the number of versions of things that are out there because we can't maintain a distro where everything under the sun is available. I'm going to contradict you there. Sure and say that ultimately the decision on how many versions how many streams of something that you want to use in modularity should really be up to whoever is going to maintain it not up to the distro at the whole saying no you can only have two or three of them I think it's if you have a very easy upstream that just happens to release the very old stable and the new shiny releases on a regular basis if you want to maintain those three it's going to be up to the maintainer to decide when they want to carry more than one stream and how much maintenance they want to do on it as long as somebody is willing to step up and do the work modularity will let them step up and do that work I mean if we need to, you know, I'll kick in the 100 bucks we need to go buy another terabyte drive I mean space is cheap so it doesn't really matter that much from a disk perspective it does matter from a network perspective potentially and we might have policy around the actual core components, right, this is where we get into things like rings ideas and stuff like that we're going to have to move on with talk to him but I'm going to go to him and then I'll go to you yeah, I just have a small point because the Federa is not going or it's not distributing packages they have a partner that are allowed to distribute the Federa content the core of the Federa large, okay it will not cost Federa anything yeah, I was mostly joking about the distribution so the concern is that the mirrors may not want to distribute a much larger amount of content, we have actually already run into that, it is definitely a concern, so we have to we have to consider that problem that's part of our policy problem, right personally what I would actually recommend is that why don't we make mirroring significantly easier so I can run a mirror out of my house and because right now it's relatively difficult I would say actually let's try to increase our number of mirrors rather than worry too much about the amount of content we're pushing through them to be fair, this is a problem that Federa is facing before much Larry, we don't have mirrors that are uncomfortable with the amount of content that Federa carries simply because we just carry so damn much yes, and it's increasing at an exponential rate and having dealt with the mirror people before, there was an agreement about the amount of space that we're allowed to not use BAM with etc etc and we're well and truly over that semi pseudo agreed limit and we have huge amounts of problems getting mirrors as it is and there are certain areas in the world South America, Australia like if you're on certain networks in Australia, you basically have to go to the US and back to get access to the data because there is definitely concern about mirrors it actually existed prior to modularity anyway but modularity potentially could make it worse and I definitely agree but again, I would reiterate it's like we've got to remember that we've spent whatever 10 years plus standing up policy around the way we do things today because we have a new more flexible way of doing things doesn't mean we don't need policy around how we do them that makes it same I'd like to comment on this and then move on because it's kind of outside the scope of this talk but there is actually one place that modularity can make this less of an issue and that is that in the Fedora project because of the way that RPMs have worked in the past you've always had to package all of your dependencies first and then get those into Fedora and those fill up the repositories and those also fill up your maintenance time because now you're maintaining some package that some other packages are depending on modularity allows you the ability to build your build depths and use them just for your package and then not ship those build depths so if we move a lot more people to modularity I suspect we will discover that there's an awful lot of software in Fedora that exists solely to support the build of some other package and we can probably trim down the mirrors to some degree by doing that So Adam, did you have something else? Yeah, that was my question Do you want to? I'm just saying this slide and maybe there is a policy about how many maintainers can have a module because for example if a module, if the maintainer want to keep versions 3, 4 and 5 but I need version 2 we want to maintain using version 2 even when the problem of having 3 other streams So the question is essentially what is the policy around who owns which streams are available for any given module and I would say come to modularity working group and let's make sure we set a policy for that so there's a lot of policy that's open right now and to some extent this is where we need the community to get involved and start to help us feel out what the right policies are I also think that we're going to have the wrong policies at first and we will fix them over time I assume that the way we would handle that policy is the same way we do in Fedora and Apple there are plenty of people who maintain a package just for Apple because the Fedora maintainer doesn't want to support an old OVAS I assume we will just simply allow them to have access to that branch if they're willing to do it but I reiterate the statement come help us to find the policy Alright, so talk about the reasons why you might kind of the point of this talk is really like when does a module make sense for you especially given the architecture that we ended up with for F28 right, that's the word so the current architecture kind of makes it so that you kind of add on modules when you need them so what we want to do was a talk about when might you need them and so the first example which I think most people kind of know about already is this one where you want to have two versions of something and so we have, you know, big dolls which I thought was entertaining and goats, those goats made me sheep I don't know, animal so we have multiple versions of something maintained upstream you know, Django is a great example right, is that they are supporting at least two probably versions, you know, as do most of those kinds of frameworks they're usually two in flight usually there's no JS as the perfect example because they maintain two LTS versions and a development version right, right, so no JS has even three but like most frameworks have at least two you know, Drupal actually I've been fighting with lately they're currently maintaining three versions, I think six, seven and eight and all of them are not easy to port across so that's why they end up maintaining them for so long is because it's very very difficult to move versions so this is one of the big examples basically what we're trying to do here is we're trying, like it's good that the newest version of something is available in Fedora what's bad is that if it's something like a framework it means that the newest version of something else is not available in Fedora because they haven't had time to port to the newest version right, so what we're trying to do is give them lifecycle flexibility when they're ready to do their upgrade they can keep maintaining their application in the current version until they're ready to do that work so that's that one you want to move on to the next one and similarly in keeping with Fedora's first identity it also allows us, like I said, with no JS the example is we can carry both LTS versions and make one of those make the newest one of those the default but then we can also carry their development one so we can encourage people who want to do new Node.js development to use Fedora as well and not be required to go off to Node.source or one of those other places that hasn't really hacked up Fedora implementation it doesn't work very well a good example for this was with Python right, is that didn't want to switch Fedora to Python 3 for a long time because of how much Python's 2 stuff would break if you're using modularity you don't have to have that pain we can continue to make Python 2 the default we can make Python 3 available but we have that without modularity sort of so the example is a terrible example I'm going to stop you with this one that one is a minefield and we're going to end up in a debate rather than a conversation so the conversation with Python can do parallel installability on its own I definitely disagree that it's the same but whatever let's move on the next one is when the upstream releases don't align we've kind of alluded to this example already but you know Fedora comes out on a theoretical 6 month cadence what happens when something comes out in month 7 well that means you have to wait a whole another cycle before you can get it with the modularity we can release them whenever we want in theory depending on what it is and how it works but for the most part that's the idea whatever version comes out when it's ready and we can ship it for whatever currently supported versions of Fedora are available we can actually do it for more than that except going back to policy we don't want to so that's kind of what this is talking about is how do we make it so that software can land when we want it to and then on the flip side of that we have the older software typically like a 5 year life cycle do you really need to upgrade your database every time a new version of the OS comes out most people find that incredibly risky so they stick with a version of the database for a long time so what this lets us do is let you to maintain your existing whatever MariaDB 10 across multiple versions of Fedora without forcing you to upgrade your database until you're ready to make that choice considering that the database itself doesn't require an update alright so the last one I have no recollection this is similar to the previous one it's the case we usually use as an example here would be hypothetically free IPA traditionally free IPA and the OS release have been very tightly related and similar to the database case when you go to upgrade Fedora 28 to Fedora 29 you're not just saying ok so I'm going to get a newer kernel a newer GDC system level tools a new GDM what you're saying is everything on my system is upgrading including these applications that I rely on so I am not going to move anything until I can test that the entire stack that I rely on in my infrastructure works and that's one of the main reasons why people don't like to deploy Fedora in production is that you can't update the OS and the applications on their own separate life cycles and so modularity gives us the ability to say hey this critical app that you're relying on you can lock that here and on an upgrade or an update even between Fedora 28 and Fedora 30 as long as Fedora 30 is still capable of supporting that application you just update the OS underneath and the bits of the module providing the application will stay the same so it allows you to update your OS which may mean that you get low level kernel security updates and all sorts of new performance enhancements but you're actually the thing you care about is your application and that we've hammered this home nobody really cares what OS you're running as long as your application keeps going this is a way to do that and allow us to keep our fast OS schedule without having to it is hopefully a way to get us from the set of users that always update two releases at a time because they just push they push off this pain for a whole year instead of every six months and it allows us to get to a point where Fedora 28 to 29 and 29 to 30 those are more like service packs than they are upgrades you also have this case in the application developer scenario in kind of the reverse where you want the bleeding edge of Node.js because you know you're going to be deploying in three to six months and you know that version will be stable by then so you want to go get you want to do all your development on the dead version of Node.js so the idea is that okay but you still want to be able to upgrade your operating system itself on your laptop or on your workstation or whatever so to be able to provide some independence there means that you don't turn off updates for six months while you're doing development which I know I have done before particularly on Windows because I know that there's a potential that those updates may impact my code and I want to scope the time period where I'm fighting through that fire to one period of time so you turn off updates for X amount of time and then all at once you turn on updates you take all the updates and then you go through your whole test CI whatever cycle and go and just deal with bugs from the upgrade so it's also the reverse case where you want the bleeding edge stuff but you want to still be able to take regular updates alright so one of the other things I want to make the point of and also teaser for my next up I meant to insert a slide here and I forgot to so before this I wanted to cover a couple of the cases where modularity is not a good fit and so for example I do not foresee a world in which we modularize G-Lib C I don't see a world where extremely common low level libraries are anything but part of the OS itself if you've got G-Lib C or you have I'm sorry Peter doesn't some of the problems where you're saying I want to keep one as version X like and then upgrade a different one isn't some of that just fixed by running more in separate containers so the question is basically if you want to have life cycle independence between different amongst your OS say or distro couldn't you just use containers for that and the answer is sometimes in fact right if you look data centers before containers most people run a VM for application now they're making that cheaper by doing it with containers but they're doing the same application and in the case of like your IPA example like one of the flaws in that is IPA doesn't support running alongside other applications on the same machete so the problem is also though that you have other stuff besides IPA in your container and you may want to also upgrade that stuff oh sorry so the example is going back to the container example or a VM or a physical server example even if you're dedicating basically the user space to one given application does that solve this problem in and of itself and the answer I would say is sometimes but that I think you're glossing over the other updates that are that need to take place inside that user space that modularity can still help with and the other side of things too is the content that goes into your containers there are times when you want that container's user space to be the latest and greatest because you got the latest new heart bleed or whatever new name to vulnerability you've got but you still want to have that same exact application you don't want to have to be required to pull down some new upstream version because they built it on top of the other one so constructing those containers modularity gives you that control as well okay so the example of kind of when modularity is a bad idea is low level, heavily shared system components are probably not a great fit which is what we kind of discovered when we were trying to build the base OS or platform modules is that the maintenance and effort around that is as much as doing the whole distro and having multiple versions available of any of those individual components is not very useful so that's probably when you should shy away from it if it's something that's heavily reused by everyone else a traditional RPM probably makes more sense the flip side of that is maybe we'll get there someday maybe we will see a way to start to simplify those components so that we can do more shared components in this way but that day is not today and it's probably not for several years so we need to it's like a lot of new things when we have new capabilities we should feel out how they work before making long standing hard decisions about it what modularity is trying to do is offer flexibility in our decision making it is not trying to say that everything should be a module it's trying to say sometimes it makes sense and sometimes it doesn't and we want to have the build infrastructure flexibility that we can make those choices based on the software itself rather than based on what our build infrastructure can build now we go to the next slide so what I wanted to talk about here is just that there are other distros that are also doing this and so here basically some quick examples one linux to extras is what it's actually called it starts to do something kind of like modularity where they offer alternate versions of things in separate repos that you can install and if you want to know more about it I will talk about it more later SUSE modules, SUSE is now offering in their enterprise editions at least they were last time I looked in their enterprise editions alternate repos with different versions they're doing more like it's more like rails extras so they have I think it's once called web development and so they have a bunch of new versions of PHP in there but they're kind of mixed together into one repo so you enable that repo and you have options on a new version of PHP and a new version of Nginx but then they have a couple they have like five or seven different repos of various subjects GWX and NixOS is actually modularity if we could burn everything down and do it right it's really interesting from a user perspective it's very different right so if we were totally fine with just everyone forgetting about this whole young and DNF thing all together and just do things completely differently from the get go Nix does a really interesting job of this I would actually go back to Peter's point that a lot of the advantage that they give is actually solved in containers so the parallel and solubility of stuff that they're capable of is while really interesting may not be that necessary especially not necessary enough to burn everything doing great I was going to comment I have an example from the past that containers were not solved is when Rails 4 went into Fedora the version of Fedora with Rails 3 end of life before Rails 3 did and there was literally no way if you had not done the non-trivial task of porting to Rails 4 like what do you do? so the example basically is when Rails 4 came out it basically missed the Fedora release schedule window correctly it wasn't timed perfectly with Fedora so it was incredibly difficult to get from Rails 3 apps to Rails 4 apps so Rails 4 went into Fedora so let's say Fedora 15 came out with Rails 4 and then Fedora 16 came out and still had Rails 4 but Rails 4 completely replaced Rails 3 in the distro but we had an app in the team I was on in Rails 3 and it was very non-trivial to port to Rails 4 by the time we were able to port to Rails 4 the version of Fedora with Rails 3 was end of life so we we could have stuck in a container but then the entire container runtime doesn't get security updates so the example I understood your point I just spoke it poorly it doesn't matter this is one of those cases that modularity would make easier repeat so basically the example was Rails 3 was in version X of Fedora Rails 4 came out in version Y the upgrade from Rails 3 to Rails 4 was non-trivial so most large applications that were using Rails 3 were stuck and many of them stuck long enough that the version of Fedora that still had Rails 3 end of life before they actually got to do the upgrade and this is my exact example with like Drupal was the same problem I actually remember when Drupal had not upgraded to PHP I want to say 5.3 and all the distros adopted it so it wasn't even a distro you could choose that you could run Drupal on you had to backpin you had to pin it to older versions and it took Drupal like 6 months or a year to upgrade which is not cool so not on the Drupal guys not cool for anybody trying to run that production so this is kind of explaining modularity in kind of the new architecture which is basically that there's kind of a set of rpms or we have been joking we referred to as bear rpms which of course sounds like the bear like the animal so then we end up with like ursine rpms and we end up with medvet I don't know how to say that medvet rpms etc so any word that you can think of for bear then rpms is also entertaining for us and then you have the modules kind of sitting on top of it so the names are a little arbitrary but imagine the application stream is up on the top and then the base or what is essentially the everything repo today I'm glad you're covering my very important calc use case thing the calc use case is a major driver of all of modularity because there's apparently both a stable and develop version of the calc application because you know alright so moving on we are Q and A which is good we are at 2 minutes so we timed it well we planned the tech problems alright so do we have any more general questions we weren't sure if we wanted to show up like actual examples or whatever the fastest oh but he wants Brendan to go first do you have specific policy that you're advocating for now that we have this technology in fedora so the question is do we have specific policies that we would advocate for in fedora to to keep this same well my first policy would be back the ci objective because that widens our abilities by a lot the second we have good solid ci in the infrastructure a lot of our concerns about the number of different streams of things that we have are at least less than if not go away so that's a huge thing I think is really really important to the modularity project I thought so from the get go so that's the first thing the next thing is I think we should also we should start small in the sense that two streams of something is probably the limit at least and when I say two streams I mean there's maybe something in the oh can we go back to the architecture you know there's a version of it in the base and then there's one other version so two versions now we might have a few exceptions but for the most part we probably want to try to limit it to two-ish until we really start to feel how much work it actually is so those will be some things let's see what else I don't know that's the biggest one I've got I don't know do you have a- again I'm going to disagree with you that I think the policy I wouldn't say this is a formal policy I would just say that anyone who is doing the who was willing to do the work is allowed to do the work if they find that it's too much effort to drop a stream in the next release what's your experience been doing Node.js in multiple versions my experience what does the multiple look like versus the streams honestly I have found with Node.js specifically that it has- sorry the question was how was my personal experience I know I'm getting flagged for time so this will be our last answer sorry my experience has been that it has been minimal additional effort for maintaining Node.js to begin with although we are talking about you know 1% being a very large chunk but it's a little bit of additional work but also the module stream expansion stuff which we'll talk about later in my talk with Mohan makes it a lot easier for me to get it running on 28 and 29 at the same time as well so it pretty much balances out I haven't actually found it to be more work than the regular package. I think we are at time so thanks for coming


And when this was first rolled out, it was unquestioned. I mean, you could not question this curricula, this agenda. But if the students aren't talking about it, the parents sure are forming groups, all kinds of groups across the country. And their point of view is that the schools are using this to drive a wedge between them and their children. And you look at what schools are doing. I mean, they're hiding gender decisions by students. They're hiding even social transitions that are being orchestrated by the schools. They're hiding bathroom policies from the parents. They're giving out age-inappropriate books. And again, they're white-shaming. Parents need to know what's going on in their schools. They need to vote when it comes to time to vote for the school board. And ultimately, if necessary, they need to vote with their feet.


YouTube team keep it clean. What's going on? It's engraving here with another video My apologies that it took me so long to make this video because I just had to sit back and reflect and Wonder what could have been And wonder what should have been I also tweeted it out, too. So I said man Said next year. He was supposed to be a Raven But that's of course not happening now, but nah, it's all good man Gotta give our young dudes a shot. So anyway, you ain't got no choice, but to but anyway Bobby Wagner 29 years old best lying back in the game. He got plenty of respect from Madden cuz they gave him a 99 They gave him a 99 overall matter So he got respect from them, but he didn't feel like he was getting the respect from his team from the Seahawks And I did read something a few days ago that said he said he wanted to he was gonna chop the training camp He wasn't gonna hold out anything, but he was gonna play it safe He wasn't gonna be putting his all in he wasn't gonna be putting himself in danger and risk of getting hurt or anything like that because He wanted to get paid He wanted to get paid he felt like he earned his contract and he has earned his contract and now he finally got His contract so now moving forward the this doesn't have to be one of those things That's hanging over the Seahawks and hanging over his head during the season He can just play ball now and he can play ball and give it his all and know that if Of course, we don't want that to happen, but know that if he gets hurt he got what 40 mil guaranteed Yeah 40.2 million guarantees So even if anything were to happen It'll still be straight financial wise and Again, this is why I When I used to think more on the fan side Like man, why is this guy holding out just show up show up to work. What are you doing? Why are you holding out? Why are you not participating in team activities? Why are you not being there for your boys for your team? What's wrong with you? That's what I used to think before But then as I started to understand the business side of football a lot more.  It does that also stand for not for long It also stands for not for long because things can change like that like that and You could be at the top of your game And you could be coming to the end of your contract But then all of a sudden you take the wrong hit Take the wrong fall Something happens boom You lose out on millions that fast And it is I feel like with the NFL and it's with any sport too But with NFL, I feel like it's so much easier for those guys to lose money Then it is to earn money Because I mean guys can lose money in a matter of seconds Remember a couple of drafts ago was it 2015? I think it was 2015 NFL draft Um Larry me tonsil Larry me tonsil said to be I know Ray Ravens are probably gonna get him He said to be right one of the top offensive linemen taken off the board What happened somebody put out a video of him in a gas mask smoking And I mean he shouldn't have been doing it regardless But so because if he would have never been doing it and would have been part of team keep it clean Then he wouldn't even have to worry about a video like that. But anyway They put out that video of him smoking dropped He dropped to the end of the first round close to the end of the first round think to pick 20 something He would have been in the top five top 10 and he dropped to pick 20 something What was it a little bit before 27 because I can't see the dolphins haven't picked 20 something. Let's they trade it with somebody anyway He lost millions He lost millions Just like that But again back to what we were saying. It's it's so many different ways for these guys to lose money That's why I don't get mad at players when they hold out Now with with the Melvin Gordon. He's in the whole little dispute now Philip Rivers got involved too Phillip Rivers got involved too and Phillip Rivers did not help Melvin Gordon's case not one bit with what he said He said that we got a lot of guys they love to run the football and and he said we're gonna we go what we got Those weren't the exact words, but that's pretty much what he said. He said we go what we got we're gonna stick with what we got He said we love Melvin Gordon, but we're gonna stick with what we got and Yeah, Melvin Gordon saw it he tweeted out about it at all so I Me I don't I don't feel like um Like Melvin Gordon is worth this crazy amount of money but At the same time I I don't I'm not mad at him for holding out Because he wants to be paid he wants to be taken care of he put it out there himself He put his body out there on the line and just like but I know this is Bobby Wagner video, but still um These dudes they They earned a lot of money and a lot. I know a lot of people be like oh man Why the football players get paid so much they didn't pay to play a game He just put their bodies on they put their lives on the line every game every single game It's very physical it's a very physically demanding sport and they put it out there Every single even in practice Training camp walk-throughs all that stuff. They these dudes can get hurt at any second Any second and they could lose a lot of that money like we talked about earlier, but anyway Bobby Wagner great linebacker He earned it and he got it Seahawks just dishing out money this offseason, huh? Yeah, they torn it out there Took care of Russell Wilson Took care of Bobby They went and got a um Ziggy Ziggy Hansa See y'all they've been throwing it out there man So it's nice when they take care they own no It's nice when you take care your own when it's somebody that you drafted Somebody that you developed and you get to watch them grow and watch them become one of the best in the league One on offense and one on defensive side Russell Wilson and other Bobby Wagner to the best in the league to a the best in the league So this is a good move by the Seahawks Congrats to Seahawks fans to the 12th man shout out to y'all and Hey enjoy Bobby Big money big money Bobby. That's what you start calling them big money Bobby So anyway like Bobby Wagner won't be with Seattle I'm out


Hello, how are you guys today? We're going to do a quick day of eating breakfast, lunch, and dinner, so I'm just going to show you and talk about what I'm having, why I'm having it, and then we'll move on to the next meal.  So we have our Iberical Pork Breakfast Sausage, which is new, just got it just in stock. Maybe I'll actually try that here for you guys real quick. We have our Maple Brown Sugar Organic Oatmeal, and we have an apple. And if you guys are not familiar, I was on the carnivore diet for about eight years. It destroyed my liver. Now I'm following a liver detox diet, which involves a small amount of protein, you know, four to six ounces per meal, sometimes eight ounces, just enough to give the body all the amino acid, saturated fat, cholesterol, all the nutrients we need. The bulk of the diet is a lot of starch and fiber, especially soluble fiber, which is very important for detoxing the liver, so a lot of high quality organic grains. And then I try to include some higher gut motility foods, some higher volume foods like apples, also sugar. Really, any sort of carbohydrate macronutrient, whether it's starch or sugar or whatever, is excellent for detoxing the liver. And you know, if you're carnivore for eight years and it destroys your liver, then you kind of have to do the opposite for a long period of time to reverse it. You know, you ate a lot of meat for a long period of time, now you got to reduce the meat and eat a lot of grains and starches. It's really about having a balanced diet, and for now, we have to imbalance it a little bit to fix the problem. So we have our very high quality protein, our starch, everything to detox the liver and a little more sugar. I have about a teaspoon of masticum with every meal. And if you guys have any questions, I have so many videos in-depth on everything I talk about here, whether it's liver, detox, why starch and sugar is actually good for you, why carbs are good for you, why the keto diet's bad, talking about masticum in-depth. What's different is I'm not supplementing for a few days, and I haven't really been having a water key for a little bit and water key for grains a little bit, but I want to get a hair mineral analysis soon, so I'm just like taking a break from everything for about a week so that my hair test isn't too crazy high in anything. But that's really all we have to show you guys for breakfast.  The plain just has a little salt and the breakfast sausage has some brown sugar and maple syrup. This is phenomenal. The Ibarico pork is such a high quality meat. Even that plain sausage, completely amazing and delicious, really, really good. Honestly, the breakfast sausage isn't much different. I think you could have put a decent amount more maple syrup and sugar in it. Both incredibly delicious, very fatty, very rich. The Ibarico pork flavor really shines through. These are phenomenal. Really, really tasty, really tasty. So the Ibarico pork sausage is available on Frankie's range wheat. Unfortunately, they are like $20 a pound because the meat was super expensive and the butcher charged me a lot to make the sausages, but amazing, amazing, amazing, really good stuff. So just try one. See if you guys like it, but we'll see you for lunch. All right, guys, just got back from work. Maybe there will be a point in time where I'm not exhausted from doing manual labor in a warehouse, but it is not yet. We have what you guys like to call the peasant meal.  However, I do not think they would have been using grass-fed beef tenderloin in their stew and such a large quantity of meat would be unheard of. But since this is the quick day of eating, I'm just going to give you guys a little overview of what I'm having and why. I'm taking a little bit of a break from the waterkeeper, but normally I do have it for lunch as well. This is just barley and filet mignon, some onion, a little bit of wine, a little bit of collagen broth. Didn't add mushrooms this time. Forgot to buy them, but it's still really, really good. We have our protein in here. We have some amino acids from the collagen. The barley is the bulk of the carbohydrates, good amount of fiber, really just giving me some caloric nutrition. And then the bread is more carbohydrates, a little bit of variety because the meat content in the stew is a little bit high. If I'm not having the bread, I will put some potatoes in the stew as well and just reduce the protein content. But we just want a lot of carbohydrates to detox the liver, give the candida something to kind of eat and then the probiotics keep it in check and then they can kind of usher the toxins out of the body because fungus like candida is protective and we want as much starch, barley, carbohydrates as possible. The bread to soak up all of those toxins coming out of the liver. So keep in mind a very important aspect of the current diet that I follow is the volume, high amount of starch for the gut motility. That's also why we have some apples here. Same thing, high volume food, water, fiber, starch, just different sugar profiles to kind of allow the body to use the different enzymes and digestive processes evenly. Really, it's whole foods, balanced diet, the bread's homemade, everything's organic, everything is the highest quality. So we have a minimal amount of toxins. We're giving our body the protein, the nutritional needs, the cholesterol, the saturated fat and a large amount of the carbohydrates to detox the liver. We will have a teaspoon of mastocom at the end of the meal as I do with every meal. I usually have it before I have the apple. And supplement-wise, we're taking a little bit of a break this week because I want to get a hair mineral analysis done so I'm not going to take supplements for like a week. I'll cut my hair, get it tested and then I'll see where I'm at with the minerals. I've mostly been taking B complex and vitamin C and then some minerals, maybe one day I'll do the selenium, the next day I'll do the manganese boron molybdenum, but for now, we're just taking a little bit of a break. So I'm going to enjoy my lunch, maybe relax a little bit and then I'll see you guys back for dinner. Ladies and gentlemen, we are back for dinner. I did a few hours of work on my computer and then went to the gym. So we have what we've been having for the past few months, organic gouda noodles, roast beef from pranky strange meat chopped up and mixed in and the sauce is a white bean puree, which is just some white butter beans, organic, white onion sauteed in the pan and then a little bit of coconut oil, that gets blended up and makes a very nice sauce that adds fiber to this because the gouda noodles are a refined wheat flour that do not have a good fiber content. So not that great for liver detox or gut motility. And I also put a little bit of the collagen broth in the bean puree and in this and if I have to, I'll add a little bit of water if it's still a little dry. Of course, we have our apple and masticum as with every meal. Just a lot of starch, some fiber, as we've said earlier with lunch and with breakfast, trying to detox the liver, just get enough protein, not too much, usually four to six ounces of protein per meal and overall just keep the tokens to a minimum. So that's really it. I'm gonna have most of this whole bowl, maybe half an apple or the whole apple depends on how full I am, teaspoon of masticum, wash it down with some glass bottled mineral water and I will have some more masticum and some activated charcoal about an hour after this meal helps me sleep a lot better for sure, just kinda soak those liver toxins into the charcoal. So I'm gonna enjoy my dinner. Thank you guys so much for joining me. If you go to frankdestofout.com, you will see everything from Franky's Syringe Meat, Franky's Syringe Foods, organ supplements, Wi-Fi shielding, any product you've seen here, whether it's the Iberico pork sauces for breakfast, we had some of the tenderloin stew meat for lunch and we have some roast beef for dinner. It's all on there. A few things that I usually have that you didn't see in this video today, water key for water key for grains, we have those on Franky's Syringe Foods, different like burger blends, tenderloin, ground tenderloin, top brown on Franky's Syringe Meat as well, just a whole bunch of products, guys. So be sure to check out frankdestofout.com. Look around a little bit, see if you like anything. Outside of that, guys, please drop a like on the video. Leave a comment down below. Make sure to subscribe and check that notification bell and I'll see you guys soon.


Alright, let's watch the whole thing here. There is sound. Okay, a couple of things here. I don't know. It's gonna go away from the audio just a bit. The first thing I will be careful about is having such a massive Dutch angle with your camera. This is usually for horror movies or super comfortable scenes and I think it just gets a bit too much. I don't think, to be honest, we need it. It's just rare that you want to put something like that in there. Just it's so for such specific reasons in terms of filmmaking and it's, you know, if this was like she comes in and some other arms grow out and she gets fangs and all kind of creature-y it's all kind of weird Sam Raimi style something. Then you could have that but the first thing I would do is just flatten out that horizon and then just have her come in and you can always pan left to right, you know, if she is, if he ends up being here and she needs more room or something to go left to right, you know, she goes in here, she goes right to left and turns. You can all accommodate that by panning and something. The other thing that happens is that when you hear, she gets really low. If you look at the thirds in my, whoa, sloppily drawn thirds here, she gets very, very low. Same thing here, especially around, yeah, that was the lowest part, but also she is very assertive. You know, she's, she is the dominant person here, but then visually, she's lowered in him. There's something that doesn't quite work for me with this. That's mostly through all of this. And then here, again, I mean, you know, you will have diagonal lines that make it dynamic, but I don't think it's needed here. Also, watch out. You got a tangent right there with him not moving. That's the other thing is, the other part of the animation feels very, one axis and a bit simple. I like that she is walking and turning. I think that's pretty cool. Why not? That's a good complexity. It gets a bit stiff in the head. There's an overall head, world space, IK feel to it. And then the other part is that when she lifts her arm, I don't see a massive change in here, shoulder and chest, where it feels like this, it's a bit of a separate move compared to the rest of the body. And that kind of goes into the rest of the shot as well, where this feels like this is straight. And then we just have the upper part of the head rotated over without the lower neck in there without anything in the spine, for a bit of a different line of action. I feel like both shoulders go up at the same time. There's some separation that's needed here. This feels like there's a bit of an offset compared to this, which is good. But then we end up being a bit too together. Even though silhouette wise, it's different. It's just a twinning aspect of it, of just both arms doing the same thing.  This arm just kind of pops into frame over one frame and then sticks there, versus having an ease in or especially overshoot with that level of energy going up and down. They go down at the same time. It's a bit too post suppose at this point. This forward move feels a bit simple one axis, same thing with the head going up. And again, it feels like it's just basically this joint there and nothing else is part of that post change. And then as we go back here, the timing feels a bit even from here to that. So when you grab it, it feels like a fairly straight linear line.  I do like that she starts with the shoulders and it has that, but then it's unfortunately back into very simplified one axis move and also just the head joint there. And again, spacing wise, it feels very harsh if you look at if you check that spacing here, bam, then we hit just that wall here. Same thing with the body, just everything is very linear. And again, we go back in one axis, both arms here moving at the same time. And then spacing wise, it's all where this pops into frame, but then sticks over one frame and then pops back onto that. And then again, we go into just a very separate upper neck here or just the head joint there. Rotation with her also not really, there are no idards. Like it doesn't feel like she's really focusing at that point. She gets there's a dart here, but then after that, she feels like it's like a robot that malfunctions where it's just that stare. Now you might argue that's part of the line here. So will you please just let me have this one thing? Yes, you might say, well, then that's when she's like just freaking out manic, maybe, maybe, maybe by that, it just, but it just adds to that whole bit of a simplified body mechanics feel to it. Same thing with him. I know she's holding him, but then everything is really just located in here. And especially there again, I know she's holding him, but it gets very one axis, just up and down, up and down. And then this movement and the jaw is the same thing here. If you look at her mouth here, I think we go too quickly from shape to shape. You pop from this to this and then it locks. Like there's no, there's no arc in it. There's no ease in and out. The jaw just pops down. It's a little bit of an ease in here, but then it pops back down. It's just very chattery. I think there are too many keys. It needs to be a bit simplified, but at the same time, sometimes it feels almost a bit broken here in the envelopeing, but you have this big jaw move where it doesn't really affect the head and especially here on him. It just basically just stuff is moving without anything else in there. You have to think in terms of just if it's like a big accent and you move that jaw down, is it going to also pull the head down a bit and also in all axes just to give it more complexity and natural feel to it versus just this computer move. And then do we need to have all of those jaw movements up and down? It just gets a bit too skeleton jaw chattery. That's my main thing. Even through here, you can see that he seems to have head, IK head space, you know, being in world space there where you go back and you have all those rotations in the chest, which I like. It's good that there's movement in there. It doesn't just glide back, but it makes this very separate where this is something and this is something else. And that's mainly that. That's to me like the main, the main impression watching this where it gets, it gets very simplified, very robotic with him. The composition at first, but then just all the moves that feel spacing wise, a bit poppy. And then the moves sound to get a bit very linear and even and everything is very splined in one axis simplified.  Like there's a rhythm to it. That when you look at her and you turn the sound off, it's basically forward and slide back where it doesn't follow the rhythm and energy and the peaks and valleys of the audio. All day, just all day, just socks. So will you please just let me have this one thing? Yes. Yeah, I think we need to play a bit more with movement left to right in the body, some more complexities and just the overall line of action where we can have a bit more movement, not saying that she has to tilt forward and tilt back and all that stuff, but just getting out of that one axis feel. All day, just socks. So will you please just let me have this one thing? Yes, I will. Okay, don't hurt me. Great. I don't mind that she is in his space and grabbing him please just let me have this one while saying please. It's interesting contrast of she's saying something in a polite way about the actions of difference. I think that that idea I will keep. I like that one thing. Yes, I will. Okay, don't hurt. And this when he goes, yes, I will. Okay, don't hurt me. I mean, this could be something where he is so taken aback by by her aggressiveness where you know, the shoulders could be up, he could be really tense. And maybe so we don't just have that sliver here. It could be more towards us. One eye closed, one eye barely open like he's waiting for a slap in the face.  I think you can play and push that pose a bit more as well. And even here, she could move away against he could still have the shoulders up. Even if she's holding that and she lets go, he would move a bit because that tight grip would let go. So there would be some movement on him, but he could still have some tightness in there. So the shoulders are up. And even he at the end, she feels so robotic. Again, it's just that upper part here moving nothing else, which gives it that that rough blocky feel. And then that turn where the head is almost locked, but then she does that tilt with those eyes. It doesn't quite feel like she's looking at him. It's like the height is there, but it feels like she's looking past. So he's right. Yeah, that's kind of that. So it's a little technical things to just to get it out of that more simplified mechanic stage. All right, thanks. All right, there's an email you can sign up, you can start whenever you want, you can submit whatever you want, you get 16 submissions, either way, a like and subscribe would be awesome. All right, thank you.


If you've watched the channel for any amount of time, you know that I think Linux is amazing. I'm pretty sure that the channel name probably gave it away. But there are certain things that I think that Linux excels at even beyond the things that I normally talk about. And one of those things is saving people money. Now, I know what you're thinking. Matt, how does Linux save me money? It's free. I mean, obviously, that's one way it saves me money. But outside of that, it's not actually actively saving me money. Is it? Well, kind of. So today, what I thought I'd do is talk about a few ways that Linux actually saves you cold, hard cash. So let's go ahead and jump in. So the first one is probably the most obvious. And that is that, as I said briefly in the intro there, Linux is free. You never have to pay for it. If you are fairly new to the computer using experience and you just say upgraded from Windows 10 to Windows 11, you're probably thinking, well, Windows is kind of free, too. Well, see, the problem is, is that it's not actually true. Somewhere along the line, you paid for Windows, even if you don't remember doing it.  That's not what I'm saying. What I am saying is that somewhere along the line, the cost of that Windows license was either baked into a computer that you purchased or you just happened to have a Windows license that happened to have been purchased a long time ago. So you bought Windows 7 or you bought Windows Vista or something like that now. I know I'm going to age myself a little bit, but there used to be a time when you went into a store, like an actual brick and mortar physical store where you could, you know, see grass along the way and there was trees in the parking lot and stores. You'd go into a store and you'd buy a disk that had Windows on it. They come with like a 16 or 18 or whatever digit code that you'd have to type in in order to actually use Windows. And you had to buy that thing and usually it was around $130 to $200. It was pretty expensive. This was long before the idea of buying a manufacturer's license even came into existence. So somewhere along the line, the point is you paid for Windows, whether you paid for it with a key, you know, that you bought or it came included in the price of your computer. With Linux, you never have to pay. Okay, it is 100% free as in beer. It's also free as in freedom, which is awesome, but it's also free as in beer. Now this is really important because it just means that you can download Linux and put it on anything that you own in terms of hardware. You can do that. You don't have to pay and you don't have to ever pay for an upgrade. So if sometime in the future, Microsoft decides to update to Windows 12 or Windows 13 and they decide to start charging in, which probably won't happen, but they could. That could be something that you had to pay for. And if you ever buy a brand new computer again, you're likely paying for a license of Windows, even if it's just baked into the price with Linux from update to update, everything is free. So that's the first one. The second one is actually the one that I think is the most important. And that is that Linux enables you to use your hardware longer. And this one is actually too full. The first one is that it's allowing you to use your hardware longer, meaning stuff that you've already owned. So let's just say in 2012 or so, you bought a laptop. That computer very likely is not going to ever see an update to Windows 11. It just does not have the hardware to run Windows. Windows is not only fairly intensive when it comes to resources, but it's also fairly restrictive on the hardware that it will run on because of security and all this nonsense that Windows and Microsoft have enabled. With Linux, you don't have that problem. I guarantee you, if that computer still turns on and runs decently well, you can put some version of Linux on there, whether it's a 32 bit operating system from 10 years ago or something like MX Linux or even Linux Mint or something like that. Something that runs with low resources and is meant for slower or older hardware. You can definitely find any number of distros that will run really, really well on it. And basically what that means is that you can use that computer for far longer than what you would if you were lying on Microsoft for updates. Because eventually, if it hasn't happened already, Microsoft will stop updating that version of Windows. That means no more security updates ever. So by using Linux, you can use a piece of hardware for much, much longer and stay secure while doing so. As I said, this point here is to fold. And the second part of it is that it enables you to use hardware that is older from someone else. So let's just say you need a laptop and you don't have a lot of cash. You can go on eBay, find yourself a $200 or $150 Lenovo ThinkPad or something like that. Have it sent to you, put Linux on it and that thing will last you a year, two years, maybe even longer. And specifically with those Lenovo ThinkPads, those things are very repairable. So if you were to get one and say the keyboard was bad or it needed a new screen or needed a new trackpad, those things are so popular that it is very easy to get parts for. Turns out that older hardware usually is more repairable. So not only can you put Linux on that thing and have it extend in terms of actual software support and performance because Linux runs with less resources, but it also allows you to buy parts for that thing and upgrade it and prolong its life in terms of hardware as well. So that's the second point. And I think, again, as I said that that one there is the most important one. So the third one is that Linux requires less electricity. Now this one here is very subjective. It's really going to depend on how you use your computer. If you have your computer on all the time and it's running high intensive graphical processes all the time, it doesn't really matter what operating system you're running.  But on the other side of that, if you just use your computer like a normal person, like you just know how you have it on during the day and you just do normal things with it and you're never really taxing your hardware whatsoever or even if you are just for a little while, Linux tends to use less resources over time and less resources means that the CPU is running less or a lower frequency more often your GPU is running less or to lower frequency more often the fans are running less you get the idea the less those things ramp up to their highest capacity. The more you're going to save in terms of electricity and like I said, Linux tends to use less resources overall than Windows does. For example, you can even find the most high intensive Linux distribution out there. It's going to run you at about a gigabyte of memory out of the box. That's an average right that's and that's very rare these days that you get close to that gigabyte threshold. And remember that memory is really only only one metric. But there is that that's about the highest you're ever going to see on a Linux box out of the box at idle with Windows. Now again, this is average. You're going to look at between two and three gigabytes of memory out of the box at idle. And that's really going to depend on any number of factors really. If you're using a version of Windows that came installed on your computer, you're probably having a whole bunch of stuff running in the background. You have pirate software and, you know, synaptic drivers and God knows what else. All of that stuff plays a role in how much resources Windows uses out of the box. So again, it's something that is very kind of subjective on how you use your computer, what's running in the background, how your CPU handles certain processes and all this stuff. So it's not a 100% sure thing that when Linux is going to save you money when it comes to electricity, but I would be surprised if it's not the case for the vast majority of people. Now, again, whether or not that's appreciable is really going to depend on how you use your computer. Now the next one on the list is something that I may be wrong about mainly because of my bias against Windows. But for the most part, I don't think Windows has a very good community. Like if you want support for something that goes wrong on Windows, yeah, you probably can search for it online and maybe you'll find an answer. But getting actual help is a more corporate experience. You're supposed to go to Microsoft for support. And whether that's free support or it's paid support really is going to depend on what you're trying to do with Linux. While there is paid support out there, most of that is enterprise for the vast majority of people who just use desktop Linux. When it comes to support, all of that is community based. And what that means is that for again, unless you're like a corporation, you're never going to be paying for support probably ever. So anything that you need help with, you go to the community for support, you're not going to have to pay for it. And that's another way that you'll be saving money. This one is a little bit iffy because you probably aren't going to pay for it on Microsoft either, but you have a higher chance of paying for something when you use Windows in terms of support than you do on Linux. Simply because, you know, it's pretty likely that you paid for Windows somewhere along the line as I explained earlier. And that included some measure of support. So that is paying for support in some ways. But also if you're paying to extend the life of like Windows 7 or something like that, you know, that's paying for support. And there are obviously other ways that Microsoft charges money for support along the way. Now, obviously the vast majority of people who use Windows never have to experience those things. But I've also found that when something goes wrong on Windows, the vast majority of people don't solve the problem at all. They just nuke and pave or they do a hard reset on their computer and whatever and they just carry on. They don't actually look for support at all. Whereas on Linux, you're much more likely to solve problems and try to actually fix the thing that's going wrong. So support is another area where it's very unlikely that you'll ever have to pay on Linux or when using Linux. And finally, the last one is that you're less likely to pay for software on Linux. Now, this is a double edged sword because it means that you're not going to have the highest quality of software always. Like there's a reason why people will pay very good money to Adobe for the creative cloud stuff. That stuff is pretty well received when it comes to whoever uses it. It's really good stuff. And if you make money creating stuff, it's worth the price, right? On Linux, for the most part, you don't pay for open source software. Now, obviously those projects still need to make money in other ways. So they ask for donations or maybe they have a pro tier or something like that. But for the most part, if a project is open source, you can get that software for free. And that's another way you can save money. You can use things like GIMP. You can use things like Audacity. You can use things like OBS. These things are all free and open source. And that means that you don't have to pay for them. And like I said, if you have the means to do so, supporting those projects is a good thing to do, as I've talked about on the channel before. But when it comes to actually saving money using something free like GIMP or Audacity or OBS or Firefox or VIM or Kate or whatever, you can use all of these things. They're free. You don't have to pay for them. And that can save you some money when you might have to pay for alternative solutions if you use Windows. Now, that one, again, is a little bit iffy. I know I've said this quite a few of them, but a lot of these free software options that I mentioned are also available on Windows. So if you can't switch to Linux, maybe you have to have Windows for some reason for work or maybe there's a game that you just can't play on Linux or whatever, I'm not going to judge you because you use Windows. Some people just have to use Windows. That's fine. If you still want to have some of the benefits of not having to pay for software, a lot of this free and open source stuff that we have and enjoy on Linux is also available on Windows. You can get GIMP, you can get Audacity, you can get OBS, Firefox, VIM, all these things. They can get begun on Windows and you can experience some of the awesomeness that is free and open source software right there within proprietary land and be as happy as you can be there in Windows. So that is something that you can kind of keep in mind. If you can't switch Windows or you can't switch to Linux, you can still use free and open source software and that can save you some money. So those are the things that I thought of when it comes to how Linux and open source software can save you some money. If I've missed something, which I probably have, you can leave those thoughts in the comment section below. I'd love to hear from you. You can follow me on Mast on our Odyssey. Those links will be in the video description. You can support me on Patreon at patreon.com slash Linux cast, just like all these fine people. Thanks to everybody who does support me on Patreon and YouTube.  Without you, the challenges would not be anywhere near where it is right now. So thank you so very, very much for your support. The way the economy is right now that it is even more important that I'd be grateful for everybody who does support me. So thank you for that. Thanks to everybody for watching. I'll see you next time.


!" Super Tuesday has been known to make or break a candidate, so why do we put ourselves through this early insanity when we still have so much to go in the election season? me to explain with pizza. Basically, on Super Tuesday, a candidate can get a third of the pie in one sitting. Or, in political terms, they can win more delegates than on any other single day in the primary race. 1,357 to be exact. And that's important because to get the Democratic Party nomination, you have to get at least 1,990 delegates. But even if a candidate gets half or even a third of that massive slice of the delegate pie, they'll leave the Super Tuesday pizza party happy. Plus, Super Tuesday is a good indicator of how a campaign is running. If their message resonates in several states, all with really different populations and issues, that's good news for a presidential hopeful. For a lot of candidates, it's a do or die day. Pretty much everyone who's dominated Super Tuesday has gone on to win the Democratic nomination. So how did Super Tuesday get to have so much power? Well, it all started because of fed up Southern Democrats. The budget will be squeezed. Taxes will go up. That's Walter Mondale. Anyone who says they won't is not telling the truth. He was the way too liberal Democratic candidate who lost to Reagan in 1984, like badly, like lost in one of the biggest landslides in the history of the United States badly. So 20 states, mostly Southern ones, decided to band together and hold their primaries on the same day. The idea was to have more influence as a region and get a more moderate candidate elected. Unfortunately for them, the plan backfired. Southern favorite Al Gore ended up splitting the South with Jesse Jackson, which ironically cleared the path for a Northern liberal candidate, Michael Dukakis, to win the nomination. An upset between moderate and progressive candidates leading to a fragmented primary? Now that doesn't sound familiar at all. Anyway, there was never a President Dukakis. But the strategy Southern Democrats had concocted did work in 1992 when Arkansas Governor Bill Clinton won the nomination without winning Iowa or New Hampshire.  Instead, it was in large part due to a Super Tuesday sweep. Super Tuesday. Big night for Governor Clinton in the South. Now, it's no secret that the Super Tuesday strategy was hatched up by white Southern Democrats looking to gain influence for white Southern voters. But they accidentally made Super Tuesday a pretty good barometer for who Southern Black voters are leaning toward. In states like Georgia and Alabama, over 50% of Democratic voters are Black. And that voting block can have a huge say, like they did with Bill Clinton in 1992. This definitely didn't hurt his case either. So let's come back to today. Now that we've tossed the dough and put the toppings on, let's toss this pie in the oven. With 1,357 delegates at stake, Super Tuesday can completely change the momentum of the race in just one day, even if we think things are going one way when the early states vote. For people who are voting in states that have primaries after Super Tuesday, they may have a better idea of who the most viable nationwide candidate is. We were actually in a similar situation back during the 2008 Democratic primary. The race was still hotly contested when Super Tuesday came up, and on that day, 22 states in one territory held their elections. With over half of all delegates up for grabs, Barack Obama won 13 states that day, and it solidified his status as the frontrunner. It proved that he was a viable nationwide candidate and that he could turn out voters in all parts of the country. Which, spoiler alert, he also did in the general election that year. What remains to be seen this year is whether the Democratic base can coalesce around a single candidate like they did in 2008.  Share this video if you learned something about Super Tuesday.


This video explains how to include books in both your notes and bibliography, according to the 16th edition of the Chicago Manual of Style. I will show you how to format citations for print books, including the edition number, edited books, and an individual essay or chapter in a book that has a different author than the book's editor. For specific information on ebooks, please watch our video, How to cite ebooks. In these examples, all punctuation is in red for emphasis, and your actual notes, all font, will be black. For your note, start with the author's first and last name, followed by a comma. Next, enter the title of the book in italics. In brackets, enter the city of publication. If the city is unfamiliar or easily confused with another city, add the abbreviation for the province or state. After the colon, enter the publisher's name, leave out words like incorporated, limited, or company. After a comma, include the year of publication. Outside the bracket, place a comma, followed by a page number, where the reader can find the original quotation. Don't forget a period at the end. Also notice how in your note, the first line of each citation is indented, and the following lines are aligned left. In your bibliography, put the author's last name first. There are also differences in the punctuation. In some places where you used a comma in the note, you will use a period in the bibliography, and there are no brackets around the publication information. In your bibliography, the first line of each citation is aligned left, and the following lines are indented. To find all the information you need to write your citation, look at the book's title page at the beginning of the book. Here's the title, and the subtitle, the addition, and author's name. At the bottom of the page is the name of the publisher, and the city of publication. When one location is listed, just use the location that is listed first. You will often find the year listed here as well, but if it isn't, turn the page to find the year that it was published. Previous editions are sometimes listed. Go with the most recent. If it's a library book, the year will also be on the spine label. And here's a hint. You can look up that book in the library catalog. All of the information will be listed there as well. Next, let's look at what to do with addition numbers. For editions of a book other than the first, include the addition number after the title, using the abbreviation, ED. In the note, a comma follows the title. In the bibliography, a period follows the title. What if the book indicates that it was edited? If you have an editor instead of an author, simply add the abbreviation, ED, after the editor's name. Or if there is more than one editor, use EDS. If you have an editor in addition to the author, begin with the author's name. After the title, in the notes, use the abbreviation, ED, for edit by, following by the names of any editors. In your bibliography, spell out edited by. In your note, even if you have multiple editors, do not use EDS. Finally, what if you only need to cite an individual essay or chapter in a book that has a different author than the book's editor? Start with the author of the essay or chapter. Remember, in the note, the author's first name goes first. But in your bibliography, the author's last name goes first. Next, include the title of the essay or chapter in quotation marks. After this, write in and the title of the book in italics. After the comma, include the editors. Remember, in the note, to use the abbreviation, ED, and in the bibliography, to spell out edited by. In your bibliography, also add the page numbers for that entire essay or chapter. In your note, you only need to indicate the specific page that you took the quotation from, and look carefully at the differences in the punctuation in the notes versus the bibliography. For more information about notes bibliography style, check out our other videos or visit the Munn Libraries website for our Chicago Style Guide and chat live with library staff. Thanks for watching.