You've seen a thousand dropshipping videos, but what makes this one so special? So when we think about dropshipping, there are so many places that we can sell on like Facebook Marketplace and Shopify, Amazon, eBay, Wix, WooCommerce, and so much more. But let me make this so much easier for you and simplify the process. So one of the biggest problems that I see a lot of people making is simply not knowing what products to sell. So you'd go on, you'd create your online store, you'd add a whole bunch of products to your store, and you have no idea what you're selling and how to sell it, how to target the right audience for your products. So first of all, it's important to start with product research and knowing how to find the right products to sell that people are actually looking to buy. And I'm not going to focus on that now, we're going to get to that soon. The second thing is understanding exactly where we're going to sell this product. Now, as I mentioned, there's a whole bunch of selling channels that we can use, but to simplify everything and to make it much, much easier, we're going to start with Shopify. It's one of the best places that we can sell our products today, get started and have our store up and running today. And the last thing that we need to understand is exactly what our brand is, who we are, what message we're trying to bring out to our audiences. And with that, we'll be able to understand how to create our stores, our logos, how to market to our audience and everything else. So without further ado, let's go ahead and get started, start with product research and understand exactly what product we're going to sell and create our Shopify stores. So when it comes to finding the right product to sell on our stores, we can really get lost in all of this because there are millions of products that we can resell. So how do we actually narrow down on our winners? Well, there's a conventional methods of like going to TikTok and writing, TikTok made me buy it and seeing all the products that are selling there. And you can go to AliExpress's bestsellers or their dropshipping center or Amazon's bestsellers and just see what's trending there. But these are the saturated methods that everyone else is doing. So how can you be better and be on top of your competition here? The best way to do it is to, first of all, understand what are the best criteria to find a winning product? First, it needs to be hard to find. If you can find it everywhere, then your customers can find it everywhere too. Second, it needs to be affordable. Well, this should be for obvious reasons. If it costs too much, most people will not be able to buy it. And third, it needs to actually solve a problem. Okay, it needs to be a problem solving product where the customer can easily understand why they need to purchase this product and why they need it now. So here's exactly what I do to find my winning products today. Here, I'm using AutoDS's winning products hub, and I'm going to leave the link to it right below this video so that you can use it too. Now, this place has tons of trending products. Now, it's good that they're trending, but I still need them to follow my criteria. So as I scroll here, you can see a whole bunch of products that are trending. And I'm just going to click on one of them and go inside and see what it actually has to offer. So here I've got a portable electric garlic masher crusher. This is a pretty cool product. Let's see if it fits our criteria. So as I start to scroll down, I can see that it's being sold for $16. And it actually costs me just about $1 to ship it out, which means that I can make over $10 in profit minus my selling channel fees, which we'll get to later. But this is the amount of potential profit that I can get from selling this product each time. Here, I can see the seller's ad copy. So I can see what ad he's running, what types of sentences he's using to really reel his audience inside, and we can see how much engagement this product is getting. So over 3,800 likes over 320 comments, 380 shares. We can see that this one is pretty popular. Now this electric garlic crusher, what does it actually do? How does it actually help solve a problem? So here, I mean, I've got my kitchen and I know that when I'm crushing my garlics, I'm doing it manually and I'm pretty much hurting my hand doing so. Because it's just that tool that you have to crush with your hand. It's not very easy, not very practical. That's the problem that this electric garlic crusher has to solve. So it's actually going to do it for you automatically. Just put your garlic inside and boom, it's mashed and crushed. So you can see an example of the seller who's running the ad copy. And we can also see his website. This is what his website looks like. And I can click on it here to actually get the full view of his website and see what creatives he's using to sell this product. And we can also see that this fits a broad target audience. This can go for anyone from the ages of 18, when people usually leave their homes and go live in their own apartments up until the age of 60, where people are still in the kitchens making their own food. So this product can actually fit a broad, broad audience. Okay, all right, we get it. This product has potential, but what are we actually going to do about it? So we've got this spreadsheet right here. And don't worry, I'm going to share it with all of you who are watching this video. And what we're going to do is we're going to add all of the product information inside this spreadsheet. And after we have about five, six products, we can easily narrow down and understand which one is our winner. So what I'm going to do is I'm simply going to take all the product information like the product's name. And I'm going to start answering these questions like, are you passionate about this product? Is it something that you understand? Do you care about it? Or is it something that you have no idea what it is? Is it hard to guess the price? Is it safe to sell? Does it solve a problem and stand out? And does it cost less than $30? And the rest of the questions. So add all of the product information inside, get five or six products, and you'll be easily able to narrow it down. But in this example, I'm going to continue with this electric portable garlic crusher. And by the way, if you want more winning products just like this one, I've created a list of 20 winning products that are guaranteed to make a killing in 2024. And if you want access to this list, get this video to 1000 likes and I'll share the link right below this video. Okay, so we found our winning product. Now it's actually time to create our store on Shopify. Now I'm not going to do this video, but I will leave a link to a full free Shopify course that will show you how to create a store from scratch, completely from nothing, even if you have no technical skills and you've never done it in the past. But what I do want to talk about, what I do want to show you is how to actually brand your store by creating a professional looking logo. And this is important because we want to be able to reach out to our audience and show them, hey, we're a business, we're professionals, we know what we're doing and this is why you need this product. We know how to talk to you and this is exactly how we're going to do it. So we've got this website called Hatchful. It's completely free to use and you don't have to spend a dime. So you're just going to log in, you're going to create a free account and then you're going to click on this button right here, create a logo now. So I'm going to go with this first one right here. I like the colors. I like this clean grayish background color along with this blackish or this dark brown on the text and on the logo itself. Okay, so now that our store is finally up and running and we've got a nice looking logo, we've got a good homepage that we learned how to create from the free Shopify course. Now we're going to import the product really easily to our stores by going to the winning product section, which I showed you. We're going to click right up here to connect our Shopify store. We're going to click on add store. We're going to click on Shopify, click on continue. And from there, the connection is a breeze. And from there, from the winning products page, we're simply going to click on import draft. And that's it. This product is going to be on our Shopify stores with all of the pictures, all of the details and everything else. So now that everything looks good, we need to actually make sure that people know that this store exists. Otherwise, it's going to be pretty quiet, right? So this is where marketing comes in. And a lot of people get really stressed out when it comes to marketing because it's like, oh, wow, now I need to put a lot of money into marketing to make people know that this store exists so that they'll actually get to my store and buy the product. Well, I'm here to tell you that that is simply not the case today. You can even market your products without spending a dime. And the way to do that, well, there are several methods, but one of my favorite is simply by creating free organic TikTok videos. This means that you need to create a new TikTok account, order the product to your house. So in this case, it only costs a dollar, probably maybe another dollar and a half for shipping, but it's only going to set you back a few bucks and now you've actually got the product in front of you. And what you're going to do here is start creating organic videos on the product. Show how it works, create videos around it, try to search for products that are similar to it on TikTok and look at what other people did with those similar products. For example, other kitchen gadgets. And when it comes to creating organic videos on TikTok, many people will just create two to five videos and it'll end up not working out. And they'll say, well, maybe this whole marketing thing is simply not for me. Well, I'm here to tell you that is not the case. Here it's a numbers game. And I don't know if you guys have seen MrBeast's YouTube video where he says if you didn't upload 100 videos, you're not going to see any results yet. You need to go around 100 videos, then we can talk, then we can start to see what videos started to work. So this may seem like a lot, but it's not. It only takes a couple of minutes to shoot each TikTok video. And this way, once one video starts to go viral, you're going to create more videos that are going to replicate what that video did. And that way you're going to have a lot of winning variations and you're going to start driving lots of free organic traffic to your stores. And the best part about organic traffic is that it's ongoing. It'll keep going forever. As long as you continue uploading new videos, you're going to drive even more traffic and it's not sending you back a dime. This is a method that a lot of people are using today and it's proven to be very, very successful. So that is one free way of doing it that I love to do myself.  So here I want to show you HeyGen, which is a really cool video AI creator. You can create a video of yourself and it'll turn it into an avatar, or you can choose a randomly chosen avatar from within the website. And from here, you can simply feed it a whole bunch of text and it will use that as speech and create a video for your product. Now, of course, this is just going to be a text to speech. So you are going to have to add in some b-rolls and some extra videos of the actual product in action, which you can get from the supplier's website. Or, of course, you can order the product to your home and create those videos yourself. Add it in with this mixed AI and that way you've got a good video copy with minimal effort. Now, signing up to HeyGen is free and not only that, you can even create your first two-minute video absolutely for free. So, yes, I said that it costs money, but that's if you want to create longer videos and more videos. But let's do a quick example and see exactly how this works. So I signed in with a free account and the first thing that you can do here is create a free instant avatar. Now, of course, you can create a photo avatar templates and of course, create an AI script. But let's start with a free instant avatar. Now, another thing that you can do here is the logos that you got from Hatchful, which I showed a couple minutes ago, you can even put that on Canva, which is absolutely free to use. And you can integrate Canva with HeyGen.  So this integration is seamless and it's completely amazing. All right, so HeyGen finished converting my first AI movie for marketing. Let's see how it came out. Do you find yourself spending hours chopping garlic and other foods in the kitchen? Well, we have the perfect solution for you. Okay, I'm going to stop it right there. This is pretty amazing. So you saw it only took me a couple of minutes to get this down. Now, of course, you can change anything that you want. You can change the speaker. You can make yourself the speaker. You can even add your own voice into this prompt. So everything here is customizable. You can put the images on the side. You can change the backgrounds. You can also add a logo from Hatchful and everything else. So you can really make this your own video and it was completely AI generated. And this one didn't even cost me one cent. So that's how you can use AI to create video marketing ads for your product. Now, before I move on to the third marketing method, there is one really special tool that's going to help you stand out from all of your competition. And it's also going to help you automate every aspect of your business. So this way you can save time and scale and scale and scale. And this tool is called AutoDS. Now, the thing is it only costs $1 to start. And this $1 is going to be one of the biggest investments that you can make. Because within that $1, what you're going to get on top of all of the automation for automating your prices, the stock status, and everything else, you're also going to get all of this academy that you see right here. And this academy is full of dropshipping videos, no matter where you want to sell, how you want to find your products, how you want to market them. Everything here is absolutely free and it's included within that $1. So I'm going to leave the link to it right below this video. Simply click on start now for $1 and start your journey. And now moving on to marketing method number three. And this is the conventional method of bringing traffic to your stores. It's called PaperClickAds and you can use lots of different platforms to run your PaperClickAds. Now, this is a method that many people are using but it's been proven to work year after year after year and it's still working really well today for online sellers with TikTok ads being the new kid on the block. So running ads costs a little bit less than Facebook and Google and other conventional methods so it's a good place to start off with and to really be able to understand exactly what this means, it simply means that we're taking a video or images of our product, we're creating a post on it and then we're going to give TikTok a daily budget to show this product, to show this ad to our target audience. Now, the more of a budget we give it in the beginning, the more audience it's going to show it to but we want to start off small around $5 to $10 per day, see what ad copies start to work and start to scale it from there by turning off the ones that don't work and scaling and creating more ad copies to those that do work. More information on that, of course, in our Shopify course but I want you to get some inspiration from the TikTok ad spy that we have inside AutoTSD. So we've got this TikTok ad spy and this can get you inspiration on what TikTok ads are actually working, what the audience is resonating with, what types of ads work. So right here I've got this filter that says likes. I'm going to go for posts that have more than 20,000 likes because I actually want to see the ad copies that work. And from here I'm going to get all of these ad copies and you can see the engagements right here 20,000 likes, 50,000 likes, 390,000 likes. So these are the ads that are actually working and here we can find tons of dropshipping products that people are running TikTok ads on and they're making crazy sales. Then you can simply click here on see TikTok ad and you can see the ad copy in full and this, of course, is going to give you a really good indication of what products are working, what ad copies to run and exactly how to run them. For example, check out this TikTok ad that I found from the TikTok ads by. So it's this tool for sticky rice. Pretty cool, right? It was a six second video but as we can see right here it shows the product in action. It shows what problem it's helping the customer solve which we talked about in the criteria and as you can see right here it's got over 550,000 likes, 6,000 comments, 7,500 saves and over 2,000 shares. So pretty popular product and you can be sure that he's making a lot of traffic from this TikTok ad. So the traffic is going to his online store which looks like this and we can see that he's selling this product for $19.99 but how much is he buying it for? So we can see right here on AliExpress that he's getting the same exact rice spoon paddle for just $2.44 including shipping. So when he's selling it for $20 he's marking it by over seven times the source price meaning he's making over $15 in profit for every time he sells this product and you can be sure that he's making sales with 550,000 people who decided to like the post and not everyone who sees the ad will like it. So this means that more people saw than the numbers that we're seeing here and a lot of those people actually click on the ad went to the website and purchased the product. So that's how easy it is to be able to find an ad copy that works and see exactly what is working with it what the audience resonates with so that we can replicate it make it better give a better hook to our audiences make a better offer and we're going to be able to make those sales and profits. So now that we learned about the best marketing methods to bring traffic to our stores it's inevitable right now we're going to make sales people are going to see our products they're going to click on checkout and they're going to purchase them so now it's time to actually ship out the products and make sure that they reach our target audience on time. Now in order for that to happen we can do it in two different ways one we can manually go to the supplier's website purchase the product and ship it to our buyers but this is going to become time-consuming especially once you start making 10, 20, 50 plus orders per day and that is why of course we have automation which is included in that one dollar that I talked about earlier and here all of your orders will show up on the dashboard as you can see right here and you can send them out automatically without even having to click on a button. As soon as an order comes in the system will recognize where to purchase it from they're going to purchase it send it to your customer and you don't have to do anything your orders will get automated even while you travel even while you sleep at night and that's a great thing about automation and why it helps us save time and use that time that we save to invest back into growing our business. So as you see right here I've got all of the products that my customers ordered I can see which store it sold on who the supplier is and I have the customer's details right here where I need to ship it to so again I can do it manually or the statuses will switch automatically if I've got automatic orders turned on so it will move from pending to ordered once it's ordered it will move to shift once it's shipped out with the tracking number and delivered once it was actually delivered to the customer and again all of this is being completely automated you can just go to the dashboard and see what the status of your orders are and of course once the profits start to roll in simply withdraw them to your bank account and enjoy the extra profits so up until now we learned how to find a winning product how to create a brand around that product how to create our online stores how to market our products and how to process our orders from here the skies are the limit and if you want more videos like this check out the academy that I showed you subscribe to our youtube channel because videos like this are coming out all the time with new fresh updated info and if you're having any troubles let me know what your roadblocks are or what you want to learn next just write it in the comments below and I will personally answer each and every one of your comments good luck starting your dropshipping business I can't wait to hear about your success stories and I'll see you in the next video


Kappa Karris Collins YouTube team keeping clean What's going on is engraving here with another video and in this video the bingles. So you of course remember them last season They went a Super Bowl. How could you forget? And one of their Achilles heels from all season long even though they obviously found plenty of ways to counter it all season long Them having a bad offensive line That ended up costing them in the Super Bowl There was a couple of other things too, but that was one of their biggest issues throughout last year So going into this offseason the expectation was that they would try to revamp their offensive line I mean you want to protect Joe Burrow two years ago. He got taken out for the season due to Not having any blockers and then of course this year. He was the most sacked quarterback in the league Due to not having any blockers so the bingles went into this offseason knowing that they needed to get some what some blockers and They did just that and The latest domino to fall was somebody who the Cowboys they were trying to trade and he was on a Good deal like an affordable deal for so many teams like three years 30 million like 10 mil per like that's it That's it. So people could have afforded that so the Cowboys started shopping Lyle Collins in Just nobody was buying Nobody was buying nobody was going for it. So we waited and waited and waited and waited and the Cowboys was like, all right We're gonna release him So everybody still waited and waited like okay. Are they gonna release them or because you know a lot of teams They just say that they say that they're gonna release such-and-such player Only so just just so they can get one less That's their last effort their last pitch to the league to let them know like hey somebody please come on take them off Our hands give us some kind of draft collateral something give us six round picks seven round picks something Because he's all yours Nothing nothing Nothing happened So the bingles they get to get Lyle Collins for free Then he play I'm feeling like he played at LSU, but I'm not 100% sure so don't quote me on that but either way um, so the Cowboys they finally end up releasing and It was said that the bingles and the dolphins were interested But he flew out of Cincinnati for a visit first and then he had his visit. We didn't hear anything about it Didn't hear any good didn't hear any bad just heard he had a visit with the bingles and then it's like alright He's gonna think about it didn't hear anything But apparently this was his thought and he decided you know what I'm rolling with Cincinnati They don't show me enough so the bingles they they waited they played the waiting game like any other teams that were possibly interested in him did and They upgraded their offensive They didn't even have to give up any draft picks and see that the best part about that is that you get to inherit Lyle Collins and You get to come up with the contract terms for him You don't have to take on his contract. No, no, no, you get to come up with your own contract terms so Who knows what kind of deal it'll be if I had to guess it is 442 as of this recording right now But if I had to guess I will say it's probably like a Two or three year deal, you know the bingo they like putting all the guarantees in that first year And then they like I any guarantees best day That's it buddy. Just gave me gotta cut you but Yeah, I would say like a probably like a two three year deal cuz he's still a young guy now I did hear some stuff that Not even want to talk about that cuz I don't know if it's true or not So I can't speak on that as to why the cowboy is wanted to cut him But I'm not sure what the case is but either way bingles they They have shown this offseason like they really trying to upgrade especially Offensive line with all the moves that they make and then they've been having pretty good offseason Pretty good offseason Because their focus has been on that offense Really that offensive line, but even with the swap even with the swap They lost CJ Uzzama who he was these are good tight in there But his numbers that he put up is like it wasn't anything too crazy But then they got hate on hers That was a good move that's probably my favorite move that they made Um, probably cuz I but practice my Ravens fan and I know about hate and hurts and know what he has the potential to do He just got to have the the play to do it. He got to have the He got to have the what's the word I'm looking for He got to have the opportunity he got to have the opportunity to do it He was he had it in Baltimore originally, but then he got hurt So that was that then he had it in Atlanta then Atlanta like, you know a cop hits So and then that was that so now he became a free agent and the bingles are like, you know what We think you could do just fine and think about that too. Hey, then hers being in his offense with an offensive line now But hey, then hers being in his offense.  I think it's his third I think it's his third year but either way Those guys are gonna draw attention big time and Then of course makes him but then Hayden Hayden hers is gonna he can feed off all that he'd be like, oh Everybody's watching them. They ain't worried about me. Oh, hey, hello. Hey, bro. Hit me So anyway, we'll see how this thing goes but good moves by the bingles. I do love how the AFC North They they they get better they getting better Everybody make it moves to try to get better Bingles their weakness offensive line. They made it better Browns their weakness quarterback, you know the rest of that story Ravens their weakness offensive line They got Morgan Moses and hopefully Ronnie Stanley come back healthy stealers their weakness. It's quarterback Mr. Biskey


All right. Can everyone hear me?  So welcome everyone to the Open for Anti-Racism program. And we're just so pleased that you decided to join us this afternoon. This program was piloted last year in the California Community College System. And we're just embarking on year two of the program. So much of what we'll share about today is the findings from year one. And I'm Una Daley from the Community College Consortium for OER and I'm thrilled to be here with my co-leaders in the project and I'll let them introduce themselves. Thanks Una. Hey everybody, James Glopper Grossclag with College of the Canyons. So glad to see so many people here.  I'm not sure Liz is with us today. Okay. Hi everyone. I'm Kim Gruy. I'm actually at Northern Virginia Community College but I live in California and I have my hands in many open education pots and happy, happy to be here. Hello everyone. My name is Joy Schumate. I work at College of the Canyons with James and really thrilled to be here with you all and get to share a little bit about our program with you. Wonderful. Thank you. Thank you so much to those wonderful leaders. And I also wanted to mention our advisory coaches who worked with our faculty who participated last year in coaching them through their implementation of their action plans that you'll hear more about in just a moment and very quickly, Maritiz Apego from Contra Costa Community College, Dr. Alyssa Cooper from Glendale Community College in Arizona, Aloha Sargent from Cabrillo College in California and Dr. Micah Young from Pasadena City College in California. So what we hope you'll learn today, we're gonna talk a little bit about the design and the support of the program for the faculty who participated and the study findings.  And then there'll be some opportunity for you to find out about resources that you can leverage for your own programs focused on this. And then at the very end, we'll talk about moving from the pilot to the program this year. And a big thank you to the William and Flora Hewlett Foundation. They've been thought partners in addition to being the funders for this program and have helped us set direction not only last year but also entering into this year. And we very much appreciate that input. All right, for those of you who might be new to the Community College Consortium for OER, I can see Ursula Pike right there. She probably doesn't need this tutorial but I can only see six people on my screen at the moment. The CCCOER has been working with community colleges around the country and also in Canada for over a decade. We were founded in 2007 and we work with faculty on developing OER. We work with staff. We foster OER regional leadership and it's all about improving student equity and success. And we're just thrilled to have you join us today. So before I get into the OFAR program, I wanted to talk a little bit about the California Community College System. So last year we implemented this program there and this year we are continuing in the California Community College System. Well, it is the largest higher education system in the country with 116 community colleges, 76 districts. Probably not too surprising considering that California is quite a large state of both geographically and population-wise. We serve over 2.1 million students per year. The majority are Hispanic serving institutions and one in every four community college students in the nation attends a California Community College. So if we can have some impact here, we hope that it can really spread. So the motivation, so last summer was a really tough time with the murder of George Floyd and so many other incidences and it really sparked an awakening of the racism that is deeply embedded in our society and also in our educational institutions. And so there was many wonderful statements put out by educational institutions, organizations about how they were gonna fight for equality and racial justice. And some of them have acted on that and some are still thinking about it. But in fact, the idea was what is something that faculty can do right away in their classrooms because they are interested in doing that and we truly found that out in this program. And so we went ahead and worked with the Hewlett Foundation to launch this and we had many applications for our program. And we have a very quick video we wanna show you where we have some of the participants talking about the program. Leading up to this, I have been trying to take advantage of trainings that the different schools I work at offer like equitable grading practices and equitable syllabi practices and curriculum and joining anti-racist task force. But I felt like what was missing was here's just some concrete steps you can use then here's how we can help you do that. I have been doing equity work way before we started talking about anti-racism in the form of anti-bias. And I actually really like that we're calling it what it is now anti-racism because I think it's much more honest and transparent. The participants were in a four week intense of asynchronous online course that Joy and I co-facilitated. And the culminating event was for them to create an action plan for the spring 2021 semester because the idea was to take action right now. Right, so, oops, this always happens to me. Stop that. I'm conned. Okay, so what faculty were telling us after they went through that initial training period was OFAR gave them, I'm sorry, we abbreviate, OFAR gave them the starting point and the confidence to be frank and vulnerable to their students and to talk about race and privilege in the classroom. And these were tools that they really appreciated. And so as I mentioned at the beginning, at least I hope I did, OER and Open Pedagogy are the tools that we see in the OFAR program specifically to make classrooms anti-racist. And so of course, open educational resources allow changes to materials to represent the voices that have been underrepresented. And the Open Pedagogy is that working with students so that students are collaborating on these projects. And we'll give you a few examples of that in a moment but making it student centered specifically for students who may have been marginalized. And we based some of this on some research that was done by Dr. Shauna Brandle out of the Kingsborough Community College where she looked at American government textbooks both commercial and OER and found that both of them included very little coverage of any historically marginalized groups. And so there was a great opportunity here for OER to be updated and adapted. Looking also at science books, particularly the healthcare area where many of the images are of white skin and many of the case studies are white male focused. And we know that healthcare providers are not being sufficiently trained. There's conditions that manifest themselves differently on dark skin and our medical material is not addressing that. So another great opportunity in the STEM area. And so many of the faculty told us that anti-racism was really where they felt this program had its strength. Equity has been a very common term used now for five or more years and they wanted to take it further. So the open for anti-racism program was all about exploring how to use OER and open pedagogy to make their materials and teaching more anti-racist. And so they had an online workshop which we're gonna hear about in just a moment where the culminating program was developing an action plan to work with their students in the very next semester on this project. And during this time, they benefited from peer connections, monthly webinars, coaching and OER support that they could call on. And then we worked with the RP group to document the impact through faculty surveys, interviews and student surveys. And now I will turn this over. Oops, I just wanted to say in the first year, we had over 300 applications and of just a diversity of disciplines. And we were excited to have from career technical and right into our academic areas. And now over to Joy Shumate, our one of our course developers. Thank you so much, Una. It is my pleasure to share with you all a bit about the course that Dr. Kim Gruy and I co-developed and co-facilitated. So you will hear from Kim shortly about some of those plans and those projects that were implemented. But I'm just gonna spend a few moments describing a bit about what the four week course included that our participants went through. So the program was structured in a way that our faculty participants went through a four week Canvas course. And the topics that we discussed were what is anti-racism? What is OER? How can they be leveraged to support anti-racism? Same with what is open pedagogy? And then it kind of culminated with the creation of an action plan. It's important to note that our participants came to us in this program with varying levels of familiarity with OER and open pedagogy. So some were quite familiar and others were, these were very new concepts to them. So it was really important to us that we developed a course in which we kind of all had a shared understanding of anti-racism and then moved through a shared understanding of how OER and open pedagogy could be leveraged to build more anti-racist courses. And as it says here, we also included small and large group discussion so that the participants could really collaborate together and work together to identify some solutions and ultimately work towards implementing some tangible changes in their courses. Next slide, please. Thank you. So we started with needing to define anti-racism and anti-racist pedagogy. Really, the purpose here, and I won't read all these words to you on the slide, but the purpose here is it's moving beyond simply incorporating racial content into your course, but it's really about reflecting on how the course content is taught and even considering what is taught. So what information are we sharing with students? Are we considering the ways in which our disciplines have been impacted by racism? Who has even been determined to be content experts in our fields? So really finding ways to really be critical of our own disciplines and what it is that we are teaching, which does require being race conscious and finding ways to implement and talk about race and racism and how they impact our teaching, our learning and the disciplines in which all of our participants, our faculty, our experts. So again, as Una had mentioned, it was really about including the perspectives and the voices that typically are not included in really lifting those up and sharing the history of our disciplines and really validating and raising the voices of those. Typically we don't hear and see in our learning. Next slide, please. Great, so next it was about, okay, we have this foundation of what anti-racist pedagogy is. How do we leverage open pedagogy? How do we leverage OER to make our courses anti-racist? Again, we won't read all of these things to you, but for example, an important component of open pedagogy is disposable versus non-disposable assignments. So the idea that a disposable assignment being one in which we assign students something, a quiz, a paper, some sort of assignment, they work on it. And that's kind of where the conversation ends. We just kind of wrap it up and we never really review it again. So again, it was this opportunity to bring our students into the learning and have the creation of projects and assignments where the learning continues. It doesn't have to end with the end of this project. So how can students see themselves as being contributors to and belonging to their learning, being active contributors to the fields in which these courses are taking place and really allowing students to be a part of the process where it's not an assignment that just sort of ends and dies when the due date passes. So again, it was really just finding ways to leverage not only student contributions, but leverage the voices of those that previously weren't included, even in our OER, how do we revise those and remix them to include those voices that were previously included. Next slide, please. So this was a quote from one of our faculty participants who shared they were interested in using open resources, but that OFAR, this program was a great way to kind of link anti-racist pedagogy to OER. So again, it was just kind of trying to make the connection between open as a whole and anti-racism and how open can be leveraged to make courses anti-racist. Next slide, please. And now it is time for me to pass it over to my co-facilitator and co-developer, Kim, who will tell you more about the action plans. Thank you, Joy. I do see some questions coming up in the chat and I definitely wanna put that question from Heather Ross on hold and come back to it, please, about Indigenous voices because it's important. But I do wanna go ahead and do my part here, which is so exciting because I get to showcase what the participants in OFAR did this first round and so that's exciting. And the central activity for the course was to create an action plan and to implement the activity that you came up with that very semester, so the spring semester. And so we purposely made the action plan template nebulous and there was a lot of discussion about how open-ended it was and did we provide enough structure? But we walked the talk as much as we could in the course. We tried to use open pedagogical approaches whenever we could. We tried to use principles, universal design for learning to allow for multiple forms of engagement and expression. And so we kept it purposely ambiguous because we really wanted the participants to make these plans their own that work for them, their students and their institutions. And we did ask them to think about, okay, what are you gonna do this semester with your students and then thinking for the future, how might you scale this up, bring more people in, et cetera. And so with that said, we have a few next slide please to share with you from cohort one. And this is from Anna Garcia Garcia who I believe is a coach this year. So this is a really neat thing about our program is that we are again having students, if you will, or participants, then become mentors, coaches and lead the next group. So that's kind of an exciting feature. So Anna's project, she wanted to engage and empower students and open their minds to the idea of diverse science. She wanted to avoid showcasing white males only as role models in the course. And so she invited her students, next slide please, to create their own open scientist slide. And Anna gave guidance and they had a lib guide. She worked with a librarian at her college and they had a lib guide to help, but then students created examples of slides where there were scientists, diverse science happening and scientists who look like them. So bringing, historically under represented these contributions that aren't in the textbooks, bringing them into the science classroom. And the neat thing is then Anna will use slides that her students created during that semester. She's using them in this fall semester and so on. And so that continues to be iterative. So that's one project and one approach in a science class. Deborah Crumpton, who is a business professor at Sacramento City College, realized that in order to do anti-racism, you got to move through the racism. And so what Deborah did was to bring the topic into business, it certainly is applicable. And yeah, next slide there. So two of the activities that she did, one of them was a significantly racially minoritized entrepreneur project. And another one was an analysis of racial bias and marketing. And again, these are ways to infuse the topic into your subject area and to be able to have discussions about these types of things. And next slide please. And as I said, Deborah realized that this is ongoing work. We're just kind of starting with this, you're never really finished. It continues to evolve. And so that was one of the conclusions that Deborah came to. And I think she's a coach that's here too, if I'm not mistaken. Next slide please. And then this is Oliver Rosales from Bakersfield Community College. And Oliver is an historian and a history professor. And his exciting project, he calls it radical archiving. And what that simply means is he helps his students realize and understand that their histories, their families, their communities are what make up the history of the place. And so his project brings student voice and lived experiences and lives and families and communities into the history of California and showcases this in a fantastic website. Which again, you all will have access to slides and links and resources. So you can look at these more closely. I know you want to. Next slide please. And this is Nikia Cheney, English professor at Cabrillo College. And she created a, and this again is available in the comments. And I noticed some people commented on our OFAR course. They are available in the comments. There are links in these presentations. And as Una noted in the OE Global CCC OER OFAR website. But this final one is so exciting because first of all, Nikia created a module on a topic again, related to anti-racism, bringing in the topic to her college classroom. And then allow her students to explore this and express themselves on the topic in ways that really work for them. But the most exciting thing about this one is that Nikia herself realized that she was kind of putting her story in the margins. And what she realized is that she could sort of center her story a little bit. It was a way to connect with her students. And so making these personal connections, I think are important for students in their learning. So those are some of the exciting projects. And then the next slide, as we referenced before, there is both a facilitated version. And again, Joy and I created that originally. And she and I also facilitated that particular four-week version. And there's a self-paced version too, where we created a few self-check quizzes and whatnot that you could sort of use for your own self edification or in some other way in programs at your college with faculty development, et cetera. So those are just some of the exciting projects from O4 Part 1 that I'm so grateful I got to share that with you all today. Great, thank you, Kim. Next slide. Thanks. And then we have a quote for another quote from one of our faculty participants. Learning from my peers was great. There were faculty, there were other faculty teachers. That's such an array of different disciplines and seeing how they use anti-racism in their curriculum really inspired me. So certainly learning from their peers was one of the top points of feedback that we received from our participants. Next slide, please. So in addition to the facilitated Canvas course that Joy and Kim created and facilitated and the connection with their peers and the connection with coaches and mentors, we provide a support in other ways. For example, we provided a series of workshops on a lot of the OER nuts and bolts, searching for OER licensing, attributions, Q&A sessions, all facilitated by our small but mighty OER staff here at College of the Canyons. And we hosted a series of monthly webinars throughout the spring term of last year, featuring primarily experts in anti-racism and anti-racist pedagogy, sharing their knowledge and their perspective. So a lot of ongoing support for our participants during the same time that they were implementing these changes in their classes. Next slide, please. And I wanna also speak a bit about our research, research wraparound to the OPAR project. It's very important to us to really document what we're doing because essentially we're going into this as many of you as experienced folks in open education wanting to see, really, can anti-racist instructional materials and teaching practices impact the success and retention of different student populations? How do participating students perceive differences in the classroom? And for us, can open pedagogy be used as a tool in all disciplines? Is it lend itself better to other disciplines? And the satisfaction questions always present through participating faculty, recommend open pedagogy as an anti-racism tool. Next slide, please. Throughout the program, we engage in an outside third party evaluation organization named the RP group, the research and planning group, which is really the premier research organization that works with California community colleges. They work with our faculty participants. They administer pre-surveys, post-surveys, interviews a lot and can find all this document on our website. We documented the number of students who were impacted. Students in participating classes completed surveys, a post-survey on their perceptions in the differences between the courses they were enrolled in and previous experiences in that institution. Next slide, please. One of the students noted when asked to describe an assignment that supported learning, noted the racial assignment because it brought a real life problem into our learning and made it more interesting to learn, right? That's what we all want. Next slide, please. So the students told us, the students who were surveyed as part of this research, 88% told us that they felt more engaged or more active. 87% said they almost always had opportunities to provide their own perspectives. 92% said almost always. They examined the history of their discipline, going back to what Joy shared with us about the definition of anti-racist pedagogy. And 83% said they almost always used classroom content to identify challenges and biases. Yeah, fantastic responses from the students, really hard to believe. Next slide, please. Go right ahead, I want to thank you. Faculty, when we asked faculty and documented the impact with faculty on the left-hand side of the screen, teaching practices, 88% of the participants. So that's everybody except one really said that they incorporated student voice. That's just remarkable. And I should say as an aside, the open pedagogy piece is what really wowed, I think the participants the most, even more than the idea of remixing a textbook. 89% said they engaged students to co-create anti-racism modules. And then down at the bottom, this is kind of interesting. Fewer noted that they implemented inclusive images and materials and fewer noted that they engaged in explicit conversations about race. So those are some findings that we want to explore further. We will say that some of our participants said that they got pushed back from some of their students when they introduced assignments that were explicitly addressing race. Whoops, we can go back a couple of slides. There we go, stop there. Thank you. Also, 94% said that they had an increased understanding of anti-racist teaching practice. 81% said their knowledge of OER went up, 87% said their knowledge of open pedagogy went up. So all kinds of great things happening. Next slide, please, Una. Thank you. And I won't read all of these, but suffices to say almost everybody who participated in the program said they'd do it again. They'd recommend it to their colleagues, which is just fantastic. But look down on the bottom left, 60% said, well, engaging in explicit conversations about race, you were identified that as something that they planned to continue. So again, that's something that we want to tease out a bit more probably through interviews this year. And the next slide, we're ready for the next slide. Thank you, Una. So we have concluded, we concluded last year what we termed a pilot program. And thanks again to the support of the Hewlett Foundation and the great Thought Partnership of Angela de Barger with the Hewlett Foundation. We are able to expand the program this year. Last year, we recruited individual faculty members from different colleges all over this massive state. We have 115 community colleges and we've received 330 applications for 17 spots. This year, we want to see what kind of an impact we can have on a deeper basis within institutions. So we requested applications from teams, from institutions. Teams comprised of four, five, six faculty members from a single institution. We have the capacity to take eight teams and we received 68 applications. So still quite a large demand out there for folks to participate, which is heartwarming, right? How wonderful that so many people want to get involved in this work and do this work. In addition, this year, working with our researchers, we're going to try to measure the change in student outcomes over time. So that participants, institutional research teams will be providing student outcome data from the previous three years that our participants were teaching. Then outcomes data from the semester in which the intervention is taking place and the semester after the intervention has been introduced. So we're aiming to get a longitudinal look at the changes that occurs. We're really, really excited about that and seeing what we can get out of that. Next slide, please. There's our contact information. I'll leave that up just for a second, but then we'll go to the very final slide and turn it over to all of you. We've got some time left for discussion, which is fantastic. Yeah, I can. Well, as promised, I just want to come back to Heather's question. Heather Ross's question about were there indigenous voices in the course. And I think Joy would like to speak to that. Oh, sure. Yes. Well, Heather, in response to your question, thank you for asking about indigenous voices. We were really excited. Two of our faculty participants in particular really wanted to honor and take a deeper dive into focusing on indigenous voices. One instructor happens to be an ESL, English as a second language instructor. So really kind of was very interesting to read her work about really breaking down the whole construct of language and taking a look at how we have constructed that over time. So she took a real deep dive and then the other project that Kim shared, which was Oliver's history project. So including students to actually tell the history of the area in which their college is located. So those were two examples of some specific projects in which again, the faculty were leading those projects and they intended to look more specifically and kind of really focus in on indigenous voices and the impact of those indigenous voices not only on their disciplines but the impact on their students as well. So hope that answered it. And James, I apologize. Well, I think you were gonna facilitate the discussion. Well, and I... James, can I just say one more thing about the chat? Someone, a cable actually asked and I thought it was a great question. Wondering if there is anybody in this space right now who is K-12 and planning to take some of this work to the K-12? I thought that was a really good question or if anybody wanted to speak to K-12 before we kind of move on with this. Thanks, Kim for that. I don't think that we've touched base with K-12 on this particular topic. Obviously we do speak with K-12 around the dual enrollment situation and the opportunity there for open educational resources. So we pretty regularly have conversations on that topic but yeah, that's a really good point. And then I do see that Ethan, one of our colleagues in here, Ethan Sinek and tomorrow that group is presenting about the K-12 space. So shout out to Ethan and the gang there for that. And I think there is a session today actually at 12.45 creating OER for racial equity and social justice through inclusive innovation, which is focused on K-12. So, so much goodness at this conference. Do we have any other questions in the chat that we wanna address? I saw in the chat two questions, are you planning on having a future call for 2022? Do applicants need to be from the CCC OER institutions? Okay, so I'll answer that one. This year and last year, we focused on the California Community College System but we have had a lot of interest from outside. So that's something we're looking at, seeing if we could support people outside of the state of California. And those who are in California are not required to be CCC OER members, although our chancellor's office is a member of CCC OER. So technically all the community colleges are. Yeah, and if I could add to that as well. Thanks. Yes, we've been incredibly excited and flattered to receive lots of interest from outside the California Community Colleges and outside of California. If you're with an organization that would like to have a conversation, we're very, very open to conversations, but we haven't figured out how to do it yet. So, we're not, we don't have an answer or a template as to how to transfer this with the numbers because it often is a matter of funding, but we'd love to have that conversation. Absolutely. And on that note, we should also note, we did not explicitly state this. One of the features of the program is that the faculty receive a modest stipend for their participation. We think it's important to honor their labor, honor their work. They are dedicating significant time to this process. So, that we are honoring that labor through a modest stipend. Thank you, James. And I just wanted to emphasize one of the Diana, and let me see if Diana Vera-Alba, who is at San Diego Community College Extension, they're currently running the program with a small group of them in the San Diego district. So, that's exciting to see them using the Canvas Commons course to run their own little small group. And I don't know if Diana, if you wanna, would we be open to letting Diana, you could unmute yourself and if you'd like to share a few words. Sure, hi, Luna, thank you so much. This is the second time I go through this presentation. And of course, every time you learn a little bit more. So, thank you very much. Yes, we have a small group going through the self-to-paste modules and we're still trying to, we're in week two, and we're still trying to develop a goal for it. Part of it is student-based, which is what this is geared for, but we also want to incorporate something that's faculty-based, meaning, and I wrote my question in the chat, if there's something that addresses anti-racism among faculty. And I'm not saying that we have a racist faculty, but I think that sometimes we forget about ourselves and there are things that are maybe said or done that may be offensive to others and we just don't realize it. So, that is what I'm, we are looking for in this small group. Of course, it's student-centered and what we're thinking about, but that conversation came up in our small group. Like, how do we present this to faculty and make it also about faculty without offending anyone? But just the awareness, I guess, the awareness. Thank you for that, Diana. And of course, you're going in there kind of as a train the trainer model because, yeah, the faculty in our program, obviously they're right in the program. So that is, yeah, it's an interesting question on how to use that. And I'm gonna let Kim and Joy respond if they'd like to. It's kind of a use of the program that not exactly the way it was designed, but it's exciting to see it. Yeah, there's a lot of overlap and I know we only have two minutes, but on my team where I work at Northern Virginia, we recently, in the last year, hired a gender-fluid person to be on our team. And that alone has been the catalyst for us to grow as a team in that way and to have the conversations. And I just wanna say, Dany said without offending anybody, I don't know about that. I think that we can be respectful and whatnot, but some people are more ready than others and some people make it offended. And we just have to, we talk a lot no far about being uncomfortable and having uncomfortable conversations and we work hard to create the space to do that. So if you are gonna do it with faculty, the only thing I would recommend is kind of following through on that community agreements and setting up the parameters by which your group can work together to grow in that way. So thank you for that great question, Joy. Do you wanna add something? Well, actually, Kim, you just touched on it. I was gonna say, you know, perhaps utilizing some of the activities that we implemented in the course for use with faculty, so those community agreements. So that could be used like department wide where everyone comes together to work together to build how, I don't wanna call them rules of engagement, but how will this department engage collectively? How will we respect the space? How will we lean into these difficult conversations? Which really can apply even amongst faculty. And we hoped, you know, obviously, as I was saying, the course was built for, with the intention of being utilized in a classroom environment, but certainly you could use those strategies amongst peers if you will to kind of set the stage for a positive way of at least engaging in those conversations. I think that would be a good, perhaps a strategy that's worth trying. Thank you. Okay, and we're getting the cut sign from our very nice hostess here. Thank you, Amelia. So, yeah. Yeah, thank you, everybody. Yeah, we are out of time and we'll need to end the session. So I'm going to stop recording. This was a really great session and I think a very fruitful, interesting, important one. And you are welcome to stay behind and continue the conversation if you would like. Thank you.


The past story in charge of the Citadel Global Committee to Church, Pastor Sunil Bakary, has paid a visit to President Mohammad Bahri at the Presidential Villa Abodja. This was disclosed by the Special Advisor to the President of Media and Publicity, Femi-Additional, who shared fortunes from the meeting on social media. The presidential aide, however, failed to disclose details of the meeting. Bazar Bakary recently called for a change in the 1999 constitution, adding that it was erroneous to say that the unity of the nation was not negotiable.


Hello, this is talk about GDB tools and GDB tools is so because I see many have opened the laptop I start from the what usually should be at the last slide so GDB tools is a Python package it's on Pi PI so you can install it and you can actually install it right now if you have a laptop open then you can try some simple things during the talk but first I'll be talking about pretty printer and GDB tools contains it's a Python package contains of two modules and pretty bit into the first one dual of the second one that's actually pretty printer and first let me ask who knows the GDB has a Python API yeah obviously and who tried to do something with Python in GDB and who knows what pretty printers are okay and who wrote a pretty printer jake equation yeah okay so so then at least some of you will recognize the pain and some others will see an interaction so that's how most of examples I'm so I'm my DDB developer before that I was my school developer so I spent many hours per week inside GDB inside my school D and most of the examples in this talk are taken straight from my GDB history so they'll practical they'll real nothing hypothetical so that's basically how usually my debugging session goes when I need to print some of the say so say easy structures this one is a bit mapping I want to print it so I print it and then I get to print the structure and then I need to print the array of integers and only 52 bits of it are valid so this is valid and this end of it is valid and this is some garbage so but I shouldn't don't want to care about garbage I just want to see those bits and there's a string object inside my cell may be it's a string as a pointer and this is in the interesting part because this is the length and the rest again is garbage and I don't really want to see the rest of it I just want to see the string and that's why GDB introduced pretty printers yeah and there are also complex structures and that's my my probably most hated example so a skill mode it's a 64-bit integer where every bit means something and when I want to print it so I print it I get some number then I pretend binary and then I try to figure out what combination of bits creates exactly the same number and then I eventually arrive at the same number then I got it that actually takes to mean is just to print a variable and this is not my adb related this from gdpc it's in your system includes it's a color storage when you print it you get a first number which tells you what those bytes mean then you need to interpret them according to this number and I happen to know this one means IPv4 so I can print this when these numbers and I get IPv4 it's not the easiest to print easiest to debug structure so this why GDB into GDB has considered pretty printers and when I finally got pissed off all what I've just have shown I created I finally decided to write a pretty printer and this is how the DB has a pretty good documentation so this is how it usually goes so you need to create a class that gets GDB value is an argument so you need to save it because later you need to use it and then you need to write the actual code that you care about how to convert the value to the string that you want to see when you debugging then it then I do it for the second class because I wanted to start from two pretty printers then I need to create some something which called collection pretty printer then I need to add those printers repeating the class name three more times so it's the class name is repeated four times just on one slide and the second format for more time for the second class then I need to register it and then I'm done and by that time I already annoyed because this is because this is what I want to write this what I want to write and not the rest and that's my problem with this API something laptop is slow what so and I need to write a lot of code that I don't really care about and actually I just started because I wanted to have five or six pretty printers and I also want to recognize pointers so it will be like 12 12 different pretty printers already tied of copy pasting so this why I mean that you have created this pretty printer decorator where this is pretty much self-documenting because this is the class name and this is the code that I care about and again this is the class name this is called the care about nothing else is hidden beside the pretty printer decorator and then it's much easier to write much easier to write and much less code and no copy pasting anymore and after that my debugging sessions they go something like this so bitmap printed at bitmap strings are pretty strings when I print this set of bits I get immediately to be it's deciphered in a way so and this is how I can store just interesting so this was very quick and this was pretty printer now the more a lot more complex model and more interesting for me this is the language dual with a strange acronym debugging you might even like so let me first talk about the history of dual so my personal and first encounter was dual was like 15 years ago when I was debugging some my school bug on some old RX and I cessation to into it and I was doing something in JDB and I did JDB help and I saw a strange command called dual which I haven't seen in JDB before so I did help and it was something cool for printing linked list and arrays and I loved it and I wish links had it and it didn't so I forgot about it then five years later for some reason I remember it and I googled I found that it's not something specific to RX it was actually created in 1993 by Michael Golan and it was a patch for JDB version 4 at that time and apparently from what I gather from various emails Michael Golan had some principles and he didn't like JPL so he put his patch in public domain and JDB developers they had their own principles they required all the patches to be in JPL and they didn't like public domain so the patch didn't never get got into JDB so yeah Michael Golan didn't get his language in known and JDB didn't get this wonderful feature and I suffered for 25 years without dual and JDB so everybody wins but luckily developers in gen 2 they weren't that patient about JPL so I submitted the patch I ported JPL to JDB 6 and submitted to gen 2 which is what I'm using in my laptop and it was in gen 2 as distribution patch in the whole 2008 automatically applied and if anybody installed JDB on gen 2 which later JDB gen 2 moved to JDB 7 and the patch didn't apply anymore and I tried it didn't really apply it was a lot of changes in JDB 7 so again I forgot about it and last year I remember about it again and then I implemented dual completely from scratch in Python using JDB Python API so now it's a modular that can be loaded run time it doesn't depend on anything in JDB internals it doesn't need patching JDB doesn't compile in you just can download the Python model you can load it run time you can load it from JDB it will work even if you upgrade JDB because it only depends on documented JDB Python API and I hope they'll keep this stable so now what is actually dual what it can do so I think this picture is quite familiar to everyone who ever debugged anything in my JDB table list is a structure that contains all tables that are used by any particular scale query so if I want to see if I want to print it so I first print the first table then I print the second one then the third one and so on and so on until either I print the whole list or I get bored and with dual it can be done with just one command you tell dual to print the linked list and dual walks the list until it gets the null pointer and it prints every single element in the list and this is part this is extension of the dual to the dual is an extension of C syntax C expression syntax in a way and this is a dual extension of the syntax tells dual to traverse the linked list using the next global pointers so every link element must have this next global pointer and then it'll just walk the pointer and put in the table name for every element no no so I actually was going to explain the fundamentals later we're just starting from few examples but there's no pretty printer for this we're just a regular just a regular string and another example from the linked list this list is not longer so I don't think I just want to see how long it is and then this operator it tells me how many elements are in the linked list in a way and this is an example shows where I want to find whether this item is present in this link list or not yes sure enough it's present and it has number five in the list and one more example to show what it can do with arrays arrays are very easy you can you because you can use a range instead of any array index you can print the whole list the whole array there's just one command and it's a very common idiom to have an array that where you don't know the number of elements but you have some property on the last element to mark the end in this particular case the last element in the array has the name equals now so I use an open-ended range saying start from zero and go well at an infinitum but stop at zero and then it'll automatically go and it'll stop when the name equals zero this way I can print arrays where I don't know the length in a runs I'll show that later yeah and this is the one most important thing where the whole logic of dual is based upon so in see you can write an expression like one plus a hundred and then the one is is expression and a hundred is expression and the result of one plus hundred is another expression with the value of 101 and in dual every expression each hand can have many values instead of one you can have a list of one two three for example instead of hundred a hundred you can have many values then when you apply a plus plus is a regular see operator that only sub works on individual values it'll work on every possible value pair where first value is taken from the first operand and second value is taken from the other operand let's say if you have downloaded you can just type it in and you'll see this this very result and this works this is generalization works on every see operator like taking a subscript of an array or of a string there are two strings into in two subscripts so the square brackets will be applied four times to every combination there will be focus for at least this expression will have for result expression will have four values BC and EF so just a small generalization of the C syntax allowing an expression to return many values and because of that it's very easy to go from existing expression that you use in print in GDB to dual expressions in dual because this is how I would print a single element from the table option this is a structure it has an element called name so I just won't print the name I printed like this that's nothing fancy in here I would want to print many many I would simply replace the index with a range then I would print many elements at once because this is just a small expansion of scene of just more generalization of existing C syntax and the same works for linked list this is intentionally complex example because it's C so there's the reference in a pointer then it's casting because it's void pointed C it's not C++ then a couple of more de-references then I get a long path on my file system then I add something just to skip the beginning and get to the interesting part and if I want if I were want to print the whole list I would just need to extend it a little bit by specifying how to traverse the list and then I would get the whole list printed at once and this is works exactly as you would you might respect because in C the or with GDB printer print command it would take the value of this pointer then it would take the data member of this structure then cast and then so on and here this command with long arrow those two it would generate a list of values and then for every value it would do this one and then that one and then that one so it will work pretty much like this command but instead of one way there will be a list of values so and so and let's make a checkpoint so if somebody would want to leave the room right now this the one this the one important thing I would want you to remember so in dual the any expression can return many values and convention see apparatus they work with many values by that basically apply to every value in order and there are three ways in dual to generate those many values one way is using enumerations by simply specifying many expressions with comma one can also second way is using ranges to expressions with two dots between they can be also open ranges where either first boundary or the second boundary is emitted and that's also least traversal that I've just shown with linked list but it's not only for linked list because by combining those operators you can easily just as easy traverse traverse binary trees by saying that you need to start from root and you need to traverse two pointers not just one this is not a new operator just combined because all the operators can be combined just as easily in C as in C yes I'll I don't have example with the circular list I have example in the manual and I'll I'll mention circular is later I couldn't find an example of circular list inside my adb so I don't have this example so now a little bit more advanced but still useful operators the operator which I call until this is this one this was example I've already shown it means go from the zero to every element of the array and stop going when the name equals zero so this one number five would have had this null pointer in here that's why dual stopped iterating but an ngdb there's actually this similar thing when you can specify it and then something to print many arrays and there's some syntax thing that you put in the end in dual this is not something to put at the end it's a just normal operator which can be combined with any other operators operators just normally could be used in the yeah it could be used in the middle of the expression just the same table field array is it's an array of all fields of the table it's not a ray of structures like here it's a ray of pointers to structures and it's terminated with a null pointer so first I need to walk the whole array and stop at the null pointer and then for every element of the array I print the field name this is different from this one because here I apply it operator at the end but this is just to show this normal operator it could be used anywhere in the expression where it makes sense but in fact it's related to the question that was just asked this is a shortcut a simplified syntax the full syntax for this operator means shows that this here could be the second expression which and the iteration stops when this expression becomes true so I can walk the whole array and print the whole structures for every element and I need to stop when the name becomes zero that's how it stops the name being zero so you can put here an arbitrary expression and the walking down the array stop will stop when this expression becomes true this until operator is most commonly used with open-ended ranges but it can actually be used to do as to do a cyclic list because then you do again to error operator with to error with a long arrow and you tell it to stop when the end of the end of the list becomes the beginning so you can do so you can stop cyclic list this way then if gdb will print a screen full it will ask you can continue or not continue then you stop or you press control C if you disable that another useful feature is filters so in my adb in my school there's a concept of virtual fields it's fields in the table that are generated and the virtual field is different from a normal field because they have vehicle info pointer being non-zero so if I want to see all virtual fields in a table I would probably do something like this so I would print the whole array and I if I look in what fields vehicle info is not zero and if I look very careful at this slide I could see that it's second six and seventh but so that's a problem that first I don't really want to look very careful to look for minor difference in characters the second is there would be a hundred of fields with only two virtual I would probably miss that so what I do I put a question mark in here after the inequality operator and the comparison operator becomes a filter operator it works like kind of like a grab so if the result is false the row is not printed at all and if it's true then the result of the expression is printed so now I can be easily see this the row fields two six and seven they have non-zero vehicle info pointers and because this is just an expression it also doesn't have to be at the end I can stack embedded into another expression and print field names just as well by printing field name of the result of this expression because this is just an expression that has three results and I can use it by de-referencing the pointer and printing field names and back to the example with the table names you have seen this the dual prints it first it prints the first element of the link links the second one then it stops printing a very long path to the last element it prints this thing in double square brackets it's not just a way to have a shorter printouts this is actually a syntax in dual to specify that you want a specific value out of the list of values so I can just use it and print the third table and this is a very short example just to explain just to highlight how it works this is the least of five values I want the third value starting from zero so it's four and a practical example would be if I were want to print the last element of the very long link list I can just print expand the whole link list and here I can calculate the length of the link list minus one and this way I'll print just the last element without printing the whole thing so all those operators they be can be combined to produce other complex expressions and this is again example from the previous slide where I print the last element of the array and I want to show the operator curly braces if I wrap this one in curly braces I have them I I won't have the expression and here I have its value because curly braces they go by they go like braces but they also evaluate the result and print it in here so I can easily see what element in the array was found by the previous expression there are also aggregation operators the one that sums the value it's not like I said earlier it I wanted to calculate the length of the link list but it doesn't really calculate the length of the link list it it can be applied to any expression and it will return the number of values in this expression so here I do multiple value expression that works the whole link list and it returns all the elements in the link list then I apply the counter operator and it returns the number of elements in this expression this number of elements in the link list another one is sums all the numbers all the numbers from the all the values in the expression and it and it can be used if I want in my adb for example this structure is counts how many times a particular skill statement was executed and if I want to do a sum of how many times any case goes it was a good executed I can just do it with dual this way and then I come to the number 17 and this is not a complete description of dual there are other operators which are not as often used as those that I've already mentioned I mentioned them the essential purposes I used pretty much daily well some of them weekly and others that I didn't mention I use maybe never or maybe once a month but they came from the original original dual that was implemented by Michael Golan I tried to preserve the semantics and all the operators so it's all very useful I guess the first question is what licenses is the dual PY under now is a GPL I think it's busy as far as I remember you know yet busy three plus one of the reasons that you were mentioned earlier was it doesn't look pretty printers on the actual printed values so like in that link list yeah for example I don't know maybe something crazy excited to put vectors in link lists yeah so well I don't have in the slide but it uses no normal because it uses gdb python API and just returns gdb value so gdb prints them using whatever printer printers are installed for this particular value so this one works with three different interest right the original cc patch didn't this one works oh that's great I don't need to ask me the question how much is the implementation dependent on the language the c of c++ would it work with EDA or Pascal or the other languages supported by GED and if not is it complex to it it will work with any language but the dual syntax is C based so you'll need to use dual syntax in dual expressions whatever you use in when you do print command in GDB it's dual doesn't have anything to do with that it has a built-in parser that parses expressions according to dual language well it will work we just you just need to use Python you just need to use Pascal syntax when you do Pascal expression when you do print means you use syntax is syntax for Pascal for Pascal expressions when you use dual yes if you had a struct that had a pointer to like an array and then the struct had a field that was the number of elements yeah I didn't see a syntax that applied to that like where you could use an at sign condition no you don't need to use at sign condition for that you can just you can just use the range you can specify length here yeah it's everything here is an operator is two dots is the operator those two are expressions everything is an expression and they can be combined anyway you want yeah it'll check the name of the variable or name of the structure field depending on the yes if you're inside the structure is that output you've got there it looks very standard you've got the name of the value and then the value of the value that's that's that's non customizable right you've got to have no no no the only thing you have is curly braces is yeah the only thing if you put curly braces around something then you have its value in here instead of the original symbolic expression okay but I've copied the syntax from the from the original dual all right so you're you're you're able to do well almost original dual print the string in here I use gdb standard printers so I get I I get so the string is printed as a point like in here yeah well hash the counter operation hash slash it it does not count an elements in the array or anything it returns the number of values in the expression if I will put it in here it would return hundred because this expression has 100 values so first you need to you get an array then you need to to convert it to all values of the array by using square brackets and the range inside and then and then this one will turn how many values you got so you've got two types of expression here I guess you've got the expression with dual which tells it how to print and I'm assuming then that dual passes the actual expressions gdb's expression so any no no no not well it doesn't pass individual expressions it passes it will pass thd and then it'll use get the structure for this and then it'll get freely released member of the thd structure I'm just wondering how you could you know creative casting how that would work I mean say you've got a value and you want to cast it to another value and you know whether it'll it'll get it'll get gdb type object for the cast and then it'll cast the previous previous gdb value to this one this is actually what original dual didn't do it didn't do casting properly because there was syntax ambiguity and the way I've sold syntax ambiguity I just assume this a type I try to resolve it to type it doesn't go with type as a result is a dual expression yes yeah I've got this question so in a sense I've got it as a issue in github I didn't I didn't I didn't invest any effort into that I'm gonna be a little db I'm not particularly I don't know maybe if there will be many more requests I look into it I guess it's pretty it should be pretty sure to separate the parser from the gdb API stuff then it might be possible yes so that's that's some limitation of gdb Python API so I can do function calls like I can it can invoke normal functions it cannot invoke gdb built-in functions and it cannot invoke objects object methods because object methods and gdb built-in functions they are not callable when converted to gdb value so there's a bug report about that and there's not much activity around there no no I guess that was the main one you have a question you have a question could you please speak up louder change the display of this one no no because it's it's well it's designed it was designed to be to easily print and analyze structures it's not a man we should generate pretty reports out of your data so that's not much formatting of what you do with the data I guess I can do it have any plans to make it more extensive for example you can find your own special operator like the app operator which does something now so far the only thing I did it was not in the original view it was a plus generator but it's a parser region in our page of the spite and more than if you want to extend it you do something that you think is generally useful not only for you then do please submit a foolish work yeah thank you for the talk


In this video, I'll show you how to get any name as well as add cool symbols to your gamer tag. In Fortnite, Apex, Valorant, etc. My first tip is to just copy and paste this blank space in the description. This is actually a letter in another alphabet, but it appears invisible when you copy and paste it. You can copy and paste this as many times as you want, between words in your name or after your name. The only problem I have with this though is that it makes your name look smaller in certain games mainly due to the space the invisible character takes up. The next thing you can copy and paste are Cyrillic characters. These letters are actually used in countries near Russia, and they look almost identical to English characters. At least most of them. Take a look at how easily I got this short name, just by copy and pasting and testing the first two methods. Some names will still be taken, but you can keep testing and replacing the letters until you can get the name. There's also a good website if you want a different font like this. Just go to Lingo Jam. It makes us fancy and even adds emojis. It's a great way if you want to just enter your name and get a lot of options. I can see a lot of people using this because of its ease of use. They even add emojis on some of them. Next let's look at some cool symbols. You might have seen this smiley face, but it's actually a Japanese character. I got this from a website called Tobiasseus.com. It has tons of symbols, from smileys to crowns. It's a great way to spice up your name if it's taken, or if you just want to. But unfortunately, some games like Rocket League put unknown characters when you add these, but one good site I use is MegacoolText.com. I will link all of this down below by the way. This site's text is applicable to almost every game. I even tried doing the effort and it somehow worked in Valorant. Now I don't recommend using this to add curse words into your name, but hey if that's what you want to do, here's just another option. If you're still stuck on what you used to do, I would say just get a new gamertag all together. I have lots of videos on how to get them, and I even have a 100 name list of non-taking gamertags, also linked in the description. Do you like gaming news, tips, and other videos like this? Subscribe for more. I post at least once a week, and thanks for watching.


This is stock number 9J23A. We are here at Summit Automotive in Fond du Lac, Wisconsin. You're new and used SUV headquarters. Today we are checking out this super clean 2014 GMC terrain all-wheel drive. This vehicle has the 2.4 liter four cylinder motor. From this HD video you will be able to tell that this vehicle is in extremely nice condition considering the age and miles on it. It has the projector lamp fog lamps. Also has the projector lamp headlamps. The color on this one is steel blue metallic. Really good looking color. I wanted to point out that we shoot all of our videos in 1080p so if you have HD capabilities on your computer tablet or smartphone device turn them on right now because it is like you're right here looking at the vehicle with me. Factory 17 inch alloy rims hand-cooked Dynapro tires on here. These are 235 60R17s and they have roughly about 60 to 70% of that tread left on them so a good amount of tread left on these tires. Front fender is absolutely perfect. No dents or dings on that. You can see just how clean and reflective that hood is. I didn't see any dents or dings on that. All the chrome on the front is in pretty nice condition. Headlights are nice and clear. Pass and retire is just as much tread as the driver's side and there are no major scratches or scuffs on that front rim. And as we go down this side of the vehicle you can see just how clean that body is. How reflective and mirror like that paint is. We take these HD videos so if you are far away or even if you're close by and just cannot make the trip down you can still see the vehicle. Hear the vehicle and have confidence in what you're looking at before you even get here. Last thing you want to do is drive six hours and find out the vehicle isn't what we said it was or it has some major issue. We just don't operate like that. We sell a lot of vehicles out of state so we want to make sure that we're giving you the most accurate information before you even get here so you can make a smart buying decision from the comfort of your own home and have the confidence that you're dealing with the right vehicle and the right people to make that trip and devote your time to this purchase. As we go around the back here no major dents, dings or cracks on that rear bumper. The rear gate is in really nice condition as well. Back storage area is extremely clean and believe there's a speaker right there. Storage area nice and clean no rips or tears and it does have a spare tire back here. It does have a backup camera. As we go down this side of the vehicle just as clean as that passenger side no scuffs or scrapes on this rim and the back tire is just as much tread as the rest. But down this side no dents or dings. Very very clean very nice.  There are no rips. There are no tears on these seats. They are in excellent condition. Power driver seat we have factory floor mats throughout on this vehicle. Power windows, power locks and power mirrors. It does have the Pioneer sound system. And as we hop inside here you can see that this vehicle has 63,794 miles. You have the leather wrap steering wheel cruise controls on that side. Bluetooth audio controls on that side. You have the AM-FM radio here. This one also has serious XM capabilities. This is also where your backup camera shows up. Up here is your on-star and then you have your map lights up here. Passenger seat and carpeting just as clean as that driver's seat. No rips or tears on that. And this one of course does have side curtain airbags, automatic transmission. We'll take a quick look at the back seats and then we will check out under the hood. Back seats are just as clean as the front. No rips no tears. Very clean inside and out. The second row is adjustable so it does slide forward and back. Factory floor mats back here. These seats also do fold down for extra storage. And we'll take a quick look under the hood. It does have the heated mirrors with the built-in line spot mirror. Just a really nice looking vehicle. Very clean inside and out. I feel like it was really well maintained vehicle. Engine bay is very clean, runs very smooth. This vehicle has been fully safe and inspected by our service shop as a fresh oil and filter change. All the fluids have been checked and topped off. And everything's been going 100% on this vehicle. She's super clean and ready to go. And to see more pictures of this vehicle or one of our other 400 new and used cars, SUVs, minivans, Wranglers, you name it, we got it. Go to our website www.summitauto.com. Full pictures and descriptions of every single vehicle in our lot. Videos of every single used vehicle that we have all at summitauto.com. Thank you so much for checking out the vehicle. If you want to make this one yours, give us a call right now<PHONE_NUMBER>. Ask for one of our sales associates to make this terrain yours today. Once again that number is<PHONE_NUMBER>. Thanks again for checking out the video. If you want to check out more go to youtube.com slash summit auto. Remember to like, subscribe, and share on this vehicle and all the videos that you see there. In fact in a second you'll see a link to subscribe to our YouTube channel on your left. A link to more SUV videos like this one on your right. And if you haven't been to our website on the bottom link to this vehicle on our website, click those, check us out. And we really look forward to helping you with this super clean 2014 GMC Terrain All-Wheel Drive. Thanks again.