Embedded Player

Sponsor Message

This episode of the .NET Core Podcast is supported in part by Productivity in Tech.

If you are a developer that wants to share your knowledge with the community, let PIT help you. PIT or Productivity in Tech focuses on developer-creators.

They use state of the art editing tools to make your content look and sound great! If you need help getting your show content off the ground, their consulting services will help answer any questions you may have about:

  • Starting a podcast
  • Creating/Maintaining a YouTube Channel
  • Running a Newsletter
  • Creating and Hosting Online Courses

If you just need help or want to save time or increase the amount of content you produce, PIT.

Productivity in Tech was started in 2016 by podcaster Jay Miller. Jay has helped many podcasts and content creators with their shows including this one!

You'll have noticed that most of the episodes of this show have transcriptions, that's all thanks to PIT. The long and short of it is: I send them the interview, and within 48 hours I get a full transcription of the interview.

Don't let "I don't have the time" prevent you from creating content that will encourage, inform and inspire others. PIT provides services at an affordable rate so whether you are backed by a business or just trying to build your portfolio or unleash your creative side, PIT has a plan that can help you out!

Visit productivityintech.com/dotnetcore for more information and to let them know that you heard about them through us!

Let PIT help you be more productive today!

Supporting The Show

If this episode was interesting or useful to you, please consider supporting the show with one of the above options.

Episode Transcription

Hello everyone and welcome to THE .NET Core podcast - the only podcast which is devoted to:

  • .NET Core
  • ASP.NET Core
  • EF Core
  • SignalR

and not forgetting The .NET Core community, itself.

I am your host, Jamie "GaProgMan" Taylor, and this is episode 29: Developer Relations and Education with Jasmine Greenway and Cecil Phillip. In this episode I interviewed Jasmine and Cecil about their roles at Microsoft in Developer Relations, some of the thing that Microsoft are doing to help us developers keep our skills sharp, and our own experiences with being on both sides of the lectern.

So lets sit back, open up a terminal, type in dotnet new podcast and let the show begin.

Jasmine and Cecil's Introduction

Jamie

So first of all, I'd like to thank you both jasmine and Cecil for being on the show today. I appreciate your very busy people and taking the time out to talk with me and the listeners. I really appreciate that. Thank you so much.

Cecil

Sure, no problem at all.

Jasmine

Thank you.

Jamie

Fantastic. Okay, fantastic. So I thought maybe we could start with a little bit of introduction, if that's okay, so maybe, you know, maybe you could introduce yourself to the listeners, in case they haven't heard of some of the work you do, or that kind of thing. Is that okay?

Jasmine

sure. Um, my name is Jasmine Greenaway, I am a cloud advocate at Microsoft, focusing on the education audience in Developer Relations.

Cecil

And just like jasmine, I'm also a cloud developer advocate of Microsoft, also on the same team focusing on, you know, making sure that we, you know, we support academics, and you know, some of that educational side of things.

Jamie

Fantastic. It's great to have you both on the show, it's hopefully going to be a very interesting talk a little bit different to what we normally talk about. But I think that, you know, education and academia is very important to all of us, regardless of whether we came from a... so I came from a purely academic background. So I went to university and studied computer science. Not everyone does that these days, you know, there's a lot of people who will be who are self taught, and a lot of people who go to code camps, and a lot of people just sort of pick it up as they go along. And all of that is fantastic, and perfectly fine. But yeah, I like that. We're going to talk a little bit about the academia side of it, I guess. Well, I guess, when we get around to discussing what what it is that, you know, your, your job role entails? I guess we'll we'll get a little bit more. More into all that.

Cecil

Sure, definitely.

Our Origin Stories

Cecil

You know, actually, I'd love to hear if you could tell us what exactly got you into technology.

Jamie

Oh now, this is an interesting question. I like this. turn the tables. Yeah.

Cecil

interviewing the interviewer?

Jamie

Yeah, like it. So for me, I would have been about what to say seven or eight. Yeah, seven or eight years old. And I came home from school one day, and my parents have bought me now we're going to drop the name of the device. But I don't think you you'll have heard of it simply because it was a very, it's a British brand of computer. It's an Amstrad CPC 464.

Cecil

No, I haven't heard about that one.

Jamie

There you go you see. So this would have this would have been in the very early 90s. I mean, they came out in the early 80s. But you know, we got one second hand when everyone that sort of had enough of using them. But this was essentially you know how like the ZX Spectrum, the ZX Spectrum was a computer inside of a keyboard?

Cecil

Yeah.

Jamie

This is the same kind of deal, except there was a tape deck attached to the keyboard on the right hand side of the number pad.

Cecil

Oh, okay. That's interesting.

Jamie

And, and this thing came with a book on BASIC, their version of BASIC that it used, and lots of exercises, and lots of things to do. And essentially, one rainy summer afternoon, because, you know, I'm British, and it always rains in the in the summer, we set up the computer, and I just sat there typing all day learning how to use this computer. And I ended up creating lots of little programmes that, you know, the traditional sort of:

10 print, go to 20
20 go to 10

Sorry, we just essentially started with that, and then worked up to having a stick figure on screen and animating that moving around on screen. And essentially, I fell in love with, hey, there's this machine here, and I can make it do stuff.

Jasmine

That's awesome.

Cecil

So, you know, the reason I wanted to ask you that question was because I always find it interesting to hear, like the, the, you know, the genesis stories, from a lot of people, because everybody has such a different path that they took to get to where they are today. It is always interesting to hear, hey, you know, I wanted to build games, or, you know, I was a, I was a music teacher or math teacher, or, you know, whatever the case is, right. And I kind of found my way into technology. And I think I think that's important to, to recognise and respect to, because you know, that that kind of helps us understand the way that people are, are learning about technology and software development. And obviously, some of the tools that we make at Microsoft, it helps us understand like, what can we best do to support those types of people?

Jamie

Hmm, definitely, that makes a lot of sense. And it also helps with, say if I'm working on a team, and I know that obviously, I came from an academic background, like I said, earlier, I took Computer Science at university. So I know sort of the math side of things, I know how it should work. Whereas I might be working with someone who came from a code camp, and I might be working with someone else who is completely self taught. So I know that I don't necessarily, not that I have to change my language. But I need to maybe acknowledge that and appreciate that when I'm communicating with them about technical points of view and technical issues. And, you know, I may, I may be able to get away with say, Hey, I think we should we should use a bubble sort here. Or maybe I can't get away with it. Because maybe the person who's self taught doesn't know what bubble sort is, or maybe, and you know, I don't want to pick on them. Maybe the person who went to the Code Camp doesn't know what a bubble sort is. I don't know, I've never been to a code camp. So I don't know, what kind of things people get taught. And I don't know what kind of tools that people have experience with. So yeah, I think it's a great idea, this sort of getting to know that person's origin story, and then you can understand their point of view where they're coming from.

Cecil

Sure, for sure. Jasmine, how did you? How did you get started.

Jasmine

Um, so for me, I came from actually quite a number of people from the MySpace age, when you could customise your social network sites. So for me, it was MySpace, live journal, and Zynga. And then some engineers and people in the industry that I know, also use this one called Neopets, it's kind of like, you take care of your own pet on this online platform and play games to earn, like all kinds of points to like, dress up your pets and stuff like that. So, um, I started from there, but it wasn't like a long term. Like, it wasn't a career option that I was thinking about, until I got to university andI minored in computer science, because the degree I was going for gave me I wanted to give me a better competitive edge when I graduated from college, and I liked computer science better. So I majored in computer science or in software engineering.

