Hello everyone. I'm Sanjay Gupta. I welcome you on Sanjay Gupta Tech School. In this video, I'm going to demonstrate a scenario based on screen flow. Let's understand the scenario which I'm going to demonstrate. So we need to remove duplicates from a collection variable in our flow. So sometimes when we create a flow, so we encounter a problem. We have a collection and in that collection, we have duplicate records. So we need to de-duplicate that collection. So let's understand how we can do that. So I'm creating a screen flow. So in this screen flow, I'm going to get account records. So let's see here we have account records. So I'm going to fetch the account records where name is starting with flow. And in one collection, I'm going to fetch accounts which have phone number as 123456. And then I will be merging both so that I will be having duplicate records in a single collection. So here you can see this record starts with name flow and it is having this phone number as well. So these two records will be available as duplicate. So twice they will be available in the collection. So we need to do duplicate them. So here I'm going to use get record. So first I'm going to get accounts with accounts by name. So wherever name starts with flow. So those records will be varied. You need to select all reports done. Then one more time I'm going to use get records. So this time I'm going to get accounts by phone. So here you need to search for phone equals 123456. So wherever on account report, phone is equals to this value. So those accounts will be queried. And again, you need to select all accounts. Now I'm going to add these both into a collection variable. So I'm going to create one more variable naming it as accounts. Record and object as account allow multiple values. Now I'm going to use assignment. So I'm going to use this collection and I'm going to add all the records which I got through name. And again, I'm selecting accounts, add, then get accounts by phone. So the records which we receive through name and the records which we receive through phone, both are added into this accounts. So I clicked on done. Now I'm going to add a screen so that I can show you whether this collection accounts is having duplicate records or not. So it will be displaying account ID. So I'm using display text. So I'm searching for accounts done. So now I'm going to save the duplicate collection. So now I'm going to debug. So on screen you will see total six IDs and you will see the duplicates as well. So here you can see I'm selecting this ID. So I'm going to select this and here. So you can see this ID is available here as well. It is available twice. Then if I select second one, so you can see it is also available twice. If I select this ID, so it is available single time. If I select this ID, it is also available single time. So it means the initial beginning ID is available here. The beginning ID, this ID is available here and this ID is also available here. So I displayed accounts. I displayed this account on the screen. So here you can see one ID is available twice. So we need to deduplicate it. Now let's learn how we can deduplicate that account's collection variable. So if you want to do duplicate that, so first of all what we are going to do, we are going to have one more resource as collection sort. So I'm labeling it as a sorted accounts and here I'm going to select this accounts which we need to sort and we are going to sort it basis on the ID and in ascending order. How many items to keep after sorting? So we need to keep all the items. So in this sorted collection, those account IDs will be sorted. So I clicked on done. Now we need to start a loop. So I selected loop. So loop over accounts and here I'm going to select the collection variable. So here I'm selecting this accounts and direction will be first item to the last item. So I clicked on done. So this way this loop will iterate. Now I am going to create one resource as a variable. So this resource I'm labeling it as previous user ID. So it's data type is text and I clicked on done. Right. So what we need to do, we need to now apply a decision. So like when this loop will be trading, so this loop will give us IDs one by one. Those are available in the collection and we need to check that previous user ID with that loop current value. So if both are matching, then we need to skip and if they are not matching, then we need to add that ID into a new collection. So I'm going to create one collection as well naming it as final list or we can say final accounts. So record account, allow multiple values and done. Right. So here I'm going to apply a decision. Check previous ID. So here I am writing yes. So if previous user ID is equals to so loop over accounts, so we will be selecting the ID. So current item from loop and that's that current items ID. If it is equals to previous user ID, it means that record is already added into the final list. And next we need to have no. So previous user IDs does not equal this loop over accounts.id. If it is not equal, then we need to add that account into the final list. Okay. So here you can see we have these directions. So here if this previous ID is not equals to the ID which we received from the loop, so in that case we need to assign. So here I need to use final accounts, then add and current item over loop. So that item will be added into this final accounts. Right. So here you can see if that ID is matching. So we will go to yes and then move to loop again. Otherwise, if it is not matching, so that ID or that account record will be added to the final list. Now after this, like if it is matching or not matching, we need to assign the current account record that we received from the loop that ID into the, this previous ID variable. So here I'm going to add one more element that is assignment. So it will be the current ID. So in the previous user ID, we need to assign current item from loop. So the current item, which we are processing through the loop that current items ID, we need to assign in the previous user ID. So next time this previous user ID will be matched here in the decision. Right. So this way, this loop part is implemented. So I'm just showing it on the same page. Right. So what we can do now after this, like once this loop will be completed and after last item, if you want to display the values. So here we can write display text. So here I need to select final list. So final accounts. Okay. So I'm just clicking on save, clicking on Bieber. So as I click on run, you will see six IDs here. Now if I click on next, so you can see only four IDs. Those are unique. So if I go and compare them. So here I have this ID. So this was the, okay, this is through the loop. So we need to go above. Yeah. So this is the screen result that we received through first screen that is available in the flow. So in flow, we have two screens. So through this screen, we are getting the all data that is having duplicates. And through this last screen, we are having the unique data. So if I go here and if I compare, so if I select this, so you can see it is available here once and here it was available twice. Then here also, if I copy this, so here it is available twice. And on the screen result, it is available once. So this way you can see like duplicate records are removed and the deduplicated like unique records are available in the final accounts. Okay. So this way, with the help of this demonstration, I hope you understood like how we can deduplicate records. Those are available in the single collection variable. So we deduplicated a single collection variable. If you want to deduplicate two collection variables and then you want to merge them. So for that, you can watch upcoming lesson or video.


So hello, my name is Justin Nysen. I'm a software engineer from Microsoft, formerly Wunderless. So I work on the Wunderless app, and today I'm going to talk to you about getting started with developing or building your own device grid and getting started for Android iOS. So the challenge, you have all of these. And how will you test all of them? And each one of these cases. So you have these apps, but you want to test on different locales and languages. You want to test all the different OS versions your app supports, validate every different resolution of different applications or different devices, and different screen sizes like phones, tablets, phablets, et cetera. And all the different manufacturers that come with that. So you could try the manual single-threaded approach. It's not recommended. Or the manual multi-threaded approach, also not recommended. No, this guy doesn't seem to mind. Still not recommended. You could hire an Armaged Zombie testers. Definitely not recommended. So what options do we have? Automation, of course. That's why we're all here. But how, why, and where? So you can run automated, but you want to run in single-threaded. You might end up like this guy waiting for the test to finish. Paralelization, of course. Have a happy VFF forever. So first, we'll talk about the cloud as an option. We'll have the pros and cons. You can send or test the cloud, and we'll talk about it. So you have the pros. So this is the present and the future of automated testing. Just like everything for our server architectures are going to AWS, Azure, et cetera. So will our tests, and they are. They're headed that way in a foreseeable future. Everything will be run in the cloud. Very rarely, I can imagine, things will be run locally. You have ease of set of integration. You don't have to do any of that. It's all done for you. All you have to do is send your test to these services. You don't have to buy all the machines and all the devices to.


