What is your number one people skills problem? Do you have trouble starting a conversation? Are you shy? Are you introverted? Do you have problems solving arguments with people? Do you not know how to start a conversation with someone? Do you not know how to carry a conversation? What is your number one problem right now? And We're gonna put it on the board. We're talking about people skills problems And let's see if we can solve a couple of them in the next 10 minutes.  What is your number one problem? The biggest issue that you have with social skills? Is it that you don't have enough friends? Is it that your friends You don't know how to relate to them. You don't know how to make new friends. Let's try and do some answers to this, shall we? Okay, so let's pick one here. Which one do we want to pick? Somebody pick one of these for me and we'll do a quick little answer Q&A. We're gonna race through this Chris James says people are judging you. Good. Judge me. Judge me all you like. It'll be good practice, right? If you want to stop judging other people, this will be good practice for you to stop judging me because some of you are watching right now and judging me right now. You're making an idea in your head about who I am and you're judging me, right? So if you want to like eliminate judging, if you want to eliminate judging, then we'll go over that, okay? So let's do two of these ones. Approach anxiety, opening wine, what to say. This is what I do, right? I walk into a social gathering whether it's a party or whether it's a bar or whether it's any kind of social gathering where there are people and I don't know anyone, okay? I walk in with my chest up and a smile on my face, okay? And I sometimes I force the smile on my face. Sometimes I force it. So it's even just like a half smile like this. I'm not like walking around going, but I'm not walking around like this either. I'm walking around like this. See the half smile? See the half smile there, okay?  Do you know why we shake hands? Because back in the day, showing a handshake, showing a hand with no weapon in it was a way of letting the other person know, look, I don't have a gun, I don't have a sword, I don't have a spear. So that's how the handshake came, right? Same thing with the smile in today's world.  And here's the thing.  There are 86 muscles in the human face. Okay. There are 86 muscles in the human face. When you smile, you activate them. And when people see you smiling, even if it's just a half smile, they feel comfort towards you. They don't even consciously know it.  That person's not a threat. Right. I'm going to engage that person in conversation. So sometimes I'm like feeling a bit flat, but I'll walk into a social situation and I'll go, right, I'm walking into a social situation. James, smile. And I won't walk in going, I'm here. Hello, everyone. Look at me. Here's my smile. I'm activating 86 muscles in the face. See? No, I walk in going, it's a little half smile. Okay. Just a little half smile. Here's the best opening line. If you're there by yourself and you want to go and meet some people and you don't know what to say, here's what I do. Hi, I'm James. What's your name? Hello? What's your name? Hello? What's your name? Tina? Hi, Tina. I'm James. What's your story? Okay. So let's just go over that. It's pretty simple. And I know this sounds, it is simple and I know it's hard to do, but it's pretty simple as an opening line. You go, hello? What's your name? I'm James. Hello? What's your name? Or, hello? I'm James. What's your name? Another good follow-up question could be then, what's your story?  Because what's your story implies that you're actually really interested to find out something about them other than what they do for a living. Nobody really cares what you do for a job, but most people who ask a boring question say, hey, what do you do? Don't ask what do you do, okay? Eliminate that question from your vocabulary. Instead, ask what's your story? Because then the person will might say, well, I'm Australian and I live in Los Angeles. Well, I'm really passionate about this. Well, I'm just here with my friends and we're hanging out and whatever. There's so many different answers you can get from what's your story.  So the first thing that they see you is with the half smile or the smile and you just say, hi, I'm James. What's your name? Well, hi, what's your name? I'm James and that's it. Now, let me tell you something. The person who goes first, the person who introduces himself or herself has the power. Not that it's a power struggle, but if you are the person who introduces yourself first forever in a day, the person you introduce yourself is going to respect you and is going to like you and is going to think that you are someone of stature because you were the one who went up and initiated the hello. So already you are on this position of power above the person that you're introducing yourself to. The person you're introducing yourself to doesn't have the power. You have the power because you have been confident enough to go up and say hello. Now, when this comes to dating and mateship, women obviously love it when a man walks up to them and says hi and introduce themself because most women don't do that. Most women would love to have a guy come up and introduce themselves to him, even if it's not in a romantic context, even if it's just in a platonic context. Okay? So when you are the first person to go up, if you're a man, you approach a woman, women respect that because it appeals to women's evolutionary mind, which is like man, protector, confident, taking charge, taking control.  Question is, do you ask their name? What are you telling your name? You can just, you can move this around, you can experiment, right? You can go, hello, I'm James. What's your name? Or you can just say, hello, what's your name? And then wait for them to say, oh, my name's Tina or John or Christie. And then they may say to you, what's your name? They go, I'm, I'm James. Nice to meet you. What's your story? You know why it seems so simple to march it because it is simple. It is simple. It's very, very, very simple. Okay? So hello, what's your name? Or hello, hi, I'm James. What's your name? You can also do this. Hello, I'm James. What's your name? And then a great question is, what's your story? But with a smile, okay? But with a smile. So just go ahead and practice that. Just practice it with anyone. You can do it in like the coffee shop and just go, hi, what's your name? Hi, what's your story? Just practice it. See what happens. Hanger says, but when you go to pick up girls in a bar, the problem is that every man does that. No, they don't. No, they don't. Every guy standing around going, I'm too scared to go and say, hey, what's your name? So you go and do it. Guess what? Your odds of having a conversation with a girl go up. If you stand in the bar and go, everyone's going up and saying, hi, what's your story?  Your odds of actually having a conversation with that woman are like zero. It's not like she's going to walk across the bar and go up and talk to you.  Pretty simple, okay? So that's a good one. Let's move on quickly and go on to some other ones. Which one do we do now? Which one do we do now? Don't know what to talk about, okay? Don't know what to talk about. Here's the thing. It's really simple. What you do is you take a genuine interest in the other person. You take a genuine interest. That means you ask questions and you're genuinely interested. You're not interested because you saw James Swannick talk about it on Facebook or Periscope one day and you go, hmm, let's roll out these questions here. What do you do? Remember, I said, don't say it. Don't ask that question. Oh yeah, where are you from? Where do you live? Those questions are kind of lame, right? Because they require factual answers back. But when you ask a question that gets them to think and talk about emotion and feelings, then they'll open up to you. And when you ask those questions, they like you because you are taking a genuine interest in the other person. I interviewed Angelina Jolie for the movie Changeling, I think it was called. And I was sitting in the Four Seasons Hotel in Beverly Hills and I was interviewing Angelina Jolie. And the movie, I think it was called Changeling, it was about, she played a mother whose children were kidnapped. And before I interviewed Angelina Jolie, her publicist came in and said, no personal questions. Do not ask Miss Jolie any personal questions about her kids. And I'm like, inside I'm thinking, bugger that for a joke. I'm asking her personal questions. I don't really want to know about the movie. I want to know about her and her kids and whatever, right? So when Angelina Jolie comes in, I didn't say what was it like making this movie. I didn't say what was the hardest part making this movie. I asked her a question that elicited a feeling. And the question was, Angelina, in this movie, you play a mother of a son who's kidnapped. And your character goes through this horrific traumatic experience.  How would you respond to that? For the next five minutes, Angelina Jolie was just talking about how she has security guards for her children and how she worries about Maddox all the time. Maddox is the name of one of her kids. She talked about how, you know, she goes and picks them up from school, all of this amazing personal stuff that other journalists weren't able to get out of her because the publicist says don't ask her personal questions. But all I did was I asked her to talk about a feeling. I asked her to talk about an experience. I didn't ask her facts. I asked her about a feeling or experience. So how do you use this in your own world? Well, when you're in a conversation with someone and you take a genuine interest, you might ask questions like, what are you passionate about right now? Wow, you're really interesting. Tell me more. That's a great one. You're interesting. Tell me more. Or even if you just say, tell me more. Okay. Even if you just say, tell me more, the person that you're talking to feels like you're really caring, like you're really taking an interest. And that is very flattering to people. So if you're stuck for conversation, ask questions, but don't ask questions like, what are you doing for a job? Where are you from? How long are you being here? Ask questions like, what's your story? And then listen to what they say. And if they say, oh, I'm here, I like surfing or whatever, surfing. What's like, how do you feel in the morning when you surf? Tell me about the best wave you've ever caught. Oh, have you ever crashed and like, you know, what happened? What was it feeling like when the waves were like pummeling you into the ground? Can you share that experience? Wow, what did you learn from that experience? Wow, you're really interesting. Tell me more. Tell me more about that. And when you say that to the other person, they're listening, they go, wow, this person's really interested in me. And because they see that you're really interested in them, they like you.  See, nobody really cares about you initially, right? They really care about themselves. And so if you give the other person an opportunity to talk about themselves and talk about feelings, talk about experiences, and they can see in your eyes that you're genuinely interested, not interested because James Swanic told you to be interested, but you're genuinely interested, then they're going to feel that connection.  And they'll secretly be going, oh, I don't want this person to leave. I want this person to stay in the conversation. I want to introduce this person to my friends and all these other people. Or they might say, hey, let's swap numbers. Let's catch up sometime because guess what? You've taken a genuine interest. Does this make sense? Does this make sense?   Let's do another one. Okay. By the way, if you want to get one of the best books I've ever read on people skills is Keith Farazzi's book Never Eat Alone. And there's another one called Winning with People by John C Maxwell. Now I took my personal notes on those books and I stuck it in a PDF. So if you want me to send you my personal notes on on those books, sorry, it's Winning with People and Never Eat Alone, which gives you a whole lot of social skills. You want my personal notes on it. They're only like three pages long. Go to my website, JamesSwanic.com. Okay. And there's a little link there. I will email you my personal notes on that, JamesSwanic.com. Anyone got any questions about that? And before we move on and answer a few other ones, anyone got any questions about getting that? Go to JamesSwanic.com. In fact, I'm going to just show you where it is on my website right now. Cool. So I'm going to bring this up here. Okay. I'm going to go to JamesSwanic.com and I will show you. There you go. There's my website. Okay. JamesSwanic.com. If you go here and here says get my book notes on three life changing books. If you put your details in there and click that button, I will send you my personal notes on social skills and Winning with People and Never Eat Alone. That way you don't need to read the whole book. You can just see my notes and get the best, best, best parts of it. Before we go on, let's do a quick little Snapchat here. Who follows me on Snapchat? If you follow me on Snapchat, give me a me exclamation mark right now and I'll give you a shout out. All right.  We're talking about social skills and teaching what to say to people when you first meet them. So if you guys watching now want to see what I see, like you want to see the camera I'm looking into, follow me on my Snapchat and do it now. When's the best time to do anything? Now. Do it now. Okay. So let's do another one real quick and then we're going to have to wrap this up because I got stuff to do. What else do we want to do? Which one do we want to do here? Which one of these problems? Which one do we want to do? Anxiety. Okay. You want to do your anxious around people? Is that the issue? Is that the problem? Drunk, shy. Okay. So shy and anxious around other people. Anxiety. Okay. So as I understand it, your problem is the issue that you're dealing with is that when you're in a social setting, you feel shy and you're anxious and you're thinking that people are judging you and all that kind of stuff. Is that right? Feeling nervous inside. Okay. That's a common problem. And you know what?  It's perfectly normal, right? I get anxious sometimes.  I get nervous. When I go into a new social setting and I don't know anyone, even though I'm walking, I'm going, hi, I'm James. Nice to talk to you. What's your story? I'm still nervous as well. You're never going to lose that nervousness. Okay. You're always going to have it there, but here's the thing. You either recognize it and feel it and go, okay, I'm anxious. Okay. I'm a bit nervous and you do nothing. Or you say, hmm, I noticed that I'm nervous. I realize I noticed that I'm anxious, but I'm just going to feel it and just go on and introduce myself anyway. Okay. So what it comes down to really is if you're anxious and if you're nervous about approaching, just do it anyway because you're only going to, you're only ever going to feel that way. Okay. I'll give you a few little tips to try and calm your nerves, but ultimately when you feel nervous, you just have to say a mantra to yourself, which is just do it or just keep moving forward or just introduce yourself. Remember, Chris, if you introduce yourself to someone first, you have the power and the person that you introduce yourself may be feeling nervous and anxious about talking to you. Cause we like to assume that everyone else is so confident on stage. People look at me and go, wow, that James Swannock is super confident, but I get nervous. So everybody's nervous, right? Everybody's nervous. It's just what are you going to do about it?  I'm not going to do anything. Or are you going to like chest out, shoulders back and say, effort, I'm just going to talk anyway. I'm just going to do it. Here's the thing. If you are anxious in a conversation, always just go back to be genuinely interested in the other person. Okay. So if you're like, I don't know what to say, don't know what to say, just ask a question and be genuinely interested. Okay.   Oh my God, blah, blah, blah. Just say to yourself James or Chris or whatever. It's okay. Just be genuinely interested. Just be present in this moment and be genuinely interested in the other person. Okay. Ask good question. Another way I like to do is I like to put my feet together when I'm standing there, which forces my chest out. Now here's the thing, right? If you're standing like this, see how my shoulders are summed forward? Then my energy is very low and my breath is very soft. But if I'm standing like this with my chest out and my shoulders back, I'm exuding more power and I'm feeling more confident. Okay. So Chris, here's a little stance that you can do. Here we go. Okay. So here's my feet, right? If I'm standing like this, here's a way that I do it. I'll literally go pigeon toad a little bit. You know, like pigeon toad. And what that does is that it moves my chest out and my hips out and it gives me a more positive stance. Nobody even notices that you're doing it. So it's almost like, look a little goofy or think that you're looking a little goofy, right? Think that you're looking a little goofy, but you're not because what it does is you go from this to this. You go from this to this. And when you hear you're like, I'm anxious. I'm scared. I don't know if they like what I'm saying. I'm not very confident.  Now all of a sudden, you're like, they're engaged. The people are looking at you going, well, this person's confident. Now you're feeling confident. You change your physiology. You change how you think about the situation. Whenever you're anxious or you're shy, you're introverted and you're scared, just put your shoulders back and start breathing inside. It's okay. Just calm yourself. Become genuinely interested in the other person. Just reset. Just reset. Remember, you deserve to be there in the conversation and the other person might be thinking that they're trying to put on a good show for you as well. Okay. So just remember your physiology. Are your shoulders back? Is your chest forward? Are you breathing nicely? Are you taking a genuine interest in the other person?  And if you change your thoughts, you appear very confident. You know why you appear very confident? Because you are confident when people see that.  They're going to think that you're fun and confident and open. You're not a threat. Same way.  But if you're like this, then subconsciously they're like, hmm, that's someone I'd like to talk to. That's a confident person. I want to talk to that person. So there's a few, too quick to judge. Here's how you stop being too quick to judge. You just say to yourself, I love everyone. I love everyone. No matter what they say or what they do, I just love them. I don't need to agree with them.  I just love that douchebag.  You just go, ah, I just love that guy.   In Australia we call him a wanker.   But I love him. I love him. He's so clueless. So don't judge people. Don't judge people, okay? Because ultimately you're wrong. Ultimately you're completely wrong about people. Do you know who Greg Norman is? He was a former Australian golfer. And you know who President Bill Clinton is, the former President of the United States? Greg Norman tells this story in his biography. He's saying that Greg Norman is very much a Republican, right? He likes the Republican Party. And he was friends with George Bush. Not George W. Bush, but George Bush. He was a President in the 90s. And Bill Clinton became President. And Bill Clinton, when he went to Australia, reached out to Greg Norman's office and said, hey, the President of the United States would like to play around at golf with Greg Norman. Because Greg Norman at the time was one of the top golfers in the world. This is before the rise of Tiger Woods, obviously. And Greg Norman did not want to go and play golf with President Clinton, because Greg Norman thought that President Clinton was a complete douchebag. Because he judged him. Because President Clinton was a Democrat, right? And Greg Norman was a very close friend to George Bush. And he didn't want to meet Bill Clinton. And so Greg Norman didn't know what to do. He didn't want to say no to the request from President Clinton. But he didn't want to say yes either, because he judged him. And so what he did was he phoned up the former President, George Bush, in America and said, listen, President Clinton, who defeated you, has asked me to play a game of golf with him. And I don't want to. What should I do? And George Bush said, you should always respect the office of the President of the United States to play golf with him. And so Greg Norman said, okay, I'll do it. So he agreed to play golf. And Greg Norman reluctantly turns up to this Australian golf course. The Secret Service are there to close down the whole golf course. It's just Greg Norman and President Clinton are going to play a round of golf by themselves on this golf course. And Greg Norman turns up and he's like, I don't want to meet this guy or whatever. I hate this guy. And then he says halfway down the first hole after they both teed off, he realized that they were going to be the best of friends. They were going to be lifelong friends. And they played 18 holes of golf. And at the end of it, they were like best buddies. And then they went on to create charities together to raise millions of dollars to help people. President Clinton and Greg Norman, even though Greg Norman doesn't agree with President Clinton's politics, he realized Greg Norman at that time that he was too quick to judge. He was too quick to judge. And he said it was the biggest mistake he made.  Everybody has their own journey. Everybody has their own struggle. Everybody has their own issues to deal with. And if someone is angry at you or snaps at you or does something bad, just understand. You don't really know what's going on in their head. They've got their own problems, their own stresses, their own concerns. Just try to love everyone. It doesn't mean you have to take it.  But just understand whatever people are doing in life, okay, it's because they've got their own struggles. They don't know your journey. They don't know what you've gone through to be in that situation. So you don't know what they've gone through. But we're all human beings. We're all the same. So stop judging people. You see a homeless person on the street.  You don't know their struggle. Now, I used to be, I used to judge people, right? I used to do it all the time.  But now I'm like, I've completely softened my stats. Now I'm like, I don't know their story. I don't know whatever struggles they've gone through. And if you start taking a genuine interest in someone and asking and digging a little deeper, you might just find that you've got a connection there. You might just find that your entire opinion of them will change. I've been to Tai Lopez's seminars and people have approached me and they look, they're wearing crappy clothes and they're young and they're just like, whatever. And I'm like, in my mind, I'm judging them going, Oh, these guys are whatever, you know, not worth my time to talk to this person, only to then find out that they've made $2 million last year on an online business. I was, I completely judged them as being like a, you know, like a struggling college student or whatever. And in my mind, straight away, I'm like judging them in that situation. But then I realized, well, in actual fact, you can't judge a book by its cover, right? Everyone is different. Everyone has a story. And that was completely and utterly wrong of me. So now I just forced myself sometimes to just be open to everyone. Now, when I say forced, it's not like I'm reluctantly doing it. We'll always instinctively judge someone, right? We see someone, we're always going to judge someone. We're always going to do it. We're human. Okay. So you never, it's never going to end.  I'm going to give this person anything. I'm just going to be open, completely open. And you're right. Even if they are struggling in a college kid, that is not necessarily bad. It's not in the context of that, on that, of that seminar that I was at. I was getting people coming up to me all the time, all the time I'm talking, and I really wanted to have some higher level business conversations. And so in that moment, I was judging the person because I knew that person was going to take up five minutes of my time. And I was completely wrong to do that.  In fact, anyone who turns up at those seminars, I have the utmost admiration for. I appreciate them because guess what? They're taking action, stepping up to the plate and making their lives better. So if you have an issue, I'm just trying to illustrate the point. We're all human and we all judge people in the moment. We all do it. We're all guilty of it. I am guilty of it. But when we start to judge someone, just come out of your head and go, hang on, I'm not no longer going to judge this. I'm going to put my judgments aside and I'm just going to be open. I'm going to take a genuine interest in this person. I'm going to ask good questions. I'm going to ask good questions. I'm going to love this person. How can I serve this person? How can I help this person? Whether it's through an introduction or whether it's just by being interested in what they have to say. Does this make sense? If this makes sense, give me an oh yeah exclamation mark. Give me an oh yeah. Thank you for watching. Remember Snapchat, James Swannick, S-W-A-N-W-I-C-K. Follow me on Snapchat so you can see follow daily things. If you're on Facebook, share this with someone who you think might benefit from what we talked about here. And then on Periscope, tell your friends or posts. Remember, I've got the James Swannick Show podcast in iTunes as well. You can follow me there. And I'm James Swannick on all social media. I gotta go. See ya! Thank you so much for watching this video. Don't forget to subscribe to my channel by clicking right here. And make sure you put your phone up and follow me on Snapchat. You know you put your phone up and you take the screenshot and you automatically follow you on Snapchat. You know what I'm talking about. You can do that right there.  So go ahead, subscribe here, follow me on Snapchat there, and I'll wait for you.