So James, you mention something very interesting about about a the learning, you know, working in the team, and talking about the backgrounds that they might have come from. So for me, because I was I didn't my major in software engineering, I was kind of so a lot of my coursework was centred around not only CS theory, or computer science theory, but also centred on project management. Things like testing, I had a class on like designing software. And so things like, um, so things like we like bubble sort we briefly touched on, but we never really got like, full, you know, a full in depth, like understanding. But you know, I know it's something that exists. So I find it very interesting, working with different teams, that people have different backgrounds, including in the open source world, because it's really fascinating to see how people learn, and like their path and how their path has brought them to where we are in the, you know, in this code base or code review.

Jamie

Definitely, yeah. I mean, everyone has a role to play and in the modern tech space, and everyone's opinion, is equally valid. So let's bring everyone together appreciate where we've all come from, and appreciate our backgrounds. And, you know, getting because we're all after the same goal, right. So, you know, we're on a team to create products for people to use, you know, and I think it's in the Phoenix Project, one of the characters in that series, essentially, "what we are making has no value until it gets into the customers hands." So let's do that. And then worry about any sort of friction that we may have or something, let's figure out a way of working together as a team, appreciating everyone's background, and appreciating where we've all come from, and taking on board everyone's opinions and see what we can do and make this amazing product and ship it to the customer.

Jasmine

Yeah. Oh, Cecil what about your background?

Cecil

So when I first got into computers, I was in high school and like, my school didn't have computers or, you know, computer science programme, and I felt like that. And so my dad, he was this all Compaq Presario like.

Jasmine

Yes

Cecil

You know, I don't remember these, oh, you know, the Compaq lines or computers.

But, you know, essentially, those are the days when, like, you bought a computer, and it came with like a set of books. And in one of those books, there was this thing about like HTML and creating your first webpage. And so, you know, it's one summer and I was bored. And you know, I started going through this book. And I think one of the first exercises was for you to, you know, create, like, an h tag or something like that. And then you put your name on the screen. And, you know, I did it, it was super quick, I did it. And literally, I did it in Notepad. And, like, it was the most exciting thing I'd ever seen, right? Because here I am, like, with this foreign machine, right now just put my name on the screen, I thought it was the most exciting thing in the world.

So I'm calling my friends info and I'm selling a yo you need to come over, like my name is on the computer, you need to come see this, you don't mean come over, I'll put your name on the computer to like it was, you know, like looking back at it obviously sounds like super trivial. But you know, at that moment, like I felt like so empowered, and just so excited about it. And again, like we didn't have like a computer science curriculum, or even computers in school at time. So I was, you know, whenever my family would like, leave Antigua and visit the United States or somewhere else, like, they'd bring me back books, and I just, you know, whatever it is that they brought me back, like, I just ingest that material. Until eventually I was able to go to college and and do computer science.

Jasmine

That's awesome.

So both Cecil and I have also taught computer science classes, at our respective communities and colleges near where we you know, where we live. So I'm based in New York and settles based in Florida. And I feel like Cecli, probably can also speak to this, I really love when, you know, we walk we, when I'm working with students, and we walk through like an example. And you know, it's time for them to try out this thing that we just learned, and just seeing their face light up saying, "hey, when I figured it out, oh, my goodness, I did as my computer can do this." It's always a gratifying experience, and always great to see them, you know, start from, you know, being very nervous and anxious about not, you know, they're like, is a lot of math do, you know, do you have to, you have to be there, like, you have to be super smart to do this. And, you know, really just breaking it down and showing them, you know, from, you know, Part one, two part, whatever, like, you know, just teaching them these building blocks. And, you know, to get to this point where, you know, whether it's like an entire, like a website or something even as small as just like getting like Cecli was talking about getting your like putting your name on, like a site or a programme. So yeah, I don't know if Cecil has any more about that, or more on that.

Cecil

Yeah, I think it's amazing. And like extremely gratifying to see the eyes of your students light up or you know, whether it's your, your students or your family member, or somebody that's just, you know, happens to be sitting down next to you at the computer, being able to see their, their eyes light up. And like the excitement and the joy of like, "wow I just did this." You know, that's extremely motivating for me. Particularly to like, even up to this moment today. And like I think about, you know, the different students that we work with, and you know, some of the things that we can help them go through. And it makes me very humble and appreciative of that fact, too. Because, you know, you think, as professional developers sort of speak, like, we're in this every day, and we see these things and you know, something as basic as doing stuff in command line, or you know, like fire your Visual Studio or Visual Studio Code. But for them, this is like, it's like magic, right? Like, they don't understand how this works. And I've never seen a lot of these pieces before, to see the new excitement gets me even more excited to go back to work. And do you know, do even more of my job?

Jamie

Yeah, I can, totally appreciate that. For a short while after university, I worked as a math teacher. And I like to use the phrase "empowering", but I worry that it's not the right phrase, but when you're able to sort of impart some knowledge on to someone and they go, "Hey, wait, I think I get it," and then they do it for themselves. They take that knowledge, they apply it in their own way, and find the answer. Or in this case, they take the knowledge that you've imparted, on the example you gave was, let's create an h tag and put your name in the computer. It doesn't, like you said, it doesn't sound like a lot to us, but to someone who has never known how to do that someone who's never never been given the chance to do anything like that. It is,it's magic, you know, and it's wonderful just watching them light up, and, and then they instantly start thinking of other possibilities.

Now, obviously, just putting your name inside of an h tag isn't going to come up, you know, we may be not going to come up with the greatest set of possibilities ever. But I remember when I was at university, we had a small hackathon, where someone had managed to use some C# library to come characters in an Unreal Tournament game. And when they announced that in the lecture, somebody went, "Oh my god, I can create Solid Snake and have him sort of sneak around against the walls!" And it's that those moments where someone just goes, wow, this is a fantastic idea. And I'm so excited that it's it's magic.

Cecil

I really think that kind of highlights how us as an industry, like we need to pay more attention to, like the generation that's kind of follows us, right. And I think things like mentors are very important. And you know, people just being able to spend their time with you and, and have conversations with you about, "these are the mistakes that I've made. And like, this is a journey that I went through," you know, I think it's important for us to not only give them guidance and encouragement, but also just, you know, be ear to listen, right be here listening to, for you to understand, you know, this is how things are different for me today, as I'm building software. I kind of realise, you know, how we, as a community can kind of come together and like help all of us like, elevate together.

Jasmine

Yeah, I agree. You know, back when I was you know, tinkering around on, like, MySpace and live journal, there wasn't many, you know, resources available to me to, like, learn how to, you know, do this, like stuff I, you know, I didn't, I wasn't even realising that there's like books and things like that. But now, like, you know, it's very easy to have access, or there's lots of access to different types of technologies that anyone can learn. But that's only part of it, you know, like how, you know, how do you so you can learn, you know, learn a language or learn technology, but then comes a part of learning how to work with a team work with, you know, learn how to communicate efficiently, learn how to learn how to, you know, work productively when you're working from home, and things like that. And it's really great to have like, somebody who you can go to and talk to, and, you know, kind of have these like, discussions, you know, outside of, you know, just like what technology the technology can do for you.

