I'm Joel Alden and this film is about advertising. The reason I'm here is because I feel pretty strongly about the contribution advertising makes to the strength of our country. Now as you know, advertising means different things to different people. Here's a good illustration of what I mean. Did I miss anything dear? Just the commercial. The old man got wrapped up in it and really liked it. But the old lady left the room and never did find out what it was all about. Now there may be others like the old lady and we'll have a talk with them a little later on. But right now let's change the subject and see what electricity has been doing in your life during these past 20, 30, 40 years. I was just trying to get into the mood. I guess we all remember these things. Above all else, the Gershwin years were years of change. Our nation was stirring with new ideas, new wants, new needs. We were building a better way of life and we had a powerful force to help us, electricity. Companies like General Electric were finding ways to use electricity to light our homes, do our work. One of the new things that came along was General Electric's famous monitor top refrigerator. Remember? The electric washing machine took the gloom out of wash day and the vacuum cleaner eased another chore. Appliances appeared for every job, new electric servants the wage earner could afford. America was changing in other ways. We had more leisure time and more things to do. Remember the old crystal sets? If you opened the window you could always get chilly. Or you could hear red hot rhythms from General Electric's experimental station WGY. Then General Electric developed a loudspeaker, better radios and all America began to listen to voices that came through the air. The flickers found their voice too with the help of a General Electric invention. We were a restless nation in those years, busy people on the go. We built taller buildings, striving cities, our nation grew and prospered and electricity helped us in all these things. Electricity and the dedicated men and women in companies like General Electric. It's no wonder then that in the Gershwin years these initials came to be known as the initials of a friend. You know it's funny how we take things like electricity for granted. Here in a single lifetime it's brought us radio, television, electric refrigerators, easy to use vacuum cleaners, and hundreds of other things. Not just for a wealthy privileged class, but for everyone. Perhaps we have to look at scenes like those to realize how much our lives have changed in just two generations. Those bright lights and big cities had a lot to do with it. As a changing nation we were moving away from the farm and closer to those lights and through new kinds of jobs. And there were new kinds of stores and businesses and services. More new people wanting more new things and more new things to sell and new ways to produce things so a man could produce more in fewer hours and make more pay. And back on the farm there were new kinds of machinery so that one man could do the work of others who had moved on to the city. Back in 1920 it took one man on the farm to feed every ten people in this country. Nowadays one man feeds forty. One man does the work of four and the other three move on to new jobs. And that's the way it's been in our country in many fields. Today half the jobs we now have didn't even exist thirty years ago. Half our jobs are new kinds of jobs. Today our country is spending fourteen billion a year on research and development. Fourteen billion a year. And out of this research and development will come more new products and more new jobs. Rocket research a great new cook and serve ware made of an amazing new material that defies heat and cold. Brilliantly beautiful. Here now a new corning ware. So heat proof so cold proof it can stand empty over hot flames then goes sizzling hot into ice water without damage. New corning ware can go from the freezer direct to high heat without breaking ever. Use corning ware for boiling and every type of cooking comes with detachable handle and in its handsome cradle it's ready for the table. So you can freeze foods and corning ware cook them over direct high heat and serve them all in one dish. You'll find a wonderful selection of skillets sauce pans percolators and now the new corning ware steak platter teapot roaster and royal buffet. Give remarkable beautiful corning ware. People might be inclined to say so what. So they invent a new product like corning ware. Maybe it does make a hundred new jobs. What about it. Well let's talk about what about it. President Kennedy Secretary of Labor Arthur Goldberg is stated we must create 13 million new jobs in the next 10 years. 13 million brand new jobs. And the economists tell us those 13 million new jobs and the 65 million old ones are all to rise in income. Maybe we don't realize it now but the average family income non-farm has jumped 50 percent just since 1948 average 1948 income four thousand dollars average 1961 income six thousand dollars and a higher rise for lower incomes is still to come. Why is this because our country is moving and has been moving for 20 30 40 years from an economy of scarcity to an economy of abundance and abundance for everyone not just the wealthy privilege class but let's get back to corning ware and say it had been invented 20 or 30 years ago and suppose like certain cookware of that time it was sold house to house and someone would ring your doorbell and be a personal salesman. It's fine except that today it would cost at least five dollars for every sale that this salesman completed who would pay for that five dollars you the customer and what of corning then only sold 10,000 units instead of a quarter of a million. Well it's pretty obvious each unit would cost more and you the customer would pay that extra cost. The mathematics are fairly simple. The more that can be produced the less it costs per unit and the lower the cost of making the sale the less you the customer pay and this is where advertising comes in. As this new kind of economy has developed in America a new kind of salesman has been needed a salesman who wouldn't cost five dollars to ring your doorbell one that didn't talk to just one or ten or 185 people but one who would talk to 185 million people. Why to sell more products at lower cost to help create new products and services and more new jobs from the infinite universe of matter and energy union carbide creates many things for the good of man. His electric light bulb contains argon a gas that keeps it burning. His shower curtain is decorative waterproof plastic. His suit contains chemical fibers that keep it looking better longer. His car is made stronger with metal alloys and protected with all winter adiparies. He works in a building of gleaming alloys where he sits on plastics writes with plastics and talks through plastics. Back home his wife keeps things bright with cleaners and polishes created by chemistry and in the evening a television program tells of the wonders coming from nuclear energy. Then to bed with a flashlight handy just in case. Now he may not know it but all these things the gas in the light bulb the plastics the chemical fibers the metal alloys the adiparies chemicals in the cleaners and polishes the flashlight and its batteries yes even the nuclear energy all these and many other good things come from union carbide through continuing research into the elements of the universe hundreds of new and better products come to you under trademarks known in countless homes and industries the trademarks of union. That's advertising as a nation we discovered the more different jobs that can be created for a hundred and eighty five million people the stronger our economy also the more taxes we can pay to a free government fighting for its life in a half free world. Taxes we know come from jobs and wages from the manufacture of products and profits from the day to day movement of money in circulation and quite simply every dollar spent in advertising generates many dollars in taxes let me repeat that every dollar spent in advertising generates many dollars in taxes and this is something many people do not understand your responsible writers and critics don't comprehend this they're living in the past or they belong to another part of the world times have changed the factors behind our economy have changed since the Great Depression of the 30s this new kind of economy in America with the help of advertising has created more than 25 million brand new jobs in the next 10 years it must create 13 million more this is a new kind of economy this is a new kind of America with more for more one of advertising's jobs is to bring you new information and understanding of this new world around us with its new products and services does advertising cost of course it does who pays for it you the customer and while advertising is telling you its story it's performing still another service advertising pays the major expense of publishing 10,000 newspapers and hundreds of magazines in this country and advertising pays all the cost of radio and television advertising pays these costs for a very simple reason it is the least expensive way to sell except with the help of advertising no manufacturer could afford to pay five dollars for every sale a salesman made with 185 million people since you the customer pay the sales cost in the end this is important to you to ring your doorbell a full page ad in one of America's leading magazines costs less than half a cent per family and for less than another half cent the advertiser can talk to your family for one minute on television how elegant the most elegant cake of all chiffon now dramatically different new deluxe vanilla cream chiffon with an exotic new taste it's vanilla cream and a French flavor secret tantalizing yours in a new mix new Duncan Heinz deluxe vanilla cream chiffon here's everything you'd expect in the Duncan Heinz deluxe mix a cake so elegant you want it for your most glamorous evening this chiffon is high and angel light with a moistness all its own taste it every tender bite is soft smooth creamy glowing with an exciting flavor new in a cake vanilla cream and a French flavor secret fine new Duncan Heinz deluxe vanilla cream chiffon Duncan Heinz delicious that's advertising telling you about one of 3,500 new products in the supermarket new in the last 10 to 15 years now that's one of 107 mixes now available to help the housewife with their baking the Department of Agriculture will tell you that most of those 107 mixes cost you less than a penny a package more than a few bought all the ingredients and made them from scratch some actually cost you less in fact because of research competition constant improvement the forces of advertising this year American food companies will spend a hundred and fifty million dollars to improve nutrition convenience and variety in your daily menu and you the customer win in this competition competition in free enterprise has changed our lives for the better and advertising is what keeps this competition key every week from 50 to a hundred new products are launched in many stores and new product has only two weeks to prove itself if it isn't what the customer wants out it goes if it doesn't sell out it goes if it cannot give sound value against competition out it goes only the best can survive and only you the customer can make the final decision advertising's job is to tell you what's available where you can buy it what it will do how much it is and why it's a good value all advertising can do is hope that you'll try the product once from then on it's up to the product and it's up to you onion either onion work onion waste onion tears not anymore no Durkies instant minced onion in a box pour and use in anything just like fresh flavor just like fresh Durkies instant minced onion no work Durkies instant onion no tears Durkies instant minced onion what'll they think of next if you don't see it in the store ask your grocer that's advertising now if the product isn't all that's advertised you'll never buy it again this is important because it forces the advertised product to maintain a reputation and anytime it fails on quality or value it loses you and your business now that isn't true of an unadvertised product because it has no reputation to maintain and it isn't true in the case of an advertised product that only seeks to sell you once but let's make no mistake about this there are quacks and charlatans who misuse advertising and destroy your confidence just as they're quacks and charlatans practicing law or medicine the federal trade commission finds borderline problems and only 3% of its investigations and has to investigate very very few advertisements now you probably wouldn't be surprised if someone told you that 3% of lawyers or 3% of doctors were unethical guilty of illegal practice but this doesn't reflect on the good doctors and lawyers that exist or the good work they perform the point is don't make the mistake of blaming all advertising and the contribution of good advertising to our economy just because of the errors of the few certainly advertising must continue to rise to its total responsibilities in our economy in two generations the American public has become more aware sophisticated discriminating as well as more intelligent and so is advertising the Navy has learned that the child of four and a half today has the awareness of a child of seven twenty years ago the Navy is interested in the young man of 18 to 24 he's smarter today he's hit once upon a time the Navy played anchors away and waved the flag to attract his attention but nowadays the Navy talks like this kind of lonesome yes but I'm awfully glad he did enroll a Navy officer candidate school you mean yes OCS lots of liberty oh yes good food the best education and training the best thing he could have done and roll a Navy officer candidate school you mean yes OCS kind of lonesome yes but I'm awfully glad he did that's advertising going out of its way to interest you entertain you reward you for your time for instance in Duluth Minnesota there's an American Italian who decided he had a better way of making American Oriental foods and what's more he decided to can these Oriental foods and sell them in nearby states so to tell everyone about it he had to advertise now he thought you'd have fun enjoying his chow mein and he has fun telling you about it you ever notice the way nobody ever says anything in elevators face the front of the car please you know why he says that habit we're all creatures of habit food for instance what are we all going home to the night spaghetti and meatballs right potatoes lots of starch faced up front a little variety once a week some light Oriental dish like like chow mein delicious filling but not too heavy face the front face the issue would it hurt any one of us to try a little chow mein tonight break the American food habit probably some tasty canned chow mein you could pick up at your groceries of course it's up to you don't let me influence you I got no extra grind takes all kinds of that's advertising you know about 70% of the things you buy in a supermarket today you choose entirely on your own without even a clerk to answer your questions advertising must answer these questions in advance it must work for that small advertisement as well as for the large one it must use television radio magazines and newspapers for the local as well as the national advertising it must keep our competition key and competition must stir even more research and development to create new and better products and in turn new jobs and higher wages and let's face it more taxes to keep the American government ahead of its competition it can be done with average wages to reach $10,000 in the next 10 years it means better schools and education better hospitals and medical care in the last 10 years the dollars for schools and hospitals and government services have more than doubled from 25 billion to 54 billion paid for by taxes from you and me and American business there's much more to be done of course we still don't have enough schools or hospitals but as the economy grows so do the tax dollars grow and this growth must continue these next 10 years those 13 million new jobs must be created right now the promise looks very good something almost unbelievable is going on all around us it's the beginning of a tremendous construction boom new construction in the next 10 years will be worth more than all the buildings now standing in the United States it will take 670 billion dollars to do the job underway right now the world's largest office building Grand Central City in New York they're tearing down and rebuilding a square mile of st. Louis a billion dollar plan Pittsburgh's fantastic new auditorium with the world's largest rollback roof century city in Los Angeles in one spot enough new buildings to hold more people than many cities Florida the Miami Herald builds the world's most modern newspaper plant Denver Colorado builds its brand new courthouse square Seattle Washington another new building rises in Seattle's new 10 acre metropolitan center and Westinghouse just one company has a construction and modernization budget of 75 million dollars a year we're building a new space age electronics laboratory in California a new transformer plant in Muncie Indiana and 14 other buildings to keep up with the pace this is the new face of America and hundreds of new Westinghouse electrical products will help make it an easier better more efficient place to live you can be sure if it's Westinghouse the man said new construction in the next 10 years worth more than all the buildings now standing in the United States and he might have added with it 15 million new homes and apartments houses of new materials structural plastic glass and new forms aluminum panels your home air conditioned for half what it cost today advertising's job to tell you about to run the want ads for 13 million new jobs and 65 million old ones to bring you news information facts and understanding you demand and at less cost than if you answered your doorbell one more job for advertising it must continue its responsibility to remind us of our responsibilities to buy U.S. savings bonds to support care radio free Europe the Red Cross to help smoky the bear prevent forest fires to aid the many other projects that help to make a better world last year the people in advertising newspapers magazines outdoor radio and television stations gave 240 million dollars worth of time and effort to these public service causes why because here advertising must be your conscience like cake mixes and cookware electricity and minced onions these were things you had to be sold he too would like someday to dance and leap and run but he will not this child has cerebral palsy what is cerebral palsy brain injury damaged to a part of the brain that sends orders to the body an arm is crippled if it receives no messages from the brain contact is broken can't receive orders is useless or it may destroy sight hearing speech this is cerebral palsy the cruelest multiple crippler known and it strikes every 53 minutes you can help join the 53 minute March on cerebral palsy that's advertising I wonder what it's doing to your life