Hi everybody. Welcome to our Tabla Rasa online retreat weekend. I'm Peter and the theme for this weekend, I place my future in the hands of God. So we're gonna have a beautifully deep weekend and we'll have members from the Living Miracles community talking today. Also, we've got a movie workshop tomorrow and a closing session on Sunday. So it's gonna be a full weekend. So to start with, we have David Hofmeister and Francis Xu, David's in the States and Francis here in the studio in Mexico. So I'm gonna pass it over to you both now. Hi everyone. Hi Francis. Hi David. Hi everybody. What a great topic. What a great topic we have for this weekend. Yeah, we were talking this morning, it's just so profound when you start to get to the core of placing the future in the hands of God because we have to admit it, our programming has not been to place the future in the hands of God. That's not our education experience. That's not our experience that we learned from our parents. That's not the experience that we learned from society or the world. It seems like it's more, you have to aim for the future, aim for a better future and work hard and learn lots of things and prepare. And if you really do it right, you'll have a better future. And then Jesus comes along in his course and he says, be not content with future happiness for it is not your just reward or you have cause for freedom now. He flips it over and he says, the present moment is where we're going together. So we're not going into the future or as the movie was, back to the future. We're not going back to the future. And we're not going back to the past. So what a treat Francis to be able to be here with everyone and practically talk about this and go into our own experiences with placing the future in the hands of God. Yeah, I feel like it's such a precious function we're given to kind of constantly be reminded by the spirit and extend the spirit's message of what truly is that can free us completely. And I think for a lot of us, myself included, we didn't really, at least for myself, I didn't really grow up putting God as my goal of this life. That's what my life is about, it's about God. And that's it, that's end of discussion. There's no question, but really it's kind of like, okay, deep down we are searching. I was searching for happiness, I was searching for the kind of love that I can't even put my finger on. And yet the world that is in front of me offered a lot of pathways toward that goal. The world offered everything seemingly. It says you, oh yeah, there are many, many pathways, but definitely is within this world. Let's find it, let's find it through getting yourself established, let's find it through getting, collect a lot of approval and a lot of recognition.   That's where you find it. And wow, wow, what a distraction, but what a realization when we reach the point to see that the world really only offer one option no matter the form it takes. But that is according to Jesus' beginning of finding the real alternative because all this world is offering is a delay and it's a distraction and it's saying, you know, everything you want is offered right here. If this one doesn't work, let's go for the next one. And you know, here we are together from all over the world. We're here coming together to say, well, I think, I don't think so. Yeah, yeah, you know, it's, it's interesting because I think the world seems to offer many, many options and then the world, the ego teaches us, well, yeah, there's many options, but if you have money and resources and friends and friends in the right places and connections in the right places, oh, the ego says there's even more options. You'll have more options if you have money and friends in the right places. And it tries to lure us into thinking that our salvation can be found in some outcome of the world. And all of it's based on perpetuating the belief in linear time. That's at the bottom of it all, you know, when people say, what's underneath this whole world? I showed a movie a number of times. It's in our movie Watcher's Guide to Enlightenment called Dark City in which the main character starts to, people are falling asleep and he starts to go into the underworld, the subconscious and all there is is a giant face down there. And finally, when the face opens up, it's, it's a clock. It's time. Linear time was invented by the ego to block us from remembering eternity. So it's, it's not just the specifics of what's going right or wrong in terms of the world or world events, but it's actually the very core, the very fabric of what we believe as linear time was invented by the ego to keep us from knowing eternity. And Jesus does say, he says time and eternity conflict in your mind. You can't really know both. It's really one or the other. He's saying eternity is true and linear time is false. And yet, if we're honest, we see that everything we believe about everything, our bodies, the environment, our families, our friends, our, our occupations, our ambitions, our future goals, our imagination. It's all based on linear time. And the funny thing was I, I just asked Jesus, is there, as we talk about placing the future in the hands of God, is there, is there any kind of passage from the course or the workbook that would be helpful to kind of reorient ourselves to see how important it is to place our future in the hands of God, to let go of trying to plan and control the future and to give it over to God. And he took me all the way back to lesson number eight. He basically says in lesson number eight, no one really sees anything. He sees only his thoughts projected outward. The mind's preoccupation with the past is the cause of the misconception about time from which you're seeing suffers. Your mind cannot grasp the present, which is the only time there is. It therefore cannot understand time and cannot in fact understand anything. The one holy truth thought one can hold about the past is that it is not there to think about it at all is therefore to think about illusions. Very few have realized what is actually entailed in picturing the past or anticipating the future. The mind is actually blank when it does this because it is not really thinking about anything. So with that little send off from Jesus, it's like when we think we're thinking about the logistics about our food, our clothing, our family, our friends, what we're going to do today. Does anybody here ever have you ever made a to-do list for what you're going to do? Jesus is laughing because the to-do list is part of the defense against the holy instant. The to-do list is part of the defense against eternity. If we're perfect right now, which Jesus assures us we are, then he's saying whenever you originate a plan based on something you value in the world, achieving something, accomplishing something, being successful at something, a skill, an ability, any kind of worldly achievement, he's basically saying you're defending against the awareness that you're perfect right now. So Francis and I were talking this morning and we said, yeah, well, yeah, that is the bottom line. We both went through our educations and we both went through 10 or more years of university. We were bent on careers, on finding the right relationship, on getting settled down and getting accomplished, like Francis was talking about. We were doing what the world told us to do, to be happy. And then at some point the wheels come off, where you're frustrated, you're disillusioned, you're singing that Peggy Lee song, is that all there is, is that all there is? You feel unfulfillment, you feel there's got to be more, you feel something's not right. Why are other people so happy and I'm not? And thus begins a sense of disillusionment for some people with sadness, it's depression, for others it's frustration, anxiety. This is the human condition, it's the belief in nothing. Like Shakespeare called it, much to do about nothing. It's the belief that the world is much to do about something and you have to achieve something in order to be worthy, in order to be successful, in order to be valued, you have to achieve something, but it's all part of a hamster wheel of time that's designed to keep us from knowing who we are right in this moment. So we're going to have fun this weekend because Francis and I have been through this. We went through the unfulfillment. We went through the disillusionment. Francis, I know you, you did diet regiments.    And then that wasn't enough. It wasn't even nearly enough. So that, that's when you start to realize, uh-oh, something is fishy, something is sneaky about this world when you do all the things that you're supposed to do to be happy and you're still not happy. That's when you start to go, hmm, something's, something's fishy. That's exactly it. That's the moment. I know that, you know, like my mindset was so set on what, you know, the world have laid out, like reach this point, you will be happy. Reach this point is multiple. You have to have the best relationship. You have to have money, investment, assets, and recognition, success, career. It's all have to be met. Then I'm like, okay, all of them, you know, and they're well underway towards, you know, I thought why is, at one point I really felt why is happiness seeming, seemingly going further and further away from my life, further and further away. That's something really like exactly what you said, David, something started to, to feel, oh, it doesn't make any sense to me. And I remember, I just really paused just in my mind and asked this question, what is going on? What is that is missing in my life? Because nothing is missing in form. Why am I not happy? And that is like a very significant question for me because I think that was the first time I didn't have an answer in my mind. And it was a complete blank. I couldn't generate an answer for myself. And then what happened was, I was asking whether I'm to stay in Australia where I was living at the time or go back to have a change of scene, change everything, change Korea again. And then this voice came to me and said, stay. There is something big waiting for you. You need to be waiting here. And that voice was like this was the miracle the first time I thought something happened to me that violates all the laws of this world, basically. But it was so assuring and so right. I had no experience of fear and freaking out. I was just, oh, okay. And I will wait here for my next step. But this is what is happening to myself and to I perceive in everybody's life is that once we stop, even just for a brief moment of investing and be so certain about what the ego has to offer, what this world has to offer, even just a moment, a miracle comes in, a miracle that violates all the laws of this world, comes in to show us there's something else that is right here. That's right here with us, you know. And that is really what I think the goal of on verily pursuing the goals of the world has suddenly started to get shattered. And I think it's a blessing in disguise really when David and I were talking this morning about the disillusionment that has to happen, that has to happen to stop ourselves from keep focused on the goals of this world. That disillusionment to start to see that something is not is not really giving me what I want. And there is nothing that is giving me what I want here. It is a true blessing. That's where we can start to allow some lights to come in. Yeah.