And that's what we doing


of the k pi one space. So we'll be most interested in equivalence of categories as opposed to isomorphism of categories. But nevertheless, let me make one comment about that. If we also remember the subspace of zero-simplices, so think of, temporarily, think of BC as something that spits out a space with a subset, then we can reconstruct the category up to isomorphism, just by taking, by construction, this canonical functor does not hit all objects in pi one of BC. It only hits those that live in the subspace. In the notes, I wrote this as pi one BC comma N zero C. And this just means the full subcategory of the fundamental group point, full subcategory on objects. So objects are points and I only take the points in N zero C. So it lands there by definition. And the same proposition shows that this will be an isomorphism of categories, if C is a group point. So, okay, and this thing is then an equivalence, that inclusion. If, okay, more interestingly, if it's not a group point, then you still have this natural transformation from C to a group point. And the statement in that case is that, if C is not a group point, by which I mean not necessarily a group point, I still have this functor from the original category to the fundamental group point of the classifying space. Let's say it hits only the subcategory on the objects here, but that's equivalent to the full fundamental group point. I still have this functor. And it, in that case, is the universal functor from C to a group point. That's functor from C to a group point. Let me say what that means. It can mean two things. So, so given any small group point D, and a functor D to D. If I have a functor from C to a group point, then there's a unique factorization like this through a functor. Okay, if you have to say it that way, it's important I remember this. Otherwise, I would have to say something unique up to isomorphism of functors. But here, I mean this is a correct statement. This is a unique functor. So, wait, I mean there's a statement. You have to prove. No, that was the comment I just made. I mean, this is one correct statement you can make. But there's another one. I mean the problem with this is that it's, it's a universal property of this thing up to isomorphism of categories. Like it's not a, okay. This is a universal property for this one, but not for this equivalent category. There's another statement you can make where you say something up to equivalence, but let me say a few words about it. See, probably have time for that. Okay, so these have the same objects. Let me see. I don't wanna say. Okay, so first of all let me say this is a true statement. Okay, so because it's a universal property, it characterizes this pair of this group point. The fundamental group point of the classifying space. The full two subcategory on points and n zero. Together with this functor, characterizes this up to unique isomorphism of categories as any universal property. If you don't like characterizing categories up to isomorphism, then you can find another universal property that characterizes it up to equivalence of categories, but I think this is maybe a simpler statement. The proof is kind of easy. First of all, these two have the same object set. This is a bijection on objects, object sets. So, certainly this thing is like uniquely given on objects. Just do whatever you do there. On morphisms, uniqueness on morphisms. So what do morphisms in the fundamental group point of the classifying space look like? What are the paths for interval into BC? Say zero goes to x, that's some object. One goes to y, that's some other object. Then, up to homotopy real end points. I can make this path, I can homotopy it into the one-scalism. So, up to homotopy is a concatenation of paths in the one-scalism, but the one-scalism are precisely the morphisms in C. So, up to homotopy and the one-scalism are another way of saying that is some morphism in C is regarded as a path. It's like gamma of that morphism, except I might run some of those in the opposite direction. So, morphisms have a direction, but paths can go in the kind of wrong direction. So, gamma of f1 to the plus minus one, composed with gamma of f2 to the plus minus one, and so on. So, homotobbing a path into the one-scalism writes an arbitrary path as a concatenation of things that come from here and the inverses. But then, if this is supposed to be a functor and this is a gruboid, it must send and the diagram is supposed to commute. Gamma of f must goes to capital, so if I have an f in C say x comma y, this goes to f of f.  So, since any morphism is here, is a composition of things of this form. There's at most one option here, and then you have to check that that works. Okay, so that characterizes this one, uniquely obtuse morphism, and therefore this one obtuse equivalence of categories by a universal property. In the notes and in the problems this afternoon, there's some examples of what happens in this two specific examples. This construction has a name, I mean this universal property. It's called the localization of this category. Localization of categories. There's a general construction that starts with a small category and a subset of the morphism set, and produces a category denoted C brackets W inverse together with a functor from C, which is a bijection on object sets. Since morphism in W to isomorphisms is unique, sorry, is a universal with that property. If you have any functor from C into an arbitrary small category that sends morphisms in W to isomorphisms, then it factors uniquely through this one. Okay, such a thing exists, and therefore characterizes this again up to unique isomorphism of categories. You have to prove existence, of course, but that's not too difficult. In that notation, what we've done is the special case with W is all morphisms. This could be W is equal to all morphisms of C, and then we get the universal functor from C into a group point in this notation. Can be written this way. So in sum, I mean with that notation, the calculation is that the fundamental group point of BC, full subcategory in these things, is a particular model for this localization of categories. So IE, just to continue the statement, let's see. So that's a kind of concise statement about how much can be reconstructed of a category from the fundamental group point. It's precisely the localization at the set of all morphisms. Okay, I have 10 minutes left. Let me say a little bit more. Ah, okay, let me say a few kind of corollaries. So if you don't know C, but only know BC, you still know this localization up to equivalence of categories, and therefore you know what functions C has into group points. D is a group point, fun C comma D, this is the same thing as fun C, C inverse D. It's then the same thing as, that's what the universal property says, fun pi one BC and zero C D. This is up to isomorphism of function categories. And finally, the last step, if I only know the fundamental group point. So this is the function category. So true functions, I mean, function categories are object functions and morphisms, natural transformations. The last one is an equivalence, and the other ones are isomorphisms. And maybe in practice you kind of want to, maybe in practice the last, I mean maybe in practice you want to work up to equivalence, but yeah. So if you know BC up to equivalence of categories, you know what functions C have into group points. Just rephrasing what I just said. So maybe I can now make a preliminary definition of field theory. I don't really know what an actual field theory is. I mean, I think the one I consider the actual definition is probably also preliminary from a more fancy point of view. So in the notes I call this a poor man's field theory. I don't think this notion is actually useful for very much, but it's kind of a toy example of the definition I'll talk about later. So if D is a small category, then poor man's version of a field theory is just a functor from cop D into D. The only field theory aspect of this is that I call it Z. So this would be a D-valued, maybe D minus one comma D theory, because this category involves manifolds of dimensions D minus one and D only. What I consider the actual definition, but which I'm sure is also extremely preliminary, you would have to say something about a symmetric monoidal function. So, okay, I don't have very much intelligence to say about field theories in that generality, but so field theory is invertible if it takes any morphism to an isomorphism, that's the property it could have. For example, if D is a group word, so if Z of any morphism, we use this notation D with a tilde. So this is the same object, but only the isomorphisms. So subcategory of D, this is all co-bordisms to isomorphisms in D. So you might as well just forget about D and only work with the tilde and then rename it D. So say an invertible field theory is one whose target category is a group word. Again, very preliminary definition. To classify invertible field theories by this general discussion about small categories, it suffices to understand the homotopy type of the classifying space of cop D. The vacation of invertible field theories suffices to understand homotopy type of the classifying space of cop D. This version of the definition, I mean D is just an ordinary category, maybe group word. So we don't even need quite the whole homotopy type, since what we're gonna do is take the fundamental group word. Okay, so this suffices, as I said. It actually suffices to find the space X and a two-connected map from X into B cop D was suffices. What I'm implicitly saying is that you wanna find a space X that you understand better than B cop D. And then maybe you have some argument that this is two-connected. Then you just take the fundamental group word of this one instead. Two-connected means, okay, you know that, means bijection on set of path components and isomorphism on fundamental groups with any base point, surjection on pi two with any base point, and no further conditions. Even forgetting the surjection on pi two, that's still sufficient to say, equivalence of fundamental group words. So this implies pi one X pi one B cop D is an equivalence of categories. Okay, so that's what I'm gonna do in the lecture tomorrow.  And state the sense in which we understand there's gonna be an X where we in some sense understand the whole homotopy type of X in a way that we in practice can work out what the fundamental group word is. And then with classified invertible field theories in this poor man's version at least. Let's see. Lecture three, I'll talk a bit about, I mean, removing some of this. Lecture three, I'm gonna talk a little bit about symmetric monoidal structures and then change this definition to say something like symmetric monoidal functions. The answer doesn't change very much. I mean, you still have to understand the homotopy type of this thing. Just have to understand it as a space with more structure. That kind of mirrors the extra structure that we put on cop D. So even though this is kind of a toy version of the question, it's sort of quite close to the question I'll talk about on Wednesday. Let me see who's the more I wanted to say. Let me stop here. Yes, let me repeat the question. This is an unoriented, or it was not a question, it was a statement, but just repeating it and agreeing. This is an unoriented field theory because the manifolds are just kind of naked manifolds with no further structure. I will briefly mention that. I mean, I put it in the notes at least. You can put other structure like an orientation, spin structure, and so on. The general, or the level of generality I took was that you can put any tangential structure on the manifolds by which I mean an aquevarian map from the frame bundle into some specified space that I call capital theta. That's a GL, DR, aquevarian map. So whenever you have a space with an action of GL, DR, you can go back and change the definition and put this sort of structure on all the manifolds inside. And then you get a new cabotism category. For example, if this space is like plus minus one and the action is by the sign of the determinant, then an aquevarian map is the same thing as an orientation, but everything I say will have versions in this generality. I just take longer to state, and it's not a whole, on the level of ideas, there's no kind of new ideas, but it includes Riemannian metrics. This could be, right, all the non-trivial things I have to say are homotovian variant and theta, and up to aquevarian, I mean, Riemannian metrics is sort of a contractable choice, so the statements I'm gonna make, Riemannian metrics, you might as well not have any structure because it's a contractable structure, but yeah.