Cecil

Yeah, for sure. Hey, Jamie, how did you get into teaching? Like, I'd love to hear how, how that started.

Jamie

I'd always one to teach something, because I've always - it's that moment, you know, I mean, you've touched you both touched on it earlier on where you say, you know, you impart this knowledge and a ignites a spark and somebody you can use you I think you both use the phrase, you see it in their eyes, you know, you can you can see this sort of thing lighting up in their face and they go, "oh my goodness, I've just" and is it's you're imparting this knowledge and saying, "this is how you can do this thing." And you can do that in almost anything you do with maths, you can do it with computers, you can do with technology you can do with language you can do with anything: "here is how to do a thing and here's some knowledge and go go change the world but there's knowledge that you have, or create this thing go be creative with it." And and if I'm honest, I really love that moment when I'm able to say to someone "Hey, this is a thing go do it."

So earlier this week, I was saying to my son about how he asked me, "Why are rockets so big? Why are these space rockets so big if the people who get in the muscle small?" and I said well you know most of it is is fuel you know and when you can win so I got I got what I did was I went and got two bottles of milk one was a one was an empty bottle and one was full of milk and I said, "lift the empty bottle. Can you see how it's really easy there's no effort required? Now lift the full bottle," and you know he's quite young so lifting it was quite hard and he was he was straining a lot and I said, "did you notice how you had to put more energy into lifting the heavy bottle? Yes, well the rocket is kind of like that full bottle and then you have to push really hard to make it go really high. So to create that big push we put loads of fuel into it and burn the fuel which creates the fire which pushes it up but it needs to be so big to contain all of this fuel when actually like you said the you know the the the spacemen" bless him, that's what he said, "the spacemen are really small and only sit right at the front. So then as as the rocket starts to lift up and all this fuel gets burnt. There are parts that are now empty because there's no fuel so the just detach and fall back to Earth. But because it's been pushed," and then we went outside and we pushed a big rock. And I said, "when you let go, when you stop pushing, it will keep going won't it?" Oh yeah, "well that's what's happening with this rocket. Now the fire has gone out, it's still pushing up a little bit. And it just needs to push really hard to beat a thing called gravity." And then to explain what gravity was I went and grabbed an apple. And I said, "what do you think will happen when I drop the apple?" He said, "it will fall to the floor." And then I explained how gravity helps to is sort of a it's a it's an invisible force, which helps us to stay on the ground. So we have to push really hard against gravity to get the apple to go up and I got him to throw the the apple I've been to a few times to for him to figure out how much energy he is his arm had to exert to throw the ball through the apple.

And I said, "Imagine, please don't, but imagine how how hard you would have to lift and throw the the milk bottle, you know, that milk container full of milk how much effort you would have to that's essentially what what a rocket is doing when it sets off." And he's his eyes all lit up. And he was like, "oh, wow, it's, it's, it's no longer magic. I understand how it works." And he was walking around the house lifting things up and putting them back down to see how much effort it required to lift them up and just watching him sort of explore his world, this new thing has opened up this new understanding of how something works. He came over and he lifted up my - I have a bottle of water in because I'm always drinking water. He lifted that up and he went, "Oh, it's nearly empty, that's really light." And then 10 minutes later, when he was full again and I'm drinking from it, he came over took it out of my hands and was lifting it up and down again. And he's, "oh that's that's heavier now. I understand that that's heavier. So that means I have to lift further. That's because gravity is pulling you down harder." And it just it just all clicked for him. And I love those moments just watching someone figure out how it all fits together.

Cecil

Yeah, it's amazing man, it's it's truly a blessing to to be a part of that right to be a part of somebody's learning experience. And to give them the tools or even just the spark that they need to kind of take that information and just go ahead create like amazing things with it.

Jasmine

Yeah, I really like our every once in a while and notice that like moment when they get it you kind of like see it on their face a little bit sometimes. I agree.

Jamie

Yeah, it's almost like an adrenaline rush for yourself. seeing it happen. It's, it is amazing. And I wouldn't change it for anything. You know, anytime someone asks me, especially if it's people who are, I don't know what it is, there are, there are certain topics that you can help someone understand that they they just kind of they go in and it's like, "yep, no, I understand that now I'm going to go and do whatever it was I was doing." But then there are certain topics that no matter who you speak to about it, there will always be that moment that that recognition that spark in the eye that changing the behaviour that makes them get really excited. "Oh, wow, I've just learned this thing." And it happens more, I think with the younger, so maybe I see it a lot more with people who are younger than 16 years old. I don't see it so much with adults, I guess, but definitely with children.

But yeah, you can get that experience from anyone. And and for me, at the very least, it's a bit of an adrenaline rush, this "Wow, I just helped change this person's life." Because we have, you know, like you were saying Cecil, you know, put my name in the computer. And then I told my friends to come over, you were excited to show your friends and more than likely they were excited to see it too. And then you've changed your life, you've changed the lives of your friends. And then you were saying when your relatives would come home with all of these books for you to read, that would change your life too. And it's this whole, almost like an economy of constantly changing everyone's life constantly improving people's lives. And it's just amazing.

Cecil

Yeah, one of the things I love to say is that learning is very much of a social exercise. Like when I think about how I used to learn, like back when I was in high school, right. it was, you know, I had to leave my house, I had to walk to the library. And then when you got into a library, like you had to go find the book, then you had to go sit in the corner and be quiet. And you had to read this book, right? You couldn't make any noise and want to disturb anybody. And, and I always thought that that was weird, right? Because, you know, I go to school with like a group of people, right, a group of students who were kids or whatever. And we're all learning together. And we're talking, we're asking questions, and I'm listening to other people ask questions. And their questions are sparking my questions. You know what I mean, and it's very much of a community type setting, right. And I think even today, like that's, that's how we should, we should always approach learning, if you might know, something that I don't know, and I don't know, something that you might not know. But we could bring them together, or we could share our experiences, and we could solve the problem or create something new and really interesting.

And so that's why I'm always interested in, in like, connecting those dots, right? Like, I always try to encourage students to, you know, work together on projects, and, you know, share your code, that's, that's fine. Put your stuff on GitHub. You know, if you're not sure about something, go ahead and ask like, it's totally fine to ask, you know, ask as many times as you need, and like, no question is a silly question. As long as I could give you or, you know, whoever it is, can give you the tools to be able to take that next step forward and solving whatever problem is that you're trying to solve.

You know, I think that's one thing we we don't do a tremendously good job at as a software engineers. You know, like, when you think about like, you go to our company, like as a junior developer, some companies do this, some companies don't. But I find in general, like when you go to a company, it's just like, Hey, I'm a junior developer, and like, the senior guy might show you how to get your account set up, and you know, where the software is and da-da-da-da-da. But what it really comes down to patterns and practices. And, you know, this is, you know, don't do this, don't do that. Like, I don't find we do a really good job at that. And so I think that's one of the things you see, like me and Jasmine and our team. Like we're trying to create a place and an experience for students where they feel like they do have somebody that they could talk to in a place that they could ask questions and not feel ridiculed by it, or a place where it's, it's very low stress, you know, what I mean? Like, your job? Is that dependent on you knowing these things that you're asking me about? And that we can have a very calm relaxing conversation? Again, without you feeling the pressures of ridicule, or work or timelines or anything of that nature?