To continue the news of federal high court sitting in Oshogu today affirmed Senator Ademola Adelike of the PDPS, the authentic candidate of the party in the 4th coming July 16th Governorship election in the state. Justice Nathaniel Ayo Immanuel in his judgement which lasted for more than one hour 30 minutes held that the primary election conducted at the Work Div Centre Oshogu on March the 8th which produced Dotun Babaemi was null and void. And PDP during its governorship primary elections on March 8th had held parallel primaries in the state. It's actually a big tree for the democracy of this country because looking at the nature of the action that was brought it went to us after us. I was wondering how would somebody bring this kind of action. First, they predicated it on a certain judgement of Oshogu State High Court which actually held that a certain preservative order of Farola J of night of November 2020 was valid. Even the Court of Appeal had set it aside since 5th of March 2021. But the Federal High Court of Oshogu rightly held because we exhibited the judgement before the Court rightly held this morning that the same preservative order was accordingly set aside because the Court of Appeal allowed the appeal and resolved all the issue in favour of the appeal. We have had the ruling of the Court. The Court ruled on the local standing of myself to challenge the primaries that were held at the stadium and the judgement would be available within the next 24 hours. I want to say that this is purely a family affair. We will take the judgement when it's available. We'll review it not just with our lawyers but with our people. Please do subscribe to our YouTube channel and don't forget to hit the notification button so you get notified about fresh news updates.


Also attending this evening's parade are the Marine Forces Reserves Summer Officers Tour. First Marine Division Association Group, the Marine Corps Junior ROTC Program from Garfield High School in Woodbridge, Virginia. The basic school, Delta Company, Quantico, Virginia. The General Society of the War of 1812 from Philadelphia, Pennsylvania. The Navy ROTC Program from George Washington University in Washington, D.C. The School of Advanced Warfighting, the Marine Corps University. The Marine Corps Diversity 8th Officer Program. And the Marine Barracks Washington Centerhouse reunion. Will these special guests please stand and be recognized. We are very proud to have with us this evening a number of veterans and veterans groups who are visiting from around the country, including several Marine veteran organizations. In addition, it is a privilege to welcome service members who sustained injuries on active duty, as well as their family members who have also sacrificed so much in support of our wounded warriors. Ladies and gentlemen, please join us in saluting these and all outstanding Americans and attendants who defended this nation and the freedoms we cherish, our military veterans. To all our and thank you for attending our ceremony, we hope you enjoy your visit here at the oldest post of the Corps, Marine Barracks Washington, D.C. Ladies and gentlemen, please join in welcoming our host for this evening, the director of Marine Corps staff, headquarters, United States Marine Corps, Lieutenant General Greg P. Olson, accompanied by his wife, Dawn. Please join in welcoming our guest of honor for this evening, the Principal Deputy Assistant Secretary and Director of the Diplomatic Security Service for the Bureau of Diplomatic Security, United States Department of State, Mr. Carlos F. Matous, accompanied by his wife, Beth. Good evening, ladies and gentlemen, and welcome to the oldest post of the Corps, Marine Barracks Washington, D.C., celebrating over six decades of performing evening parades here in our nation's capital. The ceremony you are about to witness was first conducted at the barracks on July 5, 1957. While the parade is standard for Marine units around the world, some elements have been modified to showcase the unique abilities of our marching and musical units. The mass formation of troops on one long line at close interval made possible the massing of firepower from muzzle-loaded muskets of the past. The agitant forms the line of battle and in those early days that line consisted of two or three ranks, much like the parade formation you will see this evening. Tonight, we celebrate the pride, professionalism, and a spree decor that are hallmarks of this barracks and the Marines who have distinguished these hallowed grounds for over two centuries. They represent all Marines around the world who embody our Corps' values of honor, courage, and commitment. In our ceremony with a performance by the President's own United States Marine Band, the band traces its roots back to July 11, 1798, when an act of Congress authorized the Marine Corps to employ a drum major, a fife major, and 32 fifers and drummers. Today, the Marine Band has more than 150 members who proudly carry out its mission of providing music for the President of the United States and the Commandant of the Marine Corps. The band will open with a march composed by John Philip Sousa entitled The Invincible Eagle, whose legendary band leader and the March King, John Philip Sousa, who led the band from 1880 to 1892. Of all his marches, one so embodied our American spirit that in 1987 an act of Congress proclaimed it the National March of the United States. Ladies and gentlemen, celebrating over 224 years of serving as the guardian of American musical tradition, the Marine Band will perform Sousa's most famous march, The Stars and Stripes Forever, Marine Garrison by President Thomas Jefferson as he rode on horseback through the new capital city, along with our second Commandant, Lieutenant Colonel William Ward Burroughs. It is the oldest active post of the United States Marine Corps. Just beyond the north end of the parade deck stands the historic Home of the Commandants. It has been the residence of every Marine Commandant since its completion in 1806. The present occupants are the 38 Commandant and his lady, General and Mrs. David H. Berger. During our nation's bicentennial in 1976, the barracks and the Commandant's house together were designated a National Historic Landmark. The flag flying over the barracks this evening is a replica of the National Encent displaying 15 stars and 15 stripes that would have flown here in 1801. Ladies and gentlemen, we are proud to introduce the official mascot of Marine Barracks Washington, D.C. Private Chesty the 16th, a pedigree English Bulldog Private Chesty the 16th enlisted in the Marine Corps on 14 March 2022 and completed recruit training on 25 March 2022. The first barracks mascot was named in honor of the most decorated Marine in history, Lieutenant General Lewis B. Chesty Poehler, a name that has been inherited by every mascot of the oldest post. Ladies and gentlemen, please rise for the presentation of the colors. It is unique. Planked by two Marine riflemen, our national flag is carried by the color sergeant of the Marine Corps while the Marine to his left carries the official battle color of the Marine Corps. The 55 streamers and silver bands displayed with the battle color commemorate the military campaigns in which Marines have participated. They span the entire history of our nation from the Revolutionary War to the combat operations in Afghanistan, Iraq and Syria. Decorated with palms, Oakley clusters and stars, they represent more than 400 awards and campaigns of the United States Marines. It is the privilege of Marine Barracks Washington D.C. to be entrusted with the custody of this battle color. Ladies and gentlemen, please be seated. They represent over seven decades of marching and rifle drill precision, a legacy of honor, commitment and discipline that began during the Sunset Parades of 1948. The M1 rifles they carry with fixed bayonets are standard for all our marching platoons and weigh in excess of 10 and one half pounds. The platoon executes its drill sequence without verbal cadence or commands. Ladies and gentlemen, Marine Barracks Washington D.C. proudly presents the United States Marine Corps silent drill platoon. We'll open its concert this evening with a march composed in honor of the United States Naval Service personnel whose heroic actions inspire these famous words, Uncommon Valor. The concert continues with the Broadway original by Anthony Newly and Leslie Brickus, later reimagined by Michael Bubley, feeling good. Ladies and gentlemen, Marine Barracks Washington D.C. is proud to present the Commodots of the United States Marine Corps and people who are currently serving in the United States Armed Forces. This evening's concert will close with the movement from Giuseppe Verdi's famous Requiem, DSERA. Tonight's performance will feature the saluting battery of the Barracks which will be fired by the body bearer section of the oldest post. Ladies and gentlemen, celebrating over 88 years of marching and physical excellence, it is once again the Commodots of 10 D.C. to have as our guest of honor this evening the Principal Deputy Assistant Secretary and Director of the Diplomatic Security Service for the Bureau of Diplomatic Security, United States Department of State, Mr. Carlos F. Matous. Our distinguished guests in the reviewing area are the Director of Marine Corps staff, Headquarters United States Marine Corps, Lieutenant General Greg P. Olson, and the Commanding Officer of Marine Barracks Washington D.C., Colonel Robert A. Sutcher. Ladies and gentlemen, please rise for honors. Ladies and gentlemen, as we prepare for pass-in review, please direct your attention to the two marching companies assembled before you. These companies are comprised of infantry Marines who are hand-selected to serve at Marine Barracks Washington. In addition to parade support, these companies conduct joint service honor ceremonies at the Pentagon, the Tomb of the Unknown Soldier, and the White House. These Marines also have the solemn duty and distinct honor of performing dignified transfer ceremonies for fellow Marines who have made the ultimate sacrifice while serving our country, as well as laying our Marines and their families to rest in Arlington National Cemetery. When not performing ceremonial functions, the Marines of Companies A and B hone their infantry skills in preparation for future service in combat units of the Marine Corps' Fleet Marine Forces. Ladies and gentlemen, we ask that you please rise when the colors approach you. We bring the evening parade to a close. The ceremonial bugler of Marine Barracks Washington shall emerge atop the ramparts and pay tribute to our beloved fallen comrades by sounding techs. This historic bugle call originated in the U.S. during the mid-1800s as a way of signaling to troops the days end and lights out. It would later become a way of saluting the honored debt throughout our American Civil War. Today, it is the final and perhaps most solemn elements performed at all military funerals. Ladies and gentlemen, please remain standing as we now honor those gallant men and women who have given their lives in the service of our country. Ladies and gentlemen, this concludes our ceremony. You are free to depart the barracks at this time, and we ask that you please remain clear of center-walk until the official party has departed and the Crescent has been dismissed. Those guests who are interested will then have an opportunity to meet and photograph Chesty the 16th, the Drawmagers of the President's Zone and the Commandant's Zone, and the Color Guard. On behalf of Marine Barracks Washington, D.C., thank you for your attendance this evening and Semper Fidelis. We hope you have enjoyed your visit here at 8th and 9th, the oldest post of the Corps.


