and service point the display a tale of four generations and the speakers are Peter Stugge and Felix Niklas and give a big applause. Thank you Thank you Thanks for having us. I'm Felix and this is Peter Hi, so Yeah, we're gonna tell you four tales about the display The beginning of the display was that we that one of our club members boarded on eBay and We didn't really know what it was used for before it was done by a metal works company Who had an electric department that built the electrics for this and the metal shop? They built the hardware around it the nice frame and They sold it off. I think because it didn't work out for them so We got it on eBay and It was at in the beginning very very slow And at first I wanted to show the outline This is how it looks inside of our club. It's mounted on the wall So we're gonna talk about the hardware about the first until the fourth current generation Gotta talk about some software and work that went into it font and tethering And then about the APIs that we have the UDP and web circuits and send some fun applications that we ran on it Peter you want to start with that? All right, so hardware Yeah, first generation Was delivered with the 6502 somehow controller board I Wasn't I wasn't there when that was being used, but some people managed to get it working and send some some serial protocol commands to the controller and We're able to watch the characters be drawn on the display. It was was as Felix said really really slow So this is made up of a whole bunch of these LED Matrix for LED modules eight by eight little LEDs No slides Yeah, there we go. Thank you. So let's get back. This is the controller. This is the controller, right the 6502 and These are the the eight by eight LED modules that are on this display and in total there are 20 20 rows going down and 56 56 columns so that of these LED modules eight by eight in Total that's a thousand hundred twenty LED modules and with eight by eight that gets us 71,000 and some LEDs So it's a 71 K display So that was the first generation and then we got to know the hardware a bit and some some people in the Berlin CCC they made a New controller for this because the 6502 wasn't wasn't a lot of fun and was was as we said quite slow And of course it wasn't on the network. So we needed to get on the network Second generation was an Atmel X mega. I'm afraid we don't have any photos of it Yeah at this time There was also the beginning of a protocol designed for sending information to the display It consists of UDP packets that have a 10-byte header containing five 16-bit words in network byte order. That's important to us First one is the command we'll get into those in a little bit And then there are four parameters that may or may not contain some value if they're not used Or if one parameter is not used then the value is just zero After these 10 bytes there may or may not be some data payload also in the UDP packet these are the commands in the in the beginning or the the first The first yeah, the first commands that were implemented I'm sure there are a few so you see there are some gaps I don't know actually what the commands there were or the numbers there were anymore but clear obviously clear screen text sending code page 437 text because that's a fun encoding and Then we had some some brightness commands these These LED modules the 8 by 8 modules It was mentioned on the slide behind each of them is a maxim max 72 19 led driver made for this kind of matrix LED matrix display and in this led driver. There's there's a digital register for setting the brightness and We exposed that using some some commands Let's show a demo of that. This is a demo one of the members of the club did to test just changing the brightness since we can only do 8 by 8 Brightness changes. He still found a way to to do a nice Application of that because from movies obviously it doesn't really work to do grayscale or like color tones on 8 by 8 pixels, but in the end you used 8 by 8 Graphics to do this nice depth map. Yeah, so this to explain what we're seeing here Here the whole display is filled with plus signs So every one of these 8 by 8 modules is showing a plus sign and the only thing that is changing is the brightness value or the light intensity of These modules and that makes for a nice Even lower resolution low resolution effect on the low resolution display Going back to commands. Yeah. All right So that was character brightness setting it on individual modules and brightness for the full screen In one command just a reset command because that that helps sometimes then we had a fade experiment where A graphics kernel runs over the display and sort of reduces intensity Which looks like a fade it didn't get used very much and The main command the most important thing. Yeah, the most important new feature in the In in our development was to support bitmap transfer so that this this display could also show arbitrary graphics and The very first command because it's easier Received the bitmap data in a way that fits how the hardware was built and That's not really so intuitive or so convenient for software developers. It turns out Is that here or is it? Yeah pixel data in a vertical layout The the bitmap data was sent with each byte being eight pixels high or tall instead of Eight pixels across which is what we usually deal with in in software So still we could do bitmap. We could display bitmaps. That was a lot of fun and and a good start right and then We of course we want to go fast, right? so we we found out actually the the hardware the Factory hardware is is the construction is quite quite limited or quite slow Because not only because the 6502 is a relatively slow machine, but also because of how the whole data transfer was Implemented in in this display So as the arrow shows here the 6502 processor would address every single one of these 1,120 led modules at a time and in sequence Meaning that the Well the other 1,119 led modules were just not doing anything Most of the time right there's only one One module receiving data So this was changed in generation hardware generation 2.5 where The so actually we weren't using the 6502 controller than anymore, but but anyway, it's just representative here the the main The main controller the master controller sends data to these new row controllers that were designed in ncccb by some members and they have distributed Video memory so each row has them that has a video memory for the contents that is there and also parallelization the master controller sends data to all the row controllers and Only to the row controllers and the row controllers then take care of sending data out into the led modules or the led driver chips That is what it looks like There's a bug in the hardware that we fixed there But that was that was good that got us some more frame rate in in the bitmap bitmap Transfer and then we Well, then that wasn't enough it was still too slow for us So we then made an experiment with a biker controller That is a bit more powerful. I will fair bit more powerful than the xMega Cortex M3 arm microcontroller. I believe 96 megahertz and the thing about these particular ones is that they had Ethernet Mac and Fi built into the Cortex M3 microcontroller, which was quite unusual but very suitable for our project We still had the main problem that the graphics the bitmaps would have to be in this weird order going up and down instead of how We're used to it from left to right. So Yeah, so this was this is within one one row you would have to send these vertical Vertical bytes and that wasn't wasn't that all fun And we we decided to solve that in in generation 3 we implemented a few new commands to tune to new bitmap transfer commands To support just the the regular linear bitmap transfer that That is used also in in the in a regular PC or computer To to represent bitmap data where you send the pixels after each other Horizontally and and then you move to the next scan scan line and then so on So there's more processing power and we use that power to make it easier for developers And also the this arm architecture had some nice Instructions to to do this bits This bit transformation like to rotate eight by eight bits was was What was fun and easy and this the 2.5 G? new row controllers they also they Jumping back a bit. They made some optimizations as well to sort of reduce the The data transfer that needed to go into the rows because we had some flickering and we didn't have completely stable data transfer but reducing the the throughput helped with that that Allowed us to to still update a lot of Changing information, but areas that were all the same. They didn't get updated at all and to save power also if one of these eight by eight modules were Had no LEDs on then this particular maximum chip would be set to power save mode. So one also wanted to Improve efficiency and and reduce power consumption when we started out with the gen 1 hardware we Somehow we have some measurements we believe that we measured it to be over one kilowatt with all LEDs on and We've improved that with each hardware generation and we'll come back to power in a little bit But it wasn't perfect yet. There was something with the internet. I remember. Yeah, so This this bitmap linear command and the linear windowed Command where you can only update you cannot choose to update only a portion of the of the screen we We had the issues with this Cortex M3 that it did have a built-in ethernet Mac and Phi So network connectivity was easy and there was an example code for an IP stack and and all was good, but Unfortunately the hardware only had two kilobytes of packet buffer memory so if we if we take these 71,000 pixels and we want to or bits and we want to send those in one packet We have a bit of a problem because that's some nine kilobytes of data And with this microcontroller only having two kilobytes of packet buffer Some packets are gonna get lost so that was a bad scene and We we worked around it by instead of then sending one big UDP packet with the full image data We would manually Do what the IP stack does so the we send one UDP packet with nine kilobytes of data The the network stack divides this up because the network can't transfer that big packets And it splits that up into six or seven packets of 1,500 bytes or whatever the MTU is Sends that out to the display, but the display only received the first and the third and the fifth because in between it's busy copying the the packet that it just received into the into the display memory So what we did as a workaround and first Well to to overcome this at first was we did this splitting the video frame or the the I revealed the secret now splitting the the image frame Into several packets already on the sending side not not in the IP stack or the network stack but actually in the application so we made a video or image transfer application and there we cut up the the image in Little packets and we built in an artificial delay between the packets and that really that really hurt we that was painful We didn't like that at all Not a nice because you have to understand the goal always was to get more FPS Of course, we need to we want to make it go fast and we want to we want to play Want to be able to play video on the thing that was that was always the goal The second generation had a few FPS like two or three or so With the bitmap transfer commands and with the third generation We we were able to get it up to some nine ten maybe twelve FPS on a good day But we weren't happy because that didn't look so nice still so then we we took out the sledgehammer and we decided We'd try to use a big old bone black Because it has the PR you which is the programmable real-time unit So the bigger bone black many people know as a Linux Linux board similar to another fruity board that I won't mention and It is a Linux board. It's a it's a nice roughly gigahertz System on a chip, but inside of this. There are also two co-processor cores. So two 200 megahertz Little co-processors that are completely separate from the arm running the Linux system And you can write little program snippets for these and they run They run quite fast 200 megahertz and they can do IO single cycle IO GPIO well writing and reading and That we figured would be a very good way to to increase the performance the last bit that we needed and So we had already we'd taken several steps we'd already optimized the data transfer going over this The ribbon cable that you can maybe see through the through the front of the display It used to be serial with a very first hardware with the second generation Hardware it was still serial with the 2.5. We changed it to parallel So one byte would be transferred at a time instead of just one bit and the the row controllers would then take care of sending that That data out serially one bit at a time because they have time while the other row controllers get their new data And with the bigger bone back we continued that so we write some pru firmware to To talk to the row controllers and send them out the data The big the the pru has a shared memory. So the Linux system just receives Bitmap packets or really command packets Looks at the command and does whatever is necessary and saves the bitmap data into this shared memory Does nothing else does only that in a loop the pru is running Independently a firmware that takes the bitmap data out of the shared memory and sends it out the bus to the row controllers so even even more parallelization and With this we were able to go all the way up to 40 FPS. So that's Yeah mission accomplished somehow Let's show some pictures of the insights Right. So this is the the current state of things We have the big about black up top left with a cape on a bread on a breadboard with I think there's some level shifters and maybe some iobuffers I don't remember anymore exactly what's all on there But but yeah to to drive the Drive the bus going down and you can also see the power supply Here this is quite a small power supply. It's not enough for the whole for the whole display It's only powering the big a bone black And this is part of the the other well the the real power supply. Let's say for the LEDs Is there one more? There's actually there's two of those. Yeah, they're two exactly Right the two of these power supplies Are needed to to drive all of the LEDs. I think they are I don't remember anymore I think they're 500 watts each but we don't we don't actually need that much and We have two because there wasn't a single one that was high capacity enough and fan less But they've been in the hardware since the beginning that we didn't do this, right? We did this we mounted these power supplies There were other power supplies before that were really inefficient. So switch switch mode power supplies from the 1990s We're replaced with some some modern Modern switch Who did that nice wiring? Yeah, we did that in in ccv. Yeah, okay Yeah, the the the red and black and the but these copper Copper bars and the fuses they were already there. So they they're a factory and this little board in the in the Center there is an ad converter to monitor the the voltage Output of these these power supplies because we wanted to see okay when we switch on and off all of the 70,000 LEDs at a time Do the power supplies actually keep up with that and and yes indeed they do them. It's a stable 5 volt Yeah, this is the bottom right corner where there's the power connection and Ethernet connector and there's a nice engraving Showing our logo. Yeah, we had to had to tag it Okay, so let's go over to software Like as you might already feel I I don't know that much about the hardware But it was always a pleasure and being in the CCC and getting like hearing about all seeing all that's being done by the Different members of the club. Everybody's just pouring the heart out with where what they were good in and I Do web development? So I only was able to do stuff after they deliver the web server on it and Gave me web socket, which we will be talking about soon first Let's quickly talk about the font So the font system is a CP 437 I Am too young to really know this I think this feeling But I you might also know this from the boot screen because that's the same system being used there And MS-DOS and MS-DOS use this I know that So there's fonts out there obviously why would we need our own because we have our own one member built one and the problem is We have eight by eight pixel modules, right and There's eight by eight fonts. That's one of the standards. There's two different types one is higher. It's eight by sixteen or something That's obviously wouldn't fit but eight by eight would fit perfectly, but there's a problem our modules are one next to each other and When you put text on there, there's no space in between So that's there was the needs that we needed to solve that we have to have a gap so in the end a Seven by seven pixel version of this very basic font was created and this is the bitmap of it This is the basic texture set that's in there right now and the I don't know if you see it on the screen, but there's a light gray Area on the right of the seven by seven areas. This is the gap next to it and Marco who was working on this he he created the font. I think in Windows MS Paint MS Paint he said like in the virtual machine and now in wine I think because all right This is still the best thing if you want a pixel gimp is not good enough for that And then he created some scripts around to to export it and to on the one hand create a C header That is being used on the big alone and he also output it a Web font that we were able to then use in the web editor the web interface of the display to see almost the same Directly on your browser and then the next big Thinking was put into dithering and I don't know if you know the concept, but I mean let's say we have an image frame and It's color obviously we don't have color in there, so we need to make it into Something oh a step one point two four We need to first convert it to black and white But then again, I told you before about the brightness. We can only change the brightness in the eight by eight area so We couldn't do like gray in gray in there, right? We can only do green or Black or nothing so you need to the ring which is a technique to Create that effect by just using space by just using less white or in this case green dots It's the same technique almost the same that printers are using because they also only can print black and not black So let's zoom in a bit to see maybe see this a bit more this is like a different image and Mark would put a lot of love in this he even built like his own love 2d like a Lua application to test a lot of different Dithering algorithms. There's Floyd Steinberg, which is a very basic one But he quickly saw that this is not good enough. It's not fitting the the high-quality standard that He was aiming for and so this was the application he built where in the top left corner is there the original image It's actually in color and there were different ones for testing and then you could compare two different dithering algorithms in the middle and bottom picture and In the end he settled for I don't have the name here It's starting with Oh, and I think it's a Russian name. Oh something something as a base algorithm And then he had also some more pre-processing And to even to improve the results further he does some blurring in the beginning Because in the end you won't see all the details with the dithering So he blurs out like the blurring will remove that the details that won't be shown anyway and then he does some sharpening afterwards to Make those features that are gonna be shown a bit sharper And and you see it in the bottom left It's not a really good representation because it's scaled and when you scale different stuff, then it's bad But you see the results on the screen Packages or I UDP packets. Yeah, so Nine kilobyte bitmap frames. Maybe I said this already. Let's see. What's the next? Yeah, we have to speed up a bit as well so yeah UDP packet thing was web sockets from my because I never touched UDP before and With web sockets I was suddenly able to send pixels to this display in the browser using the JavaScript The web socket API is not the full API is it's not the same as the UDP API It's just for sending pixels So I was mostly working with it having a canvas and then just sending the canvas data the pure pixel data directly to the To the display there's a simple Demo application showing the web sockets Implementation or how to send stuff there. I don't know if it's big enough to see but in the end web sockets Is I mean it's a two-way Communication based on TCP actually for the web to to send stuff somewhere And you just build up the connection Say that you're gonna send array buffer data and You grab the pixels from the canvas at first I did that before I drew a rectangle on the canvas in this case and Then go through all the pixels pack it up into bytes and just send it out And it was actually quite simple to the applications with that. It's a very simple very simple protocol Yeah, but it worked to work fine So let's talk about applications and the CCC B What we what we do with it? So the basic one is a welcome screen It's since it's mounted on the wall usually whenever we have open days. It's on and this is what it's showing It's not always on obviously, but usually this is also the boot screen The one of the first one of the early the early implementations was when we didn't have the bitmap yet I think correct me from wrong then we The first movie was a ASCII Star Wars movie. There's apparently something where you can tell in it in and it just sends you This data It was nice for a beginning But then obviously which you already see live video Mark built a nice cheese through a plug-in so that you care that that takes care of all that dithering All the pre-processing we were talking about for you So you could just send your movie that way and it would correctly send it to the server There's one small thing we didn't talk about in between At one point we optimized also the the data load by compressing it as well, right? That's true. Yes, it was between third or fourth generation So that was that was added into gen4 into the fourth generation So these bitmap commands they they were one of them particularly only uses two of the parameters two of the four parameters in the utp protocol and then we introduced Some sub commands Supporting different compression algorithms there Dennis was was busy quite quite some time working through all the different Compression algorithms that he could could find and settled in the end on set standard for for for decompression speed in particular, but still a reasonable compression rate and Also something you might think about is the the lines in between Also one of the steps that of the G stream plug-in is to cut out some pickles so that it doesn't look stretched In the end so the way the way that works the G streamer plug-in says to G streamer Please deliver grayscale images to me that are actually that have more pixels than fit on the display and in these bitmap transfer commands then the the gaps Where the the metal is are are copied over so it's it's a little bit of it's unfortunately not zero copy, but it's not enough data to be a problem and it looks a lot better than than just Asking for the exact pixel resolution of the display then the the images is Compressed together and not not really recognizable and then when you connect to the API add to the IP of the Of the display you would see this web interface Just set a basic text mode where you could or it has a basic text mode where you can just type stuff on the screen And there's a small canvas drawing application in there as well to do some drawing on screen Then one of the fun things So it's a Bitcoin info screen somewhere in between with live updates Tixle flight schedule like this one a lot and there was also one for the is that one up next for the Yes, this one is really good. So on the open open nights there's the Fridisch Trasse station right nearby the club and Towards the end of the evening because it's weekday the trains stop running at some time And it's very nice to have this like sort of countdown when you have to leave to catch the last train Nice catch of time. I just realized Not bad and Also really fun project was a multiplayer tank game where you would use your phone or your laptop You would connect to the IP where you would get a controller in your browser and On the phone you could for example also use your touch movements to to steer your tank and then shoot each other And this multiplayer game and the display was the the map and then last up There was a nice demo application for the iPhone where you would just stream the camera to the display and All right, so Credits thanks to everybody who helped Helped work on this project everybody who did work on the project. It wasn't just me and then Felix but a whole bunch of people at at CCCB and I Always had a lot of fun working together on this this thing and I I sort of missed that a little bit. It's been a while since since somebody did something with it, right? And Yeah Let's hope that that changes I gotta say I don't miss it because it's always so Dangerous when they are handling it with 150 kilos in the club. It's really really weird So thanks to you too for now. Do we have questions? Siege and Beis is licht Then bit in my internet You mentioned that the modules can be dimmed. That's where you did your first animation with Does this ring algorithm also use the dimming of a module or is it just let on or off? The the dithering as far as I know and I the dithering doesn't use the the intensity light intensity because that's only possible to be controlled in eight by eight and I mean you you could I think it was actually attempted, but it didn't really look great because the pixels are Well much smaller than the area that you can control the intensity up and it didn't look so nice So you would also have to send several packages like one for the dimming one for the pixels right two different commands I mean we could have added a command that that's both to do to do both, but it didn't didn't look so great Yeah Okay, we have another question here in the front, please Thanks for a talk. Maybe you have other ideas of upgrading other old nice devices. Can you share? Other ideas of upgrading old devices. Well, what do you have a device? I? Mean the screen is so you upgraded it is now much better than the original one Yes, and maybe you have ideas for more projects If we have some future projects, you mean right like this. Yeah, okay at the moment. No, unfortunately, I mean with there's So there's been some work on on other display technology some flip-dots projects we've done but Not so much in the club not as a club project more more than the same people who worked on this also did some some flip Hacking but yeah, not at the moment if you have suggestions, please just send a mail or yeah Buy something send it our way But but don't send us your waste right don't send us old waste and we're not going to do this or do we now we don't We have one more question in the back and that's the last question, please Or no more question. No question.


