I'm trying I think we're going live hello everyone please let me know please let me know you can hear me and see me it's been a long time since I did a live stream and the technology has changed so which buttons to click and things to set up has all changed I'm just checking who is here I see Layla main what was your last name I forgot your last name Salima Bell Boss I don't remember the last name PTTDDD hello okay welcome if you got any English questions let me know right now what was English questions only let's hear them I'm going to drink while I wait if you cannot chat it's because you're not a subscriber of the channel I just if you're not a subscriber you can't chat so if you want to chat you got to subscribe and then you got to wait five minutes and then you can chat I sound very far away what if I come closer like this let's see could be that using the wrong mic it's been a while does the mic sound the same as usual or is it using a different mic I think I think it should be okay if I do this is this better uh okay Layla asks a question I would like to know if we can use besides and beside interchangeably my example besides attending jack zoom classes I'll join your live stream um no beside and besides are different words they're not the same word you cannot use them interchangeably so no easy answer PTT where's teacher bill uh I don't know good question I haven't talked to teacher bill in about 10 years hello Tika so Tika is the reason I am doing live right now because Tika sent me a message and said hey why aren't you doing live streams and I'm like I felt shame so Tika here I am if you got some English questions let me know so Maya hello again you have to be subscribed to this channel to comment and you got to wait five minutes after you subscribe to ask a question and I am only answering English questions I'm not answering any personal questions in this live stream I want this live stream to focus only on English so if you have an English question bring it and please join our WhatsApp groups we've got a lot of interesting watch out groups these days especially we're doing with jack the free zoom classes so be sure to join links below uh yeah besides attending jack yeah you used uh besides correctly yeah you use besides correctly that's not the same word as beside and open up my drink this live stream is sponsored by nobody so I'm not going to show you what I'm drinking all right PPD PTT PTT DDD geez you can have a better name it's hard to say as a question so let's get I'm going to copy this if I can and go to the uh board here he says many thinks this is wrong many think this could be the first generation that doesn't outlive its parents I want to me I want to know the meaning of outlive all right so this is your example sentence this is your question and with question it's not really a question it's more of a statement many think this could be the first generation that doesn't outlive its parents uh so outlive basically means live longer so uh I will outlive my mom and dad which means they will die before me and I will outlive them I'll live longer but this says many think this could be the first generation that doesn't outlive its parents it means we are extending our life so much so you know people born now they might live to 150 years old they might live to 200 years old so we're extending our age so this generation you know normally parents die let's say 80 years old and children are 40 50 60 years old but this generation your parents might uh live to 120 and you also live to 115 uh the age is uh everyone's going to be old so this generation uh might not outlive they might not live longer than their parents so it's possible uh your mom dies at age let's say your mom dies at age 120 no let's say your mother's age is 120 and your age is 90 so actually your mother had you when she was 30 years old she's 120 your age 90 and you die before your mother now you died at age 90 you're still very old you had a very uh good life but you might not your your parents might not die before you because everyone is living so long hope that hope you got it so outlive just means live longer all right let's see let's go back to talking here and it's been a while since i did these live streams i don't know where to go here let's go back to full street all right what's going on what are the questions i don't see questions he was upset with me he was upset at me uh we was upset with we was upset with he was upset with me do you think meditate can really help to reduce stress i am an english teacher i don't know about meditation uh english based school thank you so much for serving mankind well not just mankind every kind of human hello alex i will try to use beside in these examples number one don't worry about the place you can sit beside me yes this movie is boring beside that last one no that doesn't work number two is wrong i don't know what you beside you're trying to use for number two beside means next to this your number two this movie is boring next to that last one that doesn't work that doesn't work any other english class questions let me know i'm not going to go too long in this live stream because jack will be doing his free zoom class uh in about 50 minutes so if you want to check that out i'm doing the links below the video uh may is let's copy maze question i'm going to put it on my white board here oh this is confusing to use all right so may is asking when is the situation where we need to double a letter to need to double a letter for example prefer or prefer well prefer is just one f better better is t t two t t's so may is looking for a rule to help her spelling may there is no rule uh you just this is one of the problems with spelling you just every every word is different you have to learn you have to learn the spelling of each word sometimes there's a pattern sometimes there's no pattern uh but uh i don't make the spelling rules but if you want to learn if you want to improve your spelling yeah you have you have to understand you're probably gonna have to memorize the spelling of every word so i cannot help you there with spelling you're looking for the easy way to improve your spelling sorry prefer you have to just memorize it's one f and better you have to memorize it's t t right and let's see oh how do you pronounce exas exacerbate exas exacerbate what examples can explain it well i couldn't get the right mean well uh tikka this is a dictionary question so the best thing for you to do with these kind of questions is uh over here i go to uh oxford and you type it in and right there are always the how to pronounce pronounce it with uh british english and american english i don't know if you can hear exacerbate exacerbate exacerbate exacerbate exacerbate exacerbate exacerbate exacerbate exacerbate exacerbate and here's the definition so if you need me to read the dictionary for you exacerbate something to make something worse especially a disease or problem example sentences his aggressive reaction only exacerbated the situation the symptoms may be exacerbated by certain drugs so uh tikka my advice is use that oxford dictionary because that's all i'm going to use if you need me to use it for you i'm not going to learn much vocabulary in a quick time all right leila is going to challenge me here so let's get to the bottom i just checked it on camera i noticed that beside can mean can mean the opposite the opposite of what what are you talking the opposite of what okay let's go to Cambridge oh you guys are asking the dictionary questions you're not making a happy teacher beside all right next to someone or something okay that's the common one but let's go down i what do you mean i just check Cambridge there's only one meaning of the side so what are you talking about leila right here beside Cambridge one meaning next to i can't see any other meaning all right muhammad walid how to be fluent in english uh speak at six hours every day live in an english-speaking country what what answer you already know you already know these answers muhammad how are you going to be fluent well speak it every day talk to native speakers it's got to be hours every day lots and lots of listening and speaking hours upon hours and talking to native speakers if you want to be fluent but realistically nobody here needs to be fluent hello Anna Maria and zanin grace dppt a difficult names today it seems a deep long lost long lasting happiness comes from intangible things rather than things like chocolate and smartphones again we have issues to understand intangible things what's the question dpt you're making a statement here yeah uh does long lasting happiness come from chocolate oh no intangible things which would be uh like love oh so you're right oh you don't understand intangible that's a dictionary okay welcome to robin's dictionary hour where we we just go to the dictionary to all right here i go to oxford type in intangible enter what does it mean something that does not exist as physical thing uh but it's still valuable to a company uh it doesn't have to be about a company wait that's a noun here here's it as adjective we want it as adjective intangible that exists but cannot be touched difficult to describe understand or measure uh so my example was love love is not a physical the feeling of love is not a physical thing you cannot touch love so we call those things intangible just as the dictionary says indisposed to there are many meanings of that word it seems like depending on the context in the sentence i read books and there's so many new words i feel like like my english level is very high and i feel like my english level is very high like my english level is weak indisposed what do you mean many many meanings let's go to oxford i'm at oxford indisposed where's the many i see two indisposed adjective unable to do something because you are ill and indisposed to do something not willing to do it so actually there's only one meaning of indisposed tika i'm not sure why you are creating a simple word into a difficult word you're unable to do something because you feel ill or you're unable to do something for a reason you cannot give right as a dictionary says so your statement there are many meanings of that word i would disagree it seems like depending on the context i yeah we every context is important but there's only really one context we use it someone is unable to do something because they're ill or busy so if you have an example sentence from a book share it here let me know what's confusing you tika this is what i found on Cambridge compared to other persons or things those books seem very dull beside this one okay well in this case it just might mean compared as the dictionary says compared to another person or thing so what's what's the confusion so let's go back to your original so your original was using the movie all right so okay let's get that here i'm just going to copy paste this this movie is boring beside that last one all right so the problem here now i think i understand is uh the beside is still the same beside two things are two things are beside each other the next to each other so this book looks boring next to this book and that could also mean compared to this book so this book is boring next to this book beside this book when they're together a movie is not really a physical thing so we don't really have a movie in your hand and another movie in your hand a movie is intangible so a book is more tangible so i think that beside is comparing two things that are beside each other they are physically next to each other that is why this sentence doesn't work because movies cannot physically be next to each other oh so i hope that helps when exactly can i use i'm spoiled or you're spoiled hmm let's see what the dictionary says oxford spoil so there we are spoil somebody we know it's somebody because you say i am spoiled or you are spoiled you're talking about somebody so let's copy all this from the dictionary and i'll read it to you spoil somebody to give a child everything that they ask for and not enough discipline in a way that has a bad effect bad effect on their character and behavior when you give a child everything and not enough discipline discipline can mean rules and because of this it has a bad effect on their character and behavior so their examples she spoils those kids of hers my grandparents used to spoil me rotten uh people don't usually say i'm spoiled you don't really say i'm spoiled because that's a negative expression people don't say i'm i have bad character you could say you're spoiled which means you have some some bad character or behavior because probably your parents gave you too much you didn't have struggle in your life so are you talking about yourself are you spoiled your parents gave you everything you got the questions coming in my voice how's my voice all right we have dia ptt again got here the phrasal verbs push back and put off what's the difference between those two phrasal verbs all right let's go to the dictionary okay so push back uh there's two meanings you can see that in the dictionary and then put off all right so i think we're going to use this meaning of push back and put off because they're going to have similar meanings this one i think i have enough screen here let me clean up the board all right so this is actually an interesting question and i just put from the dictionary here so push back to make the time or date of a meeting later than originally planned so you have a for example i'm going to do the live stream at 10 p.m no and i push it back i change it to 11 p.m so i later i make it it's delayed i push it back their example sentence the start of the game was pushed back from 2 p.m to 4 p.m so you can push back the time which means delay the time now we also have put off another phrasal verb which is to cancel a meeting or an arrangement that you have made with someone so uh i don't like the examples but let's look at the the second one here she put him off with the excuse that she had to work too much all right so she canceled the meeting so push back is a delay and put off is cancel uh the quick answer uh layla says she can't work on that project as a matter of fact she has zero experience at that field you put failed uh yes you did use matter of fact correctly but i don't think you wanted to say failed maybe you wanted to say field okay tika you got a good question here wow uh robin more questions that's why we're here tika in one situation can we say albeit reluctantly you want to use reluctantly so we got to go check we got to go to the dictionary let's check albeit and albeit as you can see has a simple meaning although so my girlfriend asked me to marry her i agreed although reluctantly so what that would mean is she asked me to marry her i agreed but reluctantly reluctantly well what does reluctantly mean let's go to the dictionary reluctantly in a way that involves hesitation because you don't want to do it so you don't want to do something you hesitate that is reluctantly so my girlfriend let me fix my grammar asked me to marry her and i agreed although reluctantly so i could say i reluctantly agreed which means with hesitation because i don't really want to marry her but i agreed so instead of although we know we can use albeit because albeit means the same as although so my girlfriend asked me to marry her i agreed although albeit reluctantly true story this happened yesterday Mohammed Walid can you recommend some movies for an intermediate English learner to improve so Mohammed Walid it is critical that you choose a genre that you love if you love science fiction you just watch science fiction movies or tv shows if you like drama you watch that if you like comedy you watch that whatever kind of media you enjoy that is the media you should be studying so for intermediate English i think you can watch anything just enjoy it alex food can be spoiled to yeah that's another meaning of spoiled you know again the dictionary spoiled can refer to food which has gone bad that is correct alex no i'm not spoiled unice hello all right mariam has some more dictionary words i guess every every everyone has probably i should change this to the vocabulary show sorry teacher don't say sorry that's why here what is the difference between such as oops such as and namely it's so confusing well my initial thought is they are the same thing you know you have two here so such as namely for example these are all in the same family uh maybe i would use namely to emphasize more so if i use an example here let's make a sentence i love animals that's my spelling i love animals such as cats and monkeys okay and i could say i love animals namely cats and monkeys monkeys wrong here thank you google uh what's the difference so we have such as here and the same sentence with namely i think the namely is they mean the same thing you're just given examples uh the namely would just be you won't really really want to highlight that example so it's more like a specifically so such as is more as just examples but namely is specific examples so namely really really such as as a question i don't have much room for my mouse here so one won't how to pronounce these two words let's go to the dictionary one one i don't know if you can hear can you hear that when i play the last word one one let's go to british up here the ipa and won't the british won't won't can you hear those sounds when i play it won't well we can see in the ipa here the vowel sound that is being used and we could see the vowel sounds are very different now i'm not a pronunciation expert i mean i i i know english pronunciation because i speak english but teaching it the exact movement of the mouth and the tongue and the lips i'm not an expert on that but of course one uh uh uh one and we see the oh oh so this is now this is one vowel sound uh one and you see the oh that's actually two your mouth is moving twice to make the oh sound oh whoa and one and won't hope that helps albeit could we use in a casual dialogue i think some people use it in a casual dialogue albeit yeah dpt the use of present perfect continuous and present continuous in which ash uh sorry d uh ptt i made many videos on my youtube channel with ester about present perfect continuous and present continuous and this is grammar and this is grammar tenses this takes a lot of time to teach with a lot of example sentences i already made videos with ester on my channel please check those out i don't have time to ever teach grammar tenses in learning english live because i try to uh do i try to answer questions in one or two minutes and i'm sorry grammar tenses take a long time and i spent a lot of money making videos teaching that with ester so please check those out uh that's about the only thing i will ignore on my live streams or is teaching grammar tenses because that takes a lot of prep uh could we also logo use your example i love animals like cats and monkeys well leila you could you could say the similar situation similar thing uh at least 10 different ways in english there's so many different ways to say that fluent english with me my question what's the difference between lecture and speech uh well a lecture is your your current lecture is like at a university so uh again this is dictionary words the professor is lecturing the students so the the the professor is trying to teach so the professor is giving a lot of information that is a lecture a speech is just from a politician again they're giving information but there's no test a lecture probably have a test now sometimes they do mean the same thing he gave a lecture on this he gave a speech on that it could mean the same thing sometimes but uh generally speaking lecture is more like a class where they're trying to educate you on something and you might have a test later at a speech is just from a politician uh talking about whatever policy may do all words end with l y or adverb i'm gonna say immediately no not all words that end in l way l y or adverb and i'm gonna just get a quick example uh i can't find it anyway uh usually there'll be an adverb but not always not all words that n and l y are adverbs well like a word like fly that ends in l y that's not an adverb i'll give that to you guys tell us a word that's your homework right now tell us a word that ends in l y that is not an adverb alex says is the pronunciation of korea and career the same uh no you can visibly see there is an r at the end of career so maybe in british pronunciation let's see what the british say korea well in if in british pronunciation uh the word career alone will have the r sound but if it's put in a sentence they might drop that r sound i'm not british but i'm sure they're gonna drop this r sound career i don't know what they're gonna say but in american english uh korea and career uh very different all different uh pronunciations you know albeit can be used in anyway ending with l y can be adjectives family there you go well may you just answered your question happily oh yeah there you go happily good there's an adjective happy happily we apply all right everyone i'm sorry but i am going to end this live stream because uh jack's gonna do his zoo lesson in about 10 minutes and or 15 minutes if you want to check that out please join my or please join in the links below the whatsapp group let me get let me get make sure the links are below okay i'm just gonna make sure the links below this video to the free zoom class be sure to join that today exam topics yeah i think the link is already there yeah so below this video join the link to the free zoom class check it out thank you leila anyone else gonna say thank you oh yeah i don't like dogs so what you can put thumbs down if you disagree with me mariam i'm just finishing up teacher what does mean give in to something give in to is you don't resist anymore you just give in to something you kind of accept it you no longer fight something all right thanks everyone for watching and i'll see you again in the future take care