Hello and welcome to the NPTEL course on an introduction to programming through C++. I am Abhiram Ranade and this lecture is about representing variable length entities and the reading for it is chapter 21 of the textbook. So let me begin with the programming problem. So we would like to design a scheme to store the names of the students in your class. Now there is a natural solution to this, use a two dimensional array like we talked very recently, store the ith name in the ith row. Now what will the row size have to be? So the row size will have to be as large as the length of the longest name and therefore it seems that most rows will be mostly empty and therefore we are using the memory quite inefficiently. So you might wonder is there a better scheme and this is not the only problem that we are looking at today indirectly, there are also other problems which are very similar. So for example for some reason I might want to store a whole bunch of polygons in my program and say the polygons have varying number of sides. So again the provision that I might have to make might be for the largest polygon whereas I might end up having a lot of small polygons. So again I will end up wasting a lot of space. So the C++ standard library which is discussed in chapter 22 of the book and which we will take up later on contains very safe and convenient classes for this. And they will be sufficient to store names, polygons and other such entities and you should use them wherever possible. But in this lecture or in this chapter of the book we are going to talk about how to build the classes like those in chapter 22. So essentially we are going to understand what is the mechanism behind these classes. The sort of what is the magic on which these classes run. So here is the outline for today's lecture. So I am going to talk about something called the heap memory which is something that you have not seen so far. And there will be a discussion of the primitives for allocation and deallocation of memory from this heap memory. Then we will talk about how do you manage this heap memory. And we will do a detailed example. And in this example we will talk about a class for representing text strings. And this will be useful in storing the names of students, the problem with which we started this lecture. So let me begin with what you already know. So you already know the activation frame memory. So how do we define variables? Well so far the idea has been that the programmer will give the variable definitions in the text of the main program or of some function as well. And the memory for these variables will be allocated when control reaches the variable definition statements. And the memory will be allocated in the activation frame of the current function. And it will also be deallocated, well it will be deallocated when the control exits the block containing the definition. So it could be exiting the function, it could be a for statement whose variables whose control variable might be getting deallocated but yes the variable will be deallocated as well and there is a very clear point where the variable is going to get deallocated. Now variables which are created and destroyed in this way are called automatic variables. Automatic because the memory allocation and deallocation sort of happens automatically. Well I mean you could say that the user is saying user is defining the variable and therefore it is getting created yes but at least the deallocation is sort of I mean it is indicated by the end of the block. But anyway so because the user is not explicitly asking for memory at least the user is not explicitly giving up memory these things are called automatic variables. In addition to the activation frames we also have this so called heap memory. So this is a completely separate reserved region of memory completely different from the activation frames and in this memory it is possible to explicitly request say give me some memory for a certain variable and that memory will be given from the heap and we will be saying that this variable has been allocated in the heap or on the heap whatever and when there is no more use for the allocated memory the program or maybe the programmer must explicitly return the memory to the heap. So the program there must be a statement in the program which will say now I do not need this memory take it back put it back and maybe give it to me later if I ask for it again. So after the memory is returned it can be used to satisfy other memory allocation requests that might come up in the future. Now as you can see there are explicit statements which say that look give me this memory or there will be an explicit statement which says take this back and so therefore this memory is not automatic in any sense and even the de-allocation is explicit it does not happen just because a block is exceeded by the control. So what have we discussed so far well we already find the problem the problem being how to efficiently use memory for storing entities with varying sizes and we have said that the solution will be provided using the heap memory which is separate from the activation frame memory and next we are going to talk about how to use the heap memory but we will take a quick break.


