Good morning, everyone. Welcome to the 20th annual Congressional Renewable Energy and Energy Efficiency Expo and Policy Forum. We are very very glad that you are here with us this morning and we think that we've got a lot of exciting speakers, a lot of very wonderful exhibits, a lot of people for you all to meet and and share ideas, conversations with and please make sure that you visit the exhibits in both the Gold Room in 2168, which is just right around the corner when you leave here as well as the Rayburn Foyer just down the hall from from this room. My name is Carol Werner. I am the executive director of the Environmental and Energy Study Institute. EESI is a non-profit organization set up by a buy set up in the mid-80s by a bipartisan congressional caucus that was very concerned about energy and environmental issues. We were set up to provide education to work for solutions to try and build consensus. We are not government funded at all, but we have a mission of providing education and as I said, working for solutions. So part of all of that involved becoming part of the Sustainable Energy Coalition and EESI was a founding member of the Sustainable Energy Coalition, which is sponsoring organization along with the House and Senate Renewable Energy and Energy Efficiency Coalitions. So again, welcome today and we are very, very glad that you are here for our very first panel this morning. As you know, there are several panels going throughout the day that are looking at all of the issues that are being covered by all of the people who are here with exhibits in both the gold room and in the foyer. And so to set the stage for our first panel, we will hear from four speakers. The first of whom is Scott Sklar, who is the steering committee chair for the Sustainable Energy Coalition. We will then hear from Ruth McCormick, who is the director for federal and state affairs of the Business Council for Sustainable Energy. Then from Lynn Abranson, who is the executive director of the Clean Energy Business Network. And the final speaker in this panel is Deborah Stein, who is professor of practice for engineering and the public policy department for the Scott Institute for Energy Innovation at Carnegie Mellon. So we welcome you all here and we will now start our panel. Scott, take it away. OK, excellent, Carol. Thank you. So welcome. I'm Scott Sklar. I chair the steering committee's Stable Energy Coalition. I have a 17 year old company that blends all the clean energy technologies, high value energy efficiency, energy storage, and all the renewables globally. I have projects on every continent, including Antarctica. And I teach two interdisciplinary courses on sustainable energy at the George Washington University, sponsored by the engineering school, the business school, the law school, and the science part of the arts and science school. And in fact, for my classes, which I'll leave outside, I have my students read 32 studies, which are peer reviewed and which show that if you take the entire portfolio of the clean energy technologies that I mentioned with technology we have today, we can all meet our entire energy needs in this country and on this planet economically with technology. Again, we have today. I won't test you on it, but I will leave the list outside. So I thought might be useful. I'm going to, I used to cover these studies in this opening. I'm not, I want to tell you the 10 things you should know that happened since December 31st of 2016. So first on, released in January of 2017, a United Nations environmental program study with Frankwood School noted that 55% of all new electric generation coming online on this planet came from renewable energy in 2016. So of new power coming on the global grids, more than half. First time ever. Also reported in January of this year was that the world not only added more renewable energy capacity, but 23.7% of global electricity comes from all renewable energy sources. So a fifth of the power on this planet now in electricity comes from the blend of clean energy sources. The second fact you ought to know is renewable energy constitutes nearly 19% of US renewable total electric capacity. So, and that is growing. We have nearly 222 gigawatts worth of power or 222 nuclear power plants worth of power and more than 17 gigawatts were added in 2016. So that's a new thing you should know. Starting in March 2017, we're starting to move down the year. California electricity demand for the first time reached 40% of their entire load. Now California is the fifth largest economy in the world. So that's an important note. Again, these are all all the renewable energy technologies. In April 12th, Nevada energy exceeded states 20% renewable energy mandate trees received 26.6% of their electricity in the state of Nevada from renewable energy. In April 10th, Portland County, Portland, Maine said it will go 100% renewables and is already over 50% meeting its energy needs. The sixth thing you should know at the end of 2016, 26% of Hawaiian electric ratepayers received their electricity from solar energy. So and followed by 29% for wind and 19% for biomass. So we're starting to see the state of Hawaii, which also voted to be 100% renewable energy. In May of this year, May 26th, solar panels met 25% of the electric demand of the United Kingdom. The United Kingdom has the same solar as Vermont, so that's as somebody says, huge. At the same time, also in May, renewable energy record hit 85% of all electricity of Germany came from renewable energy, offshore wind, on land solar and biomass principally. 85%, you're listening to the nonsense that's coming out that our grids may fail because we have all this new technology coming on. Well, Germany is the fifth largest economy in the world and they didn't go out. They're not blinking out. In April, renewable resources in the United States exceeded nuclear generation this April. So renewable energy is growing as the leading new source of high technology. Another study was released by a group of the National Labs on the Western power grid. And what their job is, one of the complaints that utilities have said about variable renewables, that means solar and wind, that it costs more because utilities have to have all these peak or power plants around, just in case the wind isn't blowing or the sun isn't shining. And they found, yes, it would cost the utilities about $200 million more per year to keep these peakers going, but they saved $7 billion a year in reduced energy cost. So $200 versus $7 billion, I think it's a net positive, don't you? And then lastly, as of July 4th, we have had 30 studies commissioned by states on the value of solar. A lot of utilities have been saying, oh my gosh, all this new technology is going to cause horrible results. Of the 30 value of solar studies commissioned by states, the utility commissions, only three had some questions about solar's value. And the other 27 saying it added high value to the stability and reliability of the grid.  You know, I started, sadly, being an older guy, on long playing records, and then I went to 8-track tapes, and then I went to cassettes, and then I went to CDs, and then I went to DVDs, and now I'm on MP3 players. And I'm sure the previous industries were very upset that they were going down the tubes. There are not a lot of 8-track manufacturing companies left in the world. I'm very sorry about that, but the fact is technologies have to evolve. And in 1970, our only phone company said that cellular was a whim. Who in a country that has 99.7% quality service would spend 15 times more for a unit of communication? I'm here to tell you everybody. Cellular is more convenient, it's safety, we have data. I have tons of dial phones in my attic, if any of you want them, hard to carry around, but I'm happy to give it to you. So the point I leave with you today is technology has to evolve, and this evolution of this entire portfolio of clean energy technologies that you're going to see in these both exhibit halls, typify what the future is, and it's going to be elegant integration, it's going to be more resilient, it is going to be lower cost, there's going to be higher rate stability, and most importantly, it's going to use less water, because in the United States, we use more water to extract, convert, and use energy than we do to grow our food. And we don't have enough clean water for all these other things that we used to do in the 18 and 1900s. So thank you very much. So we're now going to hear from Ruth McCormick with the Business Council for Sustainable Energy. And the Business Council has been part of the Sustainable Energy Coalition for many, many years. Wonderful folks to work with. So before I get started, I want to let those of you in the back know that there are seats up here with your names on them. So they're here for you. We can see the names.  Don't be shy. So there's two seats right here. Awesome. Okay, great. Well, thank you for the opportunity. And so today's panel, this first one is called Setting the Stage. And to do that, there are three things that I would like to do. The first two are some shout-outs. The first shout-out goes to Carol Werner and her staff at the Energy and Environment Study Institute for the phenomenal effort that went into putting today's event together. I participated for a number of years, probably now going on 10 years. And it's been a tremendous event and a great opportunity to showcase some of these new technologies that Scott has been talking about. So thanks to Carol and her staff for all of her effort. And I know this was a particularly challenging year with the Cannon Building being renovated and having to make this shift over here to the Rayburn Building. But we're glad to be here in a new venue. The second shout-out goes to Nikola Tesla, who was the Serbian-born American inventor of our electric grid. Yesterday, Monday, July 10th, would have been Tesla's 161st birthday. So a lot of credit goes to him for what we have today, including cell phones and electricity. So happy birthday to Nikola Tesla. Also, the third thing that I really want to cover is some of the trends that are happening in the energy sector. Since those days when Nikola Tesla first generated power at the Niagara Falls hydroelectric facility, which provided power to the Chicago World's Fair. There have been a lot of transitions. As Scott mentioned, there have been a lot of technologies that have come online. And I wanted to share with you a little bit about what some of those trends are. I know that Scott touched on some of them himself and his remarks. But as he talks about it, it's important for the different technologies to talk to each other. Because there's a portfolio of technologies that work together that can bring about a clean energy economy. And the Business Council for Sustainable Energy encompasses those technologies. So our organization is a trade association of trade associations and businesses from the renewable energy, energy efficiency and natural gas sectors. So most of the renewable energy trade associations, solar, wind, fuel cells, geothermal are members of the Business Council for Sustainable Energy. As well as energy efficiency associations like the Alliance to Save Energy and Energy Efficiency Companies. And then of course the natural gas industry. So one of the things that the Council has done for the last five years is to try to capture what some of these market trends are for the technologies within the Council's coalition. So that we can share that information with policymakers so that they have the best, most up-to-date information and most comprehensive information upon which they can make policy decisions. So the report that we have produced is called the Sustainable Energy in America Factbook. We have produced the 2017th edition that was released earlier this year. We have a table out in the exhibition space that I would recommend that you go and look at. There's copies of the brochure and information about the Factbook that has a wealth of information for you to use and to hopefully inform policymakers. So some of the top-line trends that have been happening in recent years with the technologies within the Council's coalition are one that Scott mentioned in his remarks. And that is the amount of electricity that is generated by natural gas and renewable energy combined. So in 2016 between natural gas and renewable energy, they generated 50% of electricity, which was up from 38% in 2011. So the growth in those technologies even over the recent years has been phenomenal. And of that, the breakdown includes 29.6% of electricity being generated by natural gas and renewable energy supplying 10.4% of U.S. energy. So again, the trends have been going in that direction and we expect that they will continue to grow. With respect to energy efficiency, the economy has been growing and we have been using less energy to power the economy. The Factbook shows that since 2007, so between 2007 and 2016, the gross domestic product in the United States has increased by 12% while our energy use has declined 3.6%. So we're getting more bang out of the buck for the energy that we do use, which has been great for consumers, it's been great for energy. We're becoming a lot more energy efficient. Some of the things that have led to that have just become things that are driving energy efficiency. So it's been interesting to look at some of the statistics around commercial floor space, for example, and the amount of commercial floor space that is either covered by energy star or local benchmarking provisions that have caused buildings in the commercial space to become much more energy efficient. With respect to local benchmarking, right now we're at about 8% of commercial building space that is covered under some of these local benchmarking provisions, which doesn't mean a lot. At 8%, there's a lot of room for growth and hopefully that will continue to grow, but from where it started, that jump to 8% is actually fairly significant. So one of the things that's driving the changes and the growth in these industries, and I think this is really kind of the main takeaway that I would like to leave with you today, is the cost of these technologies. So consumers devoted less than 4% of their, this is US consumers, devoted less than 4% of the average household income on energy in 2016. And that amount is lower than it has ever been since we have been recording those numbers. So less than 4% of the household income is devoted to energy. And the fact book actually will break that down into what consumers are spending on electricity and then the thermal energy and also transportation fuel. So that figure is energy writ large and it includes transportation fuel. So the cost to consumers have come down significantly. So just want to leave you with those main points. I would refer you to the Sustainable Energy in America fact book, which again you can find copies of on the exhibit table that the Business Council has in the exhibition area. And thank you for coming today and for listening and hopefully we're able to set the stage and you'll learn a lot more from additional speakers this afternoon. Thank you. Thanks, Jared. Okay, we'll now hear from Lynn Abramsmith with the Clean Energy Business Network. And I must say I really encourage you to make sure that you check out the Business Council Sustainable Energy fact book. You'll really enjoy it and I cannot tell you how glad we are also that Lynn is here with us this year. This is a very, very exciting new clean energy business network that just shows how much we are seeing now in terms of business development across the country. How many jobs and how much economic activity is really involved. Great. Well, thank you so much Carol for the introduction and for having me here today. And I really would like to thank ESI, the Sustainable Energy Coalition, as well as the caucuses for all of your leadership and work on this. And I'm very excited to be here today. As Carol mentioned, we are in some ways a new network and in some ways old and I'll get to that in a moment. So I'm Lynn Abramsmith, the Executive Director of the Clean Energy Business Network. And the CEBN was founded by the Pew Charitable Trusts back in 2009 to serve as a resource to inform and engage clean energy business leaders in policy issues affecting their industry. But just as of this May, we transitioned out of Pew to become an independent grassroots initiative of the Business Council for Sustainable Energy, which Ruth has introduced. And the goal of this new partnership is to provide a stronger, more unified voice for the clean energy industry. So as Ruth discussed, the Council's members largely consist of the sector-specific trade associations, as well as some larger clean energy companies. Whereas our members are quite diverse, but largely consist of small to medium-sized business owners. So executives of rooftop solar companies, HVAC installers, you know, geothermal heat pump installers, a really wide variety of technologies. And so what I wanted to do today is build on some of the comments by Ruth as well as Scott on some of these recent trends in clean energy. And as, you know, the fact book clearly shows, the U.S. energy economy as a whole is growing cleaner, more efficient, and all of this is coming at lower costs to consumers, which is fantastic news. But I want to add to this the human side of that story, building on all of that data, and tell you a little bit more about the types of companies that are on the ground doing all of this great work. So the take-home message I want to leave you with today is one of diversity. There's a diversity of technologies, of geographies, and sizes and types of companies involved in the growing clean energy economy. Over the past eight years, since the clean energy began in its former home at Pew, it has now grown to over 3,000 members across all 50 U.S. states. And they're working in a wide range of technologies. I mentioned some earlier, but we encompass renewables, efficiency, natural gas, storage, advanced brick technologies, efficient transportation, carbon sequestration, and so many more that are hard to even put a definition on. And I'm pretty sure that with our membership, we've still only begun to scratch the surface of all of the companies working in this industry. So who are some of these people? Well, there's Jeff Henler, who is the CEO of Energy Technology Savings, a firm in Livingston, New Jersey, very small, just 10 employees. And they engineer efficiency, solar, and battery storage solutions for a variety of clients, but particularly high-rise apartment complexes. As Jeff described to me, they approach projects like a doctor trying to diagnose a patient. So they'll start out by putting a lot of relatively low-cost sensors all around the building to get a better sense of the energy load, diagnose what's going on with the building. And they'll try to work with the building manager to understand their concerns. So maybe the building manager is wondering why the common area costs are so high and what it has to do with the energy load. Or maybe they're worried that there's going to be another hurricane-sandy-like event, and the residents of their high-rise apartment complex are going to be stuck for days with no power, meaning no elevators, no water pressure, no air conditioning, and that that could be a role-safety hazard. And so ETS will diagnose the building's needs, develop the right solution, and then come back and continually monitor over time to see that everything is working properly and fine-tuned as needed. There's also Nolan Hill, the CEO of Highland West Energy in Idaho Falls, Idaho. They are a developer of combined heat and power projects, and they're also starting to get into wind. And one of their sweet spots is working with hotels, campuses, and other clients that have a large hot water demand. So they'll engineer solutions that will provide a combination of on-site, reliable power, as well as thermal energy that will cut their clients' utility bills by hundreds to thousands of dollars per month. There's also two of our members that have collaborated together extensively. John Fox, the CEO of a lecture firm from Reno, Nevada, and Lois Neary of Gulf Coast Green Energy in Bay City, Texas. And they have worked on a particularly exciting project with HESS Corporation to test out a novel application of their waste heat-to-power technology. So apparently over 30% of the natural gas in the Balkan oil fields in North Dakota is just flared. It's just completely wasted. And so these companies have worked together to develop a solution to capture that natural gas on-site, use it to power a boiler, a very simple low-cost machine, and then they'll take the heat off that boiler with their unique organic rink and cycle technology and use it to generate electricity that can power operations on-site or be exported to the local grid. So they're turning waste into a resource, which is just a no-brainer. And one more example I wanted to give you was our members, Larry Richardson and his staff, Sarah Bogus, of re-energy holdings in upstate New York. They helped the Army's Fort Drum convert a 60-megawatt power plant from coal to sustainably harvested biomass that is sourced from the local community. So the new biomass plant is not only cleaner, but it is also helping Fort Drum have a reliable on-site source of power that can power its critical operations and it's helping to stimulate the local economy. These are just a handful of examples, but a recent report by the Department of Energy has found that over 3 million jobs in the United States are supported by clean energy industries. These are people who are installing solar on rooftops like our member Missouri Solar Solutions. They're building natural gas distribution infrastructure. They're upgrading insulation in HVAC systems. They're building geothermal heat pumps. They're developing the nation's first offshore wind farms like our member lead co in Cleveland. They're making supply chains and manufacturing processes cleaner and more efficient like Sir Clean in Florida. They're innovators working in the lab on the next generation of energy generation technologies such as Ion Power Group in Florida. Or they're innovating unique storage solutions in the lab that someday might be able to keep your cell phones charged for 20 days like Green Fortress Engineering in Indiana. And some of them are even working on humanitarian issues involving bringing electricity or lighting to communities in need around the world such as Luminade in Chicago. These are your constituents, your neighbors, your friends. They're part of your community. And I hope some of you can join us today at the CEBAN exhibit in the Gold Room. We have featured 10 case studies of some of our members. We have an interactive exhibit where you can come and click on one of the case studies and it will pull up a really brief video or PowerPoint highlighting some of their interesting technologies and projects. And so this is our way of trying to bring the clean energy economy here to Capitol Hill. So thank you so much for having me. Great, thank you. Great stories, great examples. And I hope that you find them as exciting as what we do. And now I want to welcome to the podium Debra Stein who is with us again this year. Universities are a terribly important piece of how we innovate in this country. And we are delighted that Debra is with us from Carnegie Mellon University from the Scott Institute for Energy Innovation. So hi, so just at the beginning I want to say how many of you have ever been to Pittsburgh? Hey, a pretty good number. I'm very pleased to hear that. So I have this thing that I tell in my classes which is basically all energy policy is local. And I sort of learned this. I was in D.C. for many years, like 20, 30 years. I worked at the Congressional Research Service. And the one thing I've learned since I've been in Pittsburgh, which is now almost five years, is really all energy policy is local. And what makes sense for one community may or may not make sense for another community. So I'm focused, I've titled my talk. We see from Pittsburgh to Paris, manufacturing and efficiency in jobs. I do have a set of slides because A, I'm a data geek and B, I'm an academic. I'd be happy to send them to you. So this will be the day to help back up some of the things if you really want to get into it. So the first thing is the Scott Institute for Energy Innovation is kind of an umbrella organization for all activities at Carnegie Mellon that are related to energy, not just in engineering, which is where I'm from, but also in our economic school, public policy, architecture all over the place. And so, you know, I was sitting in my car driving along and I was President Trump and he said, I'm reading this, I was elected by voters of Pittsburgh, not Paris. I promised I would exit or renegotiate any deal which fails to serve US interest. So many of us in Pittsburgh were quite surprised about that, given that 80% of the people in Pittsburgh voted for another candidate. But anyhow, this was very interesting and caused a big flurry of activity in Pittsburgh. Particularly as the mayor of Pittsburgh also is a very much active. So he immediately tweeted out the response was, see, as the mayor of Pittsburgh, I can assure you that we will follow the guidelines of the Paris Agreement for our people, our economy and future. Now you might think that these two statements are diametrically opposite to another. I'm here to tell you today that they are not and that is because we will serve the interests of the United States by focusing on energy efficiency and manufacturing. So moving on, now Pittsburgh, I use these pictures in my class, at one point was so dark that at noon you couldn't see anything. So I have a little picture here of that. And now it's a beautiful, clean city which if you've been there recently you would really see that. Now it doesn't mean that there is an air pollution, because we do have definitely air pollution problems, particularly in particular matter, but it's certainly different than what it was in the old days.  In fact, my very first visit to Pittsburgh when I was a young engineer, I went and actually visited a steel plant. There is steel no more in the city. And instead we have Google, which now has its own building and is expanding its building in Pittsburgh. And of course we have many universities. We have actually over 40,000 post-secondary graduates in the Pittsburgh region in which half of them stay. So a lot of people don't really think about Pittsburgh that way. I certainly didn't think about it very much until I moved there. So the next question is, how much of Pennsylvania in terms of employment is from energy? Take a guess. Fifty percent. Okay. The correct answer is 1.8 percent, which is less than the national average. Which is, you know, kind of surprising for many of us. And that's just, that's Pennsylvania as a whole. So when we talk about manufacturing, we're talking about two things. We're talking about the manufacturing of energy efficient goods. And we're talking about improving energy efficiency of manufacturing. Both of these are positive things for the economy and for jobs. And of course the environment. And so the other thing that you'll be surprised as, do you think there are the number of coal workers versus the number of energy efficiency workers is more or less? How many think there's more coal workers? How many people think there's more energy efficiency workers? Okay. So the correct answer is there are less than 10,000 coal workers in Pennsylvania while there's more than 50,000 energy efficiency workers. Now sometimes I question, to be honest, some of this energy efficiency employment data. However, it's clear that even if I took out all my question marks, it's still five times higher. So again, I'm thinking to myself, President Trump, you can help these energy efficiency workers because you are representing Pittsburgh, not Paris. So the most energy efficient workers are in efficient lighting, advanced manufacturing, HVAC, which is heating, venting, and air conditioning. Thank you. And most of them are also in construction and manufacturing. About 20% are in manufacturing and over 50% are in construction. So the other thing which I think is really interesting, again, for Pennsylvania is that 70% of employers report difficulty hiring qualified workers over the past year. 26% said it was very difficult. And that energy efficiency out of all the other energy fields, which is transmission, solar, wind, fuels, motor vehicles, has the highest growth rate at 9% or 198,000 jobs. And that's up from 133,000 the previous year. So what we've been doing at the Wisconsin Institute for Innovation is holding a number of workshops, folks on energy efficiency. This comes out of something called the Power 32, which is, you know, you know, Pittsburgh is not really just like one area. It's really three states and 32 stands for the 32 counties. So it's really Pennsylvania, West Virginia, and Ohio. And that region is where the workforce kind of goes around. It's actually the distance between Philadelphia and Pittsburgh is like four hours in between Pittsburgh and West Virginia is like two. And maybe even less, probably if you just hit the border. So we held a number of workshops starting the fall, looking at like what is the potential energy efficiency in the region, thinking about the workforce issues. And we're putting together a report, which we're going to which I'm writing this fall, writing now to discuss in the fall to say, well, what can we do? So the first thing we learned from this group, which is a very diverse group of people who are participating is that the key is apprenticeships. There was great demand that like, for example, we have some day here, how important is apprenticeship program to your company? And 56% said it was important or very important. Did their company have apprenticeship program though? The answer was no. And that was really key. And when one of the Duquesne Light, which is one of the big utility companies had a apprenticeship program, they found out that there were like hundreds of applicants for like 10 slots. The next thing is that industrial energy efficiency potential is very high. So there is in West Virginia University an industrial energy efficiency center. And they are funded by the federal government as opposed to cover Western Pennsylvania and so forth. What they find is that the companies in Western Pennsylvania are not really willing to interact with them in sort of Western Virginia. And so we're leaving a lot on the table so that you can just install new engines, for example, new motors, machines. And that would improve energy efficiency by 30%. Now there are a lot of challenges to this though because they have to take down production, they have to do all sorts of different things, and there's some risk involved. So that's something that we really need to think about. So just to sort of summarize. So the first is that the energy workforce demand of Pittsburgh region is not energy supply as you might think, either in shale or coal, but in energy efficiency. That there are federal programs available, but they're not necessarily sufficiently supported. We need to really understand what's happening there and that they're there, but are they not reaching the right people or what's happening? I think it would be really good to maybe have a hearing or something to really think about that issue. And that manufacturers can save approximately 30% of their energy consumption, but that risk aversion is a barrier to that occurring. We have wonderful building energy efficiency programs in Pittsburgh, but we really don't have anything for the industrial sector that is focused on their needs and their worries. So these are sort of three illustrative policy options that came out of the workshops that we had. We have a whole bunch more than this. The first one is encouraging apprenticeships and internships. So there's something called the Workforce Innovation Opportunity Act of 2014. And it is under the Department of Labor involves several different agencies and think about it relative to regional needs. So I think looking at the implementation of that would be a very good question. The second was is that there's also advanced manufacturing workforce initiatives related to energy at five federal agencies. We need to check the status of the funding of these programs. I've only been following some of it, but from what I can tell a good number of them are being cut or proposed for cuts. Yes. Yes, okay. Well, this is confirmed. Carol, I follow this closely. Okay, good. And I read your newsletter, which is probably where I heard it from. So that obviously does not necessarily make much sense. So I think that's another important issue. And then lastly, we need to really look at and understand the barriers to particularly small and mid-sized companies. I'm not really as concerned about the large companies because they have lots of people to do their work for them. But a small company is really, you know, they need the money to survive economically and to hire more people, but they might not have it. So that's it. Thank you very much. Great. Thank you.