On today's Visual Studio Toolbox, Julian's going to show us what's new with DevExpress' desktop components. You are going to want to see this. Hi, welcome to Visual Studio Toolbox. I'm your host Robert Green, and joining me today is Julian Bucknall. Hey, Julian. Hey, Robert, how are you doing? Right. Julian is the CTO at DevExpress, and I think everybody knows or certainly should know that DevExpress is one of the premier components and control vendors. We love them. They've been around for a very, very long time, and today we're going to talk about some new things. I love these shows. I'm going to have you guys on to talk about new stuff. We're going to talk about windforms and WPF controls and components. That is exactly it. We're going to be talking about user interfaces for Windows. You guys still make and still sell those, yeah? Oh, yes, absolutely. xp.net core, let me tell you. We have a lot of people who have, I don't want to call them legacy apps, maybe traditional. Legacy is shorthand for runs the business. Exactly. Corporates, they tend to prefer their standard Windows applications. Yeah, absolutely. So let me start. We have, before we actually start, let me throw up a little teaser, shall we say, for everybody. So what we want to do is to give away a free copy of our Code Rush for Visual Studio. We're going to keep this offer open for a couple of months. So until June 30th, 2020, download your free copy of Code Rush for Visual Studio. This is our product, which helps you write your code, be it windforms or WPF or even ASP.net or JavaScript. So please do have a look and have a look and download Code Rush. DevExpress. Giving away free stuff in this show. Man, you guys got free stuff to give away. We're going to have you on more often. As you basically said, DevExpress, we engineer hundreds of UI components across many different development platforms. We offer reporting, data analytics, business app frameworks, even web regression testing software, and so on. And there is no practical way that I'm going to be able to demonstrate it all. And so I just want to show you a few quick demos to illustrate what we can and cannot do with regard to Windows. So basically, we have over 180 different components for windforms. And as I said, there's no practical way to get to everything. So I'm just going to demonstrate a couple of major controls. And the first thing I'm going to do is one that we are very famous for is our data grid control. OK, so first things first, let me open up our demo center. Let me just quickly close this. And our demo center has the various platforms that we support. So it's part of our standard distribution. So if you wish to have a try, you can download our 30-day trial. And the demo center will be, as you see here, I'm going to open up the data grid. It's a view-based architecture. As you see here, it can display tabular data, what you would expect from a grid, and with a bunch of data shaping and filtering type options. But our grid is more than that. And let me move to the card view example to show you. As I said, it's a view-based architecture. So you can present your information to your end-users via several different presentation metaphors. Cards are one option like we have here. So I can skip through the cards for each set of cards here. Let me switch to the file manager demo. File manager works in exactly the same way as you'd expect from a file manager. But it's still the grid. We're showing a file explorer type demo here. We can show you tiles. And obviously those tiles can be modified in certain ways, so in this case, we're showing kind of real-ter type information here. And we have a couple of other views, but now I'll jump to the Kanban board. This is something we've added recently, and we just updated in version 20.1. So you can display information in a Kanban board type tiles, essentially. The tiles can incorporate images like we have to here and so on and so forth. You can move these between different columns. And this is a grid, right? This is the grid, yes. Wow. Just another display or a view-base for the grid. So I can't type today, so I'm just using a simple example, hello world. So yes, this is our grid. It's loaded for bear, as someone once said to me. And before I move that, before I leave the grid, I do want to show something we introduced a few years ago and that something is indicative of how we approach our user interfaces. Here's a grid. It's obviously full. It's a kind of outlook, kind of inbox type thing. The grid is the list of emails there. But notice there's no scroll bar. Obviously, the grid is longer than the screen until I hover over the grid. So here's a scroll bar. Once I hover over the grid, the scroll bar appears, and I can move the thumb. If you want the old star scroll bar, you can just get back to the Excel demo here, and there is the old star scroll bar. Now, time for a quick demo of our spreadsheet control. So let me jump over to the spreadsheet. The thing about spreadsheets is your end users are probably very familiar with Excel. And once they know all about Excel, they're probably going to be very familiar with our spreadsheet control. In fact, our spreadsheet control, what you see here is the control. Well, I hope this is old data. It shows Microsoft at $28 a share. I hope that's fake data. That was the share price when I left Microsoft, I think. OK. Something down there. And you're here. And higher these days. So if you drop a spreadsheet control on the form, you will actually get not only the spreadsheet itself, but also the ribbon with all of the commands preset. And in your code, you can adjust and limit whatever functionality you like. If you don't need the user interface, but do need to read and write Excel SS file, SLX files, you can manage everything in code via the spreadsheet API. In version 20.1, we have a vastly improved print and export rendering engines. Let me quickly show you what that looks like. I'll hit the pivot table. I'll highlight the information in the pivot table here. Let's just go down to the bottom. Here we are. Go to the page layout. And I'm going to set the print area to that selection I made. I'm going to change the orientation to landscape. And now if I get a file, print preview, and drag this over to the right screen, here we are, print preview, and let's export it to PDF. Why not? And let me save it here. And let me open it in Adobe Acrobat, which is over here. And there we are. Very nice. So it works just nicely. That's an improvement in version 20.1. It's a huge UI component. And we're over here all day for us to go into all of its capabilities. Let me just close this preview. And Excel is very, as I said, very popular in the business world. And here's a feature that I think deserves more attention. So let me show you how people could actually use a spreadsheet for data entry. So what I'm going to do is show a data entry form to explain. So we have a nice invoice here. At its core, it's no different from a standard Excel type invoice. What this invoice is unique is it's actually a data entry form. So rather than create a data entry form with width forms, for example, with a bunch of field editors and command buttons and so on and so forth, what we're going to do is just use a spreadsheet for data entry. People know what a data entry form allows you to do. So let me change the sales rate. And we could also do things like once we have created this invoice, ship it by air and change the terms. But notice the custom cell editors are something that's baked into the spreadsheet control. OK, let me quickly save that. I'm going to save it over on my desktop and just save over its setters. And I'm going to open it up in print preview. And there it is in print preview, a normal invoice that you can print off or. Yeah, very cool. Now one final demo before I get to DirectX and GDI, which is very important for wing forms, simple invoice. We just saw maybe a profit and loss report, yes, or even a vehicle inspection report. The kind of things you can do with our report component. The interesting thing about our report component is it's also available in WPF and in our web set of components. They all include a visual studio designer, document viewer for each platform, and an end user report design. Let me just quickly show you the end user report designer. Here's the balance sheet example. Let me click on designer to bring up the designer. And it's the interesting thing about this is it's yet again a control that you can incorporate inside your own applications. You do not have to run a separate application. This is available. So let me just drag a text field over here and add it to the form, change the label. So say, hello world, I can change the background color. Notice over here we have a property editor, which is very visual studio-like in a sense. I'll keep it to home and maybe make it more 18 maybe, maybe bold, and let's center it. There we go. And so the report design is an example of the kind of features that you can have with DevExpress WinForms controls. Having just shown you a few of the user interface controls that we have as part of the WinForms set of controls, I'd just like to point out within our demo center, we have a bunch of indications that you can run these demos either with DirectX or with GDI+. And the reason for us doing that is we have created our own DirectX rendering engine. And that's exciting. We started off with the data grid and we have now added DirectX support to a whole range of different UI controls. So why do this? Why do we think it's a superior option? So yeah, back in the beginning, our WinForms components used GDI or GDI+, for rendering operations gave us all of this, all programmers, the ability to draw shapes, text, images at well, anywhere on the screen, but at the expense of some additional complexity and often some poor performance. And if you've ever developed desktop apps with WinForms, you know that GDI+, was more than good enough a classic desktop enterprise application. But fast forward a couple of decades since those days, we now have 4K displays, high DPI, and so on and so forth. And obviously GDI+, has evolved. Certain operations are now hardware accelerated. But advanced UI components and modern desktop apps still have to deal with a pixel density that's like eight times higher than when GDI+, was first created or envisaged. So we had a choice, either live with the performance bottlenecks and the rendering issues or roll our own DirectX rendering engine, and obviously we did that. Now in 2020, all of these different WinForms controls now can render with DirectX rendering. And should make them much faster, I would imagine. And exactly. The performance benefits for controls like our data grade are impressive. Are there also memory benefits or is it just speed? It's there are actually memory benefits. The thing about GDI+, is it generates the display of the screen, if you like, in normal memory, whereas DirectX talks directly to the GPU. And that's where the screen is going to be generated. The other thing about performance wise is GDI+, essentially has just one command stream for all applications on the system, whereas DirectX, they're all independent command streams to directly to the GPU. So there's lots of different ways that DirectX is faster and uses less memory than straight GDI+. I will note that we have ditch GDI+, for our legacy projects, essentially. Our customers can specify which rendering engine they want to use. And as I mentioned before, our WinForms demo navigator, as you saw, allows you to select and compare for yourself the different rendering engines. And while we were preparing for this VS toolbox episode, Robert, we thought in various different ways we could actually show the difference between our controls under DirectX and the equivalent under GDI+. And so we recorded a little video to show you the real speed. We recorded videos? I love it. Oh, yeah. But no one say this show is the same format, week after week after week. We're breaking some ground here. I love it. All right. So we're going to demonstrate with this video. And you can have a look at the video yourself. It's at devexpress.com slash DirectX video. And let me show you the difference between DirectX and GDI+. So in this video, we're going to be showing data grid scrolling. We have 80 columns in each grid. And we have 830 rows. On the left-hand side, we have the standard grid view. And on the right, which is already finished, we have the DirectX view. And now we're going to do page by page. And this is pretty impressive. So the standard grid on the side, left-hand side, and us on the right. Oh, we finished. Holy cow. So that's scrolling from top to bottom in a fraction of a time. Page by page. That's great. So there we are. And with the memory improvements, I imagine you can have more data in there, more controls in there. We were trying to show you with that particular video how quickly DirectX can render more information on the screen. And as we're scrolling through the grid, obviously if you have thrown more UI controls on there, there's still a difference going on. That was fairly simple demo if you like. But with the range of controls that we have that do support DirectX now, you can add more information within your applications. Charting, especially if you're doing real-time charts, for example, DirectX makes a great difference for that kind of feature and requirement of your app. And will there be a lot more coming soon? Or have you done the most important ones at this point? Right? We've also done the most important ones, those which actually render a lot of information or a lot of changing information on the screen at once. Those are the places where obviously DirectX is going to make a great deal more difference. Obviously DirectX was developed essentially for gaming. So anywhere where you're having rapid changes of information being displayed, that's where you're going to see the most effect from a DirectX implementation rather than GDO plus. Very cool. Yeah. OK, let me quickly move to our WPF controls, go over a couple of our newest features. We have a lot of parity in feature and product parity between WinForms and WPF. So I'm not going to show what I've just shown for WinForms. So let me with WPF, let me quickly show you a couple of new controls for WPF that we've implemented.  There are a couple I want to show, which are quite interesting in a way. The first one is our diagram control. Diagram control is our Visio-inspired user interface control for WPF. It's also available in WinForms. What this gives you is the opportunity to write your application and have some kind of diagram. So you can show things like flowcharts within your application. For example, you have a standard looking flowchart. We all remember these from when we were learning how to program. Plan, that's always an interesting one. I'd hate to actually work in this particular office, but it's a database diagram. What are all those armchairs behind that person?  The interesting thing about the database diagram is you can show, and here we're showing a pan and zoom effect within our diagram control so you can concentrate on a particular area within your own particular database schema and so on and so forth. Orchart, that's always a good, fun thing. So diagram control has been improved with version 20.1. And I think, yeah, it's good fun. We also have a designer as well, so you can incorporate that within your application so you don't have to use, if you like, our own designer. So we have some basic shapes you can put in there. Let's put in an ellipse. Notice how we have these alignment things going on so that you can line up your shapes nicely. There was a connector option, so let me add a connector there and a connector there and so on and so forth. So designer for WPF as well as the diagram control itself. Another great one to show off is our Gantt control.  We have this kind of ability to be able to plot out who's going to do what and when and who they're relying on to finish first and so on so forth. The nice thing about this is Gantt charts are not just for projects. You could also do, as we've done here, we're emulating some website downloading and installing a whole bunch of JavaScript and images and what have you. Again, it's a Gantt chart, so we're showing here a real time update of the Gantt chart to show, just like you have your developer tools in your browser and so on and so forth. So that was a Gantt chart and the pivot grid quickly show you we're doing some Excel style filtering across all of our grid based components, whether it's WinForms or WPF. And as you see down here, this particular demo is showing just body style with sedan and sport utility vehicle. If I nip up to the body style, it has a little filter icon there and just a kind of Excel style format, I can then say, I want to show all pickup. Notice as I click pick up the grid, the pivot grid actually refreshed with that particular filter. So we have pick up sedan, sport utility vehicles and so on and so forth. I can if I want to turn off the filter, show everything, turn on the filter again, or I can edit the filter in a more visual style, if you like, to create your filters and so on and so forth. And that is essentially all I really want to show you with regard to WPF. Obviously, there's a lot more to WPF and WinForms. But that is pretty much it. Yeah, absolutely. It's a great overview of the controls. Some of them that have obviously been in there for forever. Some new. I love the DirectX support. That's really going to speed things up. Well, having the show notes, links to, of course, your website to the free 30-day trial. Also, how people can get their free version of Code Rush. Thank you guys so much for that. Of course, and I hope everyone enjoys it. And this has been awesome. People can sign up for newsletters and get told what's happening, I assume. Yes, you'll be able to sign up for newsletters and the like at our website, devexpress.com. Thanks so much, Julien. This has been awesome, a lot of fun. Thanks for coming on the show. And thank you, Robert. Thank you for inviting me and a DevExpress, of course. And see you next time. Awesome demo. See you next time on Visual Studio Toolbox.