Microsoft Research Podcast

Microsoft Research Podcast

An ongoing series of conversations bringing you right up to the cutting edge of Microsoft Research.

Hacking the runway with MakeCode with Dr. Thomas Ball and Dr. Teddy Seyed

November 13, 2019 | By Microsoft blog editor

Dr. Ant Rowstron and Mark Russinovich on the Microsoft Research podcast

Episode 98 | November 13, 2019

Computer programming has often been perceived as the exclusive domain of computer scientists and software engineers. But that’s changing, thanks to the work of people like Dr. Thomas Ball, a Partner Researcher in the RiSE group at Microsoft Research, and Dr. Teddy Seyed, a post-doctoral researcher in the same group. Their goal is to make programming accessible to non-programmers in places like the classroom, the workshop… and even the runway!

On today’s podcast, Tom and Teddy talk about physical computing through platforms like MakeCode, a simplified programming environment that makes it easier for young people – and other computer science neophytes – to start coding with programmable microcontrollers. They also tell us all about Project Brookdale, where they did a collaborative fashion show that gave emerging designers the tools to embed technology in their garments and produce wearables you’d actually want to be seen in!

Related:


Transcript

Host: Today’s two-guest podcast is all about physical computing, programmable microcontrollers, computer science education… and fashion! Join me, a veteran researcher and a newly hired post-doc researcher for some perspective on the magic of making with the power of code! 

Host: You’re listening to the Microsoft Research Podcast, a show that brings you closer to the cutting-edge of technology research and the scientists behind it. I’m your host, Gretchen Huizinga. 

Host: Computer programming has often been perceived as the exclusive domain of computer scientists and software engineers. But that’s changing, thanks to the work of people like Dr. Thomas Ball, a Partner Researcher in the RiSE group at Microsoft Research, and Dr. Teddy Seyed, a post-doctoral researcher in the same group. Their goal is to make programming accessible to non-programmers in places like the classroom, the workshop… and even the runway! 

On today’s podcast, Tom and Teddy talk about physical computing through platforms like MakeCode, a simplified programming environment that makes it easier for young people – and other computer science neophytes – to start coding with programmable microcontrollers. They also tell us all about Project Brookdale, where they did a collaborative fashion show that gave emerging designers the tools to embed technology in their garments and produce wearables you’d actually want to be seen in! That and much more on this episode of the Microsoft Research Podcast. 

Host: I want to just start by saying that I’ve been waiting a long time to get you two in the booth with me. Tom Ball, Teddy Seyed, welcome to the podcast! 

Tom Ball: Thank you so much. 

Teddy Seyed: Yeah, thanks for having us. 

Host: Tom. 

Tom Ball: Yes. 

Host: You’re a partner researcher in the Research in Software Engineering, or RiSE, group here at Microsoft Research. 

Tom Ball: That’s right. 

Host: And you’ve been here a while. Teddy, you’ve just been hired as a post doc here at Microsoft Research… 

Tom Ball: One week ago. 

Teddy Seyed: Yeah. I’m kind of fresh out of the gate! 

Host: …although you’ve been at the computer science thing for quite a while, and we’ll get to that shortly. But you’re early on in the game. So we’ve got both ends of the MSR spectrum represented here and because of that, I think this is going to be an exciting version of this question: what gets you up in the morning? Why do you come to work? What’s your motivation, as they say in the movies? 

Tom Ball: Mmm-hmm. Well, for me it’s the Microsoft Research environment. We get to probe fundamental questions about computer science and work with an amazing set of people. Over my twenty years here, I’ve been able to hire people ranging from empirical software engineering researchers, to people doing automated theorem provers and compilersprogramming languages and Teddy is an HCI expert, human computer interaction, working in the intersection of computing and wearables. And so I just find it really exciting to be working in an area where there’s a huge amount of diversity, a great amount of talent and, it’s just fun! For me, every five years or so, I like to sort of switch things up and change things up. So I’m at one of those phase changes and Teddy is like the phase change agent. 

Teddy Seyed: Glad to be that. 

Tom Ball: Something like that… you are, right? 

Host: The face of phase change. Teddy what gets you up in the morning? 

Teddy Seyed: I mean I had a really good internship experience. I mean I was a pretty driven, entrepreneurial kind of, before I came here, and then coming to MSR was a really good research experience for me. I remember one of my first meetings, I was sitting with Tom and a few other researchersAstaI think, as well, and you’re kind of like, oh, like, wow! These are all people that I have, like, read about and they’re so open to collaborating. And it was a very eyeopening experience for me. 

