All right, everybody. I want to get started only about 30 minutes and I got a lot of things. I really want to talk about Right away. I want to ask how many people have read either of these books design patterns in Ruby or design patterns elements are reusable object software alright excellent, so I'm gonna we're gonna talk more about these these Principles up here, but if there's if you only dip into this talk for two minutes, and then you leave I one thing I'd like you to take away from it is how much I believe design how important I believe in upfront design is in startups and These principles have been very helpful to me And I wish I had read these books earlier because I feel like I would have saved myself some pain My name is Mike Sebelsky. I'm one of the co-founder of the company other inbox which is based here in Austin and This talk is really just like what have I learned while building the product So if I could go back in time and tell you know two years ago tell myself Here's all the things you're gonna encounter and ways to save time. Here's what you really should have been trained to do This is what I would tell myself All right, no problem So I the question was do I would run on a treadmill why program I have a treadmill desk And it's it's on our recruiting page Which could be a good excuse to talk about recruiting so thank you I Have a desk set up with to write code on but I don't actually use it that much because if you think about when you're doing a task Where you have to turn your music off? That's the kind of thing we have to stop the treadmill So if you're walking at one mile an hour you can easily comfortably type So it's good for like I can treadmill and write emails and things like that But as soon as I write code I find I have to stop it And so well what happened is like three hours would go by while I'm in the zone and I realized I haven't been treadmilling So what's the point of having this elaborate desk? So it's a nice gimmick to be able to talk about at conferences, but practically not that interesting But there is a whole community of people on the internet who are into treadmill desks So if you Google it that sounds intriguing to you go check it out or you can buy mine for me All right, so my talk is called Ruby for startups really I mean You know good code is good code no matter what environment you're in So but that what I'm talking about is it what's unique about being in a startup as opposed to other environments as opposed to Building a project for somebody else for your consultant or doing something open source or doing it for yourself Well, it's really these things Typically in a startup you're you're building you don't even know what problem you're solving So you're creating an unknown solution to an unknown problem Maybe this isn't true 100% of the time But at least with other inbox and a few other of my friends that I've helped The idea that we started with is so radically different from what the ending result is that even when you think you have it Really well-specced out. It's gonna be so simple. It's really gonna solve this big problem Ultimately you were you were on the wrong track So you're gonna be changing your tracks and you almost always have scarce time and resources I mean unless you're spun out from some bigger company that's funding you Hypically you're writing code under kind of uncomfortable Circumstances you need to start making revenue right away. You need to prove out your idea right away And so that colors everything you do At the level of your craft in fact Like I don't know if anybody reads Eric Reza's blog startup lessons learn But it's extremely influential to me and he has this great line in here His whole point is that startups are really learning engines And so what it's like to be writing code inside of a learning engine like that is this ferocious customer-centric rapid iteration all right, so This talk is loosely organized and it's just about what I what would I tell myself? About how to thrive in these conditions. I really boiled it down to two things one I would spend I would not I would resist the urge to be a cowboy and just write off and start writing code And start you know fulfilling the Requirements You know for what I thought the software had to do I would spend a lot more time On the whiteboard not doing like formal documentation or do anything, you know with like I don't know all the special case tools or fancy things like that I'm just talking about thought experiments Imagining things really taking the time to talk about some of the stuff that we've already seen today about you know How different ways you could use modules and namespace and the kind of things that that you talked about in the in the classes yesterday I mean it I'm self-taught as a programmer and as a Rubyist I don't think there's enough material out there for for auto didax on on good design That's one of the reasons I wanted to start with those two books because I think especially the Russ Olsen book is so Accessible to somebody who's never been formally trained in design. So that's the first thing I would tell myself to do is spend more time designing and Learn more about design so you can your the result is better And then I would also just give myself like a long litany of mistakes to avoid or good practices And then you know, I would be spewing them at my myself as I'm fading back into either returning to the future time I wouldn't stop. Oh, it's gonna be really hard to implement SSL. You're gonna work about this disappear alright, so First part of my top now that we've gone done with the prefatory material good design Russ Olsen pulls out four ideas from the original gang of four book the design patterns book And then he adds one that's kind of more unique to our culture And I'm gonna go through these one at one at a time here Some of these I have more specific examples from others because we haven't encountered all of these problems in even order I just wanted to mainly give you as much a real-world stuff as I could so first of all Separating out the things that change from the things that stay the same if you've read like other kinds of software development literature It's something this is called design for change also and the idea is you want to take things that are That are that are general like that like they're actually for example the preceding talk from from thought bottom I mean that that's like core to what they do anything It appears to me that if they build anything that is not absolutely specific for one of their clients They make an open-source gem or a plug-in out of it And then that can that lives far away from the application code. That's more likely to change or Things like you know the formats of a file or global global variables or input and output formats These are all things that over the life of your project are going to change So what you do is you isolate those design decisions into their own modules and use things like encapsulation and information hiding So that you can mess around with the internals of that stuff You can swap out external services and API's without having to really do a whole bunch of changing for the rest of your app So here's a specific example First time in other inbox like when we started to really deal with the heavy volume of mail We need we used simple queue service from Amazon to scale to be able to share the workload across boxes So this is probably what a lot of people would do. I'm using this jam that gives me a nice interface to ask us I just threw it into a constant and they had it in an initializer in our rails app And then you know first time I needed to use a queue inside of one of my classes I just used that constant to initialize it and that's actually fine. There's really nothing long with that We weren't even sure we wanted to use sqs. So Great. Well, then we started to like use it for everything like every part of our app You know, we have a significant amount of back-end processing that we do and we'll pipe a lot of it through sqs So this pattern started to appear all over and you know We were moving a million miles a minute with our ferocious iterations and nobody ever Really thought, you know, this is getting to be pretty brittle and if we ever wanted to like use a different Messaging provider or something significant like what if we want to change? Oh, like well here I'm fancy little graphics here Like what if we want to use a different provider or what if we want to change the naming convention for what these queues look like? Well, that happened at the same time Amazon deprecated or got rid of the original version of sqs and we had to move to sqs too and We need we had so many of these sqs queues going on that the naming conventions really had to change So we took this is a good time to do some refactoring and we never had to worry about this again And this is what the code looks like now now whenever you want a queue You just ask the queue fetcher Module to get it for you You just give it the simple name like a queue name would be something like Mail like I want to look at the mail queue and you don't really care how it's namespaced or organized You don't even really know at this point that you're using Amazon you're you're really dealing with like a general type here, and then you just manipulate that queue however you want and the actual Queue itself looks like this or that class. It's very simple It does what we did before but now anytime we want to change something to do with our queuing system We only have to change it in one place. It doesn't really have a big ripple effect to the rest of the app This is even a little bit more isolation. I'm gonna talk about later It's our config variables or our global variables or sort of our application state We put that we put that into its own Module which I'll show you about how you do later. I'm actually not hundred percent sure I like the way that is when I started putting this slide together I'll show you some other principles like other ways to equip an object with references to other objects That might be a little bit better I'm just not sure I really like that because that means when you want to use a queue fetcher You have to assume that somebody has already initialized sqs 2 for you and it I don't know where is Something about that just seems fishy to me another thing that you should Hide away is business logic So or something that's likely to change that if you can you'd be better to encapsulate it So when we first receive a message into our system, there's like a hundred different things that we want to do to it to Make sure it lands in the same place, but all that code only applies when the message initially arrives So we used to have a bunch of this stuff inside of like we have this giant message Model right now, and we used to have all this logic that was only ever used one time and that's it's pretty Complicated a lot of conditions in it You know that was all mashed together in this one module Well at some point it became too hard to add new features too hard to fix bugs So we created this envelope class and an envelope is like a think it's just a module that has all the rules to do with Has to do with routing a message now. We have something that we can test separately There's not a lot of coupling between the message class and all this code that has to do with delivery another principle is a program to interfaces not implementation which Means you want to like don't call it a car if you could get away with calling the vehicle I think that's the the example that that rust uses And it's easy for rubius to do because we're you know duck typing is like baked into everything the best example I can come up with from from other inbox is like I Never I'm not really sure what we should call the fundamental unit of thing that we manage for our customers Like it started out with we just had email messages on certain point. We added features to be able to read RSS feeds for you and then we also Let's see like We also now have the idea of We get messages from other sources other than SMTP and so what we ended up doing is like is using inheritance There were some reasons because of the way active record works that we wanted to have all the stuff in a one table The point I'm bringing up here is like I Maybe we don't need all these subtypes Maybe we just need to have a more generic name for message and then you know include different modules Or extend objects that like if it's okay if it's an RSS article in this one context I want to handle it a little bit differently because it's not it's not an HTML message Anyway, I just wonder if there's some if you know a good synonym for message that's very general that would include like Content that arrives via RSS or that you've created and sent through our system like let me know but right now it is message But this is something that we have some struggle with another principle prefer composition over inheritance This is actually something that's come up a couple times in the in the conference already Which means it could sort of doing what I just showed you where you inherit from other objects You should favor this kind of I'm going to show you two different examples actually so When we are pulling in those RSS feeds for people Like at runtime you when you want a feed reader you could tell the feed reader What what queuing system you want it to connect to this is like a maybe a different way of handling that sqs2 problem I showed you before and in this case we almost always know what it is We want so we provide a useful default. Maybe a better example of it would be We use a s3 a lot Amazon's s3 service throughout our our app And there's a lot of different objects that need to have the behavior of being able to send a queried s3 Or you know get data back and so this is like a very small example Mostly the most of the stuff actually didn't write. This is our team So I don't want it. I'm not taking credit for any of the cool stuff They're doing it's just this stuff. I dug up from our code and I really like this module because all you have to do is Include that s3 message content module anywhere. You need it and then you get a whole bunch of Behavior for for free and you didn't have to mess up your inheritance chain and it's easier easy for us to test that module Add new things to it without having those that change replicate throughout our app. All right another principle is delegate delegate delegate You have objects that express certain outward behavior, but and so as far as anyone who's using that object knows That's that's built into your the class you don't have but they what under the surface you're actually forwarding Those methods to some other sub-objects So an example is like this works really well with active record relationships if you're building a rails app which In fact, there's even a helper to make it super easy So in this example, I have an external email account It has a relationship to an extra email server and anytime like but if you if you're using my external email account And you want to know this information like well, what's the server info? What's the mail server? That's not something I actually know I just forward that to an object that I control But now this gives us the ability to change where that information is stored how it's computed anyone who uses an external email Account doesn't care and this is how you can help avoid law of demeanor violations Not if you're not using rails That's totally fine because Ruby comes with two different Library modules in the standard library that help you implement adult delegation So the last thing is not what doesn't come from the the original gang of four book It's you ain't gonna need it and You ain't gonna need it Comes from the fact that we as programmers most like if you're worth your salt as a programmer You love cool new problems or you can use cool new toys You can use the latest thing I mean, I'm always looking I'm always excited about the new cutting edge ways of doing things But sometimes well all the time you have that demon over your shoulder That's always looking into the future for opportunities to deploy that stuff right now to start using it So you can get away from all the crappy crappy legacy stuff. You've been doing well I think this is a fatal instinct if you are writing code in a startup and something you have to fight all the time So like in other inbox only two years old. I was the only person working on it for nine months I have built things To be super scalable that you're not not to be core to the product like this is our web interface It has features on the server side to make this like I Like we have a pretty complicated way of giving you differential updates to this web client that I'm not actually sure We're ever ultimately going to need that's not turned out to be the big sticking point for what makes our apps Low the things that make us slow and perform it have to do all that back-end processing So I could have just saved myself a lot of time and gray hairs by not worrying so much about making this super scalable right at the beginning, so I Think most people probably Like you probably have that level understanding of you ain't going to need it But here's how I combat it in my own mind Because it's easier to say this than to actually implement it because sometimes you really can convince yourself You are going to need it. I recommend that in the early days you focus on learning You're getting more data about what you're building and what your customers want and not performance And I would also ask yourself if there's ways to build an 80% solution Because if you're starting from scratch getting 80% of the way there might be enough for you to learn enough to know Whether this is worth pursuing or whether all of this really is going to be a performance bottleneck Do people even care about the thing that you made so those are the best strategies that I know of for combating the tendency to Want to Overbuild and over design over engineer Okay, so I've got 11 minutes left I'm going to go shotgun through a list of Things that have plagued me or that I thought would be interesting to you guys if there's any time at the end for questions I can delve more so that's our game plan. We're going to go. It's gonna be really quick Okay, I would tell myself plan to move everything out of the web request So now there's all these really cool tools out there that weren't as available or I wasn't aware of two years ago things like AR mail or delay job event machine or SQS rabbit MQ I mean there's all these ways to take all the load Basically to avoid your web app having to do actually any synchronous work inside the web request But then again also remember you ain't going to need it So, you know, it's probably fine to start off doing something inside the web request like sending out an email message or something like that But you always should keep in the back of your mind like I wonder if there's a way to pull this out of the web request because the less time you have to spend worrying about your Server load more time you can building new stuff the better because you're probably at the beginning not going to have a network Operations person on that note I would say make careful use of concurrency because that is Something that we have battled with over the past year since we launched right after how last year's loans are really conference I would prefer. Yeah, I think you should prefer Different processes communicating via some kind of shared bus and there's a million different examples out there Not, you know, not even all just Ruby stuff Because this is just simpler and if you're building something that's a learning machine Using this kind of gear where it's all loosely glued together Just means you can move faster at a certain point though It doesn't really make sense to like spin up a new process and you know that can be Overmuch and so if you if you do want to use multi-threading in your app And especially if you're building a rails app event machine has been a really big win for us So this is like a really typical pattern that is in our code now We send you know thousands of email messages a day now and some certain percentage of those Take like a really long time five ten seconds just because this is a dependency on Third-party gateways out the third-party SMTP gateways. So we Do email sending asynchronously now through event machine. There's more sophisticated ways to do it But this is just one one quick example. We just hand it off the event machine All right about that then the web request isn't blocked our mongrel stay happy Consider your relational database relationship. So I you know We avoid touching our database when we're not storing when we're storing non-critical data when we don't need like OLTP acid level awesome integrity in our data We try and use something else store that information somewhere else We don't use the database for things that it's not good at and we like I've already mentioned To meet put the to meet the our problems in light of these two concerns We use something like Amazon web services, but there's a million other cool Alternate database or alternate data storage systems that have come out in the last year or so for us The biggest the most of the data we store are the contents of messages So we dump all that into s3 So when you actually view a message in our interface, you're seeing an iframe that's fetching the data from s3 To a community to distribute the work across different machines. We use sqs queues They're just a list of things that need to be processed For like we log a lot of performance data. It doesn't really matter if we miss any one log item And so and rather than just dumping it all into a text file that we have to then parse later We just push it into this effectively unlimited infinite database called simple DB and then We you can use s3 is a kind of interesting caching system Which I can talk about later. We use the data fabric gem that Mike perham wrote. He's a Austin Programmer. It's really awesome. This has helped us reduce our database. Well, so I just want to put in a plug in there Okay, so I bet everyone in here who has a blog has already written the blog post about how you should use my sequel explain to find your tune your queries If you use my sequel and you know make sure that you have your indices indices set up properly But I you know prior to embarking on it there about to not know very much about the analyze and optimize commands That my sequel has and other databases have their equivalence the point is that You can have all the indices you want but then once your app starts to really experience some good usage They're going to degrade over time And there's this kind of tech that you're going to have to learn to be able to keep your database healthy and Keep yourself from being awake at three in the morning along those lines You if you are using something like my sequel I recommend you learn more about how the query planner works The one of the biggest speed-ups that we've seen in our app has been not from changing any of our code But just from upgrading to the latest minor version of the database because it had a better query planner and that That made a huge difference to us Our code is not as well organized as I would like it to be and it's just because we're moving super fast It's just sometimes easier to dump something into the lib directory But this is getting pretty unwieldy and like half of this stuff is plumbing code that could be extracted that That would be of use you know to other people that we could use in our other projects if you want to learn more about code layout I really like the active merchant gem. I'll give them that's like I always return to that when I want to know What sub-director does this file going what's pattern should I use to require this stuff? Okay This is something I really am proud of that we do. I've identified three low three types of configuration variables That you should be still you should have a different strategy for first so for stuff That's dangerous or difficult to change like that shouldn't ever It's never going to change like these refer to Interger values that we keep in the database like we're never going to make a new message is never not going to be a new message I recommend we make those constants because they really are immutable. There's another kind of layer of stuff That's like doesn't really change that much It's not there's not dangerous to change it, but you don't really You kind of want it to be somewhat solid and that's stuff like your host name or these timeout settings We just dump that into a YAML file that gets loaded at runtime, and then you can create different Override those defaults for different environments And then there's a category of stuff that like if any if a non programmer wants to be able to mess with it or look at it then We keep that you know in the in the database or I guess you could stuff it in a memcash or something like that So for example Admins at our company need to be able to on the fly change like what addresses you're not allowed to use We use to provide this facility. I'm showing you we use the settings plug-in, which is really cool You should check it out and also this blog article is this is something you're struggling within your app He does a really good job of explaining Why you should do things this way or actually a little bit better approach on what I showed you I Every time we use Boolean columns I've always regretted it because you always want to know the time that something changed or you end up needing more than two states So I always like work really hard to make sure this is really going to be a true or false Because something like this once the table grows to like a million two million rows It can be very difficult to make a change like this So I'm always like really paranoid about it now If you know about if you've heard of how many people have heard of presenters before Jay Fields has blogged about it This has been a huge win for us encapsulates a lot of complex logic Just in that advanced refresher class there if you want to know see more about this come find me I'll show you an example And I would say don't maybe you shouldn't test all the time at the beginning It's a very controversial opinion. I know I'm sure we'll upset some of you But in the first weeks of building other inbox, I feel I felt like I was overly zealous about testing and it slowed down Exploration half the stuff I wrote I threw away anyway I changed the names of a lot of the stuff that I wrote even while I was being so diligent about test first development But on the other hand if you use the test as a design tool as you would in the BDD approach Maybe it you know Maybe this actually will help you save time and make your decision get to your finals on quicker All the code that we use to get your messages from SMTP. That's really mission critical I wrote using the BDD approach and it's been some of the most reliable stuff that we have So I'm kind of on the fence about that and that's why I'm really curious to know if the rails rumbles teams You know like do the ones who write tests are they faster? Do they win more often? I think somebody should do that. I'd be really interested If you are a running a development team where you're the owner of a startup I encourage you to afford regular access to graphic designers because Even if you have developers that are talented at design or that can you know can mess with Photoshop It's really expensive context switch So the best time I ever had working on another inbox was when we built this interface because we had a designer who knew how to use get and knew you know herb and hamel and could really like was making commits to our repository and it just was so much easier than having to like Take the output of this designer and somehow translating something that would make sense in rails And so it was just a really happy productive time that allowed me to get through more of those ferocious iterations Okay, so we have a minute and a half. Does anybody have any questions? Well, I mean it was nice to have a designer who could speak a little bit more of my language than I was used to Well, the alternative would be like a designer who just gives you a You know like the cutout cut up of a Photoshop file and maybe some CSS and it's like up to you to figure out to integrate it into your app Yes, the key key success factor for us to so far is that we had this guy who was able to work with our tools We had a really short deadline last year because we had a big PR event when we launched it And they're like if I had to do all that integration it would have taken a lot longer So one more question Okay, this is this I'm about to show you it needs a whole lot of refactoring So I'm not saying this is good code. It started off a lot smaller than this That we have a presenter that is kind of based on what Jay Fields presented on his blog. Oh Me oh, sorry It's not very helpful so This needs to be refactored to be a bunch of separate classes and modules But I think this will give you the gist of what I'm talking about The idea is I have a controller here that Is that we that's really all it does it just wants to return a chunk of JSON to that web client But to make that chunk of JSON we have to join together information from like six different Objects in our in our system. So that's all the advanced refresher does it has this to hash method that builds up ultimately This hash down here of Objects that the client should create objects that the client should delete and objects that the client should change and then it Like the way we get those that list of things to create is we just it's just calling It's like this is a really just one giant function composed of smaller functions. So if we go to created messages You know, I just it just kind of this has gotten really overgrown and wieldy The point is like I have all this crazy Logic because we're using archive tables and triggers and stuff like that Well that all this complex logic is completely abstracted away from anyone who needs to know about it So if you ever want to get a list of things that changed updated or deleted since you last asked about it You just call advanced refresher and then I have a lot of work to do here to clean it up But another common example is if you have a form like with an account name and like if you have a form That has three objects on it that all have to be created at once or presented at once People will use a presenter so that when you're writing the view code You just have to worry about your one presenter not these three different objects. So that's a really quick example I look at J fields is blog for more So, all right, I just want to end by saying all the slides are at my blog Spellty.com. Thank you very much. All right. We got a 15 minute break