All right, guys, I guess we'll get this started. Thank you for coming to UX is more than a buzzword. It's going to be quite a lot of content to get through. There's a lot to do with UX. And yeah, we've got a lot to go through. It's very high level. But I'm hoping it covers a lot of topics. And hopefully, you guys learned something. Hopefully, I learned something from you. So let's get this started. A little bit about me. My name's Callum, and I work as a user experience and interface designer at Doghouse in Perth, West Australia. Not that it really matters. I have a Bachelor of Science in Digital Media to prove I know what I'm talking about, kind of. And that's my Twitter, LinkedIn, and email. So feel free to get in contact with me. So to get the boring stuff out the way, UX stands for user experience, quite obviously. And this definition here is, I think, brilliant. It comes from the Oxford Journals. And it says, user experience design, UXD or UED, is the process of enhancing user satisfaction by improving usability, ease of use, and pleasure provided interaction between the user and the product. And I think that perfectly sums it up. It's important. I don't think a lot of focus has been on UX until fairly recently. And yeah, I think it's super important. It's really interesting. So story time, I was traveling with a mate of mine, one of my best mates from high school. And we were traveling across the Nullarbor and about halfway across, we were going from Perth to Brisbane. And about halfway across the Nullarbor, I ran out of data on my mobile phone. So I went to the mobile Optus site, which was an experience. And I went to go purchase a data pack. And so I finally navigate all my way through it. And I get to the end. And I go to press the Purchase button. And the Purchase button is broken on mobile. So I mean, you can kind of understand here that it's absolutely insane that a company of that size on mobile, that they're losing sales all because of this little, I guess, it was a styling issue. Because I flipped the orientation of my mobile, it went to a different breakpoint, and the button was fixed. So you can imagine how many sales are losing just from little things like that. And there's an example of it. So the term user experience designer. It's a bit of a funny job title, actually, because you can't actually design a user's experience. It's impossible. To get inside the inner workings of each individual to provide them the experience that they require is impossible. But the one thing that we try to do as user experience designers is design for the user experience. So using tried and tested methods of designs, stuff that we know that works well, try to get inside the user's head, do as much testing as possible to give them the best user experience that's possible. But to actually design a user experience is impossible. You have to design for the user experience. And that little graphic there to the right perfectly sums up all the things that we tried to do as user experience designers. So it needs to be useful, desirable, accessible, credible, findable, and valuable. This is a bit of a hot topic. There's a bit of a debate between, I guess, UX designers and user interface designers coming together under one banner. So can a UX designer design interfaces? I think so. I think the two go hand-in-hand pretty well. However, depending on the size of your agency, if you're a smaller agency and you've got a UX designer who can also design interfaces, I think that's great. However, if there are the time and resources and money to provide a separate user interface designer and a separate user experience designer, then that's probably the way to go as well. But yeah, it's quite interesting. It's a bit of a debatable subject, which we won't get too far into today. So user-centered design is the backbone of UX. Basically, we're considering the user at every stage of the design process. They are our main focus. We want to know who is using it, how they're using it, and why they're using it. They're the three main questions that we want to try and figure out before we even touch wireframing. It's the old saying, research, design, if it fails at usability testing, research again, and just keep doing it over and over until you get it right. And then there's this interesting, I find it interesting at least, it's called the path of least resistance. So I managed to snap this pretty cool picture on the plane coming from Perth to here on Wednesday night. And obviously this is much larger scale, but if I just zoom in a little bit, we can kind of see here that we've got this section of farmland. And then the path of least resistance is all about the user trying to get from A to B as quickly as possible. And that's what UX is. We don't want to put hurdles in the way.  So what's quite funny with this is that if we look closely, if I go back, you can see a little man-made paths being made right across that corner angle. And this is known as the desire line. So you may have seen it before where you've seen a really curvy bike track with grass in between, and then there's bike tracks going over the grass. It's just like, why would I go around this complicated pathway slowing down when I could just cut straight across? And I find it super fascinating. I was actually quite happy I got that picture. So, planning. Basically, you need to plan as much as possible before even thinking about wireframes. You need to figure out what's the best way to gather all of these requirements. Is the client providing a brief? Sometimes they don't. A lot of the time they don't. And it's our jobs to basically extract that information from them. Another thing also that we want to plan is we want to know how much time to dedicate to different meetings, which I'll talk about in a bit. And how much budget are we working with? Is this a brand new site? Is the budget large? Is it small? Or are we making tweaks to an existing site? Are there different things that we can remove to save money, but still try and provide a great user experience? So this is all, I guess, yeah, the planning stage. So it's important to have a great kickoff meeting. I think you should involve the designers and devs from the very start. Often you can get into the situation where a designer and a developer will be lumped with a dodgy handover after three workshops. And it's very, very hard to try and explain to them months and months of work in a small meeting.   So, yeah, involve the designers and devs from the very start. And they can give great insight in the meetings. Basically, you want to learn about the business and the users in the meeting. It's pretty obvious, but yeah, basically the business, they're gonna know the user's the best. And then it's up to us to provide tests and try and learn it better than their own business. For the kickoff meeting, you don't want to get too far into business and user requirements. It's basically an introduction to the business. So yeah, stay on topic and it's very easy to get sidetracked. Gathering requirements. So basically to do this, you're gonna want to run a requirements workshop. These are great for discussing business requirements, must have features, finding information about the users, creating user journeys with the client, and also creating personas, which are fake profiles and I'll talk about them in a bit. And a big thing as well is that you want to know about the competitors. There's a lot of things that you can learn from the competitors and other people in the market. They might be doing things better, they might be doing things worse, and it's great. I mean, they've most likely already done the research, it's sitting there, you just need to look at it and take what you want from it. And also if they do happen to have an existing product, run through it and find out what's wrong with it before trying to fix it. Contextual research is huge. It's kind of skipped over a bit, but in what context are the users using the website? Are they on their mobile phones? Are they commuting? Are they at the beach? Are they relaxed? Are they sad? Are they under pressure? These all come into play when you're creating different types of websites, whether or not it's brochure websites or if it's e-commerce. So yeah, very important contextual research. Stakeholder interviews. Basically what I've been talking about is we should try and break these up into small workshops so that people aren't getting super tired and cranky and hungry. And basically, yeah, they're long and tiring if you can, feed your clients. Take them out to lunch. Get a few beers in them. The stakeholders, they're the top dogs. They will give you the best understanding of the business. And they'll also be able to tell you after the website's gone live and what it means to them, a success and a failure. So competitors, I touched on it briefly. Basically, yeah, you wanna benchmark the competitors. You wanna know what they're doing right, what they're doing wrong, and what we can improve on. So yeah, exactly what I said before. It's really important. I mean, you need to know what competitors are doing. Usability testing. So there's three main forms of usability testing. There's Gorilla, which is a kind of commander. You go into the city and you say you've got an app that you wanna test. You can go into the city and ask people to try it out.  That's generally for small kind of budget clients. It's still valuable information, but the problem with it is that if you're targeting random people, it's most likely not a person that they may or may not be using the product. Lab is for hosting your own usability testing session. So you would set up maybe a computer and a desk, invite people in and they can use their product, use the product and get their feedback on it, whether or not it's a rapid prototype. You can also give them sketches of pieces of paper and kinda walk them through how the app or the website's gonna work. And remote is pushing all of this hard work onto someone else and paying them for it. So basically, there's usability testing professionals where they will source clients that should be your target market and then they'll host the usability sessions and then give their findings to you. And seriously, if you have the budget and the time, it's a no-brainer to do this because it can save you a lot of headache in the future because without usability testing, you're basically using previous knowledge and a little bit of guesswork to give people a great experience. Analytics is an important one. If they have it already installed on their current website, brilliant, you can see where things are falling down and they can really provide valuable insight into the human behavior, especially with e-commerce. It's great for seeing if people, I guess, are leaving checkouts earlier if they're abandoning them and then you can try and figure out why they're doing that. So personas. Personas are fictional characters, I'll just read this out. Personas are fictional characters created to represent the different user types that might use a site, brand, or product in a similar way. And that explains it brilliantly. Personas are all about trying to create fictional characters that could potentially be using the product so that you can further try to get inside the user's head and figure out the user behaviors. Some of these personas can contain the name, gender, age, the salary, key goals, et cetera, et cetera. And personas quite closely link to user journeys. Basically user journeys help us understand the behavior of the user and how they're going to interact with the product. It's when you run through possible scenarios that you pick up forgotten functional requirements. Sorry to say it's a border. So I'll just go to the next slide where I've got a very simple example. So this is a user journey of someone who's forgotten their password. User clicks on forgot password link, user enters email address. The system then sends an email to reset their password. User clicks on reset link, provide an email and then the user enters the new password field and submits the form. That's a very, very basic user journey. But if you apply this same principle to other types of journeys, you can figure out maybe what you've missed from the requirements stage or from a workshop. And wait a minute, and so then you can say, wait a minute, we've missed this and then you can go back to the client and figure out what's actually going on. It's actually very helpful for when you're doing complex e-commerce systems where maybe there's already existing customers, new customers, et cetera. Yeah, these are great. I'll touch on this briefly. Information architecture. Basically, you wanna try and figure out what is the most valuable information to the client, to the user, sorry, and then make it easy for them to access it. There's no point hiding, say for example it's a site that really depends on generating inquiries, that's how they make their sales. And if you hide that inquiry form, say in the photo or a little button, people aren't gonna click it. You need to make things obvious to the user. And it just goes back to that point of providing the path of lease resistances, giving them what they want straight up rather than trying to jump through hurdles. So this is where it gets a bit interesting. I know that was tough to get through guys, but it's essential, it really is. I mean, you have to do all of that planning before even thinking about wireframing. So wireframing is incredibly useful for establishing that information hierarchy. So we can get a bit of a picture on how we want things to look, we want them to be placed, what menu items we're gonna have, how many, what's it gonna look like once we respond down to mobile. And as well, it can be really useful to developers. It gives them a bit of insight, especially if they're simple wireframes, gives them insight into think, into maybe what blocks they need to create in Drupal. So maybe they can get a little bit of a head start.  And it's useful for finding and fixing flaws in the website. It's much cheaper to fix the problems now than when they creep up three months time into dev. That's when it gets expensive and that's when projects can go over. So this is one type of wireframing. It's called sketching and it's exactly what it sounds like. These are for quick and dirty, getting a whole bunch of ideas onto a piece of paper, scribbling, erasing, and just trying to get as much elements onto the piece of paper as you can so that you can then refine these and then take them over to maybe a more polished wireframe. Yeah, basically, and also if your sketching is good enough, you can show them to clients if you really want. You can show them maybe what they think. And this is a couple of sketches that I quickly did on the plane, just to give you an idea. Can see we've kind of got like a, we've got a kind of about us brochure. Sorry, yeah. You have blocks, right? Yeah. What about the detail? Great question. And that's sketching is perfect for just getting all the ideas onto the piece of paper. It doesn't need to go down into that kind of granularity. Maybe if you were showing a client and if you weren't going to a more refined wireframe, then you would have to touch on those details. But this is for kind of fleshing out areas of content and blocks before moving on. It's a bit of a stepping stone, actually, I find. And sometimes it can be quite hard to jump into like a wireframing tool without having any idea. And it's kind of good to refer to your sketches and just be like, oh yeah, that's right. I am missing that Facebook block. Oh yeah, brilliant. This is another type of wireframe. It's called low fidelity. Once again, they're very, very quick. They're great for low budgets. Maybe you need to get a quick fix right out the door. And these are great for just quickly mocking up something to give to a developer or to a designer. And that's just kind of an example there. You can see we've got a header about us, context plus, a bit of a Twitter feed and a footer. Very, very simple, very, very quick. This is where it starts building up a bit more information. So this is called grayscale fidelity. Basically use your blacks, your grays, your whites to define regions and blocks and buttons. And you build up a little bit more detail. So we can kind of see here, we've got a logo up in the top left corner. We're going to have a mobile button there. We've got a search input. We've got three buttons to the right over there. These are kind of what our product teasers are going to look like. We know we're going to need the title, the price. We want to add them to the cart and maybe we want to favorite them. Doesn't necessarily have to look like this. I mean, we might want to put that star up in the top right corner. Yeah, once again, it's not as, because the next example is high fidelity. And as you can see here, it is getting very close to lingering on the design. So yeah, here we can see that we've introduced colors and there's a lot more detail now. So designer can go to this and they can see, okay, this is exactly what we need and then they can work their magic on it. It's still establishing all the places and the blocks. And I know it looks very, very close to a design. It's getting there, but that's only because we've used a little bit of imagery and used a little bit of colors. I mean, if you were to apply those back to our grayscale wireframe, it would look very, very close. No, so the styling documentation should be covered in one of the previous workshops where maybe you talk a bit about the client branding and then that's when hopefully they already have a style guide. If they don't and they're looking for a complete branding direction, then that's when we would then go to our designer, come up with a style guide and then maybe then we can go into, once we've signed off on the wireframes and designs, we can start building an online style guide for the developers. But no, it's not meant to be a design. Right, so a bit of a functional specs requirement, yeah. Yeah, definitely. I mean, that can be coupled with the wireframes. It's kind of, it's not exactly part of, I guess, the user experience journey, which I'm trying to cover in a lot of high level detail. Yeah, yeah, and that's something that you definitely want to sit down with the developer and say, hey, we need these fields, we need these, and then come up with a functional document together. But yeah, it's not exactly part of, I guess, the user experience journey. Yes, mate. So you have this, it's not what I asked, it's not my design. How do you cope with that? Brilliant question. So you need to make it clear that it's not a design to the client. This is still going to design. And yeah, this is where it does get a bit complicated. So it's very easy for them to confuse the design, and then that's when you need to say, okay, so maybe high fidelity for a certain client probably is in the right direction. Maybe you want to go grayscale or low for them. But to other clients, and especially to stakeholders, a high fidelity wireframe can really sell them on a concept because it kind of gives them a glimpse of that final product. But yeah, definitely. It has happened before where they mentioned like, okay, so for example, can that cleaning button there be green instead? And then that's when you have to reiterate, but most of the time it's perfectly fine. They understand that it's still a wireframe. It just has a couple of colors applied to it for context. Yeah, yeah, go for it. Yep, yep, definitely, yeah. I talk about that a little bit in the bit. Yeah, and I mean, that's another point as well is that it's very hard if you give a client a wireframe, it's hard for them to imagine what the final product could look like. So it does require, it requires a lot less imagination from the client, because they can kind of see it coming together as a website. But yeah, definitely that is one of the cons. It is more time consuming, obviously. Prototyping is a great way of also showing the client what the final product could look like. And especially when I talk about the tools that we can use, you can convert these high-fidelity wireframes and be able to link between them and create a working prototype, which you could then use for usability testing. So yeah, prototyping is, I think, a big one, and definitely if you've got the budget, try and just squeeze it in. So cool, so tools. Basically, yeah, there's different tools for different jobs. Say if you're really good at illustrating, you feel comfortable in illustrating, then create your wireframes in Illustrator, because there's a program called Envision, and what Envision does is you can bring in those Illustrator files as different files and blocks, and you can create prototypes that way. But then you have tools like Bolzamic, where it's an in-built editor, yeah, basically it's an in-built editor and prototyping and wireframing tool in one, and it also works on the cloud and also has a local client. UX PIN, that's the one that I currently use. I think it's slightly better than Bolzamic because Bolzamic's still running on Flash, unfortunately, so the performance isn't as good, and yeah, it's Flash. And also it has a height limit on the canvas due to the limitations of using Flash. So with the emerging design trends now where there's a lot of long-page websites, you can actually hit that canvas limit, which can be quite annoying, so then you're having to spread pages over multiple wireframes, which can be quite difficult to explain to the client. But yeah, basically, yeah, these are just a couple of the tools, there are heaps out there, and I guess the only way to really find out which one you wanna use is a lot of them are free and a lot of them provide great free trials, so just give it a go. If you don't like it, scrap it, move on to another one. Cool, so this little part here is just a kind of thing I call Drupal Smart Elements. It's about saving time in the wireframing stage, so what you can do is you can create, I guess a library of commonly used blocks, and you can reuse these across projects, so some of the standard things in Drupal, so the comments form, or maybe the default login block, and then you can just drag those on from a library.  And if you do use Bolzamic, there's a great little pack, which gives you all of these elements, so you can kind of reuse those and build a really, really quick Drupal site very quickly with those, so it does save you a bit of time. Yeah, mate? Actually, yeah, which one's that, sorry? Okay, so that wasn't Drupal, that was just a community pack created by someone in Bolzamic using Bolzamic Elements. But it's a great question, and that kind of starts verging on the side of prototyping, where do you use a tool out there that can convert your current Y frames into a prototype, or do you just build it in straight static HTML? And it depends, I guess, on your UX designer and what they're comfortable with. Yeah, does that answer your question? Yeah, okay, cool. Cool, so basically it's not converting, we've sent this website live, and it's not kind of working to what we thought it was gonna do. Basically for this, user validation is key. If you had done the usability testing in the first place, and if you had gotten into the head of users and just tried to give them the best user experience possible, then you can try and negate these issues. But there are a few things you can do. You can perform a post-live usability review. So you can see where it's falling down, you can use analytics to see where conversions are falling down. And obviously it depends on the purpose of the website. And also, if it's a small budget or if it's quite urgent, it's called quick wins. So you can break down different parts of what the problem is. So for example, let's use Optus' example, that button is breaking on the mobile breakpoint. You could, it probably doesn't need to be wire framed because they've already got a design in place. So what you can do as a quick win is you'd be able to quickly mock up what that button should look like, go into that breakpoint and fix it, and then hopefully that would then increase conversions because now they can click the button. Amazing concept. And yeah, testing and evaluating, it's really important. I mean, once the website goes live, your job isn't done. I mean, there's still ongoing improvements as you go, one of which is called A-B testing. This is great if you're not quite sure if an idea is gonna work or not. So what you can do is you can serve maybe 50% of the clients, sorry, the users, this particular block, and then serve 50% of clients this particular block and see which one works better. There's a great tool called Visual Website Optimizer that can do all this and you can actually do it inside the program and just inserts a bit of JavaScript so you don't have to go back to dev and implement this. And there's also a great little website called WitchTest1. And if you subscribe with your email address, they once a month will send you a usability test that they've performed and what you can do is they'll ask you, okay, which one do you think won? You select your answer and then you can see a poll of results so you can see what other UX designers thought was gonna win. And a lot of the time it isn't what you thought. But that's a great website, it's a really, really good resource. There's different ways we can measure results. So it's quite hard to figure out if it is working. I mean, you can look at inquiries and maybe if it's an e-commerce store, you can look at sales, but you wanna look at analytics, making sure that the inquiries are coming up. Yeah, that's basically it, that's for measuring. And also a vital one is getting the client and user feedback post-live. So whether it's through the use of a poll or a form, just trying to get feedback from users and see what they think of the new website. Cool, so I've got a bit of a case study for you. This is a website that we do call the Goods and basically they're a business to business seller of products and cleaning, catering, washing and safety. So they're e-commerce, but it's more of a, I know it's hard to describe, it's not your traditional, yeah, it's B2B, it's not your traditional e-commerce store. So that's the current site, little bit dated. It did the job for a long time, but it's time to upgrade. So these are the three workshops that we hosted with the client beforehand. We had the kickoff and stakeholder meeting as a combined for roughly around three hours that we then dedicated an entire day to gathering requirements. So they came in the morning, we talked through different business requirements, different functionality, went to lunch, came back and then continued working on it. And then workshop three, we presented them with some wireframes and a small prototype after gathering all that information. And obviously you're still talking to the client between these workshops. It's not like, okay, see you in two weeks. You're still communicating with them. But yeah, that's just, that's how we laid it out this project. Yes. Yeah, yep. Yeah, you generally in the workshop and as well the project manager that will be managing that project. So they're on top of it from the very beginning. So this is just a little example of us working in our breakout room. And this was great. So we were sitting on the couch here, you can see a little glimpse of me to the left there, so to the right there. And we were just on the chalkboard just sketching out the entire process for new customers signing up and existing customers logging in. So yeah, that was a really great way of doing it. I mean, if you've got a chalkboard like this or a whiteboard, great. Another way you can do it is posted notes on a big boardroom table. But yeah, it's great because you've got the clients sitting there and you can kind of work with them. They can go up and draw on it as well. So before I move on to that, I'll just show you a, I'll just show you a quick. So this is our UX pin. This is one of the tools I was talking about. And as we can see here, it's actually exported a HTML version. So what we can do is it exports a little sitemap for you. So when you're running through the client, you can kind of go through all your different wireframes in the sitemap. Or you can go a step further and then you can link certain elements to different wireframes so you can make it feel like it's a bit of a prototype, a bit of a working website. And what made this website really interesting is that it needed to be really easy for people to be able to go to products. But then it's also just as vital to be able to check out their account information because it's in the account section where we sell products that they've previously purchased. Because it's important to realize that with this particular company, being B2B, they have recurring customers and recurring sales. So maybe for example, once a month this restaurant knows it needs 1,000 Appkins. And so they know they can go to that one place and they can reorder it again. So I'll just give you a little bit of an example. So I've hooked up that products button to the products page. And then now we've got the products sidebar on the left there. And these are the three main, sorry, the four main categories of their website. And I've just got an example of catering being expanded and we're searching for some cups that are hot. And yeah, this was all done within UX pin. And then I've also got what the products menu is gonna look like on iPhone or mobile. And also what the admin menu is gonna look like on mobile as well. And the great things were about, let me just find it for you, two seconds. Here we go. So this is an example of the landing logged in page. And right now we're on the iPhone breakpoint. So this gives them a really great idea of what the page could look like on mobile. And then we can quite easily flick back to desktop. And so you can do this with them. And it's, yeah, it's just a really great and clear way of showing them how the website works. And as well, so then now for on a product we can click through to a product. And so they can kind of see, it's just a magento side by the way. So, sorry, triple commas. No. Yeah, as you can see, it's actually, it's a brilliant program. The only problem with it is that it's quite young and it suffers from a pretty terrible memory leak. So you have to close Chrome a couple of times during the day. But apart from that, it's brilliant. It's the best one that I've found where it combines everything you need into one tool. It's got your editor. It's got your wireframe. It's got your prototyping. It's in the cloud. It's easy to manage with different staff members. Different staff members can collaborate on it as well. And yes, yeah, that's one thing. I haven't been able to find another tool that can do all of those things in the one tool. So UXPin has the editor built in. Yeah, definitely. So, I'm just trying to think, because there is actually a first sketch on Mac. There is a plug-in for UXPin. And so you can take different elements across. But as far as I think, I think, well, I mean, in our case, our designer, he prefers, we print them out in big, gigantic sheets of A3 for him. And he loves just sitting there trying to sketching on them and just starting a fresh PSD. But definitely, if you do use sketch, there is a plug-in to allow you to easily bring those across. Yes, mate? Definitely, yeah. You said jumps out all the time. Yeah. So how do you set? Definitely, it's quite easy to kind of jump on the bandwagon of hamburger buttons just because they look cool. And I do agree with you in some circumstances where if you've got a widescreen device, I mean, say the average, you know, 1920 wide on a HD monitor, why would you hide them when you can show them? And the difference between, and that's why it's part of the reason why I chose this case study, is that it was very difficult to be able to manage both being able to easily access products, but also being able to easily access your landing logged in page because for the product, while the product's page is important, it's not as important as that landing page, which I'll just bring up. Because because they are B2B, this is why it's quite important that they land on this page because a lot of them are gonna go, okay, that was my last order. I want everything in that order again and I'm gonna click reorder. Definitely, yeah. That's why, yeah. And as well, that's part of the reason why as well that this, the account kind of managing section is in the top right corner. It's a very, very easy and recognizable place where you can just go to and you know it's always gonna be there. So yeah, that was my understanding of it and so far we've had some pretty positive feedback with it. And it was, sorry, I'll get to you in a second. And it was quite lucky because our receptionist, she does exactly this. She say once every couple of months needs to restock stationary.  She's just a receptionist. The perfect target market. No, that sounded badly, didn't it? Uh-oh, no, no, that sounded badly. She was the perfect target market. I mean, that's one big segment of three minutes. Cool, thank you. Oh, that's a good just. Yeah, awesome. His lows are cool. Yeah, it looks cool. The medium does it, I'm fine. Yeah, yeah. Great looking website, but yeah. So we've got three minutes left. I'm almost at the end. I just want to maybe see if we can squeeze in a couple more questions from you guys because the person who gave the best question today gets one of these guys. Yeah, check it out. Pretty cool. Sorry, yes, mate. Can you come back a bit for your talk, please? Yep. To the Summer Girls items in the page. Yep, to be honest, I did flirt with the idea as well of it coming over the top of the page. So that sidebar doesn't appear when you're on the accounts page. So it could appear on any page.  But I think it was just a better user experience as taking them directly to this page. They can just go top right corner, click it, and they're there. What if they log out? So it's possible to be able to view your orders on this page. So we've got our previous orders then. You'd be able to click on previous orders and then go to a full list of them. But there are times where I'll duplicate things so that you can get to the same point from multiple different positions. All right, so I'll just quickly wrap this up, guys. I've got a couple of resources there that I love. Smashing Magazine, Smashing UX Design is a great book. UX PIN released free PDFs about once every two months. They're great as well. How to get people to, so, how to get people to do stuff at Susan M. Wineshank. She's a doctor who studied psychology and then decided to get into web design. So she talks a little bit about the morality of kind of tricking users into gain more sales. And it's a really interesting read. Stuff that there's too many to list. Email it to me and we can swap resources. I'm in Melbourne until March 15th. So if you want to have a drink and discuss and pick my brain more, let's do it. Sounds good. Thank you, guys. Cheers.