Hello, everybody. My name is Ethan Arawood, and welcome to OpenJS World 2021. Today, I'll be talking about safely handling dynamic data with TypeScript. So what do I mean by handling data? Well, everything we do on the web involves data. Simply loading a page is loading data from a server. But let's get a little bit more detailed with that.  It's all data, and it's all fairly dynamic, especially user input information. So let's consider a JSON object payload, representing a user. We have a bunch of different properties here. The user's ID, the name, are they employed, what company do they work for, how old are they, and what projects have they worked on. And now let's go ahead and define a Fastify API route. This API route will be writing this user to a fake database. So we'll call it add user, and we'll make it a post request so that there's a body. So given the current code, what type do you expect that body property to be from the request object of the request handler? Do you think it's going to be a record with a generic T? Or do you think it's going to be an object or any?  In fact, it's unknown intentionally as well. We want to make sure that that body property is not unsafely used. And what I mean by that is, imagine, given our user data that we're going to pass to this API route, we know as the developer writing it what shape it's going to be in. And however, who's to say that another developer in your team knows that shape of that data? And let's say you go ahead and you're in this API route and you make call to body.name. You, as a developer, expect that it exists and that it's a string. But what happens when someone only submits a user object with an ID? Currently, there's no validation. And there's no checks if that does or doesn't exist. So by setting the body property of the request object to unknown, the call to body.name will actually not result in a string but in an error. In fact, TypeScript error. So your code won't even compile. In this case, the error you're going to receive its object is of type unknown. So how do we solve that? Well, let's use JSON schema. JSON schema is super powerful. It looks a little bit like this.  And you can use that schema to do things such as validation, serialization, parsing, and more based on your schema. And generally, JSON schema is intended for validation. So most of the time, you're going to use it to say, hey, this JSON blob that I've received from an unknown thing could be a client in our case. I want to validate that it is the shape that I expect it to be. But this is 2021. Validation is not all that JSON schema is good for. Additionally, there's new tools, such as Typebox, which actually allows you to derive the types, type definitions from your JSON schema. And so the Typebox API is a very fluent-like API, where you can see here on the second line of the second code block, we're defining a constant variable T that is the type.string method, or a call to the type.string method. This results in that T variable having the shape or having the, you know, being an object with a single property type assigned to the value string. This is a JSON schema. It's a very simple JSON schema. And it's not very useful in this case. But you can combine a large part of the Typebox API together to build your JSON schemas. And then you can take that JSON schema and you can derive the type of it via the static method that is also provided to you from the Typebox API. So putting these two together, here in our code sample, we start with this body schema variable. It's a call to the typebox type.object. And then we define our six properties that we expect on our user object. And then for each of these properties, we define what it is. ID is a string, names a string, employed as an optional Boolean, company is an optional string, et cetera, et cetera. Then we define a type, a matching type. Body schema is the result of the static generic function from the Typebox API. And now, inside of the fastify.post method, not only are we passing that type body schema to the generic, named generic parameter object, that first line of the fastify declaration, but then within the fastify.post method itself, we are adding a second argument. And the second argument is a set of options. In this case, we're using the schema option and we're passing in that same body schema to the body property. And now, automatically, fastify is gonna do two things for us. First, it's gonna validate that that body is going to be the shape of that schema that is derived from the Typebox API. Additionally, inside of the function, the body property on the request object is going to get the static type from that body schema type. So now, inside of our request handler, you can see here we have some comments that type of body is going to be body schema. And thus, type of body.name and type of body.age are going to be string and number or undefined respectively. So, incredible. By combining all three of these tools, we're able to create a much, much safer API developer experience. Now, you can ensure that your fastify app and the data that it's receiving at any of your routes is going to be the shape that you expect it to be. But wait, it gets better. Let me introduce you to a similar approach but on the client side. For this, we're still gonna be running in Node.js so we're gonna be using Indici and AJV natively. AJV is actually the library that is fastifies using underneath the hood. It stands for another JSON validator. And Indici, if you don't know, is a brand new HTTP client written from the ground up for Node.js. If you wanna know more about it, you should go check out Matteo's talk too. I believe he's speaking about it today. So, let's look at another code sample. In this code sample, we're gonna start with a similar type box experience. We're defining a schema type or a schema variable and a schema type. Then, we're gonna define a function. This function is a type guard. So what that means is that it returns a Boolean and that Boolean, if it's true, the argument response data is going to be given the type that we're specifying on that response data is add user response schema. So to sort of rephrase that, this function is gonna be given an argument, in our case, response data. That argument is gonna be of type any or unknown. Then, if this function returns true, then that same argument reference, that response data that you may pass into this function, will be given the add user response schema type by the TypeScript compiler for the remainder of that context. And we'll see that in use at the end of this file. But to continue working our way down, you can see we're defining a user using that same user schema from the previous code sample. And then, we're awaiting the undici.request call to our API and that add user route. We're stringifying that user object. And then the data we receive back from Undici, we're going to collect it into the data variable. We're gonna parse that using just the default JSON parse method. And then, using that response, that const add user response, we're gonna pass it to our function is add user response. And again, if it validates, then within that if block, that add user response variable is going to have the type add user response schema. And thus, calling console.log add user response.message is safe. We know that it exists because we're using AJV inside of the is add user response method to validate that that incoming argument, that incoming data from Undici, the response data, is the shape that we expect it to be. In this case, an object with a single property message that is of type string. So now, let's jump into it live. All right, fantastic. Welcome in.  So MPM run build hyphen hyphen hyphen hyphen hyphen watch. Fantastic. Now let's jump into our server. So we'll take a quick peek at the index file. The index file simp has a single run function. This run function initializes the Fastify app. It registers our create server function, which we'll jump into next. And then it does a simple app.ready and then an app.listing call. If we have any errors, we'll make sure to catch them and log it and then safely exit the process. Inside of our server file, we have our create server plugin. And inside this plugin, we're copying and pasting that same code that you've seen previously. So in here, we're passing in that add user request schema type to our body generic, name generic property. Remember, that's gonna get passed through to the body property in the request object. Additionally, inside of the schema here, we're passing that same schema reference to the body property. So now, not only is this body property going to receive the type that we define here in the named generic parameter, but it's also going to be validated by AJV underneath the hood by Fastify using this options arguments. And now inside of our request handler, we can be certain that this body property here is of this shape and thus the user object is going to have all of the properties we expect, an ID, a name, employed, company, age, and projects. You can see that it even takes in the optional ones and then it even has the definite ones. Then finally, we're going to sort of mimic a database call and we're gonna resolve that object, that message that we're saying, this is gonna be our response for this API route. So it's gonna say user, that user ID added successfully. Then we're going to send that response back to the client. So let's jump over to our client code. So inside the client code, again, you can see a lot of similarities to the presentation. We have a type guard here is add user response. This is the same thing. You know, we're validating that argument with our schema, this response schema. We're defining a user and then we're going to be executing the in the Indici request call with that user. It's passed into the body. We're gonna collect the data from the response. We're gonna parse it and then we're gonna check, hey, if add user response is add user response, let's console.log the message. And if it's not, let's just console.log the entire response. Cause it probably isn't what we expected to be. So let's go run this. So here in another command line prompt, I'm gonna do npm run or start, yeah, npm run start server. You can see here on my computer, which is named Venusaur. We have a server listening on localhost 3000. And then we can run npm run start client. Fantastic. So everything worked correctly. User one, two, three was added successfully. Fantastic. We now know that we got that message here on line 32 because the response that we received from our server matches the schema that we defined here. So let's go check out those schemas. So here in my schemas file, I have a couple of schemas. We have that user schema object and then we have an add user request schema. So this is one of my favorite things about using the type box API is I can reuse my schemas really easily. So I can say, okay, my add user request schema is just going to be an object with a single user that is matching the user schema. And then that type can derive all that information even with that reference. And then here, again, we have that very simple message of type string. So jumping back over to the client, let's see what happens when we break things. Rather than sending just user, a body with the user property, let's send a response body with, sorry, a request body with a new user property. Remember that that new user doesn't match what we are expecting. See this request schema? We're expecting user, but we're gonna be passing new user. So let's see what happens. Perfect. Our API not only responded with a 400 bad request error and that that body should have a required property user, but our API here didn't fail, didn't try to call response data.message instead it logged the entire response data. Perfect. So this is everything in action. All right, welcome back to the presentation. I hope you enjoyed that short live demo. So I wanna do a big shout out to Undra. They are the original authors or graphical artists for all of the images you've seen in this presentation. Definitely, I am not very artistic, but because of them my presentations can be. This whole thing was built with tools called Highlight.js and TMCW Big. Check them out, they're really useful for building presentations using HTML and CSS. And finally, a big thank you again. Reminder, my name is Ethan Erewood. You can find me on Twitter and GitHub. Please reach out if you have any questions or you wanna talk about these topics further. I'm really excited. I got to show you not only Fastify and Undici today, but we got to combine them with tools like Typebox, JSON schema, TypeScript, and AJV. So I hope you can take all what you learned today and go and build type safe full stack web applications. Thank you again. Have a good day.