One of the first things I felt looking around Paris was, does anybody here have a job? Also, something else I've noticed, literally every girl here dresses like Bonnie.  Roman Empire Legacy. No, it's a basic European structure. America's only been around, like, what? 20, 30 years. And Europe, it's been around for like 100,000 years. Too much light and Mary. What up? Sorry, it's my friend. It's my friend. Flyer, dude. Excuse me. Ah, frick. Yeah, have fun, huh? Yeah. Watch out for pickpockets, huh? The hell? Where's my wallet? I'm gonna ride our good old lime scooter here. How do you find Paris? I mean, I just took a plane. Okay, I'm going a little bit faster. How's the POV? You guys like this? You guys like some shoulder cam action? Historically, we're big DSLR people, but my neck is still basically broken. So I'm going above and beyond, spending thousands of dollars to become a giga cyborg streamer. Just so I can give you guys what you're looking for. Basically, this stream is just going to be a Paris night time. I don't have a map. I don't have nothing, dude. We're just going to frickin' send it, you know what I'm saying? Five subs for everyone you clip on the road. Subs for everyone you clip on the road. Oh my gosh, Chad. Look at that. We got TTS on the IRL. Let's go. I'm getting frickin' 100 subs today. Let's run over some people. That sounds like a great idea.  I don't know if you're supposed to, but that's what I do. Where's Aswin? Aswin is coming. Dude, where's, it's Timmy, dude. It's Timmy is coming to frickin' rail at me on an apex. Dude, I'll be honest with you. This is kind of what Paris is like all day. I literally, one of the first things I felt looking around Paris was does anybody here have a job? It's just constantly, what the hell, dude? It's migraine. Declod. Like it's just people are just out here, man. I'm just all day. This is what other people are just like. Dude, also something else I've noticed. Literally every girl here dresses like Bonnie. All the girls dress like Bonnie. All the white guys dress like Seer. All the black guys dress like me. It's very interesting. Wait, was I, wait, wasn't I just here? Wasn't I just here? Or is this just another place that people are just hanging out outside smoking? True.  PDA, hello. I should be the hall monitor in real life. I'm the real life monitor. Bitch. Get ready to go to jail. Why isn't Paris burning? Cause I think it's actually not that bad here. All the French people said it's not bad here. Hello. Okay. Thank you. Don't say hello. French people don't speak English. Why don't speak French? Isn't this crazy, man? Like these buildings are sold. Like America, anytime you come to like a country like this, these countries have lasted forever. They've been around for such a long time in America. Like we don't have that. So like our buildings aren't like like the architecture. It's just so different, man. Roman Empire legacy. No, it's a basic European structure. Well, that's what I'm saying. It's like America's only been around like what? 20, 30 years. And Europe, it's been around for like 100,000 years. Right? It's just kind of wild. Yo, what's up, dude? Do you guys watch my stream? I see clips on like Twitch clips or whatever. IRL stream clips. Sick. Dude, you're gonna be famous. No way. Yeah, dude. I'm live right now. I got SoundCloud. What is it? Flowness Mojo. Nice. Hell yeah. Wait, so do you play WoW? No, no, no. Because Mojo is like a WoW thing. Like a Troll and WoW has Mojo. I mean, I know WoW. My cousin used to play WoW. I mean, yeah, I'm on the way out. Sick. I'm a norm. Yeah. No, I've never played it before. I don't play it anymore. Well, you fans. No, I used to be a gladiator. Scarab boy. Grand Marshall. Two-time gladiator. But I don't play it anymore. I've never played it before. Yeah. Yeah. Anyway, have a nice day. Good to see you, man. All right, we'll see you, man. WoW! Dude, the Eiffel Tower looks sick. That's what the light was. I said there's a search light. Oh my goodness. Have you seen that before? It's huge. It's huge. Hello. Sorry. Green boys. Green, green boy.  It smells like my bed. Actually. Any hot girls with armpit hair, somebody asked. I have not seen any. I have not looked either, however. Yo, got C8? Negative 11 months, man. Loud Americans loud.  Eiffel Tower is bugged. Wait, is it frozen? Dude, I'm not going to lie. That would happen to me, dude. Did it actually turn off the Eiffel Tower? Is that not something that would just happen to me? It's not the real one. Wait, is that the second Eiffel Tower? It's getting fixed in the next patch. It's already on PTR. Sick. Dude, the Eiffel Tower is broken. Oh, sorry. Wait, do you guys need lighting? You guys want life? No? Oh, okay. All right. No problem. Have a nice day. Thank you. Thank you, dude, to your fanger. Hello. Hi.  My bad. Hey, can you guys help me? Did they turn off the Eiffel Tower? Like, the light is broken. It's like they turned the lights off. It's 1 AM. Oh, really? I just got here. Is it 1 AM now? You are alive in Twitch? I am.  No, that's on. Yeah, we are in Twitch. Go tomorrow at... Until 1 o'clock? At every... How do you say peel? It's a peel. When it's 30 PM, 14 PM, 15 PM, et cetera, the Eiffel Tower is shining. Oh, okay. And at night. Oh, okay. And then it's off. Yes. It's too much light and the... Sorry, it's my friend. It's my friend. Yeah. Hi. Hi. Hi. How many people have on Twitch? Oh, like 200. It's okay. But if we don't allow you... You can hear I'm British? Yes. Really? Yes. Wow, that's good. Yes, you're British. Very good. If we don't allow you to diffuse our... Oh, I'll leave. If you guys want me to leave, I can leave. It's okay. It's okay. It's okay. Oh, okay. We have a Zulac here. We have a Zulac. Do you know what means Zulac in French? No, what is Zulac? It's like a weak person. Oh, really? Yeah. See, in England where I'm from, they call them liberals. How? They say weak person. They say liberal. Liberal? Yeah, yeah, yeah. Okay. So Zulac in France. Thank you. Are you going to TwitchCon? What? Are you going to TwitchCon? No. Oh, well, you should go. We are going to Kilometre 15. It's a techno party. If you want to go. Wait, techno party when? Now. Now? Yeah. It's bedtime. What time is it? It's 1.20. Yeah, it starts at midnight and it ends at 7am. Oh, really? How much does it cost to go? It's like 20 euros. 20 euros? Yeah. Sick. And it's in a 19 neighborhood. 19, you know, Paris is divided. Here you are. Can you do this? Can you do this for me? Can you type the address for me? Yeah, it's all the time. It's like big techno. It's like techno in Paris. There is a big. Big techno scene? Big techno scene, yeah. Really? Okay. Okay. Well, maybe I'll see you guys there. Yeah, maybe. Cool. What was your name? Philippine. Philippine. Cool. Good to meet you. Good to meet you, guys. Okay, I'll see you guys there. I'll see you guys there. Trying to find the party. It's going to be good. Yo, what's up, dude? Oh, really? What the heck? Got you. Yeah. Yeah, thank you. Yeah, of course. Yeah, sounds good, man. All right, seem to do the chat. Look, we made it to the Eiffel Tower. Excuse me. Ah, frick. Yo, what's up? Really? Yeah, yeah, yeah. All right, we'll see you tomorrow then. Sick, sounds good. All right, we'll see you guys later. Chad, I wanted to check out that rave techno, but I kind of don't want to get a ticket. I don't want to go through the process of getting a ticket. Yo, what's up, dude? Good. How's it going? You want to see the Statue of Liberty? Wait, the Statue of Liberty? Yeah. Sick. Wait, really? Where is it? It's like two blocks this direction. Really? Yeah, you can see it right there. Like, is it the same size as the American one? No, this is more magnificent. Well, let's go see it. It's like you're the little brother of the American one. Well, I'll follow you. Let's do it. You follow me? Yeah, I'll follow you. It's near my home. Sick. Does it still have some juice? Yeah, yeah, I'm good. Oh, you're good. I haven't seen it really. Huh? I haven't seen it? No, I didn't notice. You're starting first. Yeah, yeah. You like it? Yeah, it's cool. I'm not a whole lot of light here. Check it. I guess you're pretty good. Cheers. Oops, I did it again. I played with your heart.  Yeah, it's a party. Yeah, dog. Where is it? Oh. Wait, where? Look at my hand. Huh? You see it? Oh. Oh, I see it. It's so dark. It's not that big. It's tiny. If you go over to the bridge, maybe. Yeah, let's go to the bridge. All the lights are off. Wait, this is the back of it.  This is the back. Yeah. I feel like...  Yeah. I should come here a day to see it fully. Yeah. It's basically a replica. No, that's sick. I've never been to New York or anything. No, I mean, it looks smaller, but it looks just like it. You have tutorials over here. Oh, yeah, there's it now. Yeah. No, that's sick. Cool. Thanks for showing me.  Look at that. All right, dude. I appreciate it, man. Yeah, I'm just trying to make it feel like home. No, I appreciate it. Dude, that's sick. Yeah. I'll make sure to come see it during the day, too. Yeah. What was your name in chat? My name. In chat, in chat. On Twitch? Yeah. It's skirty birdie, I think. Kirty birdie? It's skirty birdie. Skirty birdie. Yeah. Cool. Oh, cool. Okay, man. All right, dude. We'll see you later. Yeah, have fun, huh? Yeah, I will. Thank you, dude. Big pockets. Got it. Thank you, dude. Have fun, man. I love you. Yeah, I appreciate it. I love you. Wait, night shop? Wait, with a Mario? Hold on. Wait a minute. Green? Green? Sorry. Night shop. Very good. Night shop. Do you guys have an Apple Pay? Do you guys have an Apple Pay with a phone? For a phone pay. Sorry, my friends. Yeah. Can I pay with a phone? Yes. Again? Okay, cool. Dude, that's cool. Super NSP 1616 star. Cool. What is citronade? Brace? Ah, of course. Oh, thank you. Thank you. Thank you. You hear that? It's on the house. I'll get a citronade. Yeah. Yeah, I'm sorry. My cards don't work. I'm sorry. Yeah. Have a nice night. No rider gonna miss the turn. Dude, you really do need two phones to IRL stream, you know? Because I got my one for the plug, one for the load, one for the bitches, one for the hose. She a dog. We're going to meet Annie. We will. We'll see everybody. Chat. We'll see everybody. I gotta find a place to park this thing. Here's the great thing about TwitchCon Chat. This is what you guys gotta understand. Here's the great thing about TwitchCon, everybody. TwitchCon is great, especially Eve TwitchCon. Why? Because we get to come and we get to IRL stream. We get to see our friends. We get to see new friends. We get to make new friends. Last year, we made a lot of new friends. Last year, we saw some old friends. We met Bonnie last year. Bonnie eventually ended up moving to Texas and moving in. That's why TwitchCon is great. I love TwitchCon because we get a chance to go and hang out with all the other people, whether it's old friends like Canute and whoever else. Guys, I hope you guys enjoyed my first time in Paris. I was just kind of driving around, making sure everything works. I hope you guys enjoyed the first few minutes of me being in Paris for TwitchCon. We're going to be doing a lot of stuff live on my Twitch channel over the course of the next few days. I'll be in Paris a little bit extra. I'll be traveling a little bit extra. We'll be doing a lot of IRL stuff in the second half of the year, like we always do, tailgate tour and everything else coming up. I hope you guys enjoyed. Make sure to subscribe to the YouTube channel, YouTube, Instagram, Discord, Reddit, Twitch, Twitter, Threads. Everything is S-Fan TV, TikTok, S-Fan TV, whatever it is, S-Fan TV.  Hey, frick you guys.  Bye chat. We'll see you guys later.