Host: Wow. 

Teddy Seyed: And then just the internship was fantastic. And so now when I wake up, it’s like, who am I going to work with today and, like, what kind of things can I do that I can’t do anywhere else? So that really drives me. 

Host: Tom go back just a little bit this, this umbrella of RiSE, Research in Software Engineering. I’ve had many of your colleagues on the podcast, and it seems to be a kind of phrase that encompasses a lot of different threads of research. Is that by design? 

Tom Ball: Yeah, that’s really by design. When it was started, really, by Wolfram Schulte back almost, I think, 2009 it brought together a lot of different groups. And, you know, there are so many aspects to software engineering and software quality. There’s lots of different ways to look at the beast, and it’s very complex. So we look at empirical methods, we study how people programDenae Ford Robinson just joined our group, she studies people on GitHub. We have people doing formal automated theorem proving to help us find defects in software or prove that software doesn’t have certain classes of defects. So, in general, there’s a wide range of problems, software quality, software performance, and, for the most part, we’re looking at improving the life of the professional software developer, although in the last five years we’ve expanded. We do work, really, for bringing the programming tools and technologies to endusers who may not be programmers. There was work that made it into Microsoft Excel called Flash Fill, which is a form of programming-by-example, or program synthesis. And then the latest stuff that we’ve been doing with education is a simplified programming environment called MakeCode for making it easier for middle schoolers to start programming with embeddable computers. 

Host: Teddy, I want to ask you about your PhD, because it’s an interesting one. It’s the first of its kind in Canada, because you came out of the University of Calgary. Tell us about your PhD program, what it involved and how it landed you here. 

Teddy Seyed: So my early PhD was really heavily into software and, you know, building these sort of Iron Mantype interfaces because I’m a huge Marvel Comics fan, and I love Iron Man. So I was really interested in, like, building all those things, and I got really good at it, and then I was interested in the business side, so I was working for a startup in Calgary, and I didn’t really understand, sometimes, sort of, the business lingo of how, you know, like, a PM would communicate with an external customer. I’d done a lot of demos and things like that and I was quite comfortable, but it was different being able to communicate withyou know, VPs and execs. 

Host: Yeah. 

Teddy Seyed: So then I was, like, okay, I’ll take some MBA classes, so I did that as part of my, like, actual degree, and then I really liked it. And then I also found it interesting because it was very related to the research I was doing in terms of methodology, right, where, you know, I might run a couple of studies to get a paper, whereas, on the entrepreneurial side, I’m running studies to actually, like, make the product better. So it was like very much the same for me early on… 

Host: Okay. 

Teddy Seyed: …and then I got a bunch of experience doing, you know, hardware startups and I got really interested in hardware, and then I brought that into my own research, so I started doing like more hardware projects as part of my dissertation. So I did a smart watch and a smart phone, and both of them did really well, they got on Gizmodo and Forbes Magazine and things like that. The watch was interesting for me because I was actually trying to build it, so I was pitching to VCs and trying to raise capital and sort of struggling with that, but what was interesting in that journey was I wanted to make something that was unique, that was from my perspective, that wasn’t something from Google or Apple, right, because they were doing the smart watches at the time. So I jumped into the world of fashion, and I got stuck there because I’m trying to communicate with people that aren’t technical at all, and trying to teach them concepts, and it was always very frustrating for me to do that, and I just stayed there because it was a really good place to sort of learn and experiment with high growth wearables, plus having impact on my community with working with kids and teaching them tech through fashion so it was just a really good place to be. And then coming to MSR, I was working on a startup at the time that was doing a fashion tech kit and then I emailed the MakeCode team out of the blue. I was not expecting an answer back from Tom, but Tom replied, and we had a, I think it was supposed to be an half an hour call, it ended up being a bit longer 

Tom Ball: Yeah, it was a little longer… and then you came out just for a quick visit. 

Teddy Seyed: Yeah, yeah. A quick visit and then, you know, they were, like, do you want an internship? And I was like, oh, sure! 

Host: Tom, I always find it interesting, from the perspective of two different people, like he’s a grad student in Calgary and he thinks, I’m going to email the Mothership right? 

Tom Ball: Oh, yeah. 

Host: Microsoft. So how do you receive these emails? You get this from this guy. What do you think? 