So, a 6th skill tree. What is it there? What is it for? What is it cut from the game? Is it something they will add in a future DLC? Today people we speculate on what this is. How's it going guys? My name's DPJ and if you enjoyed this video leave a like who helps out and if you like what you see and want to see more cyberpunk on a daily basis be sure to subscribe. So many of you have probably noticed that within your characters tab there is a 6th skill tree which results to absolutely nothing.  People have searched high and low to try and figure out why there is a 6th attribute skill yet when you hover over it it glitches out. It has no name and does absolutely nothing. So why is it here? Well speculation is rife on this one. Well firstly it's important to start from the very very beginning. So earlier on within the first gameplay trailers and footage we saw we originally had a 6th skill tree as you can see on screen now. Within like I said this very very early footage. We see the addition of constitution and strength. Now all the time I do believe these were rolled up into one which we now see as body. That may not be 100% correct, names could have changed and others could have rolled into one I ain't certain but we had 6 then 5 which is fair enough. But in my opinion after the years of development that's gone into this game and the fact the whole design and construct of that character attributes tab has changed there shouldn't still be an empty skill as a result of them combining two. That just wouldn't happen. So why is it here? Well many people including myself believe this was actually meant to be a skill tree that progresses forward with us which directly affects Johnny Silverhand in a way in which our relationship goes. The one major point of evidence to this theory which I know sounds crazy right now. But it's the fact that if you go ahead and start a new character, create a new V, apply those attributes and start the game. If you go into your character's tab and check there isn't actually a 6th skill tree there. And guys what gets even weirder here is the fact this 6th skill tree doesn't appear until you get that by all chip plugged into your cranium after that heist mission which again injects Johnny Silverhand into your head. Check for yourselves creating a new character have a look there is no 6th attribute. But like I said as soon as you complete that heist mission go on to implant that by all chip which contains Johnny. This 6th skill tree or attribute then shows up. So why? And I honestly don't understand because I'm pretty sure this would have been something shown before hand, before release. But nothing has been mentioned. So why does this appear when Johnny becomes a part of you? Now the speculation surrounding this is kind of big with many people thinking it's content that has been cut to meet demands on an earlier than right release and was cut along with many other parts of the game. I mean this could be a possibility but if I'm honest I don't think it was. Some people believe this will be part of a future content DLC expansion where we will get a new attribute skill with extra levels at the same time. This makes sense to me but what doesn't make sense is the fact it still only appears when Johnny enters your body. I mean this alone proves that 6th or 7th or 8th skill trees can be added at a later date as it isn't there when we start the game. So why would it be added when Johnny enters us if it's for future content? That doesn't make sense. What I actually think it is people is exactly what it is. This is added just to show us that Johnny is now a part of us. As this whole skill tree attribute page is basically our soul of our character. When Johnny becomes a part of our soul he is added here. I don't think there was ever any intention for us to be able to upgrade perks here and I don't think anything was ever cut either. Let's face it this game is crazy in depth. Even if a lot of depth has been taken away being quite at the game. What remains is still crazy and this is just one addition to that.  This 6th skill tree is Johnny nothing more nothing less. I mean I hope I'm wrong and this is for the future but I just don't think that's the case. But people tell me your thoughts on this down below. What do you think this 6th tree is? Do you think it's cut content? Content for the future? Or do you think it's just there to represent Johnny when he is a part of us? A good way of actually figuring out if this is CDPR's intention of adding this here when Johnny is a part of us is if you do the ending where you and Panam go off and you leave Johnny behind with Alt and Soulkiller. Check your menu there and see if this 6th skill tree is still there. That'll probably answer this question and it's probably something I'll do out later. Date and let you guys know. But yeah let me know what you think about this down below in that comments section. If you enjoyed the video, leave a like, rule the helps out. If you're new around here and want to see more Cyberpunk on a daily basis be sure to subscribe and hopefully people I will see you on that next one.