Hi everyone, Joe for jazby's casebreaks.com. Nice late night rally here with 2021 top five star baseball, eight box full case picker team number 25. Big thanks to everybody here for making it happen on Tuesday 12th, 2022. No Rockies on the checklist so we do not sell it.  So thanks to him, thanks everybody for making it happen, appreciate it. Now we can liberate these cards from the shackles of these boxes, the prisons of these boxes and give them, send them to a good home. Your home hopefully. Good luck everyone. These evil oppressive boxes, let's, let's free them. Let's free them. Freedom! Once last time I watched Braveheart. Does that still hold up? It's a period piece, I feel like it holds up. It's not super factual but I feel like it's a pretty entertaining movie. Let's use this blank card here with the jaspy logo on it. Still holds up says Matt Arnold, all right, still holds up. I can fight. I know. I know you can fight. But it's our wits that make us men. That's a good line from that movie. There's Tariq Skool. I'm your uncle, Argyle. That goes to Steve Herrick in Detroit. Oh, nice patch auto Luis Garcia, second baseman for the Nat, 17 out of 25, three color patch and auto for Matt Arnold and the Nationals. One of the last teams picked up. All right, you know what, I just want to put this out into the universe here. We have not seen, I think we've done, this is break 25. So I don't think we've seen a cut auto out of it. At least I haven't pulled one. Maybe, maybe if Jason didn't know a group break of this or maybe on personal breaks we pulled one, but I'm not personally pulled a cut auto. Oh, we got a redemption. Let's play the redemption game. I'll give everybody one and only one guess on that redemption. So put a guess in and if you guess it, I'll give you $5 a break credit. And if somebody already guessed your guess, right, make sure you have live chat set on your chat window in YouTube. But if somebody already guesses your guess, you got to guess again. Only one guess or all of your guesses are canceled. Not a one-soto, Matt Arnold, because here's a live one-soto, four out of 25 silver signatures. That's for Matt and the Washington Nationals. Junior or senior, Kevin, I think there could be both. So nice live silver signature for Matt Arnold. I'll take it, he says. Still one of the best bits of penmanship in the business. Brody Bam already guessed Acunha Junior. Try again. Kevin M has guessed Ken Griffey Junior. I'll give it until the next box before I close the guess window. All right, we got a nice Kyle Lewis for the Seattle Mariners. It's going to go to Jason H and the M's. We've got a 10 out of 10, Paul Goldschmidt. Nice. Nice low number for the Redbirds. It's in Ku with the carts, like the gold, the nice foil there. He's pretty good. All right, looks like no other guesses. All right, the guess window is closed. All right, so congratulations, you, someone, is due to receive a base autograph of, we'll see this, we should see the city first unless the person's name is on the longer side. All right, we got a J and an M. Miami, Milwaukee, Minnesota. Wait, I think I know who this is. No, no, maybe not. Well, I do now. I thought it was someone else. But it's for Miami. It's Jesus Sanchez. I thought it was Jazz Chisholm at first, but no, no one guessed it. DMACC with the Marlins. Yeah, I thought it was going to be Jazz for a second too. Oh, Jesus Sanchez instead for Darren and the fish. Out the top, the Fresh Prince of Bel-Air, Will Smith, 7 out of 25 for Matt Arnold and the Dodgers, another late pickup for Matt. Yeah, lead rookie catchers 15 and 2009, over 1,000 OPS against right-handed pitchers, Pacific PCL All-Star in 2019, first-round choice in 2016. You know, they originally thought that he was going to be more of a defensive catcher. They drafted him kind of for defense. The power and the hitting has become a pleasant surprise. But now Austin Barnes is a better catcher than him. In terms of receiving the ball, calling a game, Will Smith is pretty good too. But if Kershaw's pitching, I think Austin Barnes will be out there. I think you can put Will Smith in the VH now, but anyway, he's a pretty good Will Smith. All right, and we got a golden graph, Carlos Delgado, 11 out of 40. That's Michael Lose with the Toronto Blue Jays. Nice golden graphs. Carlos Delgado was pretty incredible for a while. Two-time All-Star, three-time Silver Slugger. He finished with 2,000 hits, 473 home runs, 280 lifetime. Not bad, not bad. I think he had a couple, he had a top two MVP, top five MVP year, when he had 145 RBIs in 2003. What was his Hall of Fame, sort of, no? He never really quite got there. Only 3.8% in 2015, and then that was it. Didn't get the minimum. But if you played fancy baseball around that time, he'd be a pretty reliable pickup for a good chunk of years. Matt around saying Rockies. His Rockies are king of receiving catchers who can't hit. All right, let's see what we got here. Next two, we got Starling Marte for the fish. Darren with Miami, and there's Wade Boggs, 13 out of 25. One of my favorite, it's Always Sunny in Philadelphia episodes, where the gang tries to beat Boggs' record. We're a family-friendly show. It's Always Sunny in Philadelphia, not a family-friendly show if kids are watching. But if you're an adult, it's worth a watch. Five star career, one of 11 in the top 25 of both doubles and singles, owns Fenway Park record with a 369 batting average, higher average in the majors, 328 than the minors, 318, yeah, that's not common, and reached in 38 games in 1982, 11 top five finishes in fielding percentage by a third baseman. I feel like we don't, except for, it's Always Sunny in Philadelphia, I feel like we don't talk about Wade Boggs that much. Why is Wade Boggs not talk about much? My colleague, Teddy Jaspy, loves Wade Boggs. He's a Red Sox fan, big Wade Boggs fan, Hall of Famer, 12-time All-Star, World Series winner in 96, two-time Gold Glover, I think that was with the Yankees, eight-time Silver Slugger, five-time batting title. Hit 349 in his rookie year, 361 the next year, 325, 368, 357, 363, 366, strikeouts, less than like 40 to 60, it's not heard of this, that wouldn't happen today. Although with the way Boggs could hit, I'll bet in this era, Boggs could probably be a guy that hits like, I don't know, 320, and maybe he hit 24 home runs once, but like I feel like if he wanted to, he could up the strikeouts a little bit, and if he doubled his strikeouts, I feel like he would have like, he could still hit like 300 and hit like 30 home runs, and still just destroy and doubles. All right, next two, we got Nate Pearson, Rookie Otto for the Blue Jays, the Fireballer, Michael Lose with Toronto, Nate Pearson, Alec Minoa, couple of good young pitchers on that rotation. I think Alec Minoa had a really nice start the other day. All right, and this one here is Andrew Vaughn, Rookie Otto for the White Sox, and that'll be for David, and the White Sox, nice one, David. All right, two more to go. We've got Dave Winfield, this is a Twins edition.  First ballot hall of famer leads Minnesota born players four and 65 home runs, 3,000 hits while with the Twins, owns Twins record of 31 home runs for a 40 plus year old, seven game mid-summer classic hitting streak. He's pretty good. Minnesota Dave Winfield going to John G. And then back here is Luis Robert, 15 out of 25 golden graphs for David and the White Sox. Nice one, David. Final box. We got one of the nicest bit of penmanship in the league, Aaron Nola. If we had Jasky's autograph camp, Aaron Nola would definitely be a guest speaker. That's for Zach, Zach on the board with the Phillies. The last one here is gonna be Ha Sung Kim, the Korean infielder, 40 out of 50. Padres, that's for Nathan, Nathan on the board at the very, very end with the Friars. And there you have it ladies and gentlemen, five star in the books. Now, there's also a wax party spot associated here. So let's give that away as well. Let's go back to the list. Let's gather everybody's names between Lauren and Matt and everyone in between. Let's take out the Rockies from this equation and let's roll it and randomize that list two and a four, six times. Name on top after six gets into the wax party. Check out the details of the promo on jaskyscasebreaks.com. There's a lot of great things that you can win. Check out the grand prize. One, two, three, four. And a two, five and six, five and six in final time. So drum roll, drum roll, drum roll. Oh, David very close but not quite. But hey, thank you and thank everybody for giving this a shot. Name on top though after six is gonna be Ethan Cook. Ethan, I didn't even call your name. All break Ethan, but a wax party spot going your way. So thank you and thanks everybody for making this happen. Appreciate it. 2021 five star MLB. I don't think we have any more five stars. So this will be the last five star for a little bit until we get more. Thanks everybody for watching and breaking with us. I'm Joe for jaskyscasebreaks.com and I will see you next time for the next one. Bye bye.