Tom Ball: Well, I mean, you go check out what he’s been doing, right, and it’s like, whoa! This is really interesting! And we had been working with the BBC on the micro:bit so we knew about the embedded technology space and how it was being used by schools, but also, I had a little familiarity with its use in the maker spaces and fashion. And so, this just seemed like a really great match. We had helped the product group stand up the MakeCode product, which started in research, and we were looking for, what’s the next thing? And, you know, sometimes… well, luck favors the prepared, right? And so we were 

Host: That’s true. 

Tom Ball: prepared and Teddy was prepared, and we were both… it was good timing, although we had to wait another year before we really got things going because we had some stuff going and Teddy had some stuff going. So, you know, the email was the seed, but it got a lot of thought processes going about taking this idea of democratizing technology and really making it broader than just CS education in the schools, but many people need to control and use computers as part of their work. And one of the ways you control the computer is through programming and trying to simplify that. 

Host: Right. 

Tom Ball: So you may not be a computer scientist or even ever take a computing class or a programming class, but you’re going to be faced with using the technology or making use of it. 

Host: Well, let me go upstream with you there because downstream, we’ve got some tangible products and tangible projects, but I’d like you to talk a little bit more upstream about making computer programming accessible. Here, we’re talking about people who might not think of themselves as programmers, or even able to begin thinking that way. So how have you attacked this, from a 10,000 foot view? 

Tom Ball: Right, well at the very high level, I feel like people want to be in control of their lives and in control of computers. They don’t want to feel like their lives are controlled by computers, right? And I think that the way that you gain control is through education and through understanding. And to be educated, or to have control, you need to be more educated about how computers work and then how to make them do your bidding. So I think, you know, fundamentally, that nations around the world have recognized that CS education is just as important as an education in say reading, writing, arithmetic, physical sciences. And Microsoft, from its roots, starting with Basic and DOS, giving people the foundational tools to be able to control the computer, that’s part and parcel of what we do. And the great part these days is its just much easier, because of the internet, because of the web, because it’s easy to get access to all these technologies – if you have access to a computer hooked to an internet, which is not a given everywhere… 

Host: It’s not a universal 

Tom Ball: It’s not universalbut if you think about today, compared to when I got started in the late 70s, there’s so much more available… 

Host: Oh, man 

Tom Ball: …for people who want to learn about computing and then become educated to learn how to control the computers themselves. 

(music plays) 

Host: Let’s talk more in depth about Microsoft CS education platform MakeCodePeli de Halleux was on the podcast a while ago and talked about MakeCode back then. Why don’t we review a little bit. Tell us what MakeCode is, how and why it came about, and where’s it getting traction right now? 

Tom Ball: MakeCode actually started out of a previous project from Microsoft Research, from the RiSE group, called TouchDevelop, and the idea there was very simple: everybody has these smart phones, but in order to program the smart phone you need another computer. Why can’t you program your smart phone using the same smart phone? And Nikolai Tillmann had this great idea, and Michal Moskal and Peli joined in, and I came in a little later, and so we created an app to make it possible to write little programs that controlled your smart phone, but using your smart phone as the programming environment. And from that, we got to, essentially, a touch based code editor that you could use a single finger to program with. The BBC, a few years later, had this idea of the BBC micro:bit. And this is a little embeddable computer that has its roots in the Arduino system, sort of a visible, printed circuit board with some flashing lights and buttons on it. And they wanted a programming environment that was web based to help take the micro:bit to all the fifth graders, or year seven, in the United Kingdom. And so we used TouchDevelop to, essentially, deliver that system in 20152016, and when we were code complete with TouchDevelop for the BBC micro:bit, we said, okay, we’re going to create a compiler from the TouchDevelop system into the MakeCode system. We demoed it internally and externally, this PXT, with the editor – the new editor – for the micro:bitand we got interest from the Microsoft execs as well, so they funded the MakeCode product group. So we have now some developers, on that side, a program manager, and on the research side Peli, Michal, myself, Steve Hodges, now Teddy, who are thinking more about, what can we do with this platform moving forward? So it started with really simplifying programming for complex devices, and our first complex device was the smart phone. Then we went to the BBC micro:bit, and now, with MakeCode, we’ve expanded from the micro:bit to a number of other devices. But these devices are generally battery powered, like your smart phone, but not quite as resource rich as a smart phone. They’re much lower power and smaller. 