U.S. Army Garrison Stuttgart welcomed a new commander during a change of command ceremony May 19th at Patch Barracks, Germany. During the ceremony, Colonel Jason Condry passed command to Colonel Matt Ziegler. COVID flipped everything upside down and inside out and we were truly living in genuine insertion. But this community rose to the occasion in a way that constantly reminded me why I'm glad I live here. Colonel Condry is heading to San Antonio, Texas to be the new executive officer of installation management command. The new Garrison commander, Colonel Ziegler, was previously assigned to special operations command Europe at Stuttgart, Germany. I was fortunate to visit here many times during my battalion command and I knew that this would be a terrific place to bring my family. I'm blessed to serve the best community in the military. Ready Garrison for a strong Europe and I'm glad I live here. Colonel Ziegler will be the commander of U.S. Army Garrison Stuttgart for the next two years. I'm Stuttgart, Germany. I am Air Force Staff Sergeant Crystal Wright.


As quick as I make one video and update on Mayhem 2.0 which if you missed you'll find a link to the video in the description, Gearbox drop another post with details on the new event which arrives on April 23rd with Mayhem 2.0 called the Avenger the Car Tells. They drop a quick guide which we'll get into with all the details in a quick second. How's it going guys? My name is DPJ and today I bring you another BR3 video. If you do enjoy it, leaving a like really helps out and subscribe if you do want to see more. So Gearbox not long dropped a post on Mayhem 2.0 with all the details in which you'll probably want to know. Again that video you'll find a link within that video in the description but I've also dropped another post with details on the Avenger the Car Tells. They title it a quick guide into this new event so let's get straight into it people. Check out Avenger the Car Tells, the new BR3 seasonal event bringing you limited time loot and rewards. Roll cups and rays, rock rolls, neon collars and boss crime like in the 80s in Revenge of the Car Tell. The 3 seasonal event happening in Borderlands 3 from April 23rd to June 4th. Revenge the Car Tell features an all new area, fresh enemy types, limited time challenges and of course tons of gear to collect including new legendaries and anointments. In his continued studies of human customs, your Soviet crewmate Maurice has gotten himself mixed up with the wrong crowd and now finds himself indebted to Joey Ultraviolet, the kingpin of the Eurydium Cartel. To save Maurice's scaly hide, you'll need to take the fight to Joey and his gangs of underlings at Villa Ultraviolet, an opulent hideout overlooking a tropical paradise. Traveling to Villa Ultraviolet, the first time you're lugging during Revenge of the Car Tells you'll get a repeatable quest from Maurice abroad Sanctuary 3 that must be completed in order to reach Villa Ultraviolet. During the event, neon collars and Car Tell operative enemies can be found lurking around the galaxy including areas from campaign addons. When you kill an operative, a dead man switch signal is sent to their cohorts and some Car Tell fogs will warp into avenge their slaying comrade. Beyond guard because Car Tell fogs might be also accompanied by one of the Eurydium Cartels underbuses. These are unique badass level enemies belonging to one of the Car Tell's three gangs, more on those in a bit. Eliminating these reinforcements will net you hideout coordinates, once you've collected enough of these, Maurice can open up a portal that leads directly to Villa Ultraviolet. Going up against Eurydium Cartel gangs, once you make it to Villa Ultraviolet, you'll have to bow your way through hordes of Eurydium Cartel members belonging to one of three distinct gangs. You might encounter the tech-obsessed cyborgs of Crypto or Sec, the meat-sharing depth collectors of the Burn Ends or the Eurydium Dust Runners known as the Perpetrators. Each gang has their own underbuses, who you'll need to take down in addition to Joey Ultraviolet himself, and each gang has its own legendary loophole, so multiple visits to Villa Ultraviolet are highly encouraged. Every time you clear out Villa Ultraviolet, one of the other gangs will arrive to fill the power vacuum, so you won't take on the same gang twice in a row. Maybe you'll be lucky enough to find gear with anointments that trigger bonuses when you first activate your action skill. Or new legendary weapons like the OPQ system, which sounds amazing because we know the Q system is quite powerful and the OPQ system, which also has a state here and assault rifle that can shoot an auto-firing copy of itself targeting whatever you're looking at. That's absolutely incredible. Not wait to see what that is, so that sounds pretty cool. Revenge of the Cartel Seasonal Rewards In addition to each gang's new loop, Revenge of the Cartels introduces a new set of limited time challenges you can complete to earn themed cosmetic rewards. There are 18 challenges in all that are only available while Revenge of the Cartels is live, and you can track your progress via the event tab in your Echo Device menu. Here's a breakdown of the cosmetic items you'll collect depending on how many event challenges you've completed. Three challenges Vector, Graphics, Echo Device, Skin Six challenges Retro Outrunner Weapon Trinket Ten challenges Framed, Firewall, Room Decoration Fourteen challenges Hotline, Pandora, Vault Hunter Head Eighteen challenges Death by Fligri's Vault Hunter Skin Sounds cool. As with other seasonal events, you can turn the event on or off at any time between its start and end dates via an option in the main menu. In multiplayer, the host choice will determine if the group sees Revenge of the Cartel's content. Revenge of the Cartel will kick off via a patch on Thursday, April 23rd, that is scheduled to run for six weeks and end June 4th. Good luck taking down the Uribeam Cartel. Vault Hunter, Joey Ultravider and his gangs won't know what hit him. So yes guys, those are details and a new event coming with Mayhem 2.0 this Thursday, so it's going to be a massive massive day for all of us VR3 players and I will not wait to dive deep into it and bring you guys all the details you need to know about it. So yes guys, this Thursday we will be getting Mayhem 2.0, 10 new Mayhem levels as well as the Revenge of the Cartel's event, or I can not wait. And that note guys, we have come to the end of the video. If you guys enjoyed it, leaving a like really helps out. Let me know what you think about it down below in the comments section. If you're new around here and want to see more Borderlands, be sure to subscribe and if you never want to miss a video upload, you can turn notifications on by hitting that bell button. Well guys, thanks as always for stopping by, hopefully you enjoyed the video and hopefully I will see you on that next one.