In today's video, I'm going to be covering everything that you need to know about the AutoDS dropshipping helper Chrome extension. This extension is jam packed with features, and I'm going to go ahead and cover all of them for you. So let's go ahead and get started. All right. So first thing is first, where are you going to get this extension? You're simply going to get it at the Chrome Web Store. The easiest way to get there is by simply going to Google.com and typing in AutoDS Chrome extension. The first link you see is going to be the AutoDS dropshipping helper. Go ahead and click on that. Now here on this right hand side, on my end, you're going to see remove from Chrome because I already have it installed. But on your end, if you don't have it installed, it's going to say add to Chrome. Just go ahead and click on that and install it. Now using this extension, we can go ahead and check out all of the different AutoDS supported suppliers for a particular product in a particular region. The way we do that is simple. So first, we have to go ahead and click on the actual extension. So let's click on this and we're going to choose the different stores that we want to add it to. So here it says select stores for draft. I'm just going to add it to my e-commerce store.  I'm going to want to ship to the US as well as the UK. Now I need to check the different suppliers that I want to search. So I'm going to click on this dropdown box. And for this, I'm going to choose Walmart as well as Banggood US and Banggood UK. And let's also throw in their CJ dropshipping. Okay. So now as you can see, we have my e-commerce store selected. We're going to be searching the US as well as the UK regions and the different suppliers we're going to check are going to be Walmart in the US, Banggood US, Banggood UK and CJ dropshipping US. Now let's go ahead and search for something. So in this case, I want to add a dog collar. Once you type in your search terms and you hit search, all of these different tabs are going to open up with your selected search terms in your selected regions with your selected suppliers. So as you can see, Walmart opened up with our search terms. Then we have the UK Banggood and last but not least, CJ dropshipping. Now another fantastic feature on this extension is the fact that you can import products to your store with just one click. Now the way that you do this is really simple. First thing they need to do is go back to your browser and click on the extension. Once we click on the extension, then we need to select a store that we want to upload our products to. In this case, I'm going to choose the Pet Shop discount and I'm going to go with this product over here and all I have to do now is click on the little blue icon and it's going to be uploaded to my draft section. Now the way that you know if it's importing is you can just go ahead and hover over it and you're going to see the little icon is fading in and out. And then if you try to click on it again, you're not going to be able to. This means that that product is currently in the process of being imported to your store. So you can just go ahead and disregard that and start looking for new ones. Now the next option that you have to import products with just one click is from the product page itself. So in this case, we switched over to Amazon and I want to go ahead and actually import this product. So once you're in the product page itself, you're going to see a little option up here that says import auto DS. This button works exactly the same way as the last one that I showed you. All you have to do is go ahead and click on import and this product is going to go directly to your draft section over at your dashboard. Now the features that I just showed you are specifically for one click importing and for just one product at a time. This next feature that I'm going to show you is specific for bulk importing. This can help you save tons of time by importing multiple products at once. So once again, I'm looking up dog collars on this time CGA dropshipping and you're going to notice this little auto DS Sergo on the bottom right. This is part of the dropship helper extension. Now let's say I like every single one of the products on this page and I want to import all of them to my store. I can do that by simply clicking on this little auto DS tab over here and clicking on extract. Once I click on extract, I have all of the different product IDs for all of the different listings on this page. Now let's go on over to the second page and from here, let's say I only want to add this bow. So I'm going to click on that bow. And if I want to add this along to the rest of my product IDs, all I have to do is click on extract once again. Now this is going to give me the next product ID, which is going to be for this particular item. Now let's say I'm happy with all of the products I have selected and I want to import everything to my store. The next thing to do from here is click on export as CSV. So you're going to click on that and it's going to automatically generate and download a CSV file. Now we can go ahead and jump on over to our platform over at platform.autoDS.com. I already have the right store selected, my Pet Shop discount store. And I'm going to simply go ahead and click on add products and multiple products. Once I'm on here, I'm going to switch over to this tab where it says upload CSV and I can either click or I can drag and drop the file that I just downloaded and it's going to upload everything. Once I click on add as draft, all of those product IDs are going to be analyzed and all of those products are going to be imported to my draft section.  In this case, typically what you need to do is copy over all of the information from your orders page to your supplier. While this extension can simplify that by copying everything all at once. So here we have a few different orders and let's take this one for example. I'm going to go ahead and click on my order and all I have to do here is click on copy address. Here I have the option to either copy only the address or copy the address along with the phone number or copy with hip shipper. In this case, what I'm going to do is I'm just going to go ahead and copy the address only. Now I went to my suppliers website, in this case being Amazon and I added the product to my cart. So now I need to ship it to my customer. Since we already copied over our customer details from our platform over at autodf.com, we can simply go ahead and click on paste. Now you're going to see when I go to add a new address, there's this little button up here that says paste. That's actually from the Chrome extension. So let's go ahead and click on paste over here. And as you can see, after we clicked on paste, all of our customer's information was filled in. Now we're pretty much done. All we need to do is place the order and ship it to them. So let's go ahead and click on use this address and we're all set to ship it to our customer. Now if you're doing this and you're using Amazon as one of your suppliers, then your address book could start to fill up fairly quick and you might have a bunch of irrelevant addresses on there. Now with the extension, you can go ahead and remove all of them except for the default ones. So here all we have to do is click on delete all except default and all of the addresses are going to be immediately and automatically removed except for your default address. Now the last thing that I wanted to cover is if you ever need absolutely any help or if you have any problems with the extension itself, you can simply click on the extension shortcut up here and then on the top right, you're gonna have this little circle. Go ahead and click that and it's gonna take you directly to the help section over at autods.com. And that pretty much does it for this explanation on the Autods dropshipping helper Chrome extension. This is a fantastic extension that has tons of features that can really help you save a lot of time. Time that you can reinvest back into your business to keep on scaling. I hope you all enjoyed this video and found it informational. Once again, my name is Mario with Autods and I'll catch you all in the next video.