Host: Well that’s an excellent segue into what I want to talk to Teddy about next, which is using programmable technology, micro-controllers, in fashion. So tell us about your personal “hack the runway” vision and how you decided to take high tech into fashion in what you haute tech couture. 

Teddy Seyed: The vision before I started, I mean, when I had emailed Tom and the MakeCode team was, you know, I had done a lot of work with Arduino and a lot of workshops with kids and designers and just a lot of time was not used optimally in the workshops and it was just becoming really frustrating so that’s kind of how I came across MakeCode and that was really great. And then, during the internship, the vision that I had wanted, and sort of my bigger vision is, I don’t really think a tech company should be making wearables, I think it should be coming from the fashion world. We should be providing tools for them to be able to create these things right? But in order for us to get there, we need to create something that designers can use and, like, if you think of them as developers, we need to create developer tools, but these developers are fashion designers. And we can solve all this on the technical side and, in the meantime, when things are ready, and, you know, things are washable and stuff, they’ll have that experience to be able to make things that we want. That’s kind of the vision that I had…

Host: Okay. 

Teddy Seyed: …to start, anyways. 

Host: I want to press in a little bit there because, to me, you’re making developer tools but you’re giving them to people that aren’t developers…  

Teddy Seyed: Exactly. 

Host: So, how does that work? 

Teddy Seyed: That’s, I guess, a little bit more on the HCI side…So, on the HCI side, you spend a lot of time working with designers, working with people that are not, sort of, technical, trying to figure out what their challenges are, how they’re thinking about design, what they’re thinking about fabrics and materials. So I spent a lot of time, sort ofbefore the internship, just thinking about fashion, really, and how that world works, and understanding the lingo. Because obviously, one of the biggest things is communication, where you have people that are super technical and people that are not technical at all, and bridging that world is very difficult, but one of the ways to do it is through communications. 

Host: OK, let’s say I’m a complete neophyte. Do you have to teach me computational thinking…? 

Teddy Seyed: With the work that we have done, I typically don’t start with technology at all. Actually, it really starts with what’s the story you’re trying to tell, right? Every garment has a story, it reflects the person wearing it, so what is the story you want to tell? Then from the story, it becomes, okay, what kind of technology can you use? So, for example, if you wanted to do a story around how you felt that day, then you probably want to use some sort of sensor that measures your emotion, right? Then we can talk about how to measure emotions. Then, after that, we can talk about where you would place the sensors, and then it becomes a question of where you’re placing it on the body, how you’re sewing it in. Then it’s like, how do you want to power this thing, right? So there’s sort of a narrative, but it’s all starting from the story. 

Tom Ball: And on the platform side, I think we have to have these components that can meet those needs and that’s where the complication comes. The designer might have something that’s really not technically possible. We can meet them halfway, or say, these are the sort of things that we have in mind. We might have a set of animations that are prebuilt that they can choose from and parameterize, visually, not by programming, but by draganddrop menus, by demonstration… 

Host: Right.

Tom Ball: …but there would be, um, you know, a more visual interface to start with, especially if it’s a visual you’re designing. You know, I think you also see that in the classic Visual Basic, the forms editing, you know. You have people creating these forms applications who would drag and drop widgets onto the screen and there was the code behind. 

Host: Right. 

Tom Ball: And I think for a lot of domains, that sort of paradigm of having a visual editor with domain specific representations, in this case, it might be about the sensors, or the garment, or the lighting and the aminations, backed by code, the designer wouldn’t necessarily have to edit themselves but it would be there, for somebody else in the design/production pipeline to sort of go and maybe tweak. 

Host: So you’re going to have to bring new people into the design/production pipeline probably. 

Teddy Seyed: Yeah. 

Tom Ball: That’s part of what we’re trying to do in the MakeCode system is to use JavaScript and TypeScript to program these embedded devices so that we have access to this world of web developers who know JavaScript for doing web pages, but may never have thought of using it for programming a fashion garment, but now they could use those same technologies for doing so. 

Host: Let’s talk about Project Brookdale. Now, this is why I wanted you two in the booth. It happened, not that long ago, but it was exciting enough for me that I started to ask, when can I get these guys on the podcast? So I could give a big run up for this, but I’d rather have the two of you tell us about this research project. What is Project Brookdale, how did Microsoft Research get together with the Brooklyn Fashion Academy, and what were the results of bringing microcontroller technology to the atelier? 