Jasmine

Yeah, I agree. You know, just talking and thinking about my experience, you know, coming out of university, a lot of the things that I know, now I learned, you know, on the job, you know, university prep me, you know, a bit. But I learned like things like, you know, git on the job, I write mostly C#, and I didn't really learn that until maybe like a year into a year after I graduated. And that's why and for me, part of the thing that I really like to do in my team is attend hackathons.

So we'll usually, you know, a few of us from the team will go to these hackathons as mentors and like help students like, you know, help set their development environment, help them, show them how to set up the repo, so they can, you know, collaborate together and things like that, or even API questions or even pointing them to docs. Because, you know, it's so easy, you know, to say, I want to start this thing I want to get started. But sometimes you don't, you're not sure if you have all the tools that you need, or all the information that you need to get started. So I'm part so so part of the reasons why I love like, going to hackathons and showing them like here, try this path, try this thing. And kind of, you know, giving them that push, they need to, you know, get to that the next point in their project that they want to be.

Jamie

I know that I've been to a few hackathons over here in the UK, but mostly as a person trying to win. I haven't had the chance to be the sort of mentor role. I think, maybe the next hackathon I attend, I'll ask whether I can help out rather than see whether I could build something because, you know, I think there would be quite useful even if I'm just walking around going, "Hey, do you need anything, you know, is there anything I can help with?" just being there just sort of bounce an idea of maybe just do some use the phrase a rubber duck debugging I know that one of the people I work with, at the moment calls it plastic programming or cardboard programming, in that you could replace the person you're talking to, with a cardboard cutout in the same way that you can replace the person you're talking to with a rubber duck, because all you're doing is just sounding the problem and trying to figure out the solution. And you know, I love that when someone's talking to me, and they're trying to figure it out. And then they'll stop themselves partway through the sentence and go, "thanks Jamie" and walk away. And I'm like, "okay, I didn't do anything here. But yeah, okay. I'll take that."

What About Hackathons?

Cecil

So Jasmine, you're in New York, right. And I know, New York has tonnes of hackathons and events and things like that. And you know, one of the things I often hear here in Florida is like, "how do you know about these things? And how do you find out about events in user groups and hackathons and and those types of things that I can get involved with?" So like in New York City, specifically, like how do you find out about these things?

Jasmine

Yes.

So specifically in New York, I do not have an answer for that. Thankfully, on our team, we have some amazing people who are able to find a lot of these hackathons that, you know, I that I learned from them. But for me, my main source has been the site called DevPost, because they have remote, and they also have in person, hackathons that you can enter. So that's - yeah, that's my my main source. But do you have any resources on or either you have any resources on where I, where folks can find more hackathons?

Cecil

I know, for me, it's always been a case of, like, with education and our industry needing to be very social. You know, I think a part of that, too, is is one kind of just putting yourself out there, right? And letting people know that you want to be found, which is might be a little, a little bit of a weird thing to say.

But, you know, I'll show you, for instance, I started with going to like local user groups. And I found out because I, you know, I was out one day, and I, you know, there was this conference was free, I went to the conference, spoke to some folks that were there, I've never been before. So, you know, these are all new faces and new people to me. And they're like, "Oh, yeah, we have this group, and that group, and this group and that group," I learned about all of these things that were happening. But yeah, me and my job and my eight to five bubble, had no idea about any of these things. But like, the minute I stepped outside of that, like I started to find out about all this stuff that was going on.

So you know, that led to, "oh, here's these hackathons, oh, here, the here, here are these startups. And here are these schools and like all of those types of things." So, I think it just takes like a little bit of effort, like step step out a little bit. I think meetup.com is a good site that, you know, a lot of us use a lot of the time, you know, newsletters and also say like, based on whatever your focus might be, so maybe your focus is react or machine learning or, you know, Docker and Kubernetes, and things of that nature. Go online and just, you know, do a quick web search and see what what's happening, particularly in your area, because most of these things are always online is online registrations and, and things of that nature. And they're also looking for volunteers, a lot of this happens to and volunteering is a great way to just kind of introduce yourself into that new environment, right? Like, let me come in and kind of help set it up or, you know, help talk to folks or mentor or anything like that. And then that'll just kind of help get your feet wet and help you understand like, what exactly does it mean to be to be a part of this environment?

Jamie

Definitely. I like to point out that giving talks is a great way to do it as well, because you're taking the knowledge and experience you have, and you showing how you've applied it to solve a, you know, a specific set of problems. I mean, you don't have to give a talk on, "here is this brand new technology, and I'm going to show you in a live demo, and hope that the Paris that they are smiling at me, so my live demo works," you can just sort of stand there and say, "so we had this problem. And we decided we needed to use Docker I've never used Docker before. So I went learn how to use Docker. And here's how I use Docker to solve this problem." I said Docker way too many times. But you know, that kind of I've used this technology to solve this problem. And this is how I did it. Versus This is how the the docs say you should do it. Because you know, my, this version that I used, solve the problem quicker. And if I had chance, I'd go back and you know, do what the docs say.

But that kind of just that sort of hands on experience, that sort of sharing is almost like a mentorship is, here is how I solved this problem. Or here is how I went about trying to learn how to solve the problem. And maybe I didn't solve the problem. But these are some of the things that I did that didn't work for me. I think that can be really useful to at least that's how I tried to give my talks, "hey, I was an idiot. This is what I did. And it kind of worked. And I'm really surprised, because you know, I'm not very good at doing this king of thing."

Cecil

Yeah, exactly.

Jasmine

And I totally understand, I feel like, that's one of the things I love a lot about what we do here on our team is because, you know, we are, you know, we're a lot of time to, you know, do our self guided learning. And Microsoft gives us a lot of resources to learn, you know, on our own, and, you know, learning something new. And for me, when I joined Microsoft, you know, I had a little bit of exposure to Azure, but I didn't know, you know, a lot. And so one of the things I would do is I would go just pick a service in Azure and just, you know, maybe go through a tutorial or poke around. And then when I, you know, maybe make a proof of concept. And when I find something, you know, a service that really sticks or something that you know, our project that I'm you know, I'm really getting into, I use as opportunity to write a blog post or do a talk, or just show somebody else like how you know, what I learned and how I applied it to a situation.

Jamie

Sure, I did something similar when, when .NET Core first came out, I built essentially, web API. It used n-tier architecure - I'm gonna throw a lot of words out, I don't know whether all of the listeners will know what they mean. Hopefully, they will maybe not. But it was an ASP. NET Core Web API using an n-tier architecture to talk to a SQLite database. And it use Entity Framework Core and did a whole bunch of stuff. And I was like, "I need to learn how to use ASP.NET Core, Entity Framework Core, and I want to put it on Azure. So how do I learn how to use Azure?"

So I did all of that. And then I stepped back, "wouldn't will it be great if that was all documented somewhere, there's sort of journey of how to create a, wait a minute, I'll start a blog and just blog about my journey in creating this little app." And it turned out that it was incredibly useful for people because I saw that the place where I was working, there were people at work, going to that blog, to learn how to use the technology, so that then they could use it on their next project. The IP addresses in, you know, the analytics and things kept showing up, I was like, "Hey, this is kind of useful to people," and it is, it's really useful, just like sharing that knowledge.