Hello and welcome everyone. This is Swati and today I bring to you a very exciting new improved and a wonderful Atlassian Jira training that is targeted at both developers and testers.  But then we have had a lot of requests for an updated version because Jira has changed quite some from the time that it has been, you know, since we've taken the last session. So this time we have come up with a, you know, a Power Jira course that includes like all the changes in Jira that have taken place in the recent times. So we have the most current version of Jira. Plus we are actually adding in a lot of test management add-ons, test management, augmentation solutions and we are making it a lot better. So without further ado, I'm going to take you directly to our website and walk you through all the wonderful features of this program and show you how this course can benefit you. So as you can see our course content is updated on our website software testing help.org and here you will see that, you know, we have a detailed syllabus outline. Now all of our trainings are usually targeted at newcomers. So we don't really ask for any prerequisites in terms of experience, education, none of that. So the same thing is true for Jira as well.  Now let me take you through what we are going to do in with Jira. So, I mean, if you look at the couple of core incident management system capabilities, now there is a lot of content here which you feel free to read through it, but I'm going to explain this in a very simple term. Jira treats all work. So this work might be a new requirement that needs to be built, a bug that needs fixing, or it is just a miscellaneous task such as review that needs to be conducted. It treats all of these tasks as work. Inside Jira it's called an issue. So that's basically it. So Jira treats everything as to-do items which you can create, plan and work and be able to see. So basically the advantages are that there is a huge scope for collaboration. So teams geographically distributed are hugely benefited. And for management, however, there is, you know, clear visibility, transparency into the system. So it improves for better efficiency and, you know, channels teams energies towards actually working rather than managing work. So Jira has this very, very simple concept of issue within it. So the core concept, if you actually, you know, look at it is first and foremost, there is issue which is actually, you know, any item that you're trying to work on, any to-do task, then these issues are categorized in the format of a project which are further categorized as components and versions. And, you know, to understand where exactly this process is in the lifecycle stages, that means, you know, what kind of work is being conducted at it at this point of time, if you want to get an insight into that, it is the workflow that generally helps us identify that. So I'm going to take you to the actual Jira interface now and we will talk about what are the things that we will cover in the Jira class and, you know, probably this will act as a demonstration also to give you an idea of, you know, what's going to be in Jira. So we have a Jira instance already created for, I mean, for the sake of this demonstration here. However, when you are going to be a part of the program, we'll start with, you know, we'll start with understanding how, you know, a Jira instance can be set up. So you will have 100% complete guidance on how to start and go from there. So what we will start with is, you know, everything that is to do with issues. So this is a very simple way in which you could create an issue. So as you can see, issue inside Jira is a task bug epic or a story for an agile project. If you're looking for a much more traditional waterfall style of a project, you will have new features, improvements. So basically requirements, tasks and, you know, bugs and etc. So issues are any work that you'll track inside Jira. So surrounding the issues, we will have plenty of topics like, you know, how do you create an issue basically? How do you attach a file, screenshot, cloning the issue, moving them, all of these things? So let me actually show you an already pre-created issue and we'll talk about what are the things we will discuss in them. So this, as you can see, this is something that we have been already using. So in the issue navigator, I mean, once you look at an issue, we are going to talk about editing, commenting, assigning these issues to the respective people. We're also going to talk about logging work, which will affect the time tracking section, this section right now that I'm going to, that I'm just, you know, putting the spotlight on. And there's also going to be agile projects, which I'll show you in a little bit. We'll also talk about voting, watching, creating sub tasks, moving. So everything to do with issues, we are going to look at it in a very practical workshop sort of a manner in this Jira program. So really working with issues forms the crux of being able to be successful with Jira. Now following that, we'll of course talk about what are the best practices, a few tips and tricks that can help you through it. We'll also talk about how Jira issues can be imported from an Excel sheet. Now this used to be a feature that could only be done by administrators earlier during project creation, but Jira has improved itself. So even, you know, typical user profiles will be able to import some issues into Jira. However, this is considered a little bit of an advanced topic, but we will talk about that as well. We will include that aspect as also we'll also talk about, you know, generating reports. So everything that, you know, every project in Jira gets its own project navigation through which there are plenty of reports that you can generate. So there are different reports for agile, there are different reports for waterfall model projects.  So this is just for an agile project. I'm going to like, you know, log into a waterfall and show you how that works. So when you just go on to the reports tab here, it is going to show you the various, you know, kind of logistics that you can generate through it. So it will show you, you know, if you want to see this with respect to assigning or the components of the system, it will show you how your issues are distributed. So, you know, again, all the real-time tips and tricks will be shared on what kind of graphs are applicable and what kind of circumstances and all that, but this is to just give you a general idea. Next, we are going to move into agile and Kanban method projects. So right now I have the agile set up. So let me actually show you what we're going to talk about. So in the agile projects, we all know how things work. We all have a backlog. Now, one little digression that I want to take here is how I said earlier about how our courses are meant for both beginners and experts. So that's why before we go into how to manage agile projects, this course includes a quick recap of, you know, what agile methodology is and how is JIRA applicable to the agile methodology.  So we'll talk about how to create a project backlog. So basically all of your issues in JIRA are just, you know, all of your, sorry, user stories in JIRA are basically your, you know, issues of the type story. Now, with these, we'll talk about how we can add them to a sprint backlog, how we can start this backlog. I mean, sorry, how we can start a sprint, how we can continue a sprint and create various scrum boards so we can get to see the exact progress of what is going on JIRA at this point of time. Okay, so this is a scrum board that shows the progress of what is going on and in what order and, you know, all of those things about it.  So this is, as you're seeing here, this is a real-time scrum board that, you know, was used in one of my projects. So as you can see this, the physical scrum board and the, you know, virtual scrum board that we're creating are simple enough. But the advantages of a virtual scrum board as you, you know, as are apparent is that globally distributed teams can work very easily. Any changes can be applied real-time. No additional effort is going to take. So all of these advantages make it a wonderful tool that, you know, makes JIRA a wonderful tool that is much more fitting to do modern project management than to go with, you know, the traditional methods. So we'll also, in the similar lines, we'll look at how to create Kanban tools. Now, I'll also show you how project administration works. Now, typically, project administration is not really something that we would do on a day-to-day basis. However, since cloud systems are so much more predominant, it's a good idea if you are able to do a little bit of a configuration on your JIRA instance. For example, how do you create a project? How do you set a particular workflow to a project? What is a project key and, you know, how does it get impacted? So we're going to look at all of those things in a, you know, again, I wouldn't go into like higher level of detail here. But it would be good enough for you to get started and, you know, gain expertise if that happens to be your area of interest. But I would love to show you all and walk you through all of those other aspects of administration as well.  It has a lot more in scope. Since we are a testing group, software testing help is, you know, as the name indicates, we are more into testing. We are more into, you know, how we can involve and improve testers and, you know, how they work. So basically what we've done is now JIRA by itself does not, you know, handle tests. It is something that, you know, handles issues as to do items. Like it doesn't, you know, differentiate between how it treats an issue of the type bug, how it treats an issue of the type new feature, so on and so forth. But tests are different, isn't it? Tests don't actually go through a workflow, but they have a particular status at a given point of time. So tests are an asset or a project asset that behave quite differently, you know, in comparison to the other issue types within JIRA. So that is why to extend JIRA into the market, into the test management market, there are a lot of additional add-ons that are available for JIRA. So I'm just going to take you through them really quickly. So there are many add-ons and I'll show you how many results it will return here. So plenty of results. So there is Zephyr, there's Test Rail, there's Practice Test, there's Q-Test. So there's plenty of, you know, add-ons that are available. Plenty of choices available when you want JIRA to work for test management. So all of these solutions can be categorized into two. One is the Augmentation Solutions, which is like Zephyr. And what Zephyr does is it adds another issue type called Test and you'll be able to manage that through JIRA. And then there are teams that already use test management solutions such as Test Rail, Q-Test and all that. So they can simply add a plug-in that will help these two tools interact together. So since it is practically not possible to talk about all the tools, I have chosen one tool each per category. So the Zephyr is something that, you know, is a very famous augmentation choice. So we're going to talk about how do you install it and configure it, test create the issues of the type test, how do we link them, so how do we establish traceability, how do you manage test cycles, how do you run your tests, report your tests, how do you, you know, generate your test reports. All of that will be covered in this class. Similar things will be covered for a plug-in solution as well. And however, when two, I mean, obviously as it's always the case, whenever there are two solutions, it's a good idea to compare and contrast and get an idea of, you know, how things work in comparison to one another. So we'll do that too as a part of this program. So this isn't a nutshell what we are going to cover. In addition to all that, I'm going to go into details about how to customize your dashboard. Let me take you to the dashboard for just a second. So dashboard is kind of like the main, you know, the first page that you see as soon as you log in. Now, what you're saying is pretty great, like it shows you the things about what is assigned to you correctly and what is going on as an activity in your company. But let's say you're interested in looking at a particular graph or looking at a particular, you know, analytic as soon as you log into JIRA, you will be able to customize all that and add that to your system dashboard. So we'll talk about that as well. In addition to that, there is something called JQL. JQL is to actually, you know, query inside JIRA and be able to find the two, you know, whatever it is that you're looking for. So let me go back to the issue navigator and show you how that works. Okay.  So basically, the filter options that I'm talking about is what is called as the advanced search options. So there is multiple ways you can filter. If you want, you can add a new filter. And you will be able to, you know, use JQL, which is a JIRA query language in order to find the issues that you're looking for.  So let me just show you how a simple advanced search will look like. So we were earlier in the new filter, you know, area. Now in the new filter area, you have an option to go in either into the basic where you'll be able to choose your parameters and search as normal. But if you want to go a little advanced, for example, if you want to go for project is equal to, you can choose that. And just like SQL, you will be able to, you know, let's say I want to find issue type is equal to bug. So I want to I want to actually get all the all the issues of the type bug and order them by the priority. Again, this is quite simple, but again, just showing you it will display all of that by priority high, all the way to priority low. So this is a great way to, you know, search for issues. So this is a kind of an advanced search. So we'll go into much more details now. There are a lot of things that you can do with this. You'll be able to export this into various formats, generate a chart based on it, put it on the dashboard. There are a lot of things that you can do with jql and there's also like, you know, functions and all of that, which we will look into detail. So basically, you know, this is a quick, you know, end to end syllabus of what we're going to cover in this program. So as you can see, this will really, really set you on the path to be a power user, power user in a very little time. So now if you're wondering when is this course happening and what do I have to do to enroll, here is the detail. So the upcoming batch is going to start on 24th. So this is a four day program. Two hours each day starts at 6 p.m. PST. So it starts on a Thursday. So we have a Thursday, Friday, Saturday, Sunday, two hours each 6 p.m. Now all the classes will be recorded and all the classes will be, all the recordings will be sent to you every single day. And these recordings are available to you lifetime. As a bonus, we provide you the premium software testing career package ebook. So that's definitely a great book with rave reviews. So definitely check that out. Now for the most updated price information, definitely, you know, look at this site and to enroll, you can actually, you know, just use the options that are provided here. If you have any other questions, please feel free to contact us through the website and we will be happy to answer you. So I hope this demo has given you a basic idea of what we are going to cover in the JIRA program. And if there's anything else that, you know, we can help you to make a decision that we can do to help you make a decision, let us know. We'd be happy to get back to you. Thank you everyone and I hope to see you all in the class. Bye everyone.