Teddy SeyedSo, the nice thing about this project was, I don’t think I could have done it anywhere else. One of the things I was trying to do in my grad school was, like, be able to properly build something and give it to fashion designers and deploy it on a runway and see what would happen, right? The nice thing about the runway is that it’s a very practical way of teaching you about wearables, right? It’s all the conditions of heat on the body, things breaking, people moving, things being packed, all the sort of crazy conditions that you would typically have to test for individually, you can get all in, like, sort of, this nice runway idea. And so when we came to do Project Brookdale, it was really about, how do we make a system easy for people that are not technical? In this case, that audience was fashion designers. 

Tom Ball: And you had had a contact, I guess, with somebody in this fashion academy right? 

Teddy Seyed: Yeah, exactly. And I had contacts with the Brooklyn Fashion Academy already and so it just worked perfectly, the timing of being able to build the hardware and the software and going there and sort of deploying the system. 

Tom Ball: Right. And I should say on the MakeCode side, we had been working on this new MakeCode Arcade, a game engine, and James Devine, who was another intern, started working with us in the summer of last year on JackDack, which is a way to network together microcontrollers. So we talk about programming the microcontrollers with web technology, but how do you program a web of microcontrollers? Well, you need to be able to hook them up. And originally, that was just to hook up two game machines so you could have multiplayer gaming, but then, when Teddy came along and said, oh, I have this fashion thing, we were like, oh, well maybe we can also wire them up on the body and have this easier way to connect together different microcontrollers that would then be part of a garment. And so sort of a plug-and-play, microcontroller-based, tool kit, to make it easy to prototype. And so we, in MakeCode, we had a bunch of new technology, Teddy brought the application, and then, we all brought it together. And it did come together! The hardware, the new software, the designs from the designers and this team in Brooklynin a last week, mad dash to the runway, it was an experience never to be replicated… or… 

Teddy Seyed: We’ll do it again, Tom! 

Tom Ball: We’ll do it again, but not the same way! 

Host: Well, Teddy, tell us… 

Tom Ball: Well, not to be forgotten, but not to be… 

Host: Right… 

Tom Ball: …not to be done in exactly the same way. 

Host: Well, Teddy tell us a little bit more about how this instantiated on the runway. 

Teddy Seyed: Yeah, so the theme of the show was the Herero women of Namibia. Sthe fashion was sort of influenced by the Victorian era style they had brought forward into the future. So each designer brought their own, sort of, theme and background into how they were using technology. So over a two and a half month period, rather than building every possible sensor, we picked sensors that were based off of their story. One of them had a really personal story about fabric and mental health issues, so she had tears kind of dripping down her dress, and that was one that Tom had worked on. Some of them used motionThere was one really cool one where it was sort of a yellow fabric where you had two lights coming down on the side. The Herero women always worked in the farms, and with cows, so he had this theme of, sort of, the women being strong like the cows, and sort of walking forward so there was a lot of things like that. 

Host: Hmm. 

Tom Ball: So Teddy did a lot of interviewing and there was education both ways about learning about the designs they wanted to create and then about the technology and the possibilities. So there was a tremendous amount of interaction in the leadup, while we were scoping out, you know, the software and the hardware. 

Teddy Seyed: Yeah, and I mean, like, even the hardware, for example, we didn’t design it. Like, the Brain, for example, is round because it was going to be in the center of the body, according to most of the designs that we had worked with. And then things like the Beads we designed to be sort of cylindrical to the body so it’s going to be placed on any part of the body. And then we color coded them because we wanted the designers to be able to use them without us being around. So you would know that red would be light, and, you know, yellow would be environment and things like that. So it was very heavily driven by a lot of the work at the very beginning, just interviews and communication. 

Host: All right, so this is both a research project and a runway project… What were you findings? I mean I would imagine you came away learning a lot after you tried this with these fashion designers and fashion design studentsWhat have you come away with in terms of where you’d go next with something like this? 

Tom Ball: Well, I think, from the platform angle, we proved out some new technology. So the JackDack networking, the software, the ease of use of the plug-and-play and, and, sort of, learning about failure conditions. Whenever you try to do a rocket launch, a lot of the rockets are going to end up not making it into spaceand you learn from that. Similarly, with the garments, there were failures, and we learned a lot about power delivery, we learned a lot about the networking and, really, this was just a first prototype to get to the next step, which is to try to make a design thats more robust. It’s a still a work in progress but you know, proving out the technology and understanding the failure modes was, I think, a major aspect. So, I’m just talking from the platform. 