InshaAllah the focus of this Khutba today is going to be on the virtue of Tawakul or trust in Allah Subhanahu wa Ta'ala, reliance upon Allah Subhanahu wa Ta'ala. Allah Subhanahu wa Ta'ala says in the Qur'an, وَمَنْ يَتَوَقَلْ عَظَرْ اللَّهُ فَوْهُ وَحَسْبُمْ Whoever depends on Allah Subhanahu wa Ta'ala, whoever relies on Allah Subhanahu wa Ta'ala, he is enough for him. Allah suffices him. All we need is Allah Subhanahu wa Ta'ala.  Nobody.  وَعَلَ اللَّهِ فَلْ يَتَوَقَلْ مُؤِنُونَ So let the believers put their trust in Allah Subhanahu wa Ta'ala. Allah Subhanahu wa Ta'ala is our protector. Allah Subhanahu wa Ta'ala is our guardian. Allah Subhanahu wa Ta'ala says, وَعَلْتَسِّمُوا بِبْلَّا وَمَرُولَا كُمْ فَنِّعْمَ الْمَرُولَا وَنِعْمَ الْنَصِيرِ It is related that Imam Ali Al-Riba, he came to a city called Nishapur. And 20,000 people came out to meet him. And they said to him, حَدِثْنَ حَدِثْنَ حَدِثْنَ عَبَائِكْ Give us a Hadith from your forefathers. So he said, I heard from my father. I heard from my father, Musa Al-Qadim, who heard from his father, Ja'far Al-Sadaq, who heard from his father, Muhammad Al-Baqir, who heard from his father, Zayn Al-Abideen, who heard from his father, Al-Husayn Ibn Ali, who heard from his father, Imam Ali, Qalam Allah, who watched her, who heard from his father, Allah, Al-Habib Al-Mustafa, Sallallahu alaihi wa alaihi wa sallam, who heard from Jibril alaihi wa sallam, who heard from Allah Subhanahu wa ta'ala, Taka Balam, Golden Chain and Golden Salad, who heard from Allah Subhanahu wa ta'ala, who said, لا إله إلا الله حُسْنِي. لا إله إلا الله is my fortress. فَمَنْ قَالَ لا إله إلا الله دَخَلَ حُسْنِي. So whoever says لا إله إلا الله has entered my fortress. وَمَنْ دَخَلَ حُسْنِي. أَمِنَ مِنْ عَذَابِي.  However, being in Allah Subhanahu wa ta'ala's fortress does not preclude that we will experience some hardships. Allah Subhanahu wa ta'ala says, اَمْ حَسِبْتُمْ. اَمْ تَدْخُلُ جَنَّتَ وَيْلَمَّ يَعْمِنِي. يَعْمِ اللَّهُ مِنَّذِينَ جَاهَدُ مِنْكُمْ. وَيَعْمَ مَسْرَبِرِيْ. He said, do you expect to enter paradise? You just expect to enter paradise without experiencing struggle or showing patience. And the Hadith and Ahmad and their different narrations and timidity. The Prophet ﷺ was asked, يا رسول الله, are you a messenger of God? Who among the people will have the most severe tribulations? What did he say? He said, He said, What did he say? He said, He said, Listen to what he says. Keep in mind, he is the best of creation. He has the station of Mahabba. He is the beloved of Allah. He is the beloved of Allah Subhanahu wa ta'ala. Listen to what he says. وَمَا يُؤْدَ أَحَدٌ This Hadith in Numaajah, I have been tortured for the sake of Allah Subhanahu wa ta'ala. Like no one has been tortured. I have been frightened for the sake of Allah Subhanahu wa ta'ala. Like no one has been frightened. So three days have gone by and the narration and timidity, 30 days have gone by. And Bilal and I have not eaten any food except for a little bit of food that Bilal was able to hide under his armpit. The context of the Hadith is driven by Muqata at ascension against the Bani Hashim. And he said, He said, Praise be to Allah in every state. I want to my youth, the first people called to paradise on the Yom Al Qiyamah and those who praise Allah Subhanahu wa ta'ala in times of adversity and in times of prosperity. Why? Because they are the first people in times of adversity and in times of prosperity. Why? Because they had Tawakbun. Now, there is true Tawakbun. There is true trust in Allah and there is sooner trust in Allah Subhanahu wa ta'ala. True trust has come to Wakbun. It's a four and five infinitive. But Tawakbun, a four and six infinitive, this is sooner trust. What is true trust in Allah Subhanahu wa ta'ala? What is Tawakbun? Is that we do our utmost best in all things in Allah Subhanahu wa ta'ala? We know the famous Hadith of Tirmiddin the betterment came into the masjid without hobbling his camel and it was running around outside in the Prophet's Somalani terms. So whose camel is this? It's my camel. I have trusted in Allah Subhanahu wa ta'ala. He said, He hobbled her first, tied her down first then trusted Allah Subhanahu wa ta'ala. They want to gain knowledge. They have good intentions. I want to gain in. I want to study sacred knowledge. But three hours a day, they're on their phone. Five hours a day, the average American spends five hours a week, that's us. The average American spends five hours a day watching television. Oh, beard of the masses. And they say, I want to gain knowledge. Don't insult Allah Subhanahu wa ta'ala with the Tawakbun. One time, Saint Muhammad said, Go out and he said, What are you doing? And they said, We're not going to go out and ammo living. We refuse to go out and earn a living. Because we have trust in Allah. He censured them. and said, Get up and don't do something. Do you think it's over. Or going to descend from the skies for you? Not for you. We must do our best. The Prophet SAW said, I will fall into my grave in death. The intelligent one He is the one who suppresses his lower desires and works for whatever comes after death. What is the one who inflames his nafs to his desires and has vain hopes? Vain hopes in Allah SWT. I want to do the Jannah. His food is haram, his clothing is haram. He looks at the haram, he listens to the haram. Ahmed bin Ajeba, the great Moroccan scholar and mystic, he defines Tawakum. He says that Tawakum fitl tul qalb. He says Tawakum is confidence of the heart in Allah SWT. And that it relies on nothing besides him. Or ta'weelu alayhi fi kulli shayin anman. Or a connection to Allah SWT. Or a reliance upon him. Out of knowledge. Bi anna hu aani mun. Bi kulli shayin. Wa anta kulli bima fi yadil lahi. Awusakum minka bima fi yadik. And that you have more confidence in what is in the control of Allah SWT than what is in your control. In reality, Allah SWT controls everything. And then he says there's three degrees of Tawakum. He says fi anna hu. The lowest degree of Tawakum is to be with Allah like someone who entrusted his affairs to a kind and caring confidant. But he says even at that level, the lowest level, there's some iti ham. There's some suspicion there. And then he says, what's the tuhu?  And the child goes to his mother, but only when the child is in need. So he says, this is also deficient. He's only going to his mother, but only when there's a need, it's not full Tawakum. And he says, And the highest level is to be like a corpse, a dead body in the hands of an undertaker. Now, a Muslim relies upon Allah SWT in all times, but we should be especially cognizant of what Tawakum at certain specific times, according to our sacred texts. And I don't have a lot of time. I'm going to mention two of them. When we make a firm decision to do something, when we have azimah, when we analyze things, the pros and the cons, the good and the bad, and we make an informed decision, Allah SWT says, Speaking directly to the Prophet Muhammad, He says, It is so much going on in the Arabic. It is an incredible mercy from Allah SWT that you have gentleness. You deal with them with gentleness. If you were harsh or hard-hearted, you would have seen people flee from your presence. So overlook their faults. And ask forgiveness for them. And concern them in affairs of the community. And then when you have a firm decision, when you have a resolute decision, that Tawakum at Allah, then trust in Allah SWT, in Allah, you hit with Tawakum. For Allah SWT loves those who place their trust in Him. Second instance, when we should have extra Tawakum at Allah, is when we reach the limit of what Tawakum is. Of our intellects. The intellect has a clear jurisdiction. The author is very important, obviously. It's how we make sense of the world. It's how we live. It works in conjunction with the revelation. How many ayat in the Qur'an and the hadith of the Prophet, Salaamu Alayhi wa Salaam, encourage us to seek knowledge, develop our intellects. But sometimes we need to submit to Allah SWT, the intellectual understanding eludes us and trusts in Allah SWT. When Musa A.S. brought the Bani Israel out of Egypt, and we're standing in front of the Red Sea, and behind them is Tehran and his Junud. The Bani Israel, he said to Musa, We're done? This is what the intellect suggested to them.  Tehran is behind us. What are we going to do? They forgot who they were dealing with. Musa A.S. And who is Musa A.S. dealing with? Allah SWT, the one who said, If you ask Allah SWT, he will tell you, be comfortable. The one who said, whenever he decrees a matter, he nearly says to be and know it is. Musa A.S. to start the sea with your staff. As we know, Musa A.S. he didn't hesitate. He didn't think, what is that going to do? Let me think about that for a minute. He heard it. He obeyed. Because he trusts Allah SWT. He has to work good. One time the Prophet SAW was in the house of one of his companions, Abu Urbaid. And Abu Urbaid cooked the sheep for the Prophet SAW. And there were several companions there. So he said, Ya'aba, obeyed. Now really, I didn't get the shoulder of the sheep. He said, Do you give them? The Prophet took a few bites and passed it to the Sahaba. He said, Ya'aba, obeyed. Now really, I didn't get the shoulder. So he took a few bites, passed it to the Sahaba. Ya'aba, obeyed. Now really, I didn't get the shoulder. This hadith is indimity. Give me a shoulder. Ya'a Sula Allah. What kind of sheep did he get? How many shoulders of the sheep have? Listen to the response of the Prophet SAW. What did he not see in the head? By him who holds my soul in his hand. Now what can he not doubt? If you have just remained silent, you would have given me a shoulder every single time I asked you. We have to trust Allah on His Messenger. Even if it goes beyond our intellects. We have to have Tasleem. Islam. Islam means submission. Abdullah Al-Sabi says, It is from the necessities of good servitude. That the slave knows that the truth, he is the owner of everything by himself. The essence of rubudiyah is to have good etiquette, good adab, with Allah SWT. Now I want to share with you that running out of time one of the greatest manifestations of beautiful rubudiyah from the life of our Master Muhammad, Sallallahu Alaihi Wasallam. In the year of sadness, Ahmad Huzun, the Prophet SAW lost his life partner. The love of his life. I say the Khadija Turqura, Alaihi Sallam. 25 years of marriage, over 25 years. She was his only wife. She passes away. And then Abu Dhabi passes away. Ostensibly, apparently. The protector of the Prophet SAW. And he was the chief of the Bani Hashan. And now Abu Lahab is the chief of the Bani Hashan. So the Prophet's situation in Mecca has become extremely precarious. So the Prophet SAW, he decides to go to Taif. In Taif and Mecca were sister cities. And in Quresh was the major tribe in Mecca. And in Bani Thakif was the major tribe in Taif. And if Abu Sufyan Ibn Harb was the leader of the Quresh in Mecca, Abu Masrood at Thakfi was the leader of the Bani Thakif at Taif. The Prophet SAW, he walks through the desert 60 kilometers. 60 kilometers. With Zayn Ibn Haritha, with one companion. They couldn't even afford a conveyance. Four days, five days he's walking. He gets a meeting with Abu Masrood and his leaders. And immediately he's rejected in five minutes. Can you imagine you have a job with you in London?  The manager of the firm comes out, takes one look at you and says, no, you're a dismiss.  The Prophet SAW has walked through the desert 60 kilometers. He's in the desert. And not only is he rejected, he's in the desert. He first went to the leaders and then he tries the masses. And he stays in Taif for a few days. And after a couple of days certain people began to gravitate towards him because he has a magnetic personality. He's in the desert. He's in the desert. And this angered the leaders of the Taif of Bani Thakif. So they turn loose on him. Slaves and children and the red flag in the tree corner. And they form two lines. Because the city was walled. They form two lines towards the exit. The Prophet SAW was forced to walk between them. And he was walking. They would punch and kick him. Knock him down. They'd kick him up by his shoulders and punch and kick him again until he left the city. Now he leaves the walls of the city because stones were hurled at him SAW. So he began to pick up the pace that they were aiming for his feet and his legs. Their intention was to disable them to force him to crawl because they wanted to pelt him more effectively with the stones. This was a murder attempt. They're trying to kill them. Zaid tries to shield him. The Prophet pushes him away. Zaid is bleeding from his head to his toe. The Prophet SAW is bleeding from his head to his toe. They follow him for three miles. Can you imagine a group of people chasing you for three miles throwing stones at you? The Prophet SAW said, I don't know where I was until I reached his sandals were soaked in his own blood. He says, according to Bukhari that the angel of the mountains called out to me and greeted me. He said, O Muhammad, if you want, I'll cause these two mountains to collapse from the bani taif, the bani taif of taif. This is what he said SAW that I urge you to leave Allah who worships Allah alone and do not harm Him at all. I have told them their descendants that they'll come and they won't associate with Allah SWT. When you make such a du'a that shook the heavens, we shouldn't forget a du'a silah al mu'min supplication. A du'a is the weapon of the believer. A du'a is the essence of worship. There is nothing more honored by Allah than a du'a. There is nothing more honored by Allah than a du'a. There is no barrier between it and Allah SWT. And His words are recorded even as Haqq records his du'a. And there is some weakness in the chain. But do you know what I'm saying? That it's very, very apparent that these words emanated from Qalbi His Sharif, Sallallahu Alaihi Wasallam. And we take lessons from this. There is an etiquette and under, there is a du'a there is an etiquette and under when it comes to shakwa il Allah complaining to Allah SWT. We don't want to preach under with Allah SWT. We don't want to preach under with Ulama. This is something terrible. The Ulama say that this puts one in danger of Su'a khatima, of a bad ending. People who dedicated their lives to the sake of Allah SWT you disagree with them and suddenly you insult them. I don't know who they are. Hadith putsy, whoever declares war on my friend, take notice of war. For me, we have Adam with the Ulama and the Ulama. The Prophet SAW said and we complain to Allah SWT but there is an etiquette, there is an Adam. The Prophet SAW he said, Ashku dafafu wati to know Allah, I complain to you. The weakness of my strength he did not say O Allah, I complain to you because you have made me weak. He didn't say that. He tributes the weakness to himself Sallallahu alayhi wa alayhi wa salam.