Cecil

So I think one of the things that we're trying to do as a team is really try to, I think, at this point right now that really just trying to understand like, what are the needs of people. And when I say people, I mean, from folks in grade school, to university to folks that are changing careers and things of that nature. We're just trying to understand, like, what is it exactly that they need to learn?

One of the things I always say is, like learning is such a personal thing, right, because we all learn in such a different way. I remember when I used to teach my university course, like I'd have students that are as young as 16, and that have some, like, you know, late 20s, and then I think my oldest student was probably like, 54, or 56 years old. And anytime that give I'd give out an assignment, like I usually give like a, like a research, "research" aspect that as well, like, they all do it so differently, right, like, so if I gave reading material, like my older students would read, like, my 16 year olds would never read anything. But like, if I gave videos to watch or anything that they could look at, like, they're totally watch them for sure. Like, they'd watch them like multiple times, but my older students want to read. And then I'd have some students that are just more hands on, they just, they just want you to show them how things work.

So when you think about how you approach teaching somebody something, but you got to think about, like, what's the best way for us to craft content for them to consume? And that's what you'll notice, like across out team, like we, we have Microsoft learn right now, which is, which is very much of an online learning platform. So you know, you can go through and you could read, and you can try out some exercises right there inside of your browser. You know, one thing that I'm also focused on is like, I do a lot of video content, and you know, Channel9, at Microsoft, we create a lot of video experiences for for you to watch. And you can understand, like, what's happening in certain products, and how does certain API's work and SDKs and services and things of that nature.

And then, you know, a lot of other folks on our team, like, you know, folks like Jasmine, and tonnes of others, like they do a lot of workshops, they do a lot of hackathons, a lot of in person type experiences, which kind of gives you like that hands on methodology of learning, which I think is also important, too. And so I think you need, kind of, need to have all three of these together to really help folks understand, or really help them absorb the information in like, a very deep way. You know, and so again, that's one of the things that we're trying to do, is just make sure that we could approach them in a way that's, that's interesting, that's fun, but also to like, you could we could we could reach you in the way that you want to learn, and you can do it at your own pace in your own time.

Jasmine

Yeah, I agree. And the nice thing about what Microsoft does, when it comes to technology, it's always well documented, it's always available on, you know, on docs.microsoft.com, and also, you know, available on GitHub. So if somebody realises that there is a something off about the documentation, they can always go and make, you know, a submission to the Microsoft docs, and, you know, fix that. And that's also another just also a great way to, to learn is just going through the documentation. I mean, I do that a lot, especially when I, you know, whenever I'm at a conference, and maybe I'm at the booth, and, you know, somebody asked me, "Hey, I don't know about I don't know much about this product or the service, could you give me some information about it?" I always point them, you know, to the docs, because it's always, it's always a central location for getting some full, like the full scope of information that you need to get the job done or get our to get to a point where you that you want to be in terms of your project or, or the thing, whatever you might be building.

Cecil

Yeah, definitely what I would say to anybody that might be an educator, or the university or coding school or anything like that, like, definitely reach out to us and let us know, like, what are some of the ways that we could help support you from, you know, whether it's, you know, workshop material, or coding samples or anything like that, like, we'd love to hear. What are the types of problems that you're trying to solve, in terms of delivering content and, and, you know, keeping information fresh, and keeping it interesting for your students? And try to see how we can kind of help you do that, you know, obviously, with our help.

Jasmine

And the last thing you just mentioned, Cecil. Yeah, I think it's also important that we have support for educators who, you know, want to teach their students how to learn something, you know, whether it be computer science, or maybe just even learning about cloud technology, through Azure, it's so easy to, you know, want to be able to reach students. But also, it's also important to keep in mind, how we're, you know, showing instructors how they can show students and help students how to how to know, make it work website or work on like a serverless cloud solution, or something like that. So I think part of you know, part of our, you know, job is also to equip instructors with the tools they need to show students how they can do those things. And yeah, and that's, that's really an important point there you made Cecil.

Cecil

Like, what would you say are some of the questions that you get the most from students and from people that are trying to get into the industry? Because I think for students like that's, that's often a place of, like, fair concern, where you like, "Oh, my God, am I studying the right thing? Or am I, you know, taking the right class?" Or, you know, like, like, what do you tell people when they ask you those types of questions?

Jasmine

So for me, most of the questions are, I feel like a lot of them turn out to be, "how can I get a job in the industry?" And then that turns into, "well, what entices you, what are you interested about learning in industry?" And they'll say, you know, x, y, and z.

So say, for example, let's take, you know, web development. So I'll say, you know, probably say something like, "think about, you know, the building blocks of the web, you know, JavaScript, HTML, and CSS." And I tell them, okay, so that's probably where you want to start. And so what I like to do is give them like you the foundation, like, Where's that starting point for someone to go for it. So for them, it would be if they don't know, if they already know HTML and CSS, okay, then maybe it's time to, you know, look at JavaScript, here's some documentation. And here's some, you know, fun project, as I've seen, because I find it important to give folks examples on the possibilities that we can have with a certain technology, because I find that especially in when I when I'm instructing students, showing them what is possible, really excites them and really gets them excited or motivated to try and not replicate what you know what I'm showing them, but to get started to, to learn how they can do themselves. So I'll send them with like, some foundational points, I'll set them with some inspirational resources.

Jamie

That sounds a little bit like how I - so one of the examples I always throw out about my sort of teaching style from back when I was a teacher was me, I used to go into different, I guess it was a bit intrusive, but I used to go into other lessons when I wasn't teaching during that period. And sort of trying to figure out how the other teachers were working, because I was really new to it.

Let's take circumference of the circle, right? One, teacher would draw a circle on the board, and make a point in the centre and draw a line from the point of the outside of the circle, and just write down the formula and just leave it at that and say, get your calculators out work better. And then another, another person would, would take the students on the journey where they were learning a little bit about Greek and why it's called radius. Why we do things with PI and lowest theoretical stuff. I turned up to the class one day. And I said, "right, we're going to learn about the circumference of a circle." And I got my bike, my bicycle. And I said, "let's look at the front wheel. I don't know how big the front wheel is. But I can measure with a ruler or with a measuring tape from the centre to the to the edge. And we'll call that something will come up within a while as call it the radius. I don't know why, but let's use that word radius." And then we talked about how to get from the radius to how, what their circumference was. And then I said, "right, okay, let's we know how how long the circumference is, what, what the measurement of the wheel is. So why don't we put a little clicker on the wheel. And every time it rotates all the way around, we know that the wheel has travelled, the length of the circumference, if it was laid down in a line," and then we sort of wheeled the bicycle around the school. and Canada many times it clicked. And when we got back to the class, we went, "right. Okay, how many times does it click? I clicked 120 times. How far did we did we travel we travel this far? How did we work that out? We measured the distance from the centre of the wheel to the outside of the wheel?" Is that sort of making it like you were saying, Jasmine, that sort of making it engaging? Bringing the students in and giving them something to do? You know, maybe that's not the best way to do it? Maybe there's I don't know.

Continual Learning

Cecil

So here's a question for both of you, specifically, if you want to learn .NET, like what's the path that you take? Like what's like, what's your go to, you know, methodology?