Teddy SeyedYeah, I mean, we didn’t do as much programming with designers as we’d like. We didn’t have time. And it turned out, actually, maybe having a laptop to code the garment is not a good idea. Maybe we should actually use a mobile phone, was one finding. One of the other ones was, you know, the audio jack stuff was really great for prototyping but what is it going to be like if we do wireless, right? I mean anything Bluetooth or wireless is kind of the ideal condition for wearables but the unique thing about the runway is, it’s so noisy, there’s cell phones going, there’s all these radio signals going around, so that might not be the best idea for that, right? 

Host: Interesting. Okay. 

Teddy SeyedDoing some of the stuff more integrated into fabric is kind of the next phase too, so… 

Host: All right. So all of this is available open source, am I right? Uh… 

Tom Ball: So MakeCode is all open source, the software platform. The hardware that we prototyped for Brookdale is not available yet, but there are devices like the micro:bit and the Adafruit Circuit Playground Express that you can do similar things with that are available from our hardware partners. 

Host: Okay. 

Tom Ball: So, there is a lot available already but not the actual Brookdale Bead and Brain yet. 

Teddy Seyed: It will be coming… soon. 

Tom Ball: Yeah, that’s the plan. 

Host: It will be coming soon to a runway near you or someplace else. 

Tom Ball: Yes. 

Host: Well, let’s talk about open source for a second… 

Tom Ball: Mmm-hmm, yeah. 

Host: because it’s a huge trend over the past... I’m going to guess a decade, but maybe moreWhat are the factors that have influenced this shift in your mind Tom, and why is it important to the broader software ecosystem, especially when it comes to research? 

Tom Ball: Yeah, it’s really transformative for the industry. I mean, every company has to think about what its secret sauce is, and its special value that it adds. And so much can be found on open source that can be used that you can then add your value on top of that. So, for example, MakeCode uses two editors that we didn’t have to create. One is the text editor, code name Monica, which is part of VS code. We just extract that component and use it. The visual programming with the colorful blocks is from Google. It’s Google Blockly. These are both open source. We’ve actually made contributions back to, for example, the Google Blockly code base, we have regular calls with them. That was unimaginable twenty years ago, when I joined Microsoft. As well, in research, it’s great when a PhD intern, or any intern, is coming to Microsoft, they can see the project we’re working on before they even arrive, they can have a much more productive three months, and then, after they leave, they still have access. So, contrast that to twenty years ago, where often, you know, people came in, they worked on something great, and left their mark, but then once they went back to the university, it was much harder to have access. And so I think just overall, people realize it’s a win-win-win. There are still opportunities, obviously, for every company to choose what they retain, sort of, behind their firewall which is their secret sauce, and I think every company does that to some extent. But I think there’s been a realization for collaboration, for productivity, and for so many domains, it’s much easier if you can see the code and be open from day one. 

(music plays) 

Host: It’s time for what could possibly go wrong?” on the Microsoft Research podcast. 

Tom Ball: Oh, goody! 

Teddy Seyed: Oh, dear! 

Host: And at this point in the show I like to have a little conversation about the possible risks associated with innovative technologies that we showcase here. So, are there any concerns floating around in your worlds? Anything that keeps you up at night? 

Tom Ball: Well, yeah, I’ll go back to sort of the control aspect. I think that there’s a real danger that we are losing control of the computing technology, and when I look at what’s happening around the world, social media and the use of AI and all these computers on the edge that are going to collect all this great data, you know, there are great benefits to come from that, but as we’ve seen, risks, and, you know, that’s the sort of stuff that really, you know, twenty five years ago, when I was getting into industrial research, wow, I didn’t really project that we would be where we are today with, sort of, wrestling with these issues around, really, are we in control of the computersor are the computers in control of us? 

Host: So what are you thinking then, I guess the better question is… 

Tom Ball: Well, my thought is… 

Host: …what are your people doing about it? 

Tom Ball: Well this is why I think MakeCode and things like education, CS education, are important. Part of what we’re doing is making it easy to make this invisible fabric that runs our life, visible. Like, to talk about what is a computer, what is networking, security, and privacy? People need to become more educated, and starting at an earlier age, to understand, with age appropriate content, you know, what is it that this smart phone is doing for me? What are the dangers in being out on social media? And how do I take charge of my data? How do I take charge of my programs? And I think we’re still sort of in the infancy of thinking about that at a scale, and so I think the education is really critically important. And that’s what we’re helping to do through, I think, things like MakeCode, and giving people the tools and the vocabulary to talk about computers and computing so they can be, just informed citizens, really, and they can help inform policy makers. So I really do think, you know, we need to start earlier so that the people become educated. 