What they gonna do with me now? I'm still a twerk of the town Tell me the sisters, I'm hooking them down So to talk of the town today we got a special guest What's up y'all, it's your boy Diamond Street King How you feeling? I'm good, how are you? I'm good That's what's up What's the vibes in Philly, like growing up in Philly? How it be up here? Shit, it was lit growing up in Philly though It was trencherous, but it was lit, you know So like, yeah, it was lit growing up So what's lit out there?     So I'm like, damn, yeah I dropped the song on SoundCloud, three days later I'm performing it, you know what I'm saying?  So that's what really, like it made me just like Oh yeah, I gotta do music So at that time, was it in high school?   Like if you wasn't doing music, what you would have been doing? Just making money, you know what I'm saying?  I used to want to be an architect Okay But younger than that, like that was my higher like school years But like younger than that, when I was kid I used to want to play sports I was always good at everything, you know what I'm saying? That's what they all say, oh my Everybody, that's what I'm saying Every hood nigga wanted to play sports But I was really good, good though Good at what?   Like right now?  So I just like, and it was coming easy to me So I just kept going with it, you know what I'm saying? Okay, so your family was supportive of the music? Yeah, everybody was, my whole hood I had my whole hood behind me, you know what I'm saying? That was really the main, that was like really the main reason Because you know rappers don't be having support out here, you know what I'm saying? So I got my whole hood backing me like, you know what I'm saying?  Okay, so the whole hood is jacking you now Do you sign a deal or are you still independent? Like what happened? I signed a deal in 2019 This 2017 when I first started rapping I went to college, you know what I'm saying? I went to school Yeah, I went to college for five months I dropped out the first semester, you know what I'm saying? Me and my producer went to the studio For like a year straight, just locking in And then the year 2019 I signed with me Okay So how is that working with me?     And the cubs just come take me out to trenches I'm like that's thorough Right, so like Alright, so working with him You go out the hood now So who else is like lit at this time Or buzzing at this time For Philly? Or was it Philly? My man Pownside Pop was jumping Who else? We had the The P&B Rocks jumping Like Cora Yeah Kwanee is like Couple niggas, yeah Was you the youngest? Or are you the youngest? I don't know I don't know if I'm the youngest My generation I'm probably the youngest But you know There's a lot of young motherfuckers That got the city turned right now So I can't even say I'm the youngest But at that time though Yeah, I was definitely the youngest though for sure I was gonna say like At that time do you feel like It was pressure to like Put your foot on the gas at this moment Because all the people looking at you I didn't really feel like it was pressure I just like It was just a blessing You feel what I'm saying I was just happy You know what I'm saying That's all like I wasn't really like Pressure to nothing I loved it Pressure meaning like Are you like making sure your songs are the best Not like I don't That's crazy Like When I make music I don't even like take it that serious You feel what I'm saying I just go in there and catch a vibe Like people take music too serious You know what I'm saying You know what I'm saying Like motherfuckers really like They make a song And they wouldn't do nothing I go in there and just Be myself and have fun And make a hit You know what I'm saying That's what I'm trying to say Like You just gotta be creative And just like have fun with it Okay Don't stress yourself out Trying to make a song Like So you're just having fun with it Catch the vibe You know what I'm saying Yeah Okay What's inspiring you at now I guess Like right now Yeah Just My family Like I gotta go hard That's how I feel like My reason to doing this shit now Is just like To take everybody out this shit You know what I'm saying Changed all my family lives And all my friends and everybody Like all my loved ones So I just gotta go hard To get them billions You know what I'm saying That's all Okay So The project on the way Life of a scapegoat Scapegoat Yeah What's the inspiration Behind that project Same I just feel like Like I'm a scapegoat You know what I'm saying Life of a scapegoat Like it's really in the title You know what I'm saying Okay Okay so what vibes Could people expect from this project I could expect real songs Like I ain't talking That murder-murder gunplay in this genre You know that's what they expect Because you know I'm a Like a gangster rapper So they expect me to come like that But I got Like I got love songs on there I got vibes You know what I'm saying All vibes on here Like real songs You know what I'm saying Real songs on here Based on personal experience Or something a friend went through Or No shit I went through You know like I took a lot of losses Lost a lot of homies A lot of my homies booked right now I don't lost everything to this shit So It was really like I'm damn near Like me and a couple of my homies The ones I was still holding the shit down Like All my homies damn near Booked up the system got them You know what I'm saying So like I gotta go I gotta go hard I ain't got no choice but to go hard That's why I'm like here Working every day bro That's all So any features on the project I got one feature on there Is lights He from Philly Everybody tap into my man lights That's the only feature on there So you got one feature on the project How many songs Eight songs If someone never heard your music What song would you want them to hear From that project From that project What you know Or a road to the millions Road to the millions Yeah Okay Alright And then In making music how are we deciding What goes on the project And what's worth keeping I just like Send it to a couple of my friends And like People are like Like Like Like Like Like Like Like You think this should Make the tape My the fuck is like Yeah This person say, yeah This person say, no Alright I ain't put it on there If you what I'm saying So then I listen to all the songs If I really go with my gut If you what I'm saying I actually all with y'all everybody got their own opinions In a fucking head up I didn't just say Oh, this is my favorite song So the song says out though, if someone never heard the music, what song should they hear? Uh, go listen to Sue Young or Bullseye or Project Angels, one of them. Yeah. Okay. And what do you think makes a good artist in your eyes?  Like everybody can rap, but everybody can't be creative with it. Give them different vibes, you know what I'm saying? Like, when you can make love songs, trap music, drill music, when you can do it all, that's when you're an artist, you know what I'm saying? Artists ain't just rapping. That's rapping.  So, um, so who was someone you feel like gave you good advice on your journey? Uh, my mom, God. Well I can't say my whole journey because it was a point in my journey where I didn't even believe in God, you know what I'm saying? I felt God when I, like, moved my family out the hood. I moved to Atlanta, and then that's when I found God, you know what I'm saying? So, like, when I first saw my deal and all that, I was like, you see this on my face? It's just they even thoughts. I was like, yeah, I was on a whole different time. So, what, moving to Atlanta, I guess, was you exposed to different stuff?      They never left the city.  So, yeah, Atlanta opened my eyes up. So in Atlanta, I guess did you get more spiritual out there? Yeah, I got more spiritual.  That's a scheme right there. No offense to people that go to church, but like, that's a scheme right there. But I'm just more spiritual with it.   You know what I'm saying? If you get me, like, you know what I'm saying? Or you don't get me? You don't get me? I mean, I just know it's other religious people out there. They might think differently. It's over 4,000 religions. Who know who really right? Right, we don't know who's really right. You know what I'm saying? So what's some of your goals moving forward in music?  You know what I'm saying?   Who you listening to when you in that mood? Future. That's toxic. Future. Yeah. You know, I'm the Philly future, you hear me? Okay. Okay. And then what's the some advice you would give someone on their way up or on the rise in Philly? Just be yourself. Don't let nobody tell you what you can't do because they can't do it. You know what I'm saying?  Just be yourself and just trust your gut. Just keep working. Be consistent. Never stop. You know what I'm saying? That's all. Just keep going. You're going to get it. One day. I'm going to ask you a couple questions and say a first thing that comes to your mind. Most use curse word. Bitch. Three things you need in the studio. We... green light. Green light.  That's all. Fire producers. We... And then a little light. It don't even got to be green. Just a light. Fire producers and some weed. I'm cool. I'm bobbing. Yeah. I'm bobbing. I'm a favorite artist currently. Future. Most use emoji. Praying emoji. Okay. Okay. Praying emoji. Praying emoji. What's your toxic trait? Uh, you ain't going nowhere. Okay. Controlling. Yeah. You're not even just controlling.  Okay. What song do you listen to for motivation? I listen to myself all day, every day. And then I play Future when I'm not trying to be motivated. Like when I'm trying to be toxic and all that, I play Future. When I want to be motivated, I listen to myself. Okay. One sentence for your ex.  Last thing you spent money on? Last thing I spent money on. Food. What's your favorite app? Instagram. What's a trend you wish that didn't exist? The bucket challenge. No, I just made that up. I don't even... I don't care about trends for real, for real, because I don't follow them, but... I just... That was the first thing that came to my mind, you know what I'm saying? Because I just saw the video when 50 Cent was trolling, Floyd, and he said something about the bucket challenge and threw the bucket and all that. So that's why I said bucket challenge, but no, that's not my... I don't know. Next question. Name producer that got a fire tag? Call up Tay. Okay. What age do you want to retire? I don't want to retire. As long as I'm breathing, I want to lock in. Okay. Yeah. All right. And last one. Tell me what's one of your bars that people could use as a caption? Uh, I got so many songs. Let me think real quick, hold on. A bar that could put as a caption. Yeah. I knew I was going to be the one. I knew I was going to be the one to give us millions. I said it wrong though. How I say my own bar wrong? That is crazy. That's for you. All my fans, I apologize, y'all. I just got my own bar wrong. Hold on. I got... You know, I freestyle my music. I haven't wrote a song since 2018. So, like, everything is freestyle, so it was all in my head and I be forgetting... So what song got a lot of captions? What you know every bar is a caption. Okay. I just did it on BlockworkTV. Y'all are going to see that coming real soon. All right. All right. Tell people where to find you. How can they tune in? Y'all can find me on Instagram, Twitter, Google, YouTube, Diamond Street, Chemo, everything.  You know what I'm saying? If you're really looking for me. Yeah.