Let's try another example. This time through a pipe. Now we're considering incompressible flow flowing through a pipe. That pipe has a radius of r, that's uppercase r, not to be confused with the lowercase r, which is one of my axes. And I want to know how the velocity profile is developed if we have a pressure gradient again. So I will use the same set of assumptions that I applied to the previous problem. I have incompressible flow. I'm assuming that it's developed in a laminar direction, which means that there's no velocity in any direction other than what I'm calling the z-axis now. I'm neglecting gravity. I have axial symmetry, which means that del of anything with respect to theta is zero. So regardless of which angle of the pipe you look at, it's all the same. And I'm assuming a constant viscosity. With that set of assumptions in place, we can look at the conservation of mass again. But this time, our conservation of mass includes a bunch of scary thetas. Worse yet, our conservation of momentum includes even more scary thetas. Those are a result of the polar coordinate system that we're using here. And even though it's intimidating looking, it's not actually that bad to work with because just like in the Cartesian coordinate system, most of these terms are going to cancel. So looking back at our pipe, we'll deploy our conservation of mass and we'll recognize that for steady state, nothing can change with respect to time, including the density. Also the density is constant because of incompressibility. I have no velocity in the r-direction. I have no velocity in the theta direction. I only have velocity in the z-direction. So the only turn that's left is del vz, that is the rate of change of the z component of velocity with respect to z is zero. So just like in the flat plate setup, I'm assuming that the velocity only changes in one direction. It only changes as a function of radius. So I'm saying that my velocity profile only changes as you get further away from the center of the pipe. It doesn't change with respect to z. It doesn't change with respect to theta. Now I can look at my conservation of momentum. For that, I will consider the r-direction first. In the r-momentum equation, everything disappears except for the pressure gradient driving any flow. So I have no r component of velocity. Therefore, I have no r component of velocity changing with respect to anything else. And that leaves me with del p del r is zero. Therefore, pressure is only a function of z. Next, I can consider my z-momentum. In the z-momentum, I'm saying that the velocity in the z-direction only changes as a function of r. As a result, everything disappears, including the gravity term because we're neglecting gravity, except for the pressure gradient in the z-direction and everything associated with the velocity in the z-direction changing with respect to r. That means that zero is equal to negative del p del z plus the viscosity times the quantity, 1 over r times del r del vz del r with respect to r. Rearranging this equation in terms of del p del z, I get del p del z is equal to viscosity times 1 over r times the quantity rate of change of r del vz del r with respect to r. I can begin to work my way to a velocity profile by unwrapping the terms on the left-hand side of my equation here. First of all, I can divide by viscosity, and then I can multiply by radius, and then I can integrate, and then I can divide by radius, and then I can integrate a second time, at which point I have 1 over 4 mu times del p del z times r squared plus c1 times the natural log of r plus c2. My two boundary conditions are that the velocity at the wall is zero because of no slip, and as a result of axial symmetry, I'm saying that the velocity doesn't change with respect to r in the middle. So the velocity profile with respect to r is exactly vertical. For the first boundary condition, or rather for the first constant that we solve as a result of the boundary condition, it's easiest if I look back at the first derivative form with respect to r, at which point I can solve for c1, which is zero. For the other boundary condition, I can apply that at the end form, wherein I see that c2 is equal to negative the radius of our pipe squared divided by 4 times the viscosity times del p del z. Just like before, it's going to be convenient for me to express this in terms of a maximum velocity, as that is something that we either care about or have most of the time, so I'm going to be determining that at an r position of zero, wherein I see that my maximum velocity in the z direction is 1 over 4 times mu times del p del z times the quantity zero minus r squared, which means that it's a negative quantity again, negative r squared over 4 mu times del p del z for the same reasons as in the previous example that the velocity is going to be in the opposite direction of a positive pressure gradient. Plugging this back in, I have the velocity in the z direction as a function of r is the maximum velocity times 1 minus little r squared over big r squared, where the maximum velocity is negative radius of the pipe squared divided by 4 times the viscosity times the pressure gradient driving the flow.