Host: Right. Did you address any of this when you were completing your PhD? 

Teddy Seyed: I started working on it, sort of, towards the end, I guess. I had run this really cool little workshop in Nova Scotia with Kathy Snow from Cape Breton University, I think she’s moved now. And what we did was, we just got girls and their parents, so the elders, as well, in that community, to basically make traditional indigenous garments with technology in them. And you know, I took a step back in that workshop and it’s interesting because I’m usually the one leading it and so I let a couple of my friends, Angel and Alex, sort of run that workshop and, like, it was just amazing to see the difference that it had made for those girls.  

Host: These are huge questions and I’m glad you guys are thinking about them. It’s story time. As we mentioned at the outset, you’re both working here at Microsoft Research but at different points along the career path. So tell us how you landed here, just give us a kind of short story of your journey to MSR. What brought you here and why?

Tom Ball: I’ve been in industrial research for twenty six years now, twenty years at Microsoft Research and six years before that at Bell Labs. Bell Labs was amazing, but I was thinking, well programming languages and programming tools where’s the future for that? And Microsoft was clearly the answer, for me! And so twenty years later, I have to say, that was a pretty good bet, and it’s still, I think, the great place to work on programming tools, programming languages, software engineering. But really, I decided I was a programming language researcher and, in around 99, I decided it was time to sort of go someplace where that would be really valued for the long term. 

Host: How about you Teddy? 

Teddy SeyedUh, I mean, as I mentioned before I was always kind of entrepreneurial throughout the PhD, and then I came to MSR as the intern and I basically continued sort of in my entrepreneurial spirt and that’s basically what sort of rocked the boat, for me kind of working here, and then obviously working with Tom, Peli, Michal, Asta, Steve… I mean everyone was just fantastic to work with so, yeah, I mean I really couldn’t say no! 

Host: Right, well let’s go a little further on the personal aspects. Tom, I happen to know something interesting about you that I just learned like… 

Tom Ball: Oh, right. 

Host: …forty minutes ago, but is there anything that people might now know about you, and might not assume about you, that has influenced your life, or your career, Tom? 

Tom Ball: Well, people know I have a really loud voice and I’m prone to sticking my foot in my mouth, but, you know, it goes back to junior high where you could get out of one gym class a week if you did something in fine arts or singing. And I was like, oh my gosh, there’s nothing I hate more than the gym locker room, so let me give it a chance in choir. So, I’ve always had music in my background, and my parents were amateur musicians, and so, sort of a musician in computer scientist’s clothing. I like to compose, I’ve sung in the Seattle Opera Chorus, I play some piano badly, I play electric bass in a rock band. I even composed a song about the micro:bit, which is still under production. 

Teddy Seyed: Which is really good. 

Tom Ball: Which is, yeah! And then then we went to a conference in the UK and I worked with a band there to premier it at the micro:bit Education Foundation’s first conference. So yeah, the music has always been something for me that is a creative outlet but also an inspiration for new thoughts and I’m thinking of more ways to weave that into my research. 

Teddy Seyed: Soon. 

Tom Ball: Yeah. Sooner than later. 

Host: Teddy what don’t we know about you? 

Teddy Seyed: Uh, I think I’ve mentioned I’m a huge comic book fan, right? I mean that’s like my whole jam is comic books. That’s what’s driven me on a lot of things that I make, especially Iron Man at the beginning. Huge Wolverine fan, because he’s Canadian and he’s short, kind of like I am, right? So… and he’s from Alberta, which is also where I’m from. 

Tom Ball: Wait, wait, wait, wait, wait, wait… WHAT? 

Teddy Seyed: Yeah. Wolverine is my favorite comic book. 

Tom Ball: Yeah, but he’s from Canada?? 

Teddy Seyed: Yeah, he’s from Canada. He’s from Alberta, in fact. 

Tom Ball: Wait, they… they’re that specific… wow. 

Teddy Seyed: Oh, yeah. 

Tom Ball: I had no idea. 

Teddy Seyed: There’s a scene in one of the X-Men movies where he’s actually in Alberta. So I actually got into computer science through this computer animated show called Reboot which was from this company called Mainframe, in Vancouver, and it was like teaching you basic computer science concepts without ever knowing it. And then when I first got into university and was learning all this, like, computer science concepts I was like, oh, this is actually all the characters I loved in, like, Rebootare actually concepts, so it made it really easy for me. And that one, yeah… So, I really loved Reboot. 