Yeah, like, say, like a new API comes out? Or? Because I always look at this industry, as this is a constantly learning industry, whether you're doing .NET, are you doing mobile? Are you doing web, you're doing cloud, like new stuff is always going to come out. And somebody's going to have a new framework or library or something like that, that you need to figure out right and incorporate into your product. I think that's important thing for for everyone that's trying to come to this field to understand, right, like, you always have to keep learning stuff.

Jasmine

Yes.

Cecil

So like we I think, as engineers, like, we have to be very efficient to add it in. And I mean, like, we can take months, upon months upon months learned stuff, like sometimes you got to pick up stuff really quickly. We have to learn everything, obviously. But like for the things that we need to pick up, like we need to ever pick it up quickly, and kind of keep moving on. So like, I think it's important for all of us to have like a thing, right? Like maybe I reach for books first, or maybe some folks like Pluralsight on LinkedIn learning or like online courses, and things like that. Maybe they go the route of doing something like edX, or Coursera. You know, like, there's so many different ways to do it, you know, but I find like, everybody has like, their thing, right? Like their own branch that they take to kind of figure that stuff out.

Jasmine

I would say, for me, it's mostly I look at code first, I'll look at examples. And then you'll find me like looking at the docs, because usually, it's if it's something, you know, new with .NET, I might will have to refer the docs and say, "like, Oh, well, what does this thing exactly do?" So it's usually code first, then docs later,

Jamie

For me, I'm a little different. So because I've done a lot of, you know, most of my career, aside from when I was teaching was all about making a product, make a thing and ship it to the customer. So for me, it's a case of, I'll try to figure out what this thing is, and how will help me to do my job, whatever the whatever that job is. And I will try and focus on the tiny part that I need to know. So like the example you gave there Cecil was, "let's learn .NET" well .NET is huge, you know, it's it. There's there's server side stuff, there's desktop stuff, there's Web API stuff, there's, there's now a way to run .NET inside your browser. So you can run it in the browser, you can write apps on your computer and have them set over to your iPhone or your Android or your tablet or whatever. You know, there's it's a huge subject. So rather than "let's learn .NET," let's learn this little thing that I need to know about.net and then slowly build on top of that.

But I've always found that the only way that that works for me is if I can build something with it. So the example I gave earlier on about I wanted to build a web API, to be able to throw it on to Azure was I wanted to learn how to take a web API and put it on Azure because a project I was working on during my work day was I had to take a pre existing web API an put it on Azure. So I've got to learn how to do that. And I couldn't do it during work time because I had other responsibilities. So let's build something really quickly. And let's figure out how to put it there using the fewest steps possible. And then maybe once I'm when I'm done, I'll go back and learn. Why is it that was I can do FTP delivery, it's maybe better - and I'm using the bunny quote there - maybe it's better to use as your DevOps to push a button and use a service principle to do that for me, or why is it better to use, let's say, it might be better to use build agent or deployment system or somebody a third party tool? Well once I've got it working first, then go back and figure out the wise. So I think I'm I do things the opposite way, I guess to you, Jasmine,

Jasmine

Yeah. Sounds like it. But one thing that I did before I did Developer Relations, I found that, you know, I be working on something and you know, the new technology. So for example, when ASP.NET MVC, I believe is three came out. I didn't know much JavaScript, and I kind of had to learn it on the job. Yeah, so for me, yeah. So yeah, like, I'm just kind of thinking about how, yeah, the opposite. So yeah, I was, you know, building, building the application and working on on the application, but also like referring to docs, and like thinking, you know, looking at how you know, how it compares against what I built, or just referring to those docs to help me get to the next step.

One thing I also love to do is when I'm especially when I'm learning a new programming language, is I build something, and I go look at some code that I know is going to be it's like written by somebody who has written the language for a while and works in the language and and looking at how they've done things or how they've solved like a specific problem. And looking at comparing mind be like, "oh, wow, mine. Oh, our solutions kind of the same. Oh, look how they did it."

Jamie

Yeah, yeah. I always love comparing because there's more than one way to solve any problem in the business we're in. Right.

Jasmine

Yeah.

Jamie

So let's say that you and I are both tasked with Here is a list of items, get them into alphabetical or ascending to descending order, or something is a list of stuff sorted for me, I'll go into one way, and you may go and do it a different way. And we'll get we may end up with the same result. We both have the list sorted in whatever order we were tasked with. But you know, you may have gotten nay breadth first, divide and conquer and all these kinds of different maybe you've just use JavaScript and gone .sort(). Whereas I've gone away, and maybe I've gone and done a, I've maybe sat and tried to do some, some thinking about it while it's partially sorted list. And this, this that the other, well, maybe I didn't maybe I just went, you know what, I'll fake it, I'll just write the list out in, right, manually write it out in the right order, I don't know.

But each of those is, aside from my last example, is a valid way of sorting that list. And so it's comparing those two, you can get an idea of what the person was thinking and, and how they got to that solution. And then, like you say, it's a great way to sort of improve your own thinking, because you then go, "Oh, I see. I see. That's how that person broke that task, then they focused on this part first, whereas I focused on this part. I wonder why they focused on that part? Well, this person is much more experienced. And maybe they've seen these kinds of things before."

I think Scott Hanselman, man had a blog post that last year, and that was, how do you know this crap. And he said, "Well, it's kind of a gut feeling, and kind of a bit of education and experience and gut feeling." Maybe it's a combination of those. But then maybe you don't meet someone who's done all of that maybe you meet someone who's fresh out of school, who then is very much a case of let's do it the theoretical way. And then you meet someone who's taught themselves from the docs, from Stack Overflow, from looking around on the web, from asking other people, from being mentored by people. And maybe they've got a much more elegant solution than anyone else.

Cecil

Yeah, that's why I always go back to say, learning today is such a social thing. Like it has to be a social thing. And one of the reasons why I love like websites, like GitHub so much, is that, you know, we could we could learn from each other, we don't even have to engage with each other too much, right? Like, I can go and look at your code, and I could see what you did. And if I need to like that, I could ask you a question via GitHub issue or, you know, or send you a message or something like that. And I find those ways are so much richer, like when we could do things like that. And we can engage with each other in a way that we could share our knowledge. And obviously, everybody's opinion, that doesn't make everybody's opinion, right or wrong, or, you know, doesn't make your opinion better than mine, because like we all are coming in from things at a different angle with different use cases. But still, like being able to understand different sides of how to solve the same problem is only going to make us better at the end of the day.

Jamie

Definitely, I mean, you just look at, for instance, cooking, we've talked a lot about sort of technology and development, I guess, so far. But what about with cooking, right? You've got one person who knows how to cook a dish one way, and another person who knows how to cook a dish, the same dish in a slightly different way. Those are two both valid algorithms, I guess, to try and make it fit what we're talking about to sort of bend that metaphor, they're both the same thing, it may not be the same process, but they be both have the same end result: one method takes five minutes less, but it doesn't yield as good of a result. And maybe the other method takes longer and and yields a slightly better result. And comparing those notes and figuring out how each of us got to those stages is a great way to learn, like you say it's, "I can learn from you by seeing how you've done it. And you can maybe learn a thing or two from me by seeing how I've done it."

Cecil

Right, exactly.

What Does Developer Relations Mean?

Jamie

Do you mind if I ask you a little bit, I mean, we've mentioned really quickly a few times about Developer Relations. Could you maybe talk to us a little bit about what that is?