Hey everyone, welcome back to the Cube's live coverage from Los Angeles of KubeCon and CloudNativeCon 2021. Lisa Martin with Dave Nicholson. Dave and I are pleased to welcome our next guest remotely, Stephen Huells joins us, the Senior Director of Cloud Services at Red Hat. Stephen, welcome to the program. Thanks Lisa, good to be here with you Dave. Talk to me about where you're seeing traction from an AI ML perspective, like where are you seeing that traction, what are you seeing in the market? It's a great starter question here, AI ML is really being employed everywhere, right, regardless of industry. So financial services, telco, governments, manufacturing, retail, everyone at this point is finding a use for AI ML. They're looking for ways to better take advantage of the data that they've been collecting for these years. It really, it wasn't all that long ago when we were talking to customers about Kubernetes and containers. AI ML really wasn't a core topic where they were looking to use a Kubernetes platform to address those types of workloads. But in the last couple of years, that's really skyrocketed. We're seeing a lot of interest from existing customers that are using Red Hat Tip and Shift, which is a Kubernetes based platform, to take those AI ML workloads and take them from what they've been doing traditionally for experimentation and really get them into production and start getting value out of them. Is there a common theme you mentioned a number of different vertical telco healthcare or financial services? Is there a common theme that you're seeing among these organizations across verticals? There is. I mean, everyone has their own like the type of technique that they're going to get the most value out of. But the common theme is really that everyone seems to have a really good handle on experimentation. They have a lot of very great data scientists, model developers that are able to take their data and get the value out of it. But where they're all looking to get our help or looking for help is to put those models into production. So ML Ops, right? So how do I take what's been built on somebody's machine and put that into production in a repeatable way? And then once it's in production, how do I monitor it? What am I looking for as triggers to indicate that I need to retrain? And how do I iterate on this sequentially and rapidly applying what would really be traditional DevOps, software development, lifecycle methodologies to ML and AI models? So Steve, we're joining you from KubeCon live at the moment. What's the connection with Kubernetes and how does Kubernetes enable machine learning, artificial intelligence? How does it enable it and what are some of the special considerations to keep in mind? So the immediate connection for Red Hat is Red Hat's open shift is basically an enterprise grade Kubernetes. And so the connection there is really how we're working with customers and how customers in general are looking to take advantage of all the benefits that you can get from a Kubernetes platform that they've been applying to their traditional software development over the years, right? The agility, the ability to scale up on the man, the ability to have shared resources to make specialized hardware available to the individual communities. And they want to start applying those foundational elements to their AI ML practices. A lot of data science work traditionally was done with high powered monolithic machines and systems. They weren't necessarily shared across development communities. So connecting something that was built by a data scientist to something that then a software developer was going to put in production was challenging. There wasn't a lot of repeatability in there. There wasn't a lot of scalability. There wasn't a lot of auditability. And these are all things that we know we need. We're talking about analytics and AI ML. There's a lot of scrutiny put on the auditability of what you put into production, something that's making decisions that impact whether or not somebody gets a loan or whether or not somebody's granted access to systems or decisions that are made. And so the connection there is really around taking advantage of what has proven itself in Kubernetes to be a very effective development model and applying that to AI ML and getting the benefits in being able to put these things into production. So Red Hat has been involved in enterprises for a long time. Are you seeing most of this from a Kubernetes perspective being net new application environments or are these extensions of what we would call legacy or traditional environments? They tend to be net new. I guess it's sort of it's transitioned a little bit over time. When we first started talking to customers, there was desire to try to do all of this in a single Kubernetes cluster. How can I take the same environment that had been doing our software development, beef it up a little bit and have it apply to our data science environment. And over time, like Kubernetes advanced, so now you can actually add labels to different nodes and target workloads based on specialized machinery and hardware accelerators. And so that has shifted now toward coming up with specialized data science environments. But still connecting the clusters and that's something that's being built on that data science environment is essentially being deployed then through a model pipeline into a software artifact that then makes its way into an application that goes live. And really, I think that that's sensible, because we're constantly seeing a lot of evolution in the types of accelerators, the types of frameworks, the types of libraries that are being made available to data scientists. And so you want the ability to extend your data science cluster to take advantage of those things and to give data scientists access to those specialized environments so they can try things out, determine if there's a better way to do what they're doing. And then when they find out there is be able to rapidly roll that into your production environment. You mentioned the word acceleration and that's one of the words that we talk about when we talk about 2020 and even 2021, the acceleration in digital transformation that was necessary really a year and a half ago for companies to survive and now to be able to pivot and thrive. What are you seeing in terms of customers' appetites for adopting AI ML based solutions? Has it accelerated as the pandemic has accelerated digital transformation? It's definitely accelerated. And I think the pandemic probably put more of a focus for businesses on where can they start to drive more value? How can they start to do more with less? And when you look at systems that are used for customer interactions, whether they're deflecting customer cases or providing next best action type recommendations, AI ML fits the bill there perfectly. So when they were looking to optimize, hey, where do we put our spend? What can help us accelerate and grow even in this virtual world we're living in? AI ML really floated to the top there. That's definitely a theme that we've seen. Is there a customer example that you think that you could mention that really articulates the value of that? I think a lot of it, we've published one specifically around HCA healthcare and this had started actually before the pandemic. But I think it's applicable because of the nature of what a pandemic is, where HCA was using AI ML to essentially accelerate diagnosis of sepsis, right? They were using it for disease diagnoses. That same type of diagnosis was being applied to looking at COVID cases as well. And so there was one that we did in Canada with, it's called How's Your Flattening, which was basically being able to track and do some predictions around COVID cases in the Canadian provinces. And so that one's particularly, I guess, kind of close to home given the nature of the pandemic. But even within Red Hat, we started applying a lot more attention to how we could help with customer support cases, right? Knowing that if folks were going to be out with any type of illness, we needed to be able to be able to handle that case workload without negatively impacting work-life balance for other associates. So we looked at how can we apply AI ML to help maintain and increase the quality of customer service we were providing. That's a great use case. And did you have a keynote or a session here at KubeCon? I did. I did. And it really focused specifically on that whole ML ops and bottle ops pipeline. It was called Evolving with Kubernetes and Bracing Bottle Ops. It was for Kubernetes AI Day. I believe it aired on Wednesday of this week. Yes, it did. Tuesday made. It all kind of condenses in the virtual world. Doesn't it? It does. I guess one of the questions that Lisa and I have for folks, where we sit here, I don't know, was it year seven or so of the dawn of Kubernetes, if I have that right? Where do you think we are in this wave of adoption? Coming from a Red Hat perspective, you have insight into what's been going on in enterprises for the last 20 plus years. Where are we in this wave? That's a great question.  That when you get to top one wave, you notice the next wave behind it's even bigger. I think we certainly got to the point where organizations have accepted that Kubernetes is applicable across all the workloads that they're looking to put in production. Now, the focus has shifted on optimizing those workloads, right? What are things that we need to run in our in-house data centers? What are things that we need or can benefit from using commodity hardware from one of the hyperscalers? How do we connect those environments and more effectively target workloads? If I look at where things are going to the future, right now we see a lot of things being targeted based on cluster, right? We say, hey, we have a data science cluster. It has characteristics of X, Y, and Z, and we put all of our data science workloads into that cluster. In the future, I think we want to see more workload specific type of categorization of workloads so that we're able to match available hardware with workloads rather than targeting a workload at a specific cluster. A developer or data scientist can say, hey, my particular algorithm here needs access to GPU acceleration and the following frameworks. And then the Kubernetes scheduler is able to determine of the available environments, what's the capacity, what are the available resources, and match it up accordingly. So we get into a more dynamic environment where the developers and those that are actually building on top of these platforms actually have to know less and less about the clusters they're running on and just have to know what types of resources they need access to. So sort of democratizing that. Steve, thank you for joining Dave and me on the program today talking about the traction that you're seeing with AI, ML, Kubernetes as an enabler. We appreciate your time. Thank you. Thanks, Steve. For Dave Nicholson, I'm Lisa Martin. You're watching theCUBE Live from Los Angeles, KubeCon and CloudNativeCon 21. We'll be right back with our next guest. The technology industry for over 12 years now. So I've had the opportunity as a marketer to really understand and interact with customers across the entire buyer's journey. Hi, I'm Lisa Martin and I'm a host of theCUBE. Being a host on theCUBE has been a dream of mine for the last few years. I had the opportunity to meet Jeff and Dave and John at EMC World a few years ago and got the courage up to say, Hey, I'm really interested in this. I love talking with customers.