Hopefully I can type in now, maybe somebody can tell me how to fix this once and for all because it seems to be random. That's why the background here. All right, so let's see. So as I said, we're going to start talking about linear programming. We should get started. So the plan is to talk a little bit about the goal of optimizing optimization problems where the objective function is linear and also the constraints are given by linear equalities or inequalities. That's what linear programming is about. And that sounds fairly easy except when you have a large size problem, for instance, lots of variables and lots of constraints. You can run into, well, first of all by hand, it's totally out of the question when you have more than two or three variables. And so we'll talk about how this implementation, how the algorithm called simplex method does find the optimal value in most cases. And then we'll go to an example and talk about how the computer actually becomes efficient in implementing the simplex method and get the solution. So first, and I hope you've seen maybe, but if not, here's sort of a very simple setup. So I'll start with the baby example where you have to maximize, say the function f of x1, x2, two variables, x1 plus 2x2 subject to the constraints. So I'm going to use g for the constraints. So g1 of x1, x2 is 2x1 plus 3x2. And this can be at most six. And g2, x1, x2 is 3x1 plus x2. This can be at most three. And also, since most of our variables, well, sometimes we're going to assume this without even explicitly saying that the quantities are positive. So this is a very simple example of linear programming. You have objective function, which is linear function in x1, x2. And your constraints are also linear. Now, these are inequalities or other inequalities, right? But let's see what it looks like. So first thing, when we do an optimization with constraints, we want to look at what's the feasible region, right? What's the feasible set given by these constraints? And in two dimensions, so when we have two variables, linear inequalities lead to lines and half planes, right? So the equality leads to a line, and then inequality leads to one of the two half planes, right? So let's see, 2x1 plus 3x2 equals 6 looks something like this. You can see this, if I put x2, 0, then I get x1 to be 3, right? If I put x1 to be 0, I got x2 equals 2, right? So that's 2x1 plus 3x2 equals 6. And so how do we determine which half plane corresponds to the inequality less than or equal to, right? Is this half plane or this half plane? Bottom one, because we could take 0, 0 and verify that it actually satisfied the inequality. So that's the lower half plane. For this first one, and the second one is going to be, I use a different color. So the second one looks something like that, right? And I believe there is a one intersect and there is a three intersect here, right? So obviously it's chosen so that it looks fairly simple. And again, it's a lower half plane determined by that blue line. So when you look at the constraints being satisfied simultaneously, we get this region, right? So that would be the feasible region. So we're interested in the maximum value of our objective function within this region. Now let's remember, well, first of all, you could identify all the vertices of this region. As I said, this is 0, 2. This is 1, 0. Yeah, this is 0, 0. And the last one is obtained by solving the system 2x1 plus 3x2 equals 6, 3x1 plus x2 equals 3. And I think if you do the whatever method you choose comes out to be 3 seventh and 12 sevenths, right? So that's, of course, this is going to be very hard if not impossible when you have 7 constraints and 5 variables, right? But just to illustrate the idea here. So right now, how can we visually maximize this function? Or can we tell where the maximum is going to occur? Well, first of all, look at this objective function. And think about what it is that, like, where are the points where this function takes a certain value, C? So what are the level curves, right? Level curves of the objective functions. The objective function is, or are lines, right? Lines in the plane, parallel to themselves, right? And you can figure out the slope, right? The slope is with slope, what's the slope? Negative or half, right? Because x2 is, you can write x2 is minus a half x1 plus a half C or something like that, right? So the slope is negative or half. So now I'm about to draw that in this plane. And I have to make sure that I draw it correctly compared to these other two lines, right? So for instance, let's do the 1 through 0. So the 1 through 0 is x1 plus 2x2 equals 0. So it looks something like this, right? So this is where f is 0, okay? Now, as I said, the other curves are, I mean the actual, the other level curves, which are all lines parallel to themselves, are going to be either this way or that way, or the opposite way. But how do we know whether f is increasing or decreasing in this direction? So f is, what do you think? Is it increasing as we move this way or this way? As we move this way, it's going to be increasing because, well, because you can say f equals 2 happens, you know? So x1 plus 2x2 equals 2, right? Happens when x2 is 0 and x1 is 2. So that's, okay? So it happens when whatever, you know? You can find the intercept, right? So this would be 2, 0 and this would be 0, 1, right? But actually a better way to think about it is, what is the gradient of f? It's 1 and 2, right? So the gradient of f is this vector, and what do we know about the direction of the gradient? Is the direction in which f increases, right? Most, actually. So it's in the direction of the gradient that f is increasing, right? So if you want to look for the maximum of the values of f, then we want to basically see what level curve I can draw that still intersects that feasible set, right? And that corresponds to the maximum value of f. Well, maximum value of f is achieved by sliding this line sort of parallel to itself as much as possible, right? And still meeting that feasible region, right? So visually, to maximize f of x1, x2 on the feasible set, amounts to sliding the level or finding the level curve, finding the level curve which intersects the feasible set and corresponds to the maximum value of f, f equals c, okay? So you can imagine doing this, and because of the specific way the feasible set looks, like where do you think it's going to hit, where is that level set going to be? So it all depends on the slopes, right? It depends on the slopes of this line compared to the slopes of the constraints, right? If you look at the slopes of the green line, then you see the slope is negative two-thirds, right? And this one has slope, so this was 2x1 plus x2 equals 3. This is slope negative 3, right? So basically, if you compare the slopes, so what was negative two-thirds, negative 3, right? And you have to see where the negative one-half fits. Is it negative one-half? Yep. Well, negative one-half looks like it's here, isn't it? So, right, this looks like right, so yep. So you see the slope? I mean, the picture doesn't look very correct because I have one and two, so this means that when I'm going to hit 2 and 4, right? That line is going to be with slope less than the green line, right? So this means that you can slide it up all the way to where this value is achieved, right? So this means that the maximum occurs when x1 and x2 is 0 and 2. And the maximum will be, the maximum of f, the maximum of f is over the region, feasible region, let's call it s, is f at 0, 2 is 4, right? I mean, it's 0 plus 2 times 2, so that's 4. And you can verify this by the following reason, right? So the conclusion visually is that you have this maximum. Yep. Which one? This? Well, it won't have, well, these have predetermined slopes. So this has a slope of negative one-half, right? And that has a slope of negative two-thirds, right? So, well, it will intersect and the question is, when does it intersect this feasible set and achieve its maximum value, right? So by looking at the slopes, we kind of conclude that the maximum is going to occur when, I'm just going to draw this here, so, right? So that's going to be f equals 4, right? Now, you can verify this. So for instance, what's the value of f at the other vertex? At this vertex. Well, the other vertex was 3-7s and 12-7s, right? So this is, what is it? 3-7s plus 2 times 12-7s, that's 27 over 7. That's just slightly less than 4, right? But it is less than 4, okay? So the value here is f is whatever, 27 over 7, right? So this is the maximum point, okay? And it's achieved at a vertex rather than in the middle of an edge. And that's something that's going to happen for all linear programming problems like this. Because the objective function is linear, right? The worst thing that can happen is that that objective function could be parallel to one of the sides of these visible sets, in which case you'd have a maximum anywhere on that edge. But for certain, it's going to happen when you pick only the vertices, okay? So that's kind of one way to do it. And it's not very efficient when you think about, you know, variables and more because we don't even talk about slopes there. What would be another way of finding the maximum? Well, it could be as easy as looking at the vertices only and evaluate the function of the vertices. Like we did this kind of a priori, but a posterior after the fact, right? We computed the value of f here, we computed the value of f here, we didn't compute the value of f here, but here would have been 1, right? So here was 1, so obviously it was less than, and here it was 0, so, right? So, and then pick the maximum of all, right? Now what happens if you don't have this visual tool? So what happens when you have several variables, okay? So let me formulate a problem. So the linear programming problem in general says the following. Is that consider the objective function, a linear function, as far as f of x1, xn is basically a linear combination of x1. So let's c1 times x1 plus c2 times x2 plus cn times xn. And try to maximize it or minimize subject to the constraints, and you can have any number of them. So I'm going to use g1 of x1, xn, which is again a linear function of x1, xn. So it's a11x1 plus a1nxn less than or equal to b1, g2, and so forth, right? So g2 less than b2, and finally gm. So that's possibly a different number of constraints than the number of variables. You can have one constraint. You can have fewer constraints than a number of variables. You can have more constraints than a number of variables, right? Even in two dimensions you could have three constraints. Yep, and so forth. So a m1x1 plus a mnxn less than or equal to bm. And again, keep this in mind that for our applications there's going to be, if you want an additional number of constraints, but we're going to treat this separately, right? We're going to treat them as special constraints. Now, you can always make x1 being positive to be a constraint of that type, right? You could say minus x1 has to be less than or equal to zero, and that would be another g. But again, let's leave this separate, and you see the code is going to use them in separate ways. So just first to introduce this definition is that the feasible set corresponding to such constraints is called a simplex. A simplex and rn. So rn is the state space, right? You have n variables. In rn you have this region, which is basically obtained by taking each constraint and reducing that rn to half spaces, half spaces, and so forth. So you can think of it as some sort of like a diamond with lots of faces in rn. So quite hard to plot it, but this doesn't do justice here because this is in rn, right?   So in r2 it is easy. This really is a picture of r2, right, of a simplex in r2, but in r3 you already can have pyramids, all kinds of objects. So that is kind of a generic name for such a region. It's called a simplex. And the algorithm for finding the maximum for finding the optimal value of f is a vertex search. Note that because the objective function is linear, in rn what's the level curve of a linear function? It's a n minus 1 plane if you want, right? So it's a kind of a hyperplane if you want. Think about r3 and then you have a linear function, r3, level curves are planes, right? And then in more dimensions there's an analog. But when you have like a diamond shape region, right, and you're kind of sliding that plane parallel to itself, and you're trying to see where it hits that kind of simplex first or last, right? If you want to minimize, you want to slide from lower values, right, until it hits it first and then to find the maximum is where it hits last, right? Well those intersections will always happen either on vertices or as I said on edges, right? But it's fair enough to say that the maximum will occur at one of the vertices. So note that the optimal value is always going to be achieved at a vertex. Now it may not be an unique vertex because as I said, if you have a face or an edge that is parallel to that hyperplane that you're sliding, you're going to hit it along the whole edge rather than just a single vertex, right? But it's enough to kind of say, well if I'm able to evaluate that function at each vertex and find the maximum vertex where the function takes the maximum value, then we're done, right? The only problem is you may have lots of vertices that you don't know how to calculate. So evaluating at each vertex may not be feasible, be computationally feasible because there are too many and in fact you don't know what they are. I mean imagine you have five constraints in seven dimensions. Just to compute those vertices, all the vertices would be a huge task, right? And then knowing that the maximum only occurs on one or two vertices will say, well why do I have to compute all the vertices, right? Well I'm only interested in that optimal vertex, right? So this vertex search, so basically the idea of the simplex method is start with an initial vertex and move to neighboring ones, vertices where the function increases in value if it is to maximize or decreases in value if you have to minimize, right? So again it's impossible to draw but in more than two dimensions but if it's something like this, let's say this is, it's in two dimensions but I have one, two, three, four, five constraints, right? And let's say the maximum is occurring at this edge, at this vertex, excuse me, okay? Then the simplex would start somewhere, would start let's say, typically you start always at, well you can pick the point to start but typically you start at the vertex that you know, you don't have to do any computation. You start at zero and then you move to a neighboring vertex where the value of F increases, right? So probably, I mean to get in the shortest amount of time or computations to the optimal you should move to this vertex, right? And then from here you'll move to the, the next one will be maximum, right? Rather than moving to this one and then this one and then this one and this one, right? Okay, now there is an algorithm that actually is indicating how to, to choose the vertices, the vertices to move in the fastest way possible. So in the shortest number of iterations to get to a maximum, right? And there are actually different algorithms for, you know, some are actually professional grades so some are, I mean there, there are lots of them that are used in commercial products. MATLAB has one that's called, well, has an implementation of the simplex method called linprog. So in MATLAB, this is the command linprog for linear programming. Command is available as long as you have optimization toolbox. So we'll talk about that in a specific example but just to indicate here. Of course, there's going to be some syntax that we need to abide by. But the main thing to do when you run something on your computer is to make sure that you have optimization toolbox. And I think the student versions recently have started that. So if you're not sure, just type VR from version and you should see it in your list of toolboxes. Okay? If you don't, you're not going to be able to run this command. But anywhere on campus, anywhere, as I said, if you have a very old student version then you probably don't have this but check it before you start anything. Okay? So let me talk a little bit about this. Any questions about?  Good thing about it is you can just, if you know how to feed in the data, the data of the problem in this command then you get the answer. You get everything like in one line, right? The bad thing is, well, it may not be as bad but you don't see actually that vertex search. It doesn't just show you any because it's all sort of hidden in the command, right? So is anybody seen linear programming before? Simple method? In discrete math? It wasn't in the school. American computation? Okay. With the top lows? Yes. Right, so you can do it by hand, right? But the point is, and I'll show you, I'll show you some of that, but it's not actually, well, you see it by hand, do it by hand, but then when you have to do a large-scale one, then you have to run a computer software. So this is quite well-optimized in Matlab, so I'll tell you how much you can rely on it, but there are different options to do it, and hopefully maybe Monday I'll talk a little bit about the algorithm by hand. But first of all, let's just see how it works on a specific problem. So the example I think it's called 3.3, or is it 3.4? It's 3.4 in our book, and it's about a farm problem. Okay. And it has three variables. So I think you should, I'll kind of do it a little bit shorter than the book does because the book actually goes through the five steps of modeling. So, but I'll just sort of just highlight what are the important ingredients in this model. So the problem is you have a certain amount of land available for planting, and you want to do three crops, corn, wheat, and oats. So you want to plan on how much of each to plant, say, in a given year. So the decision variables, or the variables, the state variables are acres of corn planted, or to be planted, acres of wheat, X2, and acres of oat. And now we have certain constraints, so we don't have, I mean, we have to stay within certain bounds. One of them is the sum of the X1, X2, X3 has to be, you know, at most 600, whatever it is, 25, right? Well, just because the code, the way I wrote the code is this comes as the last one, as the last constraint, but that's not, right? So this just says I don't have, this is how much I have available. And yes, 625, I think, yeah. All right, now, what are the other constraints? Well, it is anticipated that a thousand acre food of water will be available for irrigation. So you have a constraint on the total amount of water, acre food is volume, right? It's an amount of water that's available, and I think that's my first constraint here, so. And then you have a table of how much water it takes each crop, right? So you have corn takes three acre food, right? One acre of corn takes, so this is going to be three times X1, right? Plus one times X2 plus 1.5 times X3 cannot exceed a thousand, yeah. This will determine the feasible set, right? Basically what's possible among, you know, we still haven't defined what the objective is, right? But the objective will be to whatever some profit, right? Maximum profit. Find the amount of each crop that should be planted for maximum profit. And profit is basically, yeah, is about, is in terms of dollars of yield. Okay, and we have one more constraint that's the labor. There will be farmers available to devote 300 hours per labor per week. So I guess it's safe to say just do it per week, right? That would be time per week. 0.8 X1 plus 0.2 X2 plus 0.3 X3 at most 300, okay? So that's about it. And of course X1, X2, X3 have to be positive, right? And now the objective function is the profit or the total yield. So that's half equals 400 X1 plus 200 X2 plus 250 X3. And again, this is all given in a table. So, you know, it may take a little bit. I think one of the homework problems that I've signed, you're also given a table. So you just have to be able to extract information the right way from the table. So, okay, so the first thing to realize is this is exactly in the form that we had it earlier. Also called a standard form of linear programming in standard form. And it's also very kind of, well, it's almost, it's prepared to apply the lean proc command in MATLAB with only one small modification I'll tell you in a second. But if you think about it, what you have is you have an R3, you have three variables, right? You have the first octant, right? And then you have some of this, each constraint corresponds to a half space, right? So I don't know how you call that figure, that you cut the first octant in three with three planes. You see, it's pretty hard to even count the number of vertices, right? Let alone to actually find all the vertices. And then this will be actually a plane, right? That's trying to hit that simplex, okay? And we're trying to find where it hits, you know, what is that vertex?  So by hand it's kind of almost hopeless at this point, even with three variables. So let's see the code, how you would do this on the computer. So first of all, I just wrote this here, so all of this is common, so there's nothing. Notice that even the function, I don't have to define the function, it's just a comment, right? So we know what it is. In fact, that's an important thing to mention is at this stage we're not going to use any symbolic computation anymore. So we don't have to define x1, x2, x3 as symbolic, period. It just makes the display better when you publish. If you look at the published version you'll see this. I think it just itemizes them here, okay? But it's just common, right? So the code starts here basically, okay? So notice how simple, well, it's relatively simple to input this in linear programming. That is, you just have to make the metrics with the coefficients of the constraint and a column of the right-hand side of the constraint, right? No, I'm sorry. Actually, this one is the coefficients of the objective function, f. And b is the right-hand side of the constraints, okay? And keep in mind these are columns, right? So this is how you write a column in Matlab. It's column, column, and this is a matrix. 3 by 3 in this case, I have three constraints and three variables. Notice I don't have any x1 positive, x2 positive, x3 positive, right? So those are separate. Those are not treated as real constraints. Okay, so, and that's it basically. So, well, we'll see other a little bit more sophisticated way, but all you have to call is you have to call this linear program, the linprog function, and you have to give the inputs the following. The objective function by just the coefficients of that linear function, right? Now, the reason you need a minus is because linprog actually minimizes instead of maximizing. So the best way to see this is to look at the help here. So linprog actually minimizes objective function which is linear, so f times x, but f transpose, so f is a column, right? So f transpose is a row times the column of the x's. Subject two, you can have an equality constraint, you can have equality constraints, and you can have bounds for x, okay? So look at the syntax. So the first one is just the simple syntax where you have f, a, and b. So you have to specify f, the matrix coefficients, and the right-hand side of the constraints. So that's what we do here.  So we actually give the name x and x will stand for the vertex where the optimal occurs. f val is going to be the value of the objective function at the optimal vertex. This doesn't matter too much. I'm just going to say that it's successful. Optimization was successful. And there are two more things. The one that we're going to be interested in is this lambda. It will be some sort of shadow prices, the role of a shadow price. And the last thing I do is, notice I don't display anything in this lean probe because I don't want to see everything yet, but I just display x and I display the value of the function.  So I'm doing an undoing assign so that in effect I'm maximizing this. So if you run this, you'll just see the answer. It found the f max and it found this vertex of these values of x1, x2, x3. So, okay, if you're not sure about what. Now, lean probe always minimizes. Well, for our property, we need to know what to look for before we go to the computer. So we're looking for the max. Now, if you're looking for a min, you can ask for the min, right? But you will know what the min is. You will know that it's 0, 0, right? In this case, but in general, it's true. You won't know, in fact, here, by the way I actually typed in this is I didn't say that x1, x2, x3 has to be positive, okay? So because I didn't restrict to x1, x2, x3 is positive, you see what happens here. It actually goes to negative values and it doesn't find the minimum, right? So it gives me all of these errors which is consistent, right? It says that the minimum, right? Well, I call them what is the minimum, right? And at some point it just has to stop. So yeah, so you have to kind of watch what you're doing and kind of balance with what you expect to happen. Now, let me talk a little bit about any other questions on this. It's just a one-line command, right? Yeah. Well, yeah, so don't worry about these two things. You see, I don't even use them. The only thing is in order to harvest this lambda, which is going to be the Lagrange multiplier, the shadow price, that's what the command asks you to do. So I have to give names. I cannot just say lambda as a third output because that's not a third output. It's a fifth output. Yeah, but we don't use that. If you want to see what this is, and I run this again, you can, right, one stands for it's successful or something like that, right? Okay, so now, so you could say, okay, that's it. We're going to plan this many acres and this many and so forth and be done. Now, there is something that to be said about how far you are from actually fulfilling or satisfying those constraints. For instance, you might ask, well, have we used all the land? I mean, this optimal strategy, is it going to use all the land? Or is it going to use all the water? Or is it going to use all the hours, right? So how do you decide on that? Well, you just have to see how far you are from satisfying the equalities in the constraints. Okay, so those are called slack variables, which is nothing but taking the AX and comparing it with B, right? Remember, the constraints are AX less than or equal than B. So if I put the difference, I would know. So the difference between the left side and the right side of the constraints and equalities turned out to be for this maximum, for this optimal value, turned out to be 0, 74, and 0. What does it mean? We use all the land, and forget this minus, 0. We use all the water, but we don't use all the time, which is great, right? Because we care about people more than water, for instance. Yeah, okay, so 128, yeah. Okay, great. No, no, that's actually a good point. The section that comes up to this section is talks about, releases these problems, but talks about, you know, you have, it's called discrete optimization, so you have, your decision variables can only take discrete values, and then you have these other issues, right? But right now, let's not worry about those. In fact, I'll just say, discrete optimization is not going to be something we'll talk about in this class. So, or integer programming, right? Integer programming is a whole different, you know, whole different discussion. Okay, so, everybody kind of understands what the slack variables mean, is once you decide on the values of x1, x2, x3, what's the difference between the left side of the constraint and the right side of the constraint? Okay. And we just, we just computed this, and the meaning of that is, you know, the slack variable being zero means that the constraint is what's called binding. So you have maxed that constraint. There's nothing, you know, you can spare from that, right? You cannot have any, I mean, you cannot have more land, right? For instance, yeah. Well, that basically means, if you think about that simplex, it means that where the maximum occurs, right, is somewhere where it's different from the, where the labor is, so it's not on the face where the labor is reaches its maximum, it reaches its constraint. Now, and that's the visual picture, but I mean, in terms of, you know, field, you know, situation on the field, that's what turns out to be the maximum profit, right? In terms of, I mean, there's no cost to the labor here in the picture, but it just says that's what's going to give you the best decision for these variables. Is the difference, is the difference, right? Is the difference. Right, so let me say here, so the slack variables, and I use u rather than x is the following, is if I look at the constraints, then I say 3x1 plus x2 plus 1.5x3 plus u1 equals 1,000. So it's basically, I take the difference between the two and I insert it there, I like to be positive, so I put plus u3, u1, right? So I insert this u1 here. The other one is 0.8 times x1 plus 0.2x2 plus 0.3x3 plus u2 equals 300, right?  So I have, for each constraint, I have a slack variable, right? And by requiring that these slack variables are also positive means that I put them here, right? Yeah, that's extreme, thank you, yeah. Okay, so when you do the difference between b and a times x, right? That's going to be u1 into u3, right? So u1, u2, u3, if you want a times x1, x2, x3 equals b, b1, b2, b3. And it's important that the inequalities are all less than or equal to, less than or equal to, right? What if one equality would be greater than or equal to? You would flip it around, put a negative in front, right? So put a negative in front and type in that matrix, maybe I'll show you an example in a second. Okay, so this is the slack variables and this has a meaning. And now the last thing is shadow prices. So we've talked about this. Let me just run this and then talk. So this is actually, that's the reason why we wanted the lambda to be outputted. So we want to compute this lambda and lambda is like a complicated thing because it can also take the lambda of the constraints, equality constraints and the other things. So this is just saying, show me the values of the lambdas for the inequality constraints, which in this case are all of them. And these are those numbers, okay? So what is the meaning of this? So if you think about lambda as a Lagrange multiplier or shadow price, for each of the constraints, so this is the first constraint, second constraint, third constraint. But the first constraint, what's the shadow price meaning? It means that if I allow one more unit of the irrigation of the water and redo the whole optimization again, what will be the optimal profit in that case? And it's going to be $100 more, okay? And that's because the optimal that occurred here was using all the water, okay? So because the first constraint was binding, so the slack was zero there, corresponding to a positive value for the shadow price. Now think about the second constraint. The second constraint says I have some hours to spare, right? Well, so now if I allow more hours and I redo the whole optimization again, is that going to change anything? No. So there's going to be no benefit for increasing the other constraint, for relaxing the second constraint. The third constraint was the amount of land, right? And that again corresponds to if I allow one more acre and redo the whole optimization, then what's going to happen, right? And you can convince yourselves of this, what you can think of sensitive analysis. So if you run this with $1,000, $325,000, okay? You run the same thing again and then look at the gain, the fmax minus the previous one. This is going to be exactly the shadow price, the $100,000, okay? So notice that here I'm not catching the lambda again, right? I don't want to read that. Also, so I can run this so you can see, oh, the only thing that I'm going to... So, okay, I jumped over something. So let me just say the following, that the first thing that we run this, we run it with what's called a large-scale method, which is typically used for large-scale problems, okay? And that is not using the simplex method that you know by hand. If you've done it by hand, that wasn't the actual simplex method. It was a different algorithm for this vertex search. If you want to use the simplex method that you've done it by hand and you love it and you want to see how it does, then there's this... You have to define options to just copy and paste this.  And then you run the same thing again, but you have to type it in here, right? And when you type it in here, remember last time we only used three inputs for the limb probe? Well, now you see we need... This would be for the equality constraints and we don't have any equality constraints. This is for the lower bound, so the lower bound is 0, 0, 0, right? And this is for the upper bound, and I forgot this one for what it is, but you can look in the limb probe for that and then run it again. Now, you remember those numbers, right? Let's run it again with this syntax. With this... Oh, yeah, of course I... Okay, let me run it again from the beginning. So I run it here. This is large-scale, right? Okay. And this is the slack and this is the shadow price, okay? Now, we do it with a simplex method. What do you notice? Different. Different strategy. So don't plan any of the other one, of the, whatever, the third crop, right? You're going to get the same maximum. How is that possible? This basically means that your plane hits that simplex, not in one point, one vertex alone, but in edge, at an edge, right? So there's not a single optimal value for x, right? It's the same value for f, same maximum for f, but there are at least two for x, right? And now here's the kicker here. Look at the slack. In this strategy, you have the same profit, but with less work to spare, right? Hours. So your people are going to work more, right? Get the same profit, right? So what's the conclusion of this? Depending on which method, which algorithm you use, sometimes you may pick a vertex, right? You may reach a vertex where the maximum occurs, right? But that's it. You stop, right? And that's what simplex does. The other algorithm actually does it a little bit better. It also maximizes the slack, okay? And it's the same shadow price. That doesn't change, right? If it's a binding constraint, you have a positive shadow price. If it's not binding, you have no shadow price, right? All right, so as I said, the sensitivity, and I'll stop here, but the sensitivity just shows you that if you run this with one more, the gain is 100. So it's exactly that shadow price. So pretty much the lambda is the Lagrange multicolors for each of the constraints, taken one at a time at the maximum point. And if your optimal point is not on a constraint, you don't have a constraint optimization. So there's lambda is zero, okay? There's a second example of 3.5, which I don't have a code to. But if you want, I can make it up. So there's an example of 3.5 in the book about dirt, something like that. But maybe I'll post it one of these days. Okay, but get started on the homework and let me know. I think I said the deadline for Wednesday, so a week from today. So get that started. Yeah. I watched the class and you were asking about the people taking it for graduate credit. Yeah. And I am taking it. Yes, you are the only person, the other person, yeah. I'm the other person. The other person, right. So you wanted to...