Over the last 30 years. Over the last 30 years. In the last 30 years. Over the last 30 years, one of the big changes in the discipline and also in policymaking has been the treatment of inequality. In the past, inequality was examined primarily by people who were associated with the left. And now it's become mainstream. I looked at how many studies on inequality did wider produce between like 1985 and 1999 and there were two or three. Since then there are more than 300. I looked at how many times the word inequality was mentioned in the world development reports by the World Bank on poverty in 1980 and 1990 and it was not mentioned. It started to be included in the WDR of 2001 timidly at first but then the World Bank agreed to have an entire world development report dedicated to inequality but inequality of opportunity in 2006. One of the key institutions that has put the inequality issue on the agenda for front is the International Monetary Fund. Something you would have never ever thought a few years back. In the last 20 years at least on the spending side there has been an inclination to spend more on the poor. Both through cash transfers and also in terms of spending on education and health. So there was a more progressive, more equalizing income redistribution process than in the past. Fiscal redistribution however, this is a project that I coordinate that is global where I can compare what happens in developing countries with advanced economies obviously is still much, much lower in the developing world than it is in the advanced economies. My research has been focusing on the determinants of inequality in Latin America primarily wage inequality and inequality that is corrected through a fiscal redistribution. Redistribution means taxes, you take money from some and you give it to others through transfers. Over the next 30 years. Over the next 30 years. Over the next 30 years. Over the next 30 years the biggest single challenge for those of us who are interested in focusing on inequality and how to reduce egregious inequalities and create more fair societies is the fact that growth will be increasingly driven by technology. Technology that will replace jobs. So if people will not have access to jobs and technology and machines and robots are owned by other people then we're going to have a problem.