song this one's called crazy we're gonna play one more short one and then you guys can go get a missy bequeen no you got a heart that's made of ice no you got a heart that's made of ice I'm gonna take a shower I got amps for sale if anyone wants to buy any


This is TFNN, the Tiger Financial News Network. TFNN, headline news update. Good afternoon everybody, I'm Tommy O'Brien, coming to you live from TFNN headquarters in St. Petersburg, Florida, one PM Eastern time on Thursday, three hours left to go on the trading day, and we've got markets in negative territory. S&Ps right now, negative by 12 points, trading at 29.11, you get the NASDAQ, negative by 43 points, trading at 8,006, and the DAO, off 200 points on the DOT, trading at 26,230, gold and oil, quite a negative day. You get gold, negative $12.80 at 12.7150, oil contract, negative $2.23 at 61.37, and notes and bonds, lower price, higher yield, 10-year note, negative 13 ticks, $12.30, 30-year bond, negative 22 ticks, $146.29. We'll start things off, let's jump over to the futures markets. We'll start it off with the DAO, so things seem to be going well until about 10 a.m. this morning. The DAO is trading at 26,427. We are sitting just barely in positive territory. The Cascade began, currently more than 200 points below that level, trading 26,199. S&P 500, pretty same formation, backing things up even to yesterday's fall-off on the heels of the Fed, deciding to keep rates unchanged. You had Chairman Powell at the press conference. Prior to that conference, we were trading at 29,55. We almost just touched 29,00. So you're talking about 55 S&P points just in the last less than 24 hours, but just this morning, we traded from 29,32. We make a low of 29,01, currently trading 29,10. NASDAQ 100, much the same. We trade from 7,804 all the way under 7,700. We're back just above that level, trading 7,706. Crude oil, quite a fall-off, even backing it up to yesterday. Not as much of a reaction yesterday on that Fed decision, but today it picked up some steam, trading from about 63,50 all the way to a low of under 61, $60.95. We're currently trading 61,30. And gold, trading at 12,71,85 had traded as low as 12,67. Quite a number for that gold contract. In terms of what else you have happening in the market, Tesla raising $2 billion between debt and stock. The market liking that as they may need some cash in the coming years. And Under Armour out with their earnings, and they are beating, putting some emphasis on the future. We'll start off with Under Armour UA. Wow, look at that, though. Give them back some gains. Now up 4.4% and Tesla currently up 3.8%. Stay tuned, folks. Steve Rhodes coming up on the Traders Edge. Dave White live at 2 o'clock. Tom O'Brien live from 3 to 5. Have a great Thursday.