Tom Ball: Hmm. That’s awesome 

Host: I’m learning so much 

Tom Ball: I didn’t know that… 

Host: I did not either! 

Teddy Seyed: That’s the point of it, right? 

Host: At the end of every show, I ask my guests to share some parting thoughts with our listeners and this could come in the form of advice or inspiration. I think this whole podcast has kind of been that for me. Or you could predict the future! 

Tom Ball: Oh boy, definitely don’t want to touch that one! No, I just wanted to say, because I didn’t get a chance, you know, why MakeCode? We came up with that name, and I think it really ends up talking to the idea that, what is it you want to make? What it is you want to create? And the idea of putting creativity first and then bringing the computing and the coding into that context. A lot of times, when we lead with coding, I think there’s a certain set of people who get turned off. But if we lead with making, whether that’s making an art project, or music or a fashion garment, or you want to measure something about the environment to realize a better irrigation system, you have a system, you have a problem in mind, and the computing and the coding are part of that. So I think it’s really good to think about domains and problems first, and then bring the coding in and support as just one tool. 

Teddy Seyed: I’ll follow up with what Tom said, thinking about domain. I think, for future researchers who kind of want to do what I did in terms of entrepreneurship, I think the biggest lesson learned for me was, at the beginning, I was probably more focused on the entrepreneurial side, and on business, I would say? As, whereas, sort of the last couple of years was more focused on impact, right? Where, like, how can I go into community? How can I make change? You know, one way is going through MakeCode and using that in workshops in Nova Scotia or you know, working with designers. It’s really about impact for me, the entrepreneurial side, so emphasizing the impact of the things that are working and thinking sort of bigger picture is really important. 

Host: Tom Ball, Teddy Seyed, thanks! This has been so fun. 

Tom Ball: You’re quite welcome. 

Teddy Seyed: Thanks for having us. 

Tom Ball: Yeah this was great. 

Teddy Seyed: It was pretty awesome. 

(music plays) 

To learn more about how software engineering researchers are working to simplify the programming experience, visit Microsoft.com/research 

Up Next

Programming languages and software engineering

The productive software engineer with Dr. Tom Zimmermann

Episode 77, May 22, 2019- If you’re in software development, Dr. Tom Zimmermann, a senior researcher at Microsoft Research in Redmond, wants you to be more productive, and he’s here to help. How, you might ask? Well, while productivity can be hard to measure, his research in the Empirical Software Engineering group is attempting to do just that by using insights from actual data, rather than just gut feelings, to improve the software development process. On today’s podcast, Dr. Zimmermann talks about why we need to rethink productivity in software engineering, explains why work environments matter, tells us how AI and machine learning are impacting traditional software workflows, and reveals the difference between a typical day and a good day in the life of a software developer, and what it would take to make a good day typical!

Microsoft blog editor

Programming languages and software engineering

Code in the Classroom with Dr. Peli de Halleux

Episode 12, February 15th, 2018 - If you’ve ever wondered if you could find the perfect combination of computer scientist… and Macgyver, look no further than Dr. Peli de Halleux, principal Research Software Design Engineer at Microsoft Research. A key member of the MSR RiSE team, Peli is part of the MakeCode initiative that brings physical computing to classrooms around the country and around the world. Today, Peli talks about the Maker Movement in K-12 education, the hard work that goes on behind the scenes to deliver a “seamless” user experience for both kids and teachers, and how to get children excited about coding through hands on experience in early computer science education.

Microsoft blog editor

Programming languages and software engineering

How Programming Languages Quietly Run the World with Dr. Ben Zorn

Episode 6, January 3, 2018 - In an era of AI breakthroughs and other exciting advances in computer science, Dr. Ben Zorn would like to remind us that behind every great technical revolution is… a programming language. As a Principal Researcher and the Co-director of RiSE – or Research in Software Engineering – group at Microsoft Research, Dr. Zorn has dedicated his life to making sure the software that now touches nearly everything in our lives is easy, accurate, reliable and secure. Today, Dr. Zorn tells us some great stories about bugs and whales, warns us against the dumb side of “smart” objects, shares about his group’s attempt to scale the Everest of software security, and makes a great case that the most important programming language in the world today is… the spreadsheet.

Microsoft blog editor