Working together to connect. When we discard digital devices such as computers, smartphones, televisions and tablets, they become e-waste. Hazardous toxins from e-waste can accumulate in the soil, water and air, and pass through the food chain. Becoming a health risk. Children and young people are especially vulnerable. In 2019, we generated 53.6 million metric tons of e-waste worldwide, up 21% in five years. Making e-waste a growing challenge. However, digital devices as well as information and communication technologies can also have a positive impact on the environment, such as in climate action. Helping us monitor, mitigate and adapt to climate change. ITU members have co-created a report on ICTs and the environment. The report looks at the growing challenge of e-waste and presents existing solutions for its safe disposal and use by providing an overview of global patterns and trends in the increase of e-waste by focusing on education and awareness of the hazards posed by e-waste and by exploring the development of e-waste strategies. Policies should focus on supporting recycling and refurbishment and products should be designed to include end-of-life and end-of-use management. ICTs can help us mitigate climate change, especially emerging technologies like artificial intelligence, Earth observation and big data. The report focuses on how new technologies, systems and applications can monitor the climate and reduce its impact. It provides guidelines to best practices on climate change monitoring and mitigation strategies. Socially and culturally appropriate policies need to support cost-effective, readily available and sustainable technologies. Helping us ensure a healthier and more sustainable planet. Working together to connect www.itu.int