real MC Mike you got any predictions going into 2020 chaos MC Mike chaos in the markets and many places right we're seeing a serious shift of the economy it's brilliant right it's a symphony of of of everything right from economic system completely shifting over flipping with corporations vying for power right to geopolitics taking place to agriculture to food to to everything right wow what a time to be alive what a time to be alive


Tilburg University understands that the student of today lives in a digitized environment. The usage of modern technology allows the creation of a digital global classroom. Professors of Tilburg University focus continuously on international cooperation. Our digital global classroom allows the student to engage with other knowledge institutions to work together on new insights and valuable solutions for society. Professors use digital media to promote interdisciplinary and international legal education and research. The digital global classroom allows students to actively engage in their education, acquire 21st century skills and work in an international environment. Using the perks of today's technology is an efficient and modern way of establishing working relationships with other knowledge institutions. Placing the expanding challenges of internationalization and globalization in the faculty schedule can be very demanding. Using the mobility and friendliness of today's digital media, lectures can be delivered to and from anywhere in the world, even when students are sometimes physically absent.


You betcha, for the United States of America, I christen thee billings, may God bless this ship and all who sail in it.


Introduction to Epizoonotic Diseases In this session, we shall look at key terminologies and definitions related to zoonotic diseases of epidemic potential. We shall look at the zoonotic diseases of epidemic potential in eastern Africa, the significance of epizoonotics as emerging diseases, the factors promoting emergence of epizoonotic diseases, the consequences of epizoonotic diseases and general response interventions for epizoonotic diseases, and then issues related to animal welfare. A zoonosis is a disease or infection which is naturally transmitted between animals and humans. It may occur from an animal to human or from human to an animal. A simpler definition is a disease that normally infects animals but can also infect humans. An epizoonotic disease is an outbreak or epidemic of disease in an animal population. An zoonotic disease is a disease that is endemic in animals. Exotic diseases are those which are imported into a country in which they do not otherwise occur. An example is avian influenza. Emerging and re-emerging zoonoses are diseases caused either by totally new or partially new agents or by microorganisms previously known but now occurring in places when species where the disease was previously unknown. Examples of this include influenza, Ebola and SARS. The priority zoonotic diseases of epidemic potential in eastern Africa include rift valley fever, influenza eviruses, atherax, rabies, Ebola and other viral hemorrhagic fevers, plague and tripanosomiasis. What is the significance of epizoonotics as emerging diseases especially in eastern Africa? Globaly there have been over 20 new diseases in the last 30 years. Over two thirds of new disease causing agents arise from wildlife. Examples including SARS, Nipa, H5N1, H1N1. Domestic animals account for 20% of new zoonoses. The east and central Africa region is a hotspot for new diseases. Faktas promoting the emergence of epidemic from zoonotic diseases include social economic factors like intensive farming without biosecurity measures, water supply projects, urbanization, human population movement, animal movement, famine, free range farming systems. Environmental factors include climate change like global warming, presence of vectors and reservoirs. Human related factors include co-infection with other disease agents like HIV and TB, lack of knowledge on biosecurity measures, inadequate personal hygiene like sneezing without covering the mouth or not washing hands. Cultural and behavioral risk factors include lack of knowledge, food habits, changes in lifestyle and human livestock wildlife interaction. These are some of the characteristics of the human animal interface that increase the likelihood of transferring diseases that were previously not known in humans from animals. Intense handling of animal products with low biosecurity. Causing diseases like brucellosis, anthrax, avian influenza. Pastoralism and free range systems. Hunting, gathering, eating game meat and kakases predisposing to Ebola and anthrax. Contact with birds predisposing to Ebola and Mabag. Eel cooked products causing salmonellosis and brucellosis. Hygiene and rats predisposing to leptospirosis and hepatitis E. Free range poultry and migratory birds predisposing to avian influenza. Conservation avians like Ngorongoro, Samburu. Eel handling of domestic canines predisposing to rabies. Social cultural factors including sharing accommodation with animals. And cross border risk as well as gender related risk. What are the consequences of epidemic prone zoonotic diseases? They include social economic impacts like reduction in the level of outputs from animal production. Reduction in perceived or actual output quality. Waste of inputs to animal production. Resource costs of disease prevention and control. Negative animal welfare effects and international trade restrictions. Human health costs including effects on costs of treatment. Effects on the environment, effects on tourism, effects on rural livelihoods, political and social disruption and increased poverty. Other public health consequences of zoonosis include increased deaths, increased illness, social disruption and panic, collapse of regular health care systems. Health workers are at high risk of contracting these diseases. And health workers may run away from health units. Response interventions include farmers should report incidents to animal and human health workers. Provisional quarantine of affected areas if necessary. Confirming the occurrence of the outbreak and notifying the authorities. Activating the rapid response team including vets, health workers, leaders, the police, etc. Identifying the probable source of infection and identifying the severity of the infection and extent of spread. Setting up immediate control measures. Disposing of dead animals in safe ways either by burning them or burying them. Quarantine the sick and suspected and observing general conditions. Stopping movement of animals and vaccination where necessary. In outbreak situation of zoonotic diseases, animal welfare situation should be taken into consideration. If they are to be destroyed or killed, animal should be treated in a humane manner. Reduce until pain. Confine them in a considerate manner. Thanks for listening.