Cecil

Yeah, sure, we can talk about DevRel a little bit.

In the particular role of me and Jasmine play, like I like to think of us as, like the the liaison or the like the conduit between the company and the community. Right. So you know, as much as we do a lot of public events, like workshops, and speaking and hackathons and things of that nature, you know, it's also important for us to engage a lot with product engineering, and, and, you know, bring them useful feedback from the folks that we're engaging with in the community. So it's a, you know, it's a two way relationship. I think one of the challenging parts of that relationship is, is one trying to establish trust on both sides of the table. Right, because, you know, the folks in the community might think, like, "oh, he's a marketer, and he's trying to sell me stuff." You know, and then like, the folks on the engineering side would be like, "well, he's not technical enough, and he doesn't know, whatever." And so like, I think it's important for us to try and establish trust on both sides. And then, once we do that, you know, that's when things kind of start to click right, like, so now, you know, we could champion the with the interesting products and features and, you know, capabilities that are happening on the product engineering show to the community.

Cecil

And then we can also take the problems that are there having, but even even the successes that they're having, and take it back to the product team, so they could know how the product is being used and what people are thinking about them. And then you know, once that relationship is there, like it only ends up making all of us better at the end of the day.

Jasmine

Yeah, I agree with Cecil. All feedback can be useful feedback, and can make a difference, you know, and know what those next release notes will be, or the next service or product or update will be.

Jamie

Yeah, I like that idea of having someone that I can talk to maybe an event or maybe just a name, that I can send an email to or someone on Twitter that says, "hey, I'm seeing a little friction using this particular documentation or this particular feature. And I was wondering, you know, Can we have a chat about that?: And then, so I guess it's a little bit like the develop advocacy roles that a few folks have, I guess, at Microsoft, where you can say, "hey, this thing is, isn't necessarily the greatest experience. Here's what I've had so far, here's the experience I've had so far. Here are the issues are found. And here with the great things about it. Could you maybe pass this detail back on to someone on the team? Or can you maybe point out why, what I did that caused this experience to be suboptimal? And what I can do to stop it from being like that in the future?"

Maybe it's the way I've used the tools. Maybe it's because I'm trying to write an ASP.NET Framework application on a Linux machine and I don't have Mono and I'm, I don't understand the differences between operating systems, I'm just bashing my head against the keyboard. Maybe that's it, but then hopefully, you would, you would hope that it's covered in docs, it's a really bad example. But yeah, I like this idea of having someone to talk to that you can put a name and a face to and say, "Hey Cecil," or, "Hey, Jasmine, I have at this problem. Can you help me out?"

Jasmine

Yeah, you know, the nice thing about that is not only do we have you know, one on ones are, you know, face to face interactions with folks who are interested are already using Azure, or even VS or VS code. But also being able to have like, normal recurring meetings with these product teams.

So with all of our, in our entire team, we have folks who have taken the lead on kind of being the liaison between us and product teams. So what will happen is, you know, some of these meetings will, you know, they'll be, you know, advocates that are interested in learning about, like, the next things are coming out about a particular Azure service. And you know, so they'll have somebody, either, you know, a PM, or even an engineer, come and talk to us about, you know, what's happening, and then also give space for us to kind of talk about any maybe content development around that, or any, like, just good storeys to tie in, to content. So it's kind of a two way street, when we have these, you know, these meeting, it's like, they're sharing, you know, these product teams are sharing with us, the advocates, you know, what's coming, and you know, what they're excited about and what they're working on. And we are giving them feedback and showing them content and the things that we're building with the things that they're that they are building in creating.

Jamie

Sure. Okay. So I guess, in that aspect, then, as a user of the technology as a user of the product, as I think I've heard a lot of people use the word customer. But yeah, as someone who is using the technology and the product, I can then provide feedback, and maybe that feedback can go into the next version. Or maybe I can say, "hey, wouldn't it be great if I could do this thing with this technology?" And then you know, maybe that could provide it maybe enough people are asking for it that there's there's reasons for you to take that back to whomever you take that back to, and put a case forward and say, "hey I have a 5000 people asked me, Why can I do this with Visual Studio? Why can't I do debugging JavaScript inside a Visual Studio?" Bad example. But let's say that 5000 people all messaged you on the same day, which would be distressing, I guess, about being able to do this. And then you can take that to someone, and then they can be whatever experiments needs to be done, whatever thought process, whatever work needs to be done. And then at the end of it, maybe six months to a year later, because I don't know the cadence of these things, there's this new tool comes out that people can use and someone who would maybe I put that suggestion in, and then I feel I feel great, because I'm like, "hey, somebody's listening. And it's made this tool a little better, at least for me anyway."

Jasmine

Yes, exactly.

What About Teaching?

Jamie

So with that said, then so we've talked about developer advocacy. What is I think I think we kind of touched on it a little bit. But what are your favourite ways to try and impart knowledge on someone? So let's say you're, you're trying to mentor someone, maybe you're trying to teach someone something? I know that I talked about that sort of practical, let's do something. And I'll show you. Why is that I gave the example of the rockets. And I gave the example of the wheels. But what about yourselves, especially with technology, is there a there's no best - I'm using bunny quotes again - there's no best way to teach someone because, like you both said earlier, and everybody learns in different ways. But what would you say is a great way for for you to sort of teach something, we've talked a lot about learning. What about teaching?

Cecil

One things I always tell my students is, like, if you really care about something like you got to put effort into it. If you want to learn how to be a technologist, you want to learn how to do design or 3d modelling whatever the case is, like you got to put effort into, and I find for you to put effort into it. Like it has to be something that's like personal to you, for you to be consistent, right. And consistency is important.

So one of the things that I always say is, why don't you look at your life, look at the things that you do your hobbies, your, you know, whatever the case is going to movies, playing video games, whatever. And let's see how we could apply technology to it, to make it better. So I'll give you an example. So I had a student and, you know, his family was into like, going to like fresh markets. And you like these little pop up shops where people are selling produce, you know, like different fruits and vegetables and things of that nature. And I'm like, it's something he does every weekend with his family. I'm like, well, that's such a part of your life. It's, it's like already habit for you. Right? Like it's a normal occurrence. Why don't you make a website for it? Like teach yourself the things that we learned in class, about HTML and CSS, Java and web servers and you know, hosting, and DNS and like all of these things, and apply it to something that you care about. And I find when you do that, obviously, like, it's something that you care about is something that you're really passionate about, I felt like you're more likely to stick to it, you're more likely to remain consistent with it, and more likely to follow through with it.

And again, like whether whether your methodology is watching videos, or reading or just hands on tinkering until you figure it out. You know what I mean? I think I think it just starts with, like, what can I do to make this thing interesting for me? Right, I think one of the ways I do that is, again, I take take something that you care about whether it's sports, racing, you know, maybe you're into flowers, maybe you're into, you know, gardening, maybe you're into collecting stamps, I know people still collect stamps, but you know, if that's the thing, you do that, and, you know, apply technology to create a website, create a mobile app, create something or, you know, take what you've learned in your course, your class, your, your lecture, and try and apply that to something that means something to you.

Jasmine

Yeah, I feel like I do a little bit of that, too. But the way that I also like to teach, especially when I'm teaching code is I like to kind of, I guess, it's like a form of pair programming.