Live from Santa Clara in the heart of Silicon Valley, it's theCUBE, covering Cloud Foundry Summit 2017. Brought to you by the Cloud Foundry Foundation and Pivotal. Welcome back, I'm Stu Miniman joined by my co-host, John Troyer, and there's nothing we love more when we're at the user conference to actually be able to dig in and talk with the users. Want to welcome to the program Opal Perry, who is a divisional CIO at Allstate. Did the keynote this morning, really good community here? I know that we're excited to hear your story and thank you so much for joining us. Thanks, it's great to be here with you. So Opal, we hear this term, the digital transformation.  Why don't you give us kind of a quick overview of your role and what this transformation's been? Sure, so I've been with Allstate almost six years and I'm one of the vice presidents on the technology leadership team. So we both work together as a whole team on initiatives that affect the entire enterprise. And then my particular day-to-day focus is this divisional CIO of claims. And we're a large insurer, the number one publicly held insurer in the U.S. And we support claims for auto, property, all-state business insurance. So it's an outstanding time to be in the business because there's just so much going on in technology, there are so many emerging areas, and particularly when we are able to knit them together to serve our customers from insurance, protection, restoration standpoint, it's really, really powerful. We do say and hear transformation so much that it feels sometimes like an overused term, but I haven't found a better word for it yet because I think things really are transformative. We've been used to for many years in the industry change, right? Continuous improvement, we're always trying to change and get better. But what's happening now with this convergence of forces is truly transformative. We're not just replacing one way of doing things with a slightly improved way. We're changing the way people interact and serve the customer. And Opal, what was the driver for this change? Was there a pain point or competitive pressure? What drove this change? At all state, it's all about the customer opportunity. As I mentioned this morning, we've got 16 million customer households, and that's just a tremendous responsibility, also a tremendous opportunity. So to us, it was thinking about how do we bring the forces of this great 86 year old company to bear and use the digital and technology changes emerging and really do that in support of giving our customer a better and better experience? How do we protect them? How do we restore them? As you were making this transformation to, and we're here at the Cloud Foundry Summit, so interested in the Cloud Foundry story, how some of that decision process, obviously the tech is really cool. A, and so was this coming out of the developers first, the technologists first, or was it more of a needs analysis from the top down that like a platform instead of technologies like Cloud Foundry, it could be what we need? It really came from a number of quarters, but the tipping force was from our infrastructure area. And as we looked like a lot of large companies do at what's the future of infrastructure, both in the data center, themes that have been emerging for many years in Cloud, there were a number of us that are leaders at all state that came from a banking background. So we had seen previous era changes and prior to Cloud Foundry being instantiated, it had worked more in homegrown paths and seen that opportunity, both from the developer end, but also from the infrastructure end. So when Andy Zittney had joined us, he's with McKesson now, but he had joined and was our CTO for a period of time and had background from Chase and PayPal and various areas. He came in and built our platform team and really looked in there through their selection process to determine Cloud Foundry was a great option for us and something that we could grow with over time to start meeting the needs. But it was really an interest of saying, hey, let's let infrastructure get out of the way, provide the foundation for the developers and let the developers innovate great software for the business, but let's let the platform take care of things. He brought early awareness to a lot of those factors. Yeah, I think the joke is that nobody should be right in their own cryptographic software anymore. Nobody should be writing a distributed key value pair store anymore. And the Cloud Foundry people will tell you nobody should be writing their own pass in a platform anymore. That's hard enough, let somebody else take care of it. Yeah, maybe even if you're a PhD student or researching the next great idea, but in terms of being from within an enterprise whose primary role is to serve customers in a different way. Again, it just takes care of a lot of the lifting and that took a while when we introduced it for some people to understand. People would say to me, why are you adding another layer and getting them to understand the power of the abstraction and that's what we're really doing. We're lifting up above so we don't have to be worried so much about the exact infrastructure we're sitting on. That up-skilling process that you're talking about, that training process, both from the developer side and the operational side, there's a learning curve and some people embrace it, some people, maybe not so much. Can you talk a little bit about how people have gotten trained up on the new skills, how you're helping people do that? Yeah, so in our platform team, it really started with Matt Curry who joined us a few years ago. He's an awesome engineer but also a great leader. And he really set the tone culturally for the platform team to be learning environment and for people to share a lot. So a lot's really happened where he's led the hiring and training and seeding of the platform team. From a developer perspective, when we looked across the enterprise and realized we've got a couple thousand developers that have worked for us for decades across different areas, we needed to do something more to reach scale more quickly. Initially we were pairing with Pivotal and that was effective in getting some good results but we thought in order to make that scale and scale more quickly, we wanted to take a different approach. So we partnered with Galvanize and brought in-house a 12-week boot camp style approach. Yeah, Opal, one of the things that really resonated in your keynote, you talked about painting a picture as to how this technology really impacted your customers. There was a tree, there was a sun, there's your labs, environments and roots. Maybe if you could tease that out a little bit for us and explain how this technology really impacts your users. Yes, well, one I think in use of that metaphor, it kind of acknowledges the environment is somewhat organic, right? The platform's still growing a lot, the ecosystem we're in, we have the chance to both contribute to the community and to take from it as it develops. So to me, that's a really strong notion and the notion that particularly in leadership, we're kind of, we're gardeners in a way, right? We're fostering the growth and so I thought that it's a really good example of thinking about as a tree or any plant really grows, it needs a variety of factors. So I said that our customers are like the sun to us, they're the reason for existing and that's what we're all orbiting around. But the air represents all the business opportunity that wins the change of been blowing mightily for years. And the soil in which the tree is planted is like all the great, the cloud foundry instances, it's the training, it's the new role definition, it's the holistic program that really defines how we'll work as a digital product team. We put all that together and we need constant leadership support on a number of grounds to really make sure we take and cement the change. And what about the developers? Where do they fit in this kind of natural organic? They're the growing, thriving, strong plan itself. And so I think both, we aim for each individual product team and each individual whether it's a developer, product manager or designer to be continuously growing and using their creativity, discipline, strength to bring us great business results. And then when you kind of back out and you look at our network of product teams, that's a really important thing to me and an enterprise of our scale is very few breakthroughs will occur, I believe, because of a single digital product innovation. It's really an ability to knit together different products to providing end-to-end service or experience to the customer. How do you look at the public cloud? Cloud Foundry allows, we were talking about with Bosch, a multi-cloud environment. Where does your applications and deployments live today and how do you look at the public cloud? Yeah, we're still exploring all the possibilities. Matt and his team have been very active looking. So we started with on-premise installation for Cloud Foundry. And for myself leading a development team, it's great as the platform as they look so it kind of burst out into a multi-cloud environment. It'll be transparent to my team as long as we're operating to run on our Cloud Foundry instance, they can take us wherever we need to go. I know they've been doing a lot of work with our security team and other areas of the company to determine what's the right way to forge the path forward. They've got, I had a meeting with them Friday and they've got some great design things in the work. So I think we're in the next six months to a year going to be looking at some real strong expansion of our cloud strategy. How does security fit into this whole picture? Obviously a major concern for every CIO these days. Yeah, absolutely. I mean, to us we've taken a real security first approach. And so we've been, our CISO team has been working really closely with Matt and the cloud engineers and they're just defining how do we want to segregate parts of our environment? How do we kind of follow the principle of trust no one and build security in from the get go? Again, it's a little bit like the platform itself. I'm confident when they get a solution in place it'll minimize the burden on my developers and we can just have a security first mindset but have a lot of the hygiene taken care of by the platform implementation. Yeah, again, something you don't want to differentiate on you want to be built into the foundation or the roots maybe of our metaphor here. Yes, there we go. Oppo, can you talk a little bit about the apps? Obviously we've talked to, we've already used words like scale here today. I'll say it's a big company. You've got lots of apps, legacy apps, many different kind of stacks, generations of technology. How are you choosing what ends up being, using this green field or things that are being moved or how are you all looking at all the different applications inside the company, where they live on which cloud and how they get modernized? We're letting the business needs and strategy really drive how we prioritize and it really is a matter of a lot at this point triage and prioritization because we've got a rich set of opportunities. So when we're building new apps in-house, we're certainly looking to take a cloud-first approach. And again, that's a lot of that's within our own walls today but we know that with the Foundry it offers us the option to burst out at a later date and these are some optionality. We're the Allstate Corporation, the Allstate brand of insurance is what's best known but in claims I also support, we have a brand called Encompass Insurance and so we're looking to provide support for multiple companies and build technology that can serve everyone. There are a lot of cases too in an ecosystem like ours where we're working with third party vendors and they're increasingly offering cloud-based solutions. So again, we do a lot of work with them from the security and compliance perspective to make sure that their strategy is consistent with ours to make sure we take appropriate care of our customer data. And then I personally get really excited by the refactoring opportunities. I'm really fortunate in claims that our core claims system was implemented just about 10 years ago so I call it legacy now but it's not as far back to the dark ages as some of the other systems that you'll find within the walls of enterprises but it was built as our last big monolithic implementation and we've been doing decoupling there. So whenever we know we're going to do a decoupling we look for what opportunity to implement new cloud-native microservices and again just stand that up in our environment with the platform team. I wanted to ask also about culture and technology adoption. We're sitting here in the middle of Silicon Valley. This cloud phenomenon driven a lot from Silicon Valley.   But this does not seem to be a coastal phenomenon. This does not seem to be something that only a startup can learn.  Can you kind of talk a little bit about was there, I mean, was there anything about that in terms of people saying, oh, we can't do that here or that sort of thing? No, no, I mean, in fact, I think it's a global phenomenon. I was living for almost two years in Belfast, Northern Ireland. We have a division there, all-state Northern Ireland, and we saw a lot of foundry activity among different companies there. Of course, there's a European summit every year as well. So I think it's just, it's just good common sense. A lot of us, again, before Cloud Foundry came through, we're working with the different predecessor technologies and Spring and VMware, you know, various aspects and kind of knitting together which felt like reinventing the wheel. So it's just good business sense, good common sense when there's a solution that you can leverage. I think it's just like you were commenting earlier, right? If it's there and you can use it and then you can allow the focus to be on what really differentiates you as a business to your customers, that's the way to go. Opa, last question I have for you is either commentary on any of the announcements that were made this week, or are there any things that you're hoping really for either, you know, Pivotal, the Foundation General Ecosystem that would make your life easier that's kind of on your to-do list from the vendor side? There's so much to take in, I think it's probably still going to take me a week to absorb all the implications. I mean, it's great to watch the dynamics going on. I think Microsoft joining the Foundation, that's a very good move, because we've had, you know, we have so many different technologies within our enterprise so to understand how different vendors are working and playing together in some way is really good. I think Abby and the Foundation, they've been fantastic about always soliciting input from members like us and members of the community about what we want to see. For me it's always a big eye towards scale. Again, we're a huge enterprise, there are even larger enterprises here that have started running and when this really becomes the, we all achieve the aspirational goals and it becomes the day-to-day backbone. It's just making sure this is really hardened to run at true enterprise weight. And I think that the enterprise scale of the future is going to be even bigger than what it has been historically because with all these new products, we're driving an appetite towards greater and greater customer interaction. I saw that in banking 10 years ago and I think we're going to see it insurance more and more so we just want to know that we're all working together to get that strength and that power that the customer needs. Apple Perry, really appreciate you sharing all-stage digital transformation with us and our audience, for John and myself, we'll be back with more coverage here from the Cloud Foundry Summit. Thanks for watching theCUBE. Thank you.