Everybody forced here ripping 2021 and 2122 optic basketball hobby mixture 4 box number 28 random teams check the results anytime late in sports cards calm Let's get started. Oh put on the SPN or something. Well that last break. I get it, but we got a I can't watch any more magic postgame All right to 2122 to 221. Let's do it Guys probably not gonna recap this one It's gonna be quick and we're behind so I want to make sure we catch up Jackson all-stars hollow entity Davis. Yeah, it's not that a kumpo gonna roll a die one two three left pelicans four five six right bucks One goes left side pelicans gonna go left side for both boxes here unless there's like a really big one that will end up randoming instead Thor that would go Celtics left side orange Malik Beasley Timberwolves 172 of 199 hollow Norman Powell Blazers Dominators rookie Otto Josh Christopher two of 99 rockets Cameron Thomas rated rookie for the net say a hollow Zion Williamson stargazing pelicans Hollow rated rookie. I would assume who bulls Photon Deer and Fox Kings. That's a nice one there for Sacramento Short print parallel Photon Deer and Fox a man rated rookie with a Bryn Forbes black velocity spurs color match 12 out of 39 Jalen Johnson Pink velocity carousel vert Pacers 18 of 79 What release you looking forward to most Wednesday Hollow Chris Houts Rosengas Mavericks Joe, we should split a box Unless it's like a grand that I'm out. I'm just kidding. It won't be that it will not be even near that More because you get four orders total And plus you get a bigger rookies or a bigger prospects rated rookie to warte with a hollow Christian Wood Rockets I'd say it's more of a softer product than finest as well. Tremor for the third rated rookie pelicans Orange Scotty Lewis rated rookie 67 to 199 Hornets and a hollow Joe Harris Nets We'll see if the South actually hold a lead for once For once in the past few weeks. There you go one more 21 22 Hollow dinnwitty wizards Scotty Barnes rated rookie base and a pink velocity Jalen Johnson rated rookie. You go Hawks 62 of 79 Wiggins hollow rated rookie Jalen Johnson for Atlanta. Let's keep Jonathan Isaac Lyme green magic 144 of 149 Kate Cunningham base rated rookie pistons and a hollow teach him a column Blazers Or Sam a column 3 Jima column. How does Sam know all the weird nicknames of every single NBA player or like their Or Pistons Kate Cunningham 75 years or where they're like Instagram ads Instagram handles I would assume he probably he that's probably what he does instead of looking at checklist and getting ready for You know like actually getting ready for these days. He's like all the nicknames Rainy threes hollow trey young It's like Jake Yeah, I just all I do is I go on Baseball reference The names are always wrong on there rated rookie Franz Wagner magic hollow all stars Tatum and George goes left Celtics It was a David Ortiz and that you I won't be able to say on stream. That's on there John and the comminger range rookie the Warriors. Yeah, dude. Look it up Greg Brown orange Quintin Grimes rated rookie 109 of 199 for the Knicks. That's a pretty solid guard there Knicks Q6 Color match to hollow as a steward pistons cook knight rated rookie with a Jalen sucks rated rookie auto magic nice hit Orlando Good team to have in these Got cold one ear and fronds and sucks the other Robinson Earl Josh Christopher lighted up LeBron Pistons red Jeremy Grant's to 99 45 of 99 Hollow rated rookie son see all the way for the Grizzlies in two blocks of 2021 It's gonna last I pulled in another and Edwards out of here. I'd like to do that for the T-Wolf spot In a while like a maxi Hold that green coal Anthony last time I did one of these though. Joe Harris raining threes for the Nets hollow Aaron Nessmith, what are you guys most excited for this week Don Russ basketball? I'm act football or Bowman's best baseball, which one? only pick one Orange Russell Westbrook Wizards 102 of 199 Start bench cut those three products Jake Starting you're starting Bowman's best. Yes, that noir rated rookie hollow Zach Levine bowls This is the tough one now. I really don't Vaughn.  He hates Don Russ Scott Skyler may is rated rookie auto for the Hawks. I think I'm I'm start Bowman's best. That's I'm in on that and then that it gets tough now gets tough now Blue Jwellin bead sixers nice color match for 59. I'm start Bowman's best It doesn't get tough after that though. That's a no-brainer for me and hollow DeMar deRose and spurs I'm probably gonna bench Don Russ and Putt I'm at football. Yeah, I think so. I love the net more I love the inserts and stuff in Don Russ basketball Don Russ basketball hobby is like the best Don Russ hobby of anything So deep Bay rated rookie plus plus for for my fandom purposes Palo Bancaro is there so like that's that's Pats don't have any big rookies this year.  I'm not sure odysseus Red Ken and Martin junior rated rookie Rockets. It's pretty solid 29 of 99 color match See nausea hollow Deontay Murray spurs. Well Bowman's best as far as like not like a flagship type product does fairly well secondary wise. I think as the years go by It holds pretty decent value Joshua Junior it's definitely the biggest like non Bowman prospect auto. I think I think right red to 99 Yana stargazing bucks Joseph B. That's what I'm saying, dude. It was crazy. It was awesome. The color matches when the Color of the card parallel matches a team color Grand Rookie Halliburton lime green drew holiday for the bucks numbered 131 of 149 So the Rockets were red that was a red parallel. It's a color match rated Rookie Hollow Nick Richards Hornets So color matches oftentimes are more desirable You know if it's not like a one-of-one or it's like super super low number to color match will be more desirable for a lot of people It's like a purple Rockies card would do better than like some lower numbered Rockies cards if that makes sense Gold Donna the Mitchell lights out jazz two of ten nice card the rookies Anthony Edwards T Wolves Land Green Joe Ingalls jazz 57 149. Uh-oh. We got jingled Sandwich here say the whole thing Hollow Kevin Porter Junior Rockets Paul Anthony rated Rookie Magic Desert Bain rated Rookie Grizzlies Line down that one's per not a perfect surface Heat Kelly all in a got a 60 of 99 dominators out of there The first To a red carousel of hurt Pacers 1990 that Oscar You just miss it. We just got jingled. Oh good. Nice. We got jingled earlier, too Dude a while I was getting jingled man rated Rookie Hollow Elijah huge jazz I had to show everybody what the jingled thing meant because everyone's like what I was like, all right Hold on let me explain it. I pulled the meme on my phone Halfway through the video. Hey Xavier tell me in photon. We had two photons in two different years in this one Swiper And as they've your time it's all to good photons raining threes hollow Duncan Robinson heat I know we don't say anything in chat all night. They'll just ignore me in the same as yours like Blue Paul George for the Clippers number 259 Vaughn, what was that the defense by the Celtics let Julius Randall into the paint and then back off back off of them Like step away from him hollow rated Rookie poku for the Thunder And then Tane will just hit a three. There you go The lead dominators John Morant hollow for the Grizzlies Gone or what's happening, buddy? Has been a few That's okay.  What the heck? He's on he's on a heater right now. That'll do it everybody more basketball coming up next again Not gonna recap because we're a little on time