So whenever I'm, you know, I teach a new concept, I show an example. And I usually live code it right there in front of the students, I do it because:

A) I'm going to usually sometimes make a mistake, and it's good for them to see that, you know, sometimes at the process, there's been definitely been times where I've had to, like, search for something that didn't work properly. And I think the students really enjoy that aspect of, "Oh, this person, you know, has been doing this for, you know, years, and they had to look something up," I think they really, they appreciate, you know, me being able to be vulnerable like that.

And then we also have a part where we'll all code together. So they'll kind of like follow after me. So I'll like write something, and I'll be explaining it, write something down or take something out and explain it, and then they you know, follow follow along. So at the end, we all have the same, you know, we all have the same outcome. And we know, we talked and we talked about the process to get there.

So when I'm not doing that, from the instructor, lens, or you know, in a classroom setting, I like to use screen sharing. So I had been really loving, VS Code's live share, that's been a great resource, I also really enjoyed this tool called glitch. It is a online tool that allows you to build things like websites, small websites, right there in the browser, all your files are right there. So with the press of a button, you can see the output of the website that you've created. And then the nice thing is that people can actually come come and watch and follow along and watch as you're, you know, creating the site. So and then you know, you with an account you have, the site that you built, also has an address. So you know, whenever you're done, you can share it with somebody else. And, or, and then someone else can kind of do this thing called remixing where you know, you have this product done and you want and somebody wants a copy of it very similar to a GitHub fork, you remix the project. So you have a copy of it on your own, that you can go ahead and update and change if you'd like.

And then the other thing is that on glitch, you have the feature of being able to ask for help from the community. So someone can like hop onto your project and come and help you out and show you and point out the points that you're having issues with or help you fix them.

Jamie

I like that, I like that. And it fits really well with what you both said about, take that knowledge and apply it, apply it make it fit. Cecil, I think you used that word, the phrase of something that you enjoy something that you need something that fits within your life. And, you know, I think it works again, you know, with what Jasmine saying about taking this thing and actually doing it, you know, do the thing, because technology is very much a doing activity, you can sit and you can learn all the theory. But eventually you're going to have to sit behind a computer and do something with it you know?

And I think it's very similar with, say music, you know, you can, you can sit and learn the scales in your head, you can sit and learn how to read the musical notes. But until you you're sat behind an instrument or have an instrument with you, and are actually physically interacting with it, you're not really doing anything musical, I guess, I guess you could make the argument that what about a conductor, or what about a writer, there's still that experience of you can't press these five notes on the keyboard at the same time, because three of them are over here, and the other two are the other end of the keys. And you literally figuratively can reach.

But with technology, you need to be in front of the computer and doing the thing. And I like that I like the whole look at what it is about your life that that you've you like to do and apply that. I think you know, the example you gave there Cecil was create a website and the example you gave there Jasmine of standing in front of a group of people and saying, "let's do this live now. And if I get stuck, you'll see what happens when I get stuck, or when I do something wrong, you're going to see what happens when I do something wrong." I think it's similar to what happens with mixer and Twitch people sort of live coding, I really like to watch those. And that's a bit of a pair programming experience as well. And even with some of the greats, you know, people who've been doing this for years like yourselves, they get stuck, and they'll ask the audience, "Hey, can you figure this out, I can't figure it out." And then the host and the audience go on a full journey of "Let's learn why it didn't work," and it takes it on this new, this new sort of trajectory.

The live coding thing goes back to something I did a uni. So one of my lectures - the first lecturer that we had for computer science 101 using C# and .NET - he would take us through a certain topic, and would bring up notepad, like he would bring from the command line, open up notepad and create a file, and then use the command line C# compiler to compile the app, but would have it on a, you know, several screens around him so we can all see. And we will watch him type out all this code, and he'd make a typo. And so we shout out, hey, you've done that wrong, or you've done that wrong. And, you know, looking back now it was obvious he was doing parts wrong to see whether we were paying attention. But some parts not so much. And that's really great too, because then you're like, Oh, hey, the master the was the teacher becomes the student about so the master becomes the student. That's my prayer. So the teacher becomes the student. So hey, you told us how to is that applying thing? Like you guys were both saying, you know, that applying thing?

Jasmine

Yeah, I like that tactic to, of, you know, making, you know, making a mistake on purpose. So see if they're following along, and I also really like when they you know, raise their hand and like, "Hey, I think this part is wrong, you think you might need to fix that." It means you know, its just really affirming feels like, you know, makes you feel like you're doing something right, you know, and they're actually, you know, absorbing what you're learning. Also, there has definitely been a time where I definitely made a mistake and passed off as a learning experience. where I was, I would say, "Oh, I forgot her, I made a mistake on this thing." And you know, someone pointed out and I'm like, "okay, just making sure you all, you know, learn," but no, I that was actually a real mistake.

Jamie

I like that, being able to pass it off as, "I was testing you all."

I guess that all that remains to say is, thank you ever so much for being on the show. We've gone on a long time it was I loved this conversation. It was fantastic. I could talk about teaching and learning and education or listen to someone talking about teaching and learning and education for days, because it's something I'm really, really in my own life really passionate about. You've both been fantastic and indulging me and that kind of thing. So thank you ever so much for being on the show. And helping me learn a little bit more about what Microsoft are trying to do to help people learn and how people can help Microsoft to help other people learn, I guess. So thank you very much for that.

Cecil

Yeah, sure. Definitely. I mean it, I think it was definitely a pleasure for both of us to be on the show. And anytime at all, you want to have another conversation where we're totally, totally free for it, whether it's recorded or not.

Jasmine

Thank you so much for having us.

Jamie

Thank you very much. And definitely, I will definitely get in contact with with you both again, because it's a lot of fun, and I loved I love learning about learning is how I'll put it.

Connecting with Jasmine and Cecil

Jamie

But um, one last thing, then if folks want to get in contact with you or want to learn a little bit more about you, how can they can they do that? And if so how can they do that?

Jasmine

Sure. For me, the main one is Twitter. So my Twitter handle is @paladique. That's "pa la di que".

Cecil

Yeah, and I'm also fairly active on Twitter as well. So I'm just @cecilphillip. And also you should feel free to reach out to me on LinkedIn too. I use that not as often as I am on Twitter, but you know, both of them work equally as well.

Jamie

Fantastic. I'll make sure to put links in the show notes so people can click through because sometimes it's hard, you know, if you're driving along your, you're going for a run or something. It's it's hard to sort of recall at a later stage, so I'll make sure to put all that in the show notes for anyone who's interested.

Thank you. Seriously, thank you both for being on the podcast. I know that it's a it's taken some time out of your workday to talk to me and very much expecting you both to have to run off to meetings or run after some important thing to do. So. Thank you ever so much for taking the time,

Cecil

Share. Thank you, Jamie man, it's been a pleasure.

Jasmine

And likewise, thank you

Wrapping Up

That was my interview with Jasmine Green and Cecil Philip of Microsoft. Be sure to check out the show notes for a bunch of links to some of the stuff that we covered, and a full transcript of the interview. The show notes, as always, can be found at dotnetcore.show.

And don't forget to spread the word, leave me a rating or review on your podcatcher of choice, and to come back next time for more .NET Core goodness.

I will see you again real soon. See you later folks.