Welcome back to the breakfast in Plasivia Africa, where we look at Niger's defeat in Sierra Leone 2-1 in that particular game. We have Monday Thomas who joins the conversation as a sports analyst. Very interesting is the fact that Niger's road to Ivory Coast in 2023 kicked off with a much needed win in a group A of a qualifying phase. Like I mentioned earlier on, it was a fantastic defeat 2-1 at that martyr. But let's get to the conversation. Monday Thomas, it's good to have you join us this beautiful Friday morning. You are Monday on the Friday morning. Good morning. I know what you're having me. I'll call a week together with everything we have, but especially for the Super Bowl of Nigeria, what a way to begin the out front campaign. So we're looking at the 4-4-2 formation and some places are saying that this has been you know fantastic. Other places are quite different you know with the start, especially where you have Jose Pesero starting you know this game you know for him. A 4-4-2 formation, it's a very effective formation. I mean it's a traditional formation. It's a formation we don't get to see now in the modern football, but I tell you it's a formation that can bring you victories. For Jose Pesero, if you take a look at his resume, you find out that he once was with the Los Blancas. I'm talking about Real Madrid and in that time where he was the one of the assistant coaches of Real Madrid, that time was where Real Madrid used to play a 4-4-2 formation where Raúl González Pablo used to pair alongside Ronaldo de Lima. So yesterday we saw a 4-4-2 formation and you can see the audacity, you can see the purposeful football, you can see the direct football, you can see that this man is out here to get a result and result is what football is all about. Football is a result of a vintage game. If you can't get the result and you won't go anywhere, you play the best football, but if you can't get the result you won't go anywhere. But we saw that game yesterday and what I've noticed about Jose Pesero is that he's a man that is not afraid to change things. We saw in the first 45 minutes, the first 15 minutes of the game, the Lone Stars came out of the Super Eagles of Nigeria. It was quite unexpected when Jonathan Moses scored in the 11th minute and you can blame back to the defensive era of the Super Eagles. Now it was not a fantastic win but we needed a win. We needed to of course ground that result so that we can get our Afghan campaign to a great start. The defense line for me was not the very best but how did we deal after losing, after going down in that game, just five minutes after Sierra Leone had scored, five minutes later Alexi will be with an absolute beauty over Koila. That is what it's all about. It's not, it doesn't matter if you go down but what is your fighting spirit when you go down. I can take your mind back to that game that was played at the same stadium which happened to be the World Cup qualifiers where the Super Eagles of Nigeria played a one-on draw against the Black Stars of Ghana. The Black Stars scored us first. What happened? We were struggling and this is what happens in African football and a way team scores you first. They will do their very best to defend but the Sierra Leone's couldn't do that against a power-packed Super Eagles side. I know there are some negatives you can take up from that particular game. Nigerians, we missed chances. Samuel Chukrize blowed a very glaring opportunity. We also missed other chances and we can build from that particular one but in the overall for a man who's just coming in we should cut him some slack. I don't think he should be criticized right now. He should just be given the support he needs. After 4-5 training session he led Nigeria to a very beautiful performance yesterday and also people are still talking about the... Have we been always with the 4-4-2 formation or is this a new development or new tactics? I mean that's what a lot of persons have argued over time with you know the previous coach. Are you saying that Jose Pocero is more tactical now because the 4-4-2 formation might not be just a new one? Mercy the only problem we have right now on this show is that we don't have time. We don't have time because I've got a lot to say about Jose Pocero. Go ahead. Whatever it is you have to say, go ahead. I took your mind back to the days of the Los Blancos and I told you it was one of the assistant coaches right there and I told you how effective a 4-4-2 formation means for a coach using a 4-4-2 formation it tells you that this coach is very confident. It tells you that this coach wants to win a game.  It doesn't matter what people think. You know football is a game where everyone thinks they have an opinion. Quite shocking especially in endurance. We think we know football. We think we can decide for the coaches. A 4-4-2 formation for me was not the best yesterday but if it's something we can incorporate, if it's something we can let the players be on, the 4-4-2 formation will bring us great victories in the nearest future. Next for the Super Eagles is a game in Morocco where they'll be taken on Satome and Principere. That should be another win for the Super Eagles of Nigeria. We saw what happened to them yesterday. I'm talking about Satome and Principere. They lost to Guinea and they won a 5-1. For me I would encourage the coach to try whatever they think is best for the Super Eagles of Nigeria. Let's look at the next, the future. It's interesting what you've just replied. Mercy, I don't know if she wants you to see the team play like Liverpool. I think what you're saying is that the coach was direct. He played a direct formation. He was not playing purposeful and just wanted to grind out the result. Why? Well, he tries to understand who his players are and what the team is in to decide how to play. Let's look at the starting lineup. Alexi will be equalised for Nigeria and Victor Simen grabbed the winner for Nigeria in the first half. In the second half there were no goals scored. Are you okay with this starting lineup? Because I heard you mentioned some sort of defensive mistake that led to the conceding of the first goal. We know what the Nigerian contingent in Glasgow Rangers have been able to accomplish. The name on everybody's lips is Calvin Basi. He was played from what I can see left back. Correct me if I'm wrong. So what are your thoughts on this starting 11, especially as it will be was left out of the World Cup qualifiers? All right. The coach is still experimenting things. He's still trying to take a look at the team. He could make his first 11. So starting the starting line, I think that was the best starting lineup he could go for. Calvin Basi was prolific for Rangers. He was one of the player of the season for Rangers and also Joe Aribo who was fantastic as well. How about Alexi will be the midfield quality. I mean in his past 10 games in the English Premier League and as well as with the Super Eagles of Nigeria has been clearly the best player. But for the defense line it was Semia Jai who plays for West Broadway, Chalbion and William Trusekong. That was where the problem of the Super Eagles of course started, especially from the first goal. I mean, William Trusekong doesn't play for his side, Warford in the English Premier League. They're relegated right now, but he's a player that doesn't get to start for his side like Warford. Semia Jai, you won't blame him. I mean he played in the English Premier League two seasons ago. He's now playing in the championship with West Broadway, Chalbion. I'm thinking we have a defensive issue and William Trusekong for me is not my man. Can't be my man because he wasn't able to match all that defense. His communication is not the very best. I mean it's not just talking when you're communicating. It's making the right decisions and also putting out the right instructions. For the first goal, you can see that in the first 10 minutes, Sierra Leone came out playing like I see they were Barcelona against the Warford side. They wanted a goal and they got a goal. But it for me, it was because of a defensive error. Calvin Bassi also was not on hand to stop the Jonathan Mose from scoring. But there's always room for improvement in every game. It might not have been the best of the best performance from the Super Eagles of Nigeria, but it was good thing to get us to a flying start. I'm very sure that coaches, I heard from him this morning. He said that it was a good game, but there's always room for improvement. I think I'll agree with him. It might not have been the best game. There's a lot to criticize about this particular game, but when you see the way this man is playing, when you see his motif, you know that Niger will go very far with Joseph Passile. Don't we think that this is too early for all of the assumptions?  Are we going to say that? It's not too early, right? It's not too early because we were already criticizing him. It's too early to criticize. Just cut him some slack. Let's just see what he can do. For me, I think he's a man that will change things. But let's talk about the Super Eagles entirely. What exactly is lacking? What exactly do we need? Is it the formation that we have to peg with the technicality? What exactly is the issue? As a tactist, the tactist is building confidence in these players. We've got quality players, world class. Look at Victor O'Simmons. Did you see that finish? Goal scoring machine. That is a poachers finish. But do they have the coaches to tell them to give them the right instructions? What to do at a point in time? What formation to change?  Look at what he did. Joseph Prasaro. He took off Tadeguma. He knew that the battle was in the midfield. And Sierra Leone were dominating. Organicaro came in. Although he made some dangerous tackle, sometimes you need that. You need to take one for the team. But he was able to count the situation in the midfield. And the Super Eagles grew back into the game. But of course, you should have gotten goals in the second 45 minutes. But look at that chance on Samuel Chickasay. Simon Moses was not really in the game, although he provided two assists. So what we really need in for the Super Eagles is a coach to tell them that they can. I mean, so would you say that it would be okay that if we had started? Because a lot of persons are saying that if we had started Alexi Wolby during the qualifiers, the World Cup qualifiers, we probably wouldn't have been where we are today. So I like to see those, I like to see those persons that are saying that. I like to see that. I mean, the argument for Alexi Wolby is that he has a way of doing his thing. I mean, there's some magic he brings at the end of the day to the game. The honest truth, Alexi Wolby was a joker before yesterday's game. I mean, before Frank Lampard came in to Everton, he was a prepared man for Frank Lampard. But at the Afghan, he was a joker. Before the World Cup qualifiers, I wouldn't pick him. But now he is the main man to watch. He is a main man because he has rejuvenated. So something about any bad footballer can be good overnight. It's just how you can learn, how you can relearn things. I mean, Alexi Wolby for me, for me, it's always been an average player. But what are you doing do yesterday and what he has been doing for Everton in the past 10 games is also a player to look out for in the coming days. I mean, the whole Super Eagles squad, everyone has opted to improve. And this is the main quality of a side that wants to win trophies. All right, that's the same way. I mean, a lot of people have been trolling Alexi Wolby. And but do I feel that the young man has not been treated fairly. He plays well for Nigeria. He may not have all the good days, but we can see that he scored a goal. So maybe some of you who have been trolling him after he ate your humble pie, just as you all also were clamoring for getting on the road to be to be removed. I'm sure you saw where that ended up. And if Gary Roe was still the coach, Nigeria would have gone to the World Cup. My brother, if get a role, I'm not going to the World Cup. I'm Ghanaian, but I'm telling you that Nigeria would have gone to the World Cup. Yes, if Gary Roe was still the coach, you know, so I don't know. But before we go very quickly, the combination up front, is that the best as far as you're concerned? Bear in mind the fact that Nigeria is embarrassed with an abundance of talent when it comes to strikers. And of course, we have a Colauwale Desus, the guy from Ferdinand who scored in the game against Mexico. He didn't start and the coach opted to go for Oma who plays in the second tier of the Spanish professional leagues. We have, of course, the young man from Leicester City as well. Indeed, he was not in this game, you know, the midfield combination. Other players that we should be considering above other players. We have the guy from Watford as well. The attacker who was not in this game. Were there players that probably should have been starting this game, you know, rather than the ones that Pesero went with? Well, sometimes it doesn't matter how you start. You can start, but at the end of the day, but when you start that and your opponents get to score you many goals and everything goes crazy. But for the start of the Super League goals, for the players who started, I'd like to say that this man is just starting. I mean, we should give him all the empowerment he needs. It's not a time for us to talk. If we employ him, if the NFL employ him, they saw his CV. They saw it at his worthy of taking the Super League. So, why are we talking when he's making his own decisions? For me, I would like to give him a chance to do whatever he wants to do. We've got abundant talent. Very, very quickly. Yes, very quickly. Sorting through to my brother. What changes or what lessons should we learn from this game ahead of the next game? All right. So, we are very delighted, personally for me. I'm delighted for the read. We should also take a look at that defensive, our defensive players. They're not the very best for me, especially the set up pairing. Olaia now was very solid. He also had a cross in that resulted to Simon Moses heading to Victor Simeon. Our center defense, our center pairing. I mean, we don't have the very best. Kenneth Romero, fantastic player he was, but he's aging. He came on later on in the game. Leon Baloguin is also aging. That's all right. We have to let you go now. I'm sorry. Okay, let me finish up. Let me finish up. William Truseko is also not a key starter for his club. Semi-agile plays in West Brom. We have a problem in our defense. Probably in the defense and also in the midfield. And I can't wait for Wilfred Gilly to be back. And then my word, we are in for a great football in the coming days. Well, Mande Thomas, thank you so much. You're very correct when you said that the biggest challenge we have is time and time is of the essence. We come through on Friday. Hopefully we're able to have you join us and look at, you know, some of the conversations that we have regarding the world of football and maybe sports generally. Thank you. I saw your beautiful face and the gentleman from Ghana, always a pleasure having me to talk to you guys. Have a fantastic weekend. You too. What I said, we'll definitely return on Monday. It's the size of a conversation. It's been a fantastic week. Very challenging if you like to say it. Supergirls won, so it makes it more fantastic. It wipes away the tears of Liverpool losing Champions League in the league. Oh, come on. Don't rub it. It wasn't even delivery. It wasn't, you can't even put that because we did our bid. It was just unfortunate that one point could actually take you out, you know, of the situation. It's all right. She's talking about Arsenal, by the way. No, I'm not talking about Arsenal, but that's the size of a conversation. You can follow us on Facebook, Twitter, and Instagram and do subscribe to YouTube channel at Plus TV Africa and Plus TV Africa lifestyle. I am Nessie Buquo. Have a great Friday. And my name is Gophie Bartels. Good morning.