Painful dental procedures might soon be a thing of the past if dentists can learn to use stem cells from your teeth to heal gum disease, regenerate jaw bone, or grow new teeth. A research group from Brazil recently reviewed the literature on dental stem cells and showed that stem cells isolated from extracted teeth can be used to repair problems affecting the mouth and possibly also other tissues. In recent decades, scientists have focused on finding new ways to use stem cells to heal and regenerate injured tissue. Stem cells are unique in their ability to self-renew and their capacity to morph or differentiate into a variety of other cell types. It's been shown in the lab that dental stem cells can differentiate into muscle, bone, or neural cells. Because of their unique features, interest in the use of dental stem cells for regenerative medicine and dentistry has increased. In uninjured teeth, stem cells lie in an inactive state, in wait to help tissue heal. When damage occurs, they travel to the site of injury and begin regenerating the area that's been hurt. Animal experiments in rats, dogs, and rabbits have shown that transplanting human dental stem cells to sites of injury can help treat gum disease, repair bones in the face, and even grow new teeth. These studies show the great potential that may be hiding in your own mouth. If teeth really can be used to heal disease, then dentistry as we know it might completely change. So the next time you brush your teeth, keep in mind that you may be caring for the cells that might someday heal your body, and make your visits to the dentist a lot more pleasant.