doświad, జ�nemliga, జඓારරઽజ� partes జඓા ઴ weakness ટ൫ྫ࿎ tahun � olv࿅੕ �час與 �ịchࡀ �。」 ૡ ŋ ૈ ર �too ૕๋ ક๊ � half � хотите ઺ ૕ๆ � στη ૕ํ ࠈ eight ���঎ ૝਑� Wissenschaft � Dharma ll � smoothie � Milliarden ��� funding િ� meilleur Simone ran � staircase ব�bone lata జ���lease ഉ interior િ��声  merchandise bought em and they opened up all of my shops and I saw them and their mobiles loaded them up with my Rapids engeted and I got a mix of things ॐ this was happening in and of itself ॐ and stopped running around ॑ and got into a care of my scooter  spared offerings coming from  skin's victims in India.  very much funded by the verse. Even if if they find second repercussions in  Mumbai and India at one spot in Japan they will not pay even in Indian slapped forlerites.  nor can paisa be fined by the regime. OREUM ڈĒĠĦ kaum nĐĐ ڈċĪ ژĽīK? ژ� Systems hospital have to exam my rép. ڈċĠċ ڈĒħđ ڈĞČĨļĀĀĀĀĄ мож recre sh상ād peine to go to... ڈĐ�ся ڈĒ�Jacob.. ----------------------------- zać uliflower Ẹ ȱன ײ ״״ ״փड ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״ ״, थ म� थ रप लब थै� ״ शुब आप सी अप दरी त्री रप लव लो मा लम थे बर बर दा लि जी आचन कर थे तो । ঱তা উস হাএন� nearest ও roster. স঻া.


Hi everyone, Joe for Jaspy's casebrace.com. I'm a dumb. I forgot to give away those father's apex one winner Top name gets 10 father's apex sealed going your way. So thanks again for filling up mosaic random team number seven you dice new list and aim on top after seven one two three four five six And seventh and final time it's scott. I don't think I called your name out too often in that break scott But congrats. You got 10 sealed father's apex going your way. I'm Joe for jaspy's casebrace.com Thanks for watching. Thanks for breaking with us. I'll see you next time for the next one. Bye. Bye


Go Well, hello and welcome to another Dev Nation live tech talk We're coming to you from all over the planet like we always do in my case I'm still here in Raleigh, North Carolina, right? But we also have Edzin Inauga who's gonna be a co-host with us today. He's gonna hang it out. Say hi Edson Hello folks. That's good to see you here. And yes, now we have two hosts. It's hard to tell us apart But I don't have a grotesque. Yes. Yeah, I gotta get more facial hair, but you're wearing glasses again Exactly just a confused people. Yeah. Oh, right. Well, we're going live right now. This is a live event We're gonna probably break some things have some fun break the internet But we have a very special guest today. His name is Abashik and he's gonna tell us more about himself I want you to introduce yourself so that people know kind of what your background is and what you do at Red Hat Before we dive into the technical content So I work with the team and R&D section in Red Hat where we focus on contributing to the operator world Mostly middleware operators have been working with various middleware teams who are writing their operator for the one shift and the co-op So middleware technology things in the Java ecosystem like key cloak as well as open shift and Kubernetes So you're one of the few people that have the dual skill set of Java based middleware and open shift Kubernetes Yes All right. Well fantastic. We'll go ahead and screen share Let's see if that comes through the internet connection and let's go ahead and try to run your presentation and your demonstration My name is Abashik Kousarwal today. We are going to see how we can secure your Vue.js application using key cloak Let's see the agenda. So today, we will see a key cloak overview Who concepts integration pattern integration pattern with Vue app and to inflow token refresh and token validation Demo and following with the Q&A session Let's understand what and why of key cloak. So what is key cloak? Key cloak is an open source identity solution for your modern application APIs native applications, texture applications, mobile applications or any Any kind of platform or architecture that you want to secure with a single sign-on mechanism Now see why you need key cloak. So it's a reliable solution as we say red hat is built on red hat products So if you visit any red hat web application, it is secured using key cloak or RHSSO, which is downstream version of key cloak Strong community support and customizable Architecture so you can customize and you can also reach out to community if you are stuck with any of the problem They are very responsive and Third point is portability so you can migrate your application from different different cloud and You can migrate your key cloak architecture as well so it gives you an portable solution you can export that configuration very easily and you can Even do the upgrade very easily Quick recap about OR2 and OpenID connect these are security specification protocols that most of You are familiar with so OpenID connect gives you all three where if you say OR2 You are only getting authorization but in connect in case of OpenID connect you get all three features and You can also say it's a subset of OpenID connect and all these security protocol works on that delegation Basically that you can see in this cute picture. So you are deletionating your security responsibility to key cloak Let's understand the core concepts here So this this architecture diagram will give you and a good understanding of what comes with key cloak So in the key cloak UI dashboard you can configure all those things very easily so mean configuration Goes around this realm configuration. So realm is like a namespace which I should it your configuration and you can configure your client your roles your security defense mechanism and It comes with identity provider like OpenID connect SAML or you can also do social logins with using Identity provider setup and you can also Allow your elder per car bros user to get authenticated using key cloak So realm with realm you can create multiple run it is said that you should use master for administrative purpose and you can use different realms for actual use Let's move up integration So for integrating any application with key cloak, you just need to do simple things one is Have a create a realm if you want to do some separation like for your external External users or internal users you can create two realm and in the external realm You can just need to create a client for any application You need to create a client for the integration When you create a client you need to provide two things one is which protocol you want to use second thing is which resource and what you want to secure and And each application your needs to use this key cloak adapter, which comes with language Specifications like if you want to use JavaScript adapter you can install in the M You can use back-end adapter for Java applications or can also get Android or IS SDK adapters, so these adapter allow you to Do a request response kind of mechanism with a key cloak A big endpoints over the STTPS protocol. So one thing is Important that you should use STTPS when you communicate over your client Let's move to the integration pattern with UJS. So in this demo I have created a damnation realm Which under which I have created a client view app. You can call it any name you want With your view application, you just need to install this key cloak JavaScript adapter You can install from the npm registry or you can download from the key cloak website So when a user wants to access your view application Your application will redirect or delegate your Authentication to the key cloak server. So you will see a key cloak authentication page where user and turn his credentials once user enters credentials You can he gets redirected to the view your view application where he can access the security sources So this is the very simple flow and later on once this process is done your key cloak adapter Is responsible to communicate with a key cloak server to exchange the token. We'll see how that happened So to understand the end to an architecture The I have created one caucus pattern if a for this front end application so same process I've created a caucus BFF client in the key cloak under the same realm and With the caucus you can take caucus key cloak adapter and that you can use to protect your Rest end point. So I have very simple user rest end point Your review just application is getting token from the key server, which token can be passed Using the request header as a viewer token. So with every request you need to pass this token to get a response from the secured endpoint and We'll see how the token validation in the next slide So in this picture, you can see Your key cloak Exposed certain rest end points for every realm So there are many rest end points But I have specifically mentioned two which are important to us one is this serve endpoint and on the ones this token endpoint Your front end application will be requesting token from this endpoint Sending a refresh token. So you can have a loop of Interval where you requested token before your access token gets expired So you can keep getting your token refresh It is important to refresh your token for the security purpose. So if let's say somebody gets access to your token, then it can be Security breach for you. So you need to keep rotating your token. So and expiring your token. So it Becomes a secure environment for you And your caucus back end during the startup will fetch this Jason Web key set So this is done internally and you can also do it by yourself if you are writing a new architecture you or any application application that you don't see a Adapter is provided So you can fetch this Jason Web key set which is used to validate any JWT token pass from your front end application and Token validation comes with three things that you must take one is your algorithm for the header that you have used Second thing you can check the payload in the payload. It comes with certain parameters So you can check the client or you can check the user based on your choice You can check more details and third thing you can verify the signature using this Key set so this is the process of validating a JWT token that you can do by yourself or The caucus adapter do a lot of things for you So let's see the demo here So I'm using key clock version 10 and I'm the bend directory So you can just go to Bend directory and I'm running in the standalone world So I already created a admin user for my key club instance So this is the main dashboard for key clock where I have created already great multiple realms This is the master realm which is used to administrate the your key key club instance so maybe I have created a damnation realm and Under that realm I have created two clients one is you have client and another one is caucus Right, and you can create a client from here. So basically you can give any name and you can create the root URL So let's understand the client little better. So three things are mandatory one is your client ID and This is where you provide the protocol and Access type so for client side application It's similar to a job start application or your boot is application the access type should be public because you you are exposing this configuration to your client side and This will be your root URL of your application. So once the Authentication is done where you want to redirect. So this is this will be same This one is important for Handling the course issue. So cross-origin request issues So if you are like using in dev environment or multiple people are using your application, then you can Do a file category. So those two means one face the Cross-origin issue But if you are running in production, you can use either plus which allow the subdomains or you can only use the actual URL which is much better for the caucus BFF I Have created like the client protocol will be open ID connect and access type will be bearer Because we just wanted to Validate the CHW2 token here. We don't want to be public. We want to just validate the tokens You can also choose confidential So confidential can be choose if if your back end is using the login flow Let's say your view application is running as a embedded within your caucus application in that kind of setup. You should choose a bearer only setup and Here you can see the realm settings. So this is one important place where you can set your token Lifespan. So here it's configured as five minute by default, but you can change according to your need Let's understand the application code. So this is our view application code here and This is very standard application that I have generated using the view CLI command and I have imported the key to the JavaScript adapter using an even strong or yarn add and I'm using a view logger. So this is our Configuration that we will be providing to the adapter that's your realm your client ID your Onload what kind of mechanism you want to do there is another you can do check SSO and And in Onload with login required, you will see the login page. It will always force to see the login page if user is not authenticated Here and is instantiating the key clip instance by providing the unit configuration and With the key clip in it. I'm providing this on load Configuration here. So what action needs to be done after it loads this logic So once the on load happen, it will redirect you to the key clip page once you put your credentials then you get a promise object from the key clip instance and In this response, you can check whether you are authenticated or not if you are authenticated Then you can initialize your view application or you can do the rendering part So here I am passing my key clip Instance as a prop So I can use it further and you can also store your key clip token in the local storage So if you don't want to pass this it as a prop and you want to Use local storage. You can do that as well, but it has some implication from the security standpoint and this is my interval set interval logic where I'm basically doing a clock looping kind of from Check on whether the token is refreshed or not or like what's the time cycle of my token is going to expire So I'm keep updating my token. So this is your refresh token So every time with like every six second percent interval will work and update token also Require a minimum validity second input. So this is how you are rotating your token You can change according to your need. I have a default setup like this, but it's up to you Let's also see your backend little bit So this is the focus if you haven't seen this This is very easy you In the application property, you just need to provide two fails one is your YDC client ID and And this is very simple Java focus rest endpoint where I'm have a user endpoint and I'm using this Annotation which comes with the focus adapter for the key club where you can just annotate and it will be your secured endpoint If I remove that it will be work like And here I'm basically returning this user model and not doing anything fancy here just one thing I'm providing some extra headers for my application for Avoiding any kind of cross-origin issues. So this is I'm allowing any request from my front-end so Let's start this and see in action This front-end my back home And my front-end So let's first hit the back end. So this is a very simple focus application And I have one user gateway endpoint if I try to hit it, I will get four zero one unauthenticated Now, let's try our front-end application So as you can see in the front-end application, you can do your You can user can provide your credentials or if user is not available. You can do a registration or I have also enabled Identity access using GitHub. So we'll see how we can do that So I already created one user first time try to lock in using that So this is our huge is application secured by the key club and here the Jwt token which we received from the key club server and This is the response we received from our focus back in So this is a very simple application and nothing fancy here. I'm just sending a token and getting response from my focus back in And let's see our local storage. So you can see our token store and the refresh token is stored These are stored by the key club adapter where it store the information to a call back to the key club server So you will see many of these configuration and This is where our set interval is working where it's checking when when the token is refreshed or not So let's try to change a bit and update the token by span to one minute Also, let's try to Change this So you can see I'm trying to force my application and the key club to refresh token very quickly So we can understand that And you can do other things as well. You can also see the user session. So you can see with The session details and you can also remove the session if you want to revoke all session from here And I also showed you the GitHub login so you can just add a identity provider So I'm using the GitHub one. I already created. So it's very easy You just need to go to your GitHub account and you create under your personal apps you can create a whole application under the development set settings and When you create a new app, you will see two fields one is client ID one is secret so you can configure it and you can enable it So we can do that So you can see the token is refreshed so your token is refreshed here if you see By refresh the page You can also see that the one is updated here and And Now let's try to log in using the GitHub. So this is the app I have created in the GitHub developer setting and Here I am using the authorization part. We are not authenticating it and once the Authentication is done. I am redirected back to my application and You are seeing that you are getting the response and you are getting the same kind of flow So nothing changed as the user is speaking from my data.com So this is done All right. Thank you for hanging out with me next week Edson may or may not be with us because he's starting to take a little vacation time for the summer But we're gonna have Edson hanging out with us more often And this Thursday session and then you're gonna see more of us also on the Tuesday session once we give birth of that And so thank you guys for your time today You guys have my email address if you need me feel free to email me at burr at reddit.com You guys get the emails and you can set reply on the emails and give us ideas. I did take some ideas from Casio here, you know, so advanced topics on key cloak things like authorization services complex policy permissions I made note of that. We definitely have some key cloak folks who can come talk to us more about those advanced settings All right. Well, thank you so much. You guys have a great day and we'll sign off for now