Oana says, hi, I need some advice or help with PowerPoint Live. I use a company account, so not personally. When I try to share with PowerPoint Live function, everything is perfect except for the fact that the slides change only for me, not for the participants. The other participants also try to share via PowerPoint Live, and the same thing happens. They can change the slides, but we only see the first slide. We do not use Teams through the browser, only the application install the work laptops. Any ideas? Yes, there's a lot of problems with PowerPoint Live. Period. Stop. Full stop. Let's move on to the next question. No, yeah. Well, it's still in preview, though, isn't it? Officially. I believe so. Yeah, so I mean, this is a problem that we've seen, or sometimes the more common one, in fact, that just experienced it today, was somebody was using PowerPoint Live, and then was it the chat that wasn't working, or there's something else that stopped working? Just some people, like the cameras weren't working, or they couldn't come on screen, and so there's some issues. And I always love to share advice where sometimes it's a matter of did you try turning it off and on again, but it actually fixes it sometimes. Microsoft is getting to the point with PowerPoint, where it's becoming a major multiplexing switching operation. You present on one screen, you've got your presenter view on another, and you're bringing in feeds and different things. I imagine it's going to start, if they continue in the direction they're going, it's going to transform the product, I think. We're going to get into an AV solution. I think they actually, they've thrown too much into it, to be honest with you. I remember when PowerPoint just used to be a presentation, like you said, Sean, exactly. They're going up against their competition. They're trying to compete against audition, and they're trying to compete against Prezi. And they're just, they're not there. It's like they're trying to throw this stuff in, throw in the kitchen sink, if you will. But I just think that the addition of the feature like live, it just wasn't, it's not ready. It's not something that just isn't there. And to be honest with you, I don't know a lot of people that even use it because they're already in a team session, they're already in a Zoom session, or whatever they're in. Yeah, you're all looking at the screen. Yeah, I know a bunch of people that are trying to use it, but they, we, so this is a common issue. It's been out there for weeks, this issue. So, I mean, it's not something, oh, I wish we had a better answer for that. It's a, it's just, it's a known issue. And it's, I think it's just to Mike's point, it's where the product is right now. Still bacon. Yeah, so it works sometimes, sometimes it doesn't.  I've done a couple of things now where I was able to go in and do something where the presentation behind me, and I was on screen. So I've used other streaming technologies. Yeah, the Cameo view and I mean, so it's nice to have that. And it's also great to be able to be in a presentation to have links within your deck and people can live click right there and get to the assets. That's fantastic. Absolutely. It's just, it's a bit wonky right now. I think the same thing with teams. I mean, I compare SharePoint to Teams right now because Teams is still wonky. It's been wonky for two years ever since, you know, the big push with COVID. You know, everybody would need something to use. So it was either Zoom. Were you claiming Teams was infected by COVID? What are you claiming? This is how rumors start, Christian. Mike Nelson, Microsoft MVP claims that. No, I think that, I mean, we had this conversation several times and we were doing the regular show, you know, during COVID in 2020 and 2021 where Teams was just, you know, if there were pieces missing, there were parts falling off. There were, you know, there weren't any replacement parts that we could order, you know, to fix it. That type of deal. Yeah, it was work in progress. Yeah, it was.  It continues to be.   With all the rest of the chats and the file sharing and like everything else that's going on. Well, I know that's one of the unfair comparisons that happens with Zoom and other players out there. It's like, right, because they're doing like one little sliver of the functionality of what Teams does. Yeah, they are, but they, but compression, you can only, you can only compress data so much.  They're stressing, you know, they got the, they got the senior folks coming down and saying, you got to make it smaller. You got to make it smaller. I have to say that's one of the brilliant aspects of the show Silicon Valley was the fact that their primary product was just a compression algorithm. Robin Hood? Yeah. Yeah. Yeah. Yeah, search and compression are the two things where they're all, you know, continually be innovation around. Oh yeah.