So basically what we had on our hands when I joined was a college website for, you know, about five million college kids and by the way, it had engagement that no one had ever really seen. You had, you know, you had five million people on it, six million people on it, and half of them were coming back every day and no one in this is pretty smart phone. No one had seen engagement like that before. We didn't have services where people, half the users came back every day. Maybe once a month, half of the users came back. So it was clear that it was really engaging. It was clear that it could be bigger in that, you know, this seemed like a service that other people could use, look, they had done it with, Friendster, they had done it with, with MySpace. What Facebook figured out was the biggest breakthrough of Facebook in addition to building a terrific product was that they got lucky by virtue of starting in college and drafting off of the .edu email signup process because by virtue of drafting off of the, you know, everybody had to have a .edu email to sign up. And so the first 10 million people that signed up for Facebook were who they said they were because there was no alternative. You couldn't create a fake account because wherever you went to school had a clearinghouse for one person gets one email address and it's consistent with what their real name is. Right. And Facebook drafted off all of that. So verifiable and authentic identity was inherent in the first 10 million users. And I think that norm just persisted as the service grew. That's more of an aside about why Facebook, in my opinion, won over the other services and became so dominant. And then look, there were very good people there and they executed very well and they continued to make the product. One word for it is better. Another word for it is addictive. But they just kept adding feature after feature after feature that added utility to people's life for sure. But also, and I don't think this was the express intent of me or the people there, but also these features triggered and played on our base instincts. Right. I mean, status updates and photo tagging and all of that that plays on vanity and voyeurism and popularity and comparison. Yeah. So that was certainly the playbook there. When I showed up in 2006, my mandate was as the director of monetization was take figure out how we're going to make a sustainable business here. So we tried a bunch of things and advertising was far and away the most straightforward. Hey, everyone. Thanks for checking out that clip. If you enjoyed it, be sure to hit the like button down below. And if you're interested in hearing the full episode, it's out right now on our YouTube channel. We've had a lot of great guests come on this show before and we've got a lot of great guests coming up in the future. So hit subscribe so that you don't miss a single episode. And one final note, we're always looking for new ideas and new companies feature on the show. So if you know of someone or know of a company, write us a comment down below letting us know who they are and what they do. We'd be happy to have them on the show. Until then, I'll just be here waiting for your comments. So see you later.


Hello there, it's Sandy Olnock. This is part two and I will be painting a stick and if you missed part one you might want to watch that one first. In this portion of the process we're gonna be talking about changing everything from being a complex sketch and a complex stick into being a much looser kind of painting. And it begins with editing ruthlessly, like just really making yourself make some choices about what you're going to include and what you're not. What I did was create the outline first around the edges of the stick so I could have that as a base guideline but I wanted to show you how I've just made a few simple lines to create some shapes that I'm going to put color in. I've chosen the biggest most obvious sections anywhere that I saw either a color change or a value change like from light to dark and anywhere the bark was peeling up was a great place to do that because there's shadows around it and when there's a section with lichen or what moss or whatever these little things are that are growing on this stick those parts were obvious things to note. Anywhere where I saw some very deep shadows that was a great place to just put a quick little line and even marking off sections where I wanted specific color. I liked that reddish color on the left-hand side that reddish brown so I just put a line around it to mark that I wanted to just throw some color in that direction. I'm gonna do a color flood across the whole thing and this is basically a map to tell me where to do that where to put those colors and then some of the lines a few of the detailed lines which are not going to be very many are going to show me where particular sections are there was some of that area around the top that I wanted to create the shapes and some areas around that bottom that whole gray light gray section was just somewhat intriguing and I wanted to treat the inside of it the light gray part different than the outside part of it so I drew lines around it so that that was a section I was going to handle differently. There's also this portion right here in the middle and you can't see it from where you're looking at it from overhead but it's actually three branches that have been cut off so whenever whatever knocked this branch off the tree lopped that section off really specifically and it the three light brown or you know kind of brownish circles you see are each the centers of the three branches so that's what it looks like from the side but from above I just wanted to have that general shape in there because those were a nice little pop of color that I wanted to anchor in the middle because we've got the reddish brown on the left and the right and so that gives us a little more specific reddish brown in the middle started following along I like that that little thing that sticks up off the top that that little tiny curled bit I wanted to have some shapes that we're going to lead up to that and then delineate a few of the shapes over on the right hand side but I'm not drawing all those details that I did in the full sketch all that little line work it all goes away I'm not going to put it all in here and this is as much as I'm going to do I'm going to lighten the pencil work first because I don't want all that pencil line showing I don't generally mind that to see pencil line but a lot of this was delineating color sections so I didn't want to have obvious obvious lines when those colors start to bleed together but taking a kneaded eraser really soft squishy eraser and rolling it so it's more like a hot dog shape and rolling it across the top of the pencil will just lift off a whole bunch of that I'm picking colors from the color mixing video that I did about a month ago or so some orangey red color that'll be a mixture of transparent red oxide and yellow ochre I've got some two different combinations for grays so transparent red oxide and cobalt blue moon glow and Oriolan and then there's some greens there's like a little bit of like weird green colors that I'm going to use cobalt blue plus a little drop of new gambos so that I can get all these mixes to work together I chose two of them having cobalt blue in them so that they relate to each other instead of adding yet another color combination that's not already in anything so it's always nice to try to limit yourself to not having every color in your palette in every painting you can keep that down to a dull roar it's usually helpful so that first little puddle was the first mixture transparent red oxide and yellow ochre this one is transparent red oxide plus cobalt blue and the more blue you put in it the grayer it goes the more transparent red oxide you put in it the more brown it is same thing with moon glow when it's lots of moon glow it's going to be toward the grayer side and the more yellow you add it's going to go more toward the brown side so I'll just keep adding moon glow until I'm happy with it because I wanted two different grays and here's that greenish kind of color it's going to sort of a sicko kind of green on the stick itself so this seemed like a really good mixture to work with one of those combinations from the cobalt and new gamboge so I am going to slide things over a little bit so that you can still see the mixing wells just not the paint wells that I'm pulling from but all those puddles will be the same colors as they work through this so first off is going to be the wash that goes across everything and I'm going to use very very wet paints very wet lots of water but I have lots of pigment in it so it's not super pale color there's plenty of color but very very wet because I want everything to blend into everything else and I'm going from one color to another starting with the the yellowish mix the yellowish red mix one of the grays let them touch each other and then my brush had a lot of water in it so I got a lighter version of that grayish color and a drop in some of the green leaving some open white spaces and then just go back to one of the the gray colors now that I had some of the yellow yellow green color in my brush so it changed the color of the cobalt and transparent red oxide mix so I had to just add a little more blue in it to make it gray again and then I'm going to use the the purple mixture with the moon glow and then the mixture with the cobalt and then the moon glow and the cobalt just go back and forth between them it's going to give me a nice change of color a shift of color between them and as I add all these colors when they're wet the edges are all going to bleed into each other it's just going to give me a really nice feel across the whole thing so it feels like one painting as opposed to I'm painting this section in one color I'm painting that section another color I'm letting them all play with each other the light gray section that I spoke of earlier I just added water into it and left a little bit of the color in my brush so I got a very pale version of it and left some white openings in it so lots of different ways that you can give yourself variety as you work across painting something even as simple as a stick just keep changing colors changing colors going from one to another you can change the density of the mixture sometimes it's got more color in it sometimes it's just got more water in it but all of it just keep it nice and moist so it keeps moving if you keep it nice and wet then when you get to the end you can drop more strong color into a few areas so you get more wet in wet bleeding otherwise you're stuck with having to do that that kind of pops of color later on in the process and it just isn't going to be as blended and beautiful so you'll see what I mean when I get to the very end of this because I wanted to add a little bit more of the transparent red oxide to just make things sing a little bit and more of that water added into the open areas so those lighter grays and I'm leaving the section around those three tree branch sections just letting it dry by itself I'll put the dark color around it later but I use some straight-up transparent red oxide to drop wet and wet into a few areas and then I'm going to let the whole thing dry it looks like a hot mess right now but you just wait we'll get better on pass to pass to is painted on dry paper it's all completely dry you can use a heat gun or you can just let it air dry and I'm going to change this whole well so that it's a mixture of the transparent red oxide and cobalt blue and you can even mix in if you want to get it darker you could mix in some pains blue gray you know something really dark to make it more of a blackish color but what I'm going for is using my big brush to mix a bunch of thick color in the whole well and then when I get to my smaller brush I'll make a section with a different thickness of paint so you'll see that happen in just a minute but I've got a nice gray going on with these two colors and then I'll mix the other well with a different mixture so that I have two grays to pull from this one will be the purple and the yellow the moon glow with the Oriolan and that's going to give me some options to work with as I start putting in the colors in past number two so here I'm using a number four brush the other was a number 10 it's number four brush to mix a small section within the big puddle same colors but thicker paint because as I work through past number two I'm going to try to use different thicknesses of paint and having them available to me in the same well it's really easy to just grab from one side or the other I'm going to pick a few spots where I see the darkest colors and add the really strong contrasting areas be aware that if you want those strong contrasting areas to have an edge that bleeds into something else you need to make sure you do that while it's wet don't let it dry first and then expect that you can get a soft edge and some areas I'm going to want to do that some areas I won't but I'm going to continually be working from different parts of the puddle in my palette sometimes from the thicker part sometimes from the thinner part really depends on what I'm painting and how the brush work is going I'm doing a lot of dry brush and dry brush is when there's not a lot of water on the brush itself and you're getting that texture of the paper you get some kind of some skipping as it moves across the surface and gives you a very nice watercoloury chunky edge and I'm just going to keep adding sections around the whole stick at this point I'm almost not looking at the stick anymore at all I've completed a sketch I did the whole drawing of the entire stick so I know the stick really well I know the textures I know the areas that I'm going to be painting and the stick is right there if I need to take a quick look at it but at this point I'm now just painting from my gut and that's where having the experience of spending the time learning the stick itself learning the textures and the colors is going to help you to have that confidence that you know what you're doing you're you're just filling in the blanks where where all the details should be I'm changing some of the color here and there going back from back and forth with different puddles or just adding more of one color in or another as I start working through it sometimes the color starts to shift back to a brown and I want some gray to be there as well here I've added some water in the area around those three branches and just dropped in some darker color in certain sections so that I get some light and dark variations when I painted the first pass notice I didn't include all the branches that stick out in the top of the bottom a little little extra bits because I can add them in this section anything that that didn't work out in that first pass is totally fixable at this point because that's all really light color the rest of this is is just really loose let the brush work just happen I don't know how to explain it in my classes I call it calligraphy basically your line style when you use a brush is going to be different than anybody else's just like your handwriting is not like anybody else's so your calligraphy marks are going to be different and every watercolors has a different look when they've got a little dancing brush in their hand there is no real way to teach that it's it's incredibly difficult to explain how to do this but it's just it is just what it is if you want to see this whole video in real time without being sped up I do have it over available for my patrons to watch there's no audio with it but you can just watch the brush work happen if that's something that's of interest to you you can join as a patron at any time links in the doobly-doo as always but I don't know how much that really helps you because your calligraphy work is going to be different than mine at this point I'm using a lot more water I've added more water both into the palette and then sometimes just letting more water sit on my brush when I go to rinse it so that I have a lighter version or more watered-down version of whatever I had been painting with and letting that play around the whole stick some of the areas where I put the darkest colors when I did the darkest calligraphy work began to look like I had outlined the stick and most objects when you paint them are not going to be outlined there's very few things that come with outlines in nature so I just wanted to join them and that meant bringing some dark and mid tones from the darkest areas across the center of the stick and letting some of the colors show through from underneath by doing a lot of dry brush work on the very top and letting all of that bounce around and play together I did keep varying the color as I moved around the stick and again not watching what's going on with the stick itself I'm just watching my painting at this point and paying attention to how the color is playing where do I have worms where do I have cools do I need to add a little bit more blue to my color mixture or am I going to grab a little bit of the the purplish mix from the from the other well and bouncing back and forth between those to just keep them interesting but then I noticed I needed some really rich darks on the right hand side I wanted something darker over there and I just hadn't achieved it in the earlier earlier part of this pass so I mixed the transparent red oxide the cobalt blue and a little bit of paints blue gray and that gave me a nice deep rich mixture that I can go back in and add in a few other deep dark shadows just find a few spots to add a sparkle of that color so that it wasn't only in one section make sure there's just a little bit of it showing up here and there in other places the last thing was using a very wet big fat brush and just a little bit of color barely any color in it to go over some of those areas that had a lot of white in them because they just they weren't actually technically white because there was a wash from earlier but it was so pale I wanted some more going on in there and then I started just dropping color randomly in from my palette just different mixtures different colors and letting them play together I love when little accidents happen there's certain areas of this painting that I didn't plan out but I do love how they actually worked out in the long run I love that you can paint the same thing over and over and still come out with a completely different look each time this is a practice painting that I did prior to turning on the camera and it's different but it's also gorgeous so there you go I hope you'll try making a stick painting of your own and if you've missed the stick sketching video you can go see that I might be the only person on YouTube who shows anybody how to sketch or paint a stick maybe that'll be my my moment of fame right and on Sunday we're gonna be taking this photograph over on Etcher and turning it into a painting and I'm gonna teach you a lots of crazy things in a live class so you can go watch that one it's inexpensive I would love to have you there love to answer your questions that you can ask during the class and you can also share your work in their Facebook group because I'd love to see your version of this painting I will see you either in class on Sunday or I will see you heck here on Monday how about that we'll do this again come next week have a great weekend everybody bye bye


Hello everyone, my name is Ignacio Jiménez, I come from the island of Mallorca in Spain, but I'm currently living in Copenhagen in Denmark, working for the UN on developing policy on supply. I am very happy and very proud to be part of the second cohort of the MicroMasters on supply chain management. I have really enjoyed all the classes and discussions with fellow students. Thanks to the MicroMasters, I have started thinking of ways in which we can improve our supply operations and the way we conduct procurement, and the MicroMasters has given me the tools to make this a reality. I would really like to thank all the MicroMasters team, it has been a great journey, and I would also like to congratulate everyone who has finished the MicroMasters in February. So let's keep the conversation going and thank you everyone, bye!


and that's the point. Mullines did a double over them last season. That's another point of note. Maximus Davis is between the sticks. Jaheem Palmer, Sergeine Franksson, Taraji-Angels and Enrique Gordon from Falkland who impressed for a failing unit last season has been drafted by Mullines United this season. Javon Brown, Jeremy Nelson, Marvin Williams making his debut in the middle of the park alongside Rashon Livingston and they will play behind strikers Tevin Scott and as we mentioned so many times before their leading man Jason Wright who scored 14 goals last term. As far as Veer United is concerned they'll have a 4-3-3 formation where J. Williams is back between the sticks. They have Steve Pinnock, Alvin Sean, Donovan Clark and Kimoi Phillips as the back four. So J. Graham will hold that midfield and will give a free roll to Lamar Neal and Javier Brown up top. Davion Pinnock on the left, formerly of a chaplain and Ricardo Dennis on the right. Usually he comes off the bench but he starts the first game here for Veer United, Jason Dyer through the middle. Yeah, a lot of familiar faces. Well, as we take a look at the full-time highlights there and this one hit the bar, Pinnock with the effort there, the scouting inside on his right foot and then the woodwork was in the way. And then that effort was wide of the target and Roger Williams who would have more difficult circumstances. Neal with the header saved by Davis and then Williams was in some trouble there, Brown laying it back and then the lofted ball inside the area, Livingston. Yeah, couldn't really find the corner and right with a wonderful turn there and could produce much from his left foot. And that was another big chance for Maline United and Dennis making his way inside the area. That was a strong hand coming in from Davis and then this free kick from Lamar Neal hitting the woodwork and they came close. They came so close as there's an opportunity to get this far inside Livingston with a wonderful hit for Jay Williams with a fabulous save and then this effort from Jason Wright going over the top, Livingston again involved, sending this one across. Flemmings couldn't quite get there or Flemmings is the one with the resulting effort after Thorn Simpson couldn't get there initially. As we take a look at the full-time highlights, Maline's United with 22 shots eight on target, very nice, it was just three shots on target from beer 18, 19 fouls committed by beer 15 by Maline United, quite a few yellow cards were shown in this one, five, and we'll see the possession 52% in favor of Maline's United. Roger, congrats on the man of the match award. I see you're sporting a new hairstyle for the new Premier League, tell me about it. Well, it's just an instinct, we don't themselves make a starter for the new hairstyle, new design and my flavor or more at it. Not necessarily the three points for you today, but still a point. How important was it for you to keep a clean sheet and this dangerous Maline's attack, keep them away? Well, I was planned for this game from overnight, dream about it, think about it. My first game against Maline, we don't tell myself I want to start off with a clean sheet and so on and so on. How do you feel about the team's performance, generally, and what do you expect for this season for Vera United? Well, I feel confident about my team, I feel very pleased with my team performance, all that we did not get the three points, but we're going to go to the training ground on the third point because we have a aim, forgot to do top six, but it takes each game at a time. Keep doing well, Roger. Congrats on the man of the match. Enjoy the hairstyle, we certainly are. Thank you. Roger Williams, the man of the match, goalkeeper for Vera United, new blonde-topped look, and Alex Thomas comes into frame. Alex, not necessarily the three points you would have wanted, but at the end of it, a point where you think fair result based on the proceedings? Fair result enough, you know, first game of the season, that's a good way to start, a one point half, you know, and then we move on to the next phase. Using Jevon Brown in a more advanced role, we noticed this season, we thought that added something in terms of the middle of the park. Could Lincoln play generally with the team, with Jason and company, but that cutting edge in the front line not quite there today? Not quite there today, and not quite there as yet. You know, it's the early part of the season, and we know we have a lot of work to be done. So, you know, we'll go back to the playing pitch to fix everything. All right, we've talked about the top end. We know that Mollin is very expressive up front. One of the things last season you wanted to improve was those 48 goals you conceded. How do you feel now about keeping a clean sheet first game of the season? How did the defence line look to you? It's a blessing to keep our clean sheet. Not only the defence line, but the overall team all set up defensively and organised and well done to the team. All right, good performance today. We look forward to seeing what you come with in the coming weeks. Thank you very much. Alex Thomas there, head coach of Mollin's. Did a double over the very united team last season. This time just able to come away with a point. Well, Linvol, you started with a draw last season. You start with a draw this season. Talk to me through this, these 90 minutes. Well, a good 90 minutes for us. You know, I think we start really well, you know, start an eye in the first half. You had created some chances and should at least take one of them, you know, but so the near chart again, and I love what I see from my team and hopefully, you know, we can continue on that trend. On air, we spoke about it as well that last season, Virdin create a lot of opportunities. He only scored 15 goals. But this season, it seemed a lot more innovative. You got the ball into wide areas. You had more players getting into the 18-yard box. You came closest in terms of scoring, but just couldn't find the back of the net. So that's his promising. Yeah, well, yeah, so that's a plus for us. That's a plus for us because we've been working this season, getting numbers inside of the box, you know, get great opportunity and score.  But, you know, again, work in progress and we really love what we see today and, you know, we can build on that. And of course, my line-steam that would have done the W over you last season to even come away with some positivity is added things going forward. Talk to me as well about the resources in the team. How are you happy with the complement of the squad? Do you think that these players can get it done for you? Yes, you know, and we have a few players again, you know, in the back door, you know, coming in. And of course, you know, the young study from Schoolboy will be... Will be a part of it soon? Part of the trope and so on. So we like the new close-up play that we have this time. And, you know, hopefully it can bring us a far away in the league. There's a smile on your face, there's positivity in your attitude. So we look forward to a growing, very united, all the best, Linvol, congrats. Thank you very much, my brother. So, Nilo here at the Anthony Sporting Sports Complex with team Maline tonight and very united here.


We can agree to disagree and there's pros and cons to both approaches. You can take either one to a too extreme of a way. I can love myself even when I'm not accomplishing things or failing, but you can take it too far. Pain exists for a purpose. Pain exists as a motivator. Pain is your brain's way of saying move, pivot, change, stop doing what you're doing. And so to the extent that you mask that and tell people, no, you're just perfect how you are, you're overriding the pain that people feel. And that you're overriding the pain that has a purpose, you know? And it's sad.   I'm a tribal approach to this world. And it doesn't mean I hate other people. It's just, Sigmund Freud said it well, if I love everybody, then I don't have enough love and time and energy to love the people who are deserving of my love.


Hello, I am Dr. Dev Ananda, Head of the Department of Cardiac Surgery at Manipal Hospitals. I have been practicing cardiac surgery for the last 18 years. Following mitral valve repair, based on the approaches we use, either regular stenotomy where we cut the breast bone and do the surgery or we do it through a smaller incision in the right part of the chest. One can resume activities anywhere from 4 weeks to 6 weeks. Repair as such probably wouldn't require much, but underlying ventricular pathology if the function of the heart is very good to start with, probably one can resume activities by 3 to 4 weeks of post-operative period. On the contrary, if the underlying heart function was quite low to start with, one might have to take a little rest for longer time and get back to the normal activities. In either case, with the repair, yes, one can get back to the activities more or less the same time as a replacement.


Much brighter to this, you will undergo another procedure where the catheter that carries the dialysate in and out of your abdomen is inserted. Once the tube is inserted, your doctor might recommend waiting up to a month before starting the dialysis treatments. On the day of the dialysis procedure, the dialysate flows into your abdomen and stays there for 4-6 hours.  When the dwell time of 4-6 hours is over, the solution along with waste products drawn from your blood drains into a sterile collection bag. Post procedure, you remain in the hospital for a few more hours for monitoring the recovery during the first dialysis session. The doctor may prescribe some tests to determine the effectiveness of the treatment.