Alright, so welcome to the nth annual packaging and git buff for some value of n greater than 5, I think. So I hope we can have a buff buff and not a lecture buff. Both of us are employed to lecture. That's right, so if we lecture you have to pay us basically. So you have to ask lots of questions or we'll charge you money. And the tuition where I teach is frankly exorbitant, so hopefully my boss isn't watching this. Okay, so we don't have a lot of fixed material, but I think part of what we want to do is, or what Sean wants to do is talk a bit about the git, which is one aspect of packaging and git, widely misunderstood, including by me. So that's why we're going to talk about it a little bit. But I think just a quick demo and we'll see where the discussion goes from there. Do we have someone to take questions from IOC? I mean I guess I can do it if nobody else wants to. Oh yeah, sure. Okay. Alright, well I've got a quick demo of how git packaging workflows can make people's lives easier. It's worth drawing a distinction between git workflows for package maintainers and git workflows for everyone else. Because often the workflow that a package maintainer uses is different from the workflow someone uses who just wants to hack on that package. And this demo is an example of a git workflow for a non-maintainer. In particular, it's using git to sponsor an NMU. Okay, so I made this fake NMU last night. It better be fake. It is because it's David's package. We can see this guy, a contributor, has made a commit on this not-much repository. And what you're meant to imagine is that I'm a DD and I've cloned this repository from GitHub and this guy has said, hey, can you sponsor this upload? I think it makes things better. And the non-much maintainer is ignoring my emails or something like that. Totally unrealistic. And if I'm that DD, one thing I need to do is this repository is essentially untrusted. I just got this off GitHub. I need to div this against the archive to see that the NMU doesn't sneak in some other changes that I know that David definitely doesn't want to go into his package. How do I do that without Git? Well, I have to build a source package from the repository. And then I have to... So I have to de-package, build package, HS, right? And then I have to go to the parent directory. And then I have to apt-get-source not-much. Make sure I get it from SID. And then finally, I can use debdiff. And then I have to tab-complete two horrible source package names. And I can finally see what this guy's doing. And debdiff is cool, but it's simple. It'll only just give you a straight diff of the whole thing. Wouldn't it be great if we could use git-diff to do this instead? Git-diff has lots of options. You can filter by file name. You can ignore things, include things. Well, with de-git, you can do that. So I'm not going to touch apt-get-source or deb-diff to do this. So I type de-git fetch SID, which means take what's in unstable and make it accessible to Git. Oh, hilarious. What package are you dealing with at this point? It reads the changelog. I'm going to try de-effetch on stable instead. Is that any random repository like it's for a package? Yes. Video team guy, use the microphone. Yeah, that's telling me. Sorry about that. Could you do this in script and then publish the log afterwards so that people can read that? If you tell me what to type. Script foo. Do I need to redirect it? No, no. It'll open a file. Can I do that to put it something? Okay, cool. Thank you. Right, we'll try that again. The directory you were in was just on there. Okay, so we managed to work around that bug, which is good. So you can see it's pulling the not much DSC out of the archive, but you can ignore that.  So you can do that as many times as you want. It'll always give you the same commit. And then to review the NMU, we just use git diff. So git diff, dot dot head. Okay, so let's review this diff. They seem to be hijacking the package. Good. And if we scroll up to the... Well, let's see what they did to the changelog. So we can filter the diff, because this is what you can easily do with Git, to see what they did to the changelog. And not much is mine. Okay, so I'm not going to upload this. But, you know, what did Git let us do here was... Diff against the archive in a secure way without having to leave Git, which I think is very nice. Okay, that was my demo. And then in order to possibly help us talk, I made a single slide, hopefully covering all the workflows that currently exist in Debian. And this is for, well, the main ones. Oh, so I have to interject here. I wanted to call this slide. We are all special snowflakes. Sorry, no, I completely forgot. Here we go. There we go. Okay, so these are Debian Git workflows for maintainers, right? So the demo was a Debian Git workflow for a sponsor, who's not necessarily the maintainer of a package. These are workflows for maintainers, which is probably what we're more interested in talking about. I split them into three groups. Firstly, there's the Git, or do you get, plus a helper. Get build package, get DPM, and David's favorite Git package. There are the workflows that you can do with Git, but DeGit can't handle, and these are on the way out, I would say, except for the Haskell team, which has several hundred of them. Which is Sean's favorite team. Yeah. So repositories which contain more than one package in one Git repository, DeGit can't deal with those. Submodules can't handle those. Never will. It's enclosed, it won't fix. And repositories which only have the packaging in and not the upstream source. DeGit can't deal with those. And then more recently, we have these new pure workflows, right? And what I mean by pure is, you can think of DeGit as an add-on to almost any existing workflow, but these are the ones where you only need Git and DeGit, rather than GBP or DPM or something. One of them is a merge-based workflow, which is usable now, and the man page explains it. And then one of them is not usable yet. It's a rebasing workflow. I can talk about that more if you want, but I'm not going to say anything now. So hopefully this slide will be useful to our discussion. And that's all I wanted to say. That's where we're going to stop talking unless they pay us. Right. Okay, great. Have you got a hat to collect coins in? Yeah. I hope that works better than when I tried in class. So, discussion. Antoine. Wait a microphone. So I tried DeGit a while back and stumbled upon a few bugs, which I believe I've been fixed now, but I didn't see them as much as bugs as peculiar issues with my peculiar workflow. And I think there are so many ways of doing this that I wonder if part of DeGit's goal is to encompass all of those eventually or just restrict ourselves to a certain set of best practices or do we claim there are best practices or where do we play in there? Like, for example, only Debian sub-directory, I use this sometimes.  Yeah, I know. I'm bad. But, yeah, like, if it's a wrong practice, I'm ready to change, but if it's just a matter of, like, oh, maybe we'll support this eventually, then that's fine too, you know? So I'm curious what you think about that. Yeah. So first thing to say is that one confusion people have when talking about DeGit is that they think it's a tool on the same level as, like, GBP or DPM, which gives you a workflow, basically. And it's, although we've got these pure workflows where we're saying, okay, we're going to invent a new workflow that capitalizes on DeGit, the tool itself imposes basically one requirement, right? And the only requirement it imposes on you is that if you take your Git head and package it into a source package and unpack it again, you get the same thing. That's it. So you can see why it's not going to be compatible with these, because if you only have the Debian sub-directory, if you pack Git head, well, you can't pack Git head because it doesn't have any upstream source.  Yeah, only. Okay, okay, so pack and unpack, and it's still the package you actually wanted, I suppose. And that source package builds, I think, is something that he left out, but is also true. You'd have to build. Yes, okay. So Git DPM doesn't give you that either. What do you mean? So in Git DPM, my Git head has the patches applied. Right. So there's a microphone right beside you, Sam. Okay, thanks. The question about whether Git DPM actually meets that requirement either in Git DPM, my sources have the patches applied in my Git head, whereas, oh no, I guess they are compatible. Yeah, but I thought there was magic to make that possible. Okay, there is some very slight magic going on to deal with some small corner cases that most of us aren't even aware of until we bump into them. But if you're trying to decide whether your workflow is decompatible, what you need to think about is that requirement that it can be round-tripped when you're packing into a source package and unpacking. So just to show my ignorance as boff co-organizer, what does this mean about patches applied? I mean, there is hackery in the Git to work with patches unapplied, right? There is some hackery to deal with that. Okay. Basically, you just pass an option and it doesn't. Right, okay. But if you think of a patches unapplied repository, it's still the case that everything's there and when you pack it, you get all the same stuff back. Well, this starts to get a bit philosophical, right? What's everything there? Is a URL enough? I mean... Well, I mean, as compared to the packages, whether it's only the Debian sub-directory. And a link to the tar ball. Right. I mean, how much magic is allowed? Okay. I used to get yesterday or the day before to upload something in... Great choice. I was really testing it out. For my package, it did manipulate, of course, what I had in my Git repository. If I now would push this to my team's Git repository, it does look weird. It has more history because it... I think what I saw is that it made a branch where it applied the patches. So it created Git commits for every patch.  I think this is at least worth mentioning if you have this unapplied history. Is this actually, if I would do it multiple times, is this going to keep on adding or is this just a one-time only kind of... Does your team use patches unapplied or applied? Unapplied. Okay. Did you tell Digit that you were using patches unapplied? Yes. Okay. Well, I mean, I'd have to look at it. What I'm guessing is going on is that Digit... Digit wants to make sure that what you've got is a fast forward of what it thinks is in the archive. But it lets you override it. So it creates a branch representing what I just did there with Digit fetch and then merges what you did on top of that. It did merge it into my master branch. Your master branch changed? Yes, with one commit, which didn't do anything. Okay. Oh, so it would have been a pseudo-merge commit. Right. So it was just joining the histories. That will only happen if someone does a non-Degit upload before you do your next Degit upload. So the first Degit upload will always have this little bit of history strangeness, I guess, for most people. But also, I guess, if there's a new upstream or not? No. As long as every upload to the archive is made with Degit, then it won't do that. But on most teams, I guess, you could expect... You could expect some skews. Some back and forth. People using Degit, people not using Degit. I mean, that's... Oh, Gregor knows we're always trying interesting things in the Pearl team. Sometimes it's... You know, the coolest technique is only useful if it's useful to the people on the team, right? So... I was also wondering, which I haven't dared to try yet by really pushing because I was afraid of messing too much with my history. I have a couple of patches which actually carry a big patch set, which typically, of course, with new upstream, needs to be... The patch needs to be patched. Yeah. In an unmerged workflow, would that... Right. I'm afraid that I get one merge where I have to resolve all my conflicts which I don't think is good for inspection later on because it does include upstream changes as well. So there's basically two choices in this situation. If you have a package which has a substantial and semi-permanent series of big modifications, which we have in Debian, there's basically two choices. Either do patches applied and use GBP, which Deget supports, or you wait a little bit longer and then we'll have this rebasing workflow. But yeah, unfortunately at the moment, if you're in that situation, it's not the best tool. But this is not a de-git-buff, so we should talk about all the other options that there are. So currently, indeed, in this workflow, we're manually doing the guilt updating of the patches by applying it one by one to see every time what I'm actually doing. Right. You can use GBP PQ to make that a little bit easier. So I'm curious, how many teams or people are using patches applied workflows? Okay, me, but... So it's a minority of people still. How many of you know who I supposed to apply? To the buff or to their packages? Do you use microphones? Can we get a microphone? Sam needs a mic. Actually, why don't we trade stuff here? So, is there an easy way... No, no, I'm unlikely to need a mic. It will be good for me to not have a mic that's... So, is there a way to convert... Like, if I have a checkout that currently has patches applied, and I'd really like to, at least for the moment, look at it, patches unapplied for easier diff stuff, is there a way to get that? I don't need to commit it. There are times where looking at a diff, it would be really nice to actually get a patches unapplied version of a tree, even though that's not what GitDPM gives me. So, I might be able to help there. So I wrote a tool called GitDebCherry, which is included in Git package, but it's not especially tied to Git package. And it can extract a Quilt patch series from a patches applied repository. And, of course, that's sometimes a little tricky to do with complicated history. So... No, no, no, I've got a good patch series already. This is Git... I have a GitDPM repository. I just wish to... I want to turn my perfectly good... I have a great Debian slash patches directory. I don't have the Quilt metadata to do a Quilt pop-a. Right. I don't know of a tool that does that, apart from unpacking the average tower and another directory or something. That's sad. But the other direction is definitely possible. Yeah, I know, but that's not... But I use GitDPM, so that's not the problem I ever have. I see, I see. Yeah, if you're someone who prefers patches applied, and you... Sorry, yeah, yeah. Right, you prefer patches applied, you can always get that pretty straightforwardly, yeah. I prefer GitDPM. I just sometimes need better disks. Okay. I'd have to... If he's just... Hello. Hang on, hang on. Hello? If it's just a one-shot thing, I'm pretty sure, but I have to check there's a Git command you could run to basically check out everything but the Debian directory relative to upstream, and you'd get the tree you wanted. But that may or may not be... That may be too much surgery. Oh, that's great. Actually, that worked. Do you think... Rob, are you thinking like a Git work tree? There's an option to Git checkout that you can, you know, just tell it... I think you can even tell it... I know you can tell it individual files, but you can also tell it subtree and give it a commit, and I think it'll just revert that part of the tree. Right, but Sam would need to have the upstream, the whole upstream history in his Git repository. I do. Well, if he's using GitDPM, he probably does. Okay. Hang on. We've got lots of time, don't worry. But what I want here is... So you're saying I should check out the upstream tree, then graft in the Debian tree from the commit I want. Well, I was actually proposing the opposite, but... How can I do the opposite? You basically tell Git to check out the upstream tree, ignore accepting the Debian directory. Ah. I think we'll have some feedback back here on this topic past the mic. If it's just a Diff you're after, the other approach is just to use FilterDiff. Right. Or I think Git has the ability to filter by path, so if all you want is a Diff of the Debian directory in the patches, and you don't care about the direct changes in upstream, you can just... You need to filter Diff it or specify a path on GitDiff, and that should give you the Diff you want. You can also filter Git here. All right. I mean, so this is getting a bit narrow. I mean, so Gregor. Sorry about that. No, no worries. I mean, it's a narrow bar, right? So... So I'd like to ask a simple question. I haven't really paid attention to Dikit development in the last three years or something. So what is actually the advantage of using Dikit as a maintainer for one's own packages over just Git build package? Okay, I'll try and mention as many as I can remember.  So there are certain things that keep happening in Debian, like your changes file has different distribution to your change log or something like that, and Dikit protects you from those.  So that's good for them, but also if they send you patches, they're going to be based on your history. So, okay, what do I have in... We need Mike. Sorry, it's big room. You're sharing in a history in such a way that it is automatically discoverable by the... There's the receipt of that. That... No, I... Right, but we can't... So... Okay, so... Then why don't you rephrase that? Okay. Can Git help us with microphone? You make your history accessible via Dikit clone. Whereas right now, if someone wants to get the source of your package, they have to try and find it on Alioth, right? And for... Right, when Debian Checkout can try and find it on Alioth for them. But Debian Checkout can give you a different thing every time. So if I Debian Checkout a Perl repository, it's probably going to be pretty sane. If I Debian Checkout a Haskell package, I'm going to get all the Haskell packages. That's quite a confusing interface. Dikit clone always gives you the same thing. And that's good for attracting new contributors and probably contributors to your package. Someone can always Deget clone.  That's what I was going to add, that maybe we need to fix the cases. When you do Debian Checkout, you get something that changes. But with the current control file fields, we should be getting just the package repository. And I think we should aim for that. Sure, it's an interesting aim, but, okay, hands up everybody who has ever forgotten to push their changes. All right, come on. All right. And hands up everybody who's done an upload without a VCS, the correct VCS fields. I mean, these things happen. So even if I'm asked this same question and work, but I think this actually, this uniformity is a big benefit. Even if the get checkout you get is this rather crude history of one commit per upload, it still makes it easier for somebody not knowing the intricacies of quilt and source packages to patch the Debian package. I mean, the underlying assumption here is that there are more people in the world that know get than that know quilt. I think that's a fair assumption. And just to expand on that, so you asked about benefits for maintainers. This is more of a benefit for users, but it's connected, so worth mentioning. If you're someone who's moderately new to free software and you're just getting into the idea that you can modify the stuff on your own machine, you're going to be wanting to do that in get. So suppose I find a package and I find a bug, and there's some bureaucratic reason why it can't be fixed upstream right now. But I want to share that modification with my friend. Deget lets me do that in get. So I can de-eclone the package, apply my fix with a get commit, and then just push that to get hub or wherever and share that with someone else who has the same problem. Whereas right now, because this is one of Debian's guarantees with a stable release, we say, you can modify any of the packages in the stable release and we provide the build dependencies, so you can rebuild them. But we only provide that in the form of out to get source, which is hard to share to get improved on that. You just said you get a raw history of what commit per release, is that already the case? Because I think it just gives you the latest one, right? It does. So an open bug that it could give you one commit per whatever it can find, but right now it only gives you the latest one. I guess you have to implement that first on the Deget server, inject all the packages or something like that. Right, there's some ideas, but if people are using Deget push, then this becomes irrelevant. A question about that, I think there was this overwrite kind of option in Deget. Does that mean that on the Deget view, indeed you lose all the old history and just my Git tree as I now have it, is the Git tree that you get? You can't overwrite what's on the Deget servers because then the history wouldn't be fast forwarding. What the overwrite option is saying is, Deget thinks you're going to lose something here and you're saying, no, it's okay, I've got all the changes. It's mainly designed to prevent you from accidentally failing to incorporate an NMU. That's another advantage. Deget won't let you push if it thinks you might have missed an NMU. You have to tell it. How can I now then upload my package history that I currently have if you already have a Deget push once before? Then you would just use overwrite and it would merge your stuff over the top of the stuff that's there. Question here. I know that you have thought this over because, well, I know who you are. But one thing that I have left pending here is that how is this integrated for groups working? Say the Perl, the Ruby, all those groups that use version control to handle large amounts of packages. Is something thought for the workflows? Sorry, can you repeat the question? Yeah, yeah, yeah, I mean, what I'm missing here is that, well, I know that I am not active as I was once in those communities but I still follow more or less, try to follow what's done there. How does these workflows integrate with things that go beyond individual packages to the workings of the whole groups? I guess in the, I mean, the only setup like that I know is the Perl team but essentially it has tools to iterate across repos and so the iteration is happening at a level above Git, right, as opposed to with SVN when you would say commit changes to a bunch of packages at once, atomic-ishly. So I guess you would have to do the same changes but I think that there's two different questions here. There's how you arrive at the thing you're ready to upload and how you upload it. And the how you arrive, for example, by running said across 2,000 packages doesn't change but then instead of doing 2,000 uploads with DPUT you could also do them with DGIT push, that would be an interesting test of the DGIT server. Yes, it would. Well, it is 2,000 commits now for the Perl team and they're only, they happen more or less contemporaneously at the same time but they're not atomic in any sense. They're only as atomic as the tools are bug-free. I don't know, Gregor, do you have any disagreement? Not on this topic. Okay. More questions. Yes, in the back. Is DGIT a good tool for me to use if I want to collaborate with other people who are not Debian developers? Like I'm working inside a company or just with my friends or something. Sorry, yeah. If I'm working at a company or with my friends or something and I want to add local patches to Debian repositories, is DGIT a good place to start? I've had good success using Git repositories for packages where the upstream, that is the Debian team is using Git but sticking things into Git at work, like importing it from an SVN or just not packaged at all workflow is sort of weird and I would like to use DGIT. Are the tools there for me to do that? So, DGIT, one of the design philosophies of DGIT is that you only have to use DGIT when source packages are involved. If you're not dealing with source packages, it should just be part of something you can do with Git, not DGIT. Right, so we are generating source packages because we're building locally patched Debian packages. So, I'm going to generate version 1.0 plus my company 1 or something and we're going to have some weirdo local patch in there. Right, right. Yeah, I mean DGIT would let you obtain from Debian the thing you're going to base your work on already in Git. No matter what the Debian maintainer does. So that's an advantage. Is it going to give me any tooling for managing source packages in my own repository, my own private repository? I think plug wash might have more to say, but I don't think I know what you're trying to do. So I might have enough distance here to see where you're going. So I think the managing source packages in a repository isn't really a thing according to DGIT. It really likes to think that they're ephemeral, that source packages are disposed. Okay, go. So this goes to the question of how to build a derivative distribution, right? Who does that? And the point is that in DGIT, it doesn't care where it's pushing things and where it's uploading things, as long as you tell it the right URLs to upload to. So by default, it uploads to .debian.url for DGIT repository, .url for .debian archive, .url for FTP master, and etc. And in your DGIT packages, you could change that config to pull from .debian, yet upload into your own private repository. And it will, if you provide the APIs which match the DGIT server APIs, and if your repository looks somewhat like .debian, then it should be quite easy to tell it to pull from here, but push there. You just have to buy an enterprise license for the DGIT server. Okay, in case anybody didn't get, that was a joke. Please do not attack Ian. Yeah, however, like for example, for Ubuntu, we haven't yet worked out how to integrate the merge workflow for merging from DGIT history of .debian and basing Ubuntu DGIT history on top of and merged with .debian DGIT history, because for us, we want to merge packages. Right, right. That's not clear yet. We want Git merge to do the right thing with all the patch cues and everything. Right, that's really hard. More questions, complaints, people who want to revive Git 3.0. Who remembers Git 3.0? Who hears an FTP master? Okay, good, it's safe to talk about it then. Sam needs a mic, despite his previous claims. I guess I'll say that I certainly, there are times when I find dealing with Git 3.0, with 3.0 quilt and Git, frustrating enough that I am so tempted to go randomly hook the package to override the package source so that it'll accept the native version somehow and then use 3.0 native or just drop Debian revisions from my packages because if Gilliam's going to be that way, then I can be that way too.  So you're proposing a social solution to a technical problem? Yes, Deb Helper taught me that works well. I could talk about the DeGit main-to-rebase workflow just for a minute because that might be what you want. So I do not fully understand this yet because it's not done basically. But how this DeGit main-to-rebase workflow will work is your repository will have the upstream source and patches unapplied with a Debian directory and then each patch will be represented by a commit and that will get pushed to the DeGit servers. Now, obviously, you're going to want to rebase and move those around, especially when you merge a new upstream version. How is that going to work? Well, roughly, it's actually not going to be part of DeGit because it's not about source packages. Rewind to the upstream source and rebase your patches however you want and then merge that on top of the old patch queue. We don't have a whiteboard marker. You'll get a trapezoid pattern in your Git history. But then in the source package, the patches will probably just be squashed because the thought is, well, if the patch history is a beautiful series of commits on the DeGit server, it doesn't really matter what goes into the source package. So that's coming soon. So our video overlords inform us we have five minutes. So if you've been working up the courage to ask a question and you're really bored of DeGit, now's your chance. What's the point to have something to do with Git? There we go. So is there a plan for how to deal with packages in Git that are inconveniently large? So like data for games, that kind of thing. I'm thinking of open arena data here, which is enormous. There is no plan. It's a hard problem. But I mean, if we're using Git workflows, we've got good Git workflows for 90% of packages. That's enough for me. Is there a plan for dealing with those packages in Debian? I mean, do they work generally? I guess that's off topic. Sorry, I'm breaking my own rule about having something to do with Git. Yes. Maybe switching gears just a little bit. Has anybody thought about how we might indicate or better connect when bugs, something that I care about, are closed in specific Git commits to packages? I mean, one of the things that I keep wishing that somebody would make easy is the ability to graft on the Git tree onto a set of bugs so that you know that, yes, it was found in this version and in this commit it was fixed. So the BTS could, in theory track, the Debian directed graph of versions that depend on which they were mapped onto the Git tree at the same time. So if anybody thinks that's exciting or has comments on that, I'd love to see somebody give me patches that do all that. So it sounds like a job for Git notes, which are unfortunately sort of half implemented. I mean, they're getting better. So we did make some tools, which I don't think were very widely deployed, but we made some tools to experiment within the package Perl team to track not bug metadata per se, but patch work like this patches forwarded and attach that to specific Git commits. And that more or less worked from a technical point of view. I mean, it's a question of did we end up using it? I don't know, but I say we loosely. Did the team end up using it? Seems like a reasonable place to end, if there's anything else to say. Yes, sure. So Alvarez always has a question. Good. Run out the clock. Just an idea that popped into my mind. Would this be a good way of converting your latest SVN repository to a Git repository by just going into DGIT? Like, just doing DGIT clone and working from there? It would be the throw away all your history approach, which I mean, given the way most people use SVN, that's probably perfectly reasonable. I said most people, not including anyone in this room, of course. Thanks for coming. All right, thanks a lot. That was a great buff, guys. And girls and others.