Our topic was proctoring as a layer in xblock framework. So what we need to do was proctoring means invigilating. So we need to actually make an application, invigilating application and make it in such a way so that it can actually act as a layer in any xblock. So we can actually integrate it any xblock, that is I mean in any course. So he is Hemant Katari from NIT Silture. I am Pranav Dixit from IIT Assign Thanbarth. He is Siva Dhonkada from Tripalai Dinozil. So our objective was to create an application so that it can help teachers in proctoring the online application similar to what we do in offline examinations. But it would be automatic and it will require no manual intervention. Secondly, we have to create a web restriction application that will actually put some navigational hindrances to the student so that he cannot cheat by I mean managing the web browser things. So purpose as I told, as in offline exams we have to make an application that can work similar to that way. And secondly, the xblock should be integrable with any edX codes because I mean it should act as a layer so that we can actually integrate it into any exam. But we will actually prefer if it will be added into timed exam. Because I mean in untimed exam there is I mean it can work but problem is we have to I mean spend more on hardware or so for saving images and data. Third, I mean teacher would be provided with appropriate proofs so that in future if he is asked by student that why was I marked by CETA. So he can actually have proofs appropriate proofs for reference and also he can actually I mean determine the accuracy of the application if he thinks so. So he can actually look at the most suspicious one students and he can actually see their suspicious images. Coming to activities which are considered as the suspicious according to our system the first one is Impassionation. So Impassionation means means if some other person writes the exam who is not enrolled in the course. The second one is rotating your head in left hand right direction above certain amount of optimal range because a student can move his head in left like this and like this and keep some material here and he can copy from there and he can write exam. So we are considered that as a cheating. And third one is coming to this is a Vabristiction one. So any act of this fourth thing first thing is minimize browser window. So why we are considering this as minimize cheating because he can minimize the browser window and he can go his own material and he can copy. So second one is migrating to other applications similar to like that but he can move to any other any applications there in each system and he can copy. And third one is opening new tab or new incognitive tab because he can open new tab and googling some answers and he can copy from there. The fourth one is resizing browser window. So he can copy by resizing window and he can place some material in another window and he can copy from there. So we consider this as a cheating according to our system. Also we will actually maintain appropriate proofs and appropriate timings. Can I open another browser? No sir. I mean we will mark it as a that. Are you stopping? Are you taking a cheating? Yeah. Because you said open new tab, new incognitive. If you will go out of browser exam window you are marked as cheater. I mean the time will start that one. And what proof are you giving for all these acts of cheating? So I mean for web images we would be I mean showing some model boxes. We are not showing alert because some student may actually click on prevent page from creating additional dialogues and then he won't be showing alerts. So we are actually showing a model boxes that cannot be prevented by page because we are just banners type of thing. So we will be I mean when… What proof are you giving to your teacher? Yeah. So I mean when he will be doing some suspicious act related to browser restriction that model box we will save. In that model box we will have user name of that student, the time at which he did cheating and what type of cheating he did. So we will be actually saving that screenshot into the suspicious image folder. I mean there are two types of folders suspicious image and web image. We are giving images to images as a future reference for teachers. So this is admin view. So first we will be I mean creating a course in which we would actually load our example. So I mean the point is actually we are not I mean we are actually alerting the teacher if he is actually adding it to untimed exam. There is a reason to it because I mean teacher might unknowingly add it to some untimed exam. So first we would be actually comparing his image from the stored image, the image right now to catch any impersonation instances. So he would be taking his snapshot. He would be submitting it. I mean this is the view for I mean what from outside so that we can see if he is cheating or not. I mean this is not actually in that. We are actually showing it for reference of them. No he is actually looking in front only. He is actually providing his image. He is taking a snapshot by clicking here. No this is actually I mean we have taken from another laptop. That is actually telling. This is the test image. Currently when he starts taking, he is starting taking the image. No this is not test image. This is actually I mean we are actually storing. This thing is another browser window. We are editing the video. So we are actually showing because when he would be cheating. This is not appropriate for the student. This is not actually true. Actually we are intended to see so this because the student is writing the exam here and this video is taken from another laptop and this is the live. This will not be here. We are just showing it so that I mean you can see that if he is looking away at that time when we are marking at his cheating instance. That is for comparison thing. So his image would be compared. Take a snapshot of now. Yeah so I mean at that time it will show this model box.  Means actually user tries to open a new window by pressing control n. So he is. First I will start the exam. Yeah. Yes sir. So start doing whatever activity all cheating you do. One minute. That's all I want. So we are actually saving it in a manner that first there would be course name, directory name. Name of directory would be course. Then the block name, block ID that would be. I am storing it in the server in a directory. That path would be specified by admin. Okay. So first we will be seeing web images. So this. So it is actually storing time, user name and that what activity he did that was marked as suspicious. And at that time he was a server as a user. He has done that. He is pressing control n all things to open new window by pressing control n. So we have stored it is cheating. This is. This is a screenshot for future reference. Now for that suspicious image thing. Okay. Go ahead. All the images. Okay fine. And this is another one when he was minimizing it right. So I mean we have actually carried all tests. So this is the second one. Go ahead. Go ahead. Go ahead. And he is moving to some other place. The third one. That he actually tried to resize the window. We have actually incremented a counter incremented some time. So actually this is also storing. We are. Yeah. So what we are doing actually is that we will actually pull. I mean we are not expecting him to start from that full browser window. Okay. So we are actually storing the time it was not of full browser window. That only. I am just looking at it from a teacher's point of view. Okay. So you are giving me all this message at the end of this message. I want to know whether he actually resized or not. So that you will get from overall time he was I mean doing something suspicious or something suspicious. What is the user manual for that? What are the things I have to see? You built a system right? Yeah. Just a MySQL. You are saying that my requirement is that I will tell this teacher. Okay. Yeah. Correct. So you are showing me what is told to the teacher. Yeah. Now you are also telling me teacher has to do that thing. Teacher has to do that thing. Yeah. That will come later. Where is it stored? I will do it. Okay. That will come later. Yeah. So these are the suspicious images that we took. Okay. Go ahead. Go ahead. No, I don't understand. What is this? I mean go back a little bit. Go back. This is web image. This is web image. Yeah. Another is suspect image. Susp underscore. Yeah. That would be have suspicious image. Correct. Okay. Go ahead. Go ahead. So these are the suspicious images that we found while he was looking away. So I mean he looked away in the middle of that. Right. Okay. Go ahead. So what is this? Yeah. What is this? Yeah. This thing. So compare images. There is a suspect image. Compare image. I am not worried. Jason underscore data will show if the user actually started his webcam or not because that is a possible thing that he will have no suspicious images if he didn't even started his webcam. Right. If he didn't started his webcam on Firefox or any browser, then there will be no suspicious images. So we are actually storing that. Okay. Done. So I have seen that this is how you store. I mean now give me the view what the teacher will see in OpenIDX. So this will be update suspicious result. So actually there would be some due time that went the after which the student cannot give the result. I mean exam. So teacher would whenever he wants to see the result, he will first click on updates suspicious results. It would actually I mean create a total count variable that will actually I mean store. That's what the teacher will see. Yeah. Here I will see Siva. No. This will update it. Then when you will click save a student's name. Right now when we did it, we had just one user. Rest of all were none. But this would actually save a TXT file. Where will I see whatever you showed me? In the TXT. Yeah. So in when you are. Either video or regular. So save the student names on clicking. Show me that Siva. Whatever you are stored in that directory show it to me. Okay. I think that is not in this because there was single user. So I mean. Single user. Single user can be done but I thought that I mean it is not. If we do it there would I mean just one single name in that TXT file. Show it to me in video. Are you saying you are not going to demo what the teacher sees. Just that TXT file is not there because there was single user. But. Okay. Rest all. You are not ready to demo. Yeah. You are going to show me a video. Yeah. So in the video show me how the teacher sees the result. No. In the video. The teacher's view you are not even showing me. In the video. No. That thing the suspicious images are done. That is the thing. That is done in the disk. You expect the teacher to go on the server disk. Actually that thing only. We have tried to make a front end for it. For creating a student. We actually were not able to integrate it into this. Explore. That is what I mean. Limitation of. So you are not done it. Yeah. We have done all things but we have not prepared a front end for the teacher. And we tried it. This is we mentioned it as a future scope. We have done all things and we are not giving a front end that's all. That is not future scope. We actually tried to integrate it but actually I mean there were some problems we were not able to do. Correct. So it is definitely not future scope. Yeah. It can be done finally. The team which has actually implemented. Created a directory structure. Created everything. Okay. And after that a team is not able to integrate. How anybody else will be able to integrate. Actually I mean there is just one single thing. I mean we have returned but we are actually not able to integrate it into this thing. I mean that is actually a totally independent of this whole system application. Okay. Forget it. You are not able to integrate. Yeah. That's fine. Tell me the requirements. Requirements. What you are trying to do. Okay. What we were trying to do. Yeah. We have we have. So what we were trying to do was we will actually create an application that will actually I mean teacher that will actually store all the images and suspicious images or whatever so that teacher actually can refer it later at the some directory that will be specified by. Refer name later. It has to be inside open edx only. Okay. So what we are. Okay. Is it inside open edx. Open edx. Not another application. No. Inside open edx. Okay. So where the where there will be a button. Yeah. There will be. So when he presses the button what he is supposed to get. Okay. So when he will press that save a student's name that will actually tell him. I will not get a student name. No. I am telling I am telling a student's name who did the most number of suspicious things. Okay. When he will click on I mean he would most be concerned mostly we concerned about the person who did the most amount of suspicious things during exam. Well others I will save okay. No. I am actually telling I mean I have to give some order. This order is I mean the most logical one. Right.  Yeah. He is supposed to get the most order. And then we were so I mean this thing was not in there. So we were just trying to do that we will actually store it somewhere in that directory. Okay. Then when he will click on that student he will get all images ready to do that student. That's on. I am clicking the button and that and yeah. That's it. I mean he will actually then see the images if the system performs. I like the student. Left hand face right hand face is better. No. For example I mean there is I mean because this system is not actually accurate. Not perfectly accurate. Right. Correct. I mean there may be some instances in which he will be looking straight but those would be marked as suspicious. Right. I don't care what do you expect the teacher to do. So I mean first of all I if I got like 5000 students and all of them take that. Yeah. Okay. I will have most probably I will have all 5000 lists. Okay. 5000. Every all 5000 you are marked. Okay. So you are marked all 5000. So I have to physically go and look at 5000. You have to look. Then what you have to do. So the point is I mean we have to left it to teacher. We cannot actually I mean do anything just depending on what I said what teacher will look at the images. He will see that you are showing me what I will do after looking at that. So I mean so in that case he will say no this person was not actually suspicious. Application didn't perform. He will say I don't understand. I mean Are you giving voice commands to teacher? Yes. This is okay. Not okay. It's a command. What is your software allowing him to do? He will he will get the proofs he will get the proofs of suspicious images. Then everything is left to teacher. That is up to teacher now I mean we go to sleep I said what do you expect him to do? If teacher confirm the student is cheating then he will not give certificate to that student. Up to that Yeah that we are doing so we are actually I mean write it down by hand. So only those students name are suspicious. That only I am definitely have a problem with you are showing okay the box okay so what do you mean I have to look at all the box. What is the suspicious thing? Look left. Okay. Look right. So best way to I mean I mean that is your rule. That left left cook cheating at we are not going to show in that case we are not going to push I mean no no wait wait what I am saying is you know what action has prompted that thing. Right correct in now you know that yeah but you refuse to tell me that you you will show me a big screen I have to look at it and find out the teacher that he attempted to open the browser I will show the message so teacher has to read why is actually future difference one I understand that is the proof right but I am supposed to look at the proof no where we may thing is actually accurate there won't be any what he has to look at no other way how will I know that's why something suspicious related to where we may something suspicious I have to go and look at that image and read it no well you know that he has tried to open a browser no we are actually giving the most suspicious students names and yes you are okay all the students have tried to open a browser what I will say 5000 students open message open a browser second student open a browser third student sir cheating by doing resizing and cheating by opening a hotel this knowledge you know why can't you say that this student tried to resize the window five times actually that was not part of the requirement to show the teacher what no but they have again the same problem they have not looked at they were not no no no no sorry sorry what the teacher will see is inside their scope okay yeah but their their design is not correct they are not look at it from the teacher's viewpoint this whole system of capturing a web image instead of capturing the event is wrong you know the event we have prompted the message you will not count the number of events we are counting now web underscore image in database that's how we are actually calculating total underscore count in database correct this is here so web underscore count would mean how many how many seconds he was away from our window or how many times he actually tried to do something like resize or I mean press control but this is not sufficient again web underscore count doesn't tell me resize how many times how many times he actually tried to do something like that's what I said what are you allowing the teacher to do that was my question we are not allowing to you are not giving you all the information we are giving just a global value you are not giving all the information and if I go and look at 35 times I have to see 35 images when you know for sure there is 10 times web resize 15 times that information is lost so we can give but we are not giving correct that's okay doesn't matter you are not okay and you are not presenting the the result of the thing properly okay right yeah fine you don't look at it from the teacher's viewpoint trying to give trying to look I understand you are gone half the way yes now you are captured as how many images are there okay okay but in a real system okay the presentation is going to be an issue correct okay suppose I see that I find that these people have captured left and right first student left right okay second student left right okay now I have no means of I have come to the decision that that left right is probably I always say okay why I have to go and do it for 100 students okay that is my issue the reason why you are showing it to the teacher is to I mean tables in two database can be added for doing that but I mean we haven't done that allowed him to make a decision okay decision you are saying is case by case you are making an assumption that the number of people very less that is not likely okay okay because you may be wrong that is why you are giving it to the teacher and you are not allowing a teacher to act properly if there are lots of mosquitoes in my room and I start looking here and there what happens to your system okay we are actually I mean I mean then you have to actually tell the teacher that there were many mosquitoes and that's another question okay so there is a better way of doing it rather than with just images so you can actually summarize a video you take the whole one one hour video which is only two MB or three MB and that will actually tell you what the person was doing so I mean this application that I actually implemented rather than image because image does not tell you many things yeah I mean for example you are looking this side okay no your JavaScript can you are still capturing an image so you can capture a video so we can actually show you don't you don't see once you have a whole video or even any differences that is seen in the video you capture and that is accumulated and stored as a video sir then video has to be sent to server server you are anyway sending images but sir actually I mean sending images end of the exam you send that video so I mean that would actually I mean load on the server but I mean definitely increase then because so wait after another 5 minutes and then send so you can always design it and then actually I mean hardware constraints are there as Aparna said they had a chatter to not load the server that's okay I mean so did you find that server is getting loaded yeah I mean even when we are actually taking images right now we are actually I mean taking images at a interval of 2 seconds right so in 2 seconds I actually I mean simulated it for 30 users so one hour one hour exam how many images for 20 minutes we actually carried I mean because other people have to test it also it may have over so there were 18,000 images and they actually took about 3.24 GB see see see I am not debating with you I am saying look at an alternative if it is not useful don't use it by summarization means compressing and saving it you don't compress a video you only take those portions of the video which is going to be useful for you that's it portions of video instead of I mean frames yes combination of frames user is not doing any activity other than just typing you don't take that video yeah you take only that video which is yeah that is I mean definitely I mean integrable okay fine interesting events yeah yeah capture frames yeah yeah I mean in the place when I am capturing frames we will actually record a video and then we will send the segments to the server at the end yes that we can figure out how to do that


Where at Purple Day is in support of LGBTI youth that experience bullying, harm, you know, harassment, intimidation. I find it quite empowering to come into a school, especially on where at Purple Day, and talk to LGBTI youth in an open forum where they can ask questions and we can discuss and tell them about what we do as the Acer Officers. It's not about the idea that you are choosing or making a choice about sexuality or gender, but rather that is your preferred option. And so for us, in terms of at Indra Police Head High School, we understand and respect that and we also want to make sure that we can honour that. It is quite insightful to hear what others have to say and to learn what they struggle with and what they need. Our community's diversity is what makes us special. The fact that we can be together and different at the same time illustrates that sense of acceptance and wearing Purple to support a group in our community is just one way to express that. It breaks down those barriers and we can have those open communications and showcase what we have done, not only as an LGBTI Acer Officer, but in support of our LGBTI Support Network within the Queensland Police Service. I came here knowing barely anything and I left knowing a lot. I didn't know we had this much support and it's really good to know that we can just approach any police officer if we feel that we have to or that we need to. It's really good.