 So we only have one microphone and the microphone is super important for the recording, so we will have to pass this around. It's going to be like hot potato. Okay, so this is the panel on dot net and open source and I'm going to start out by asking our panelists to introduce themselves because I'm sure they can do that a lot better than I can. Hi, my name is Ratka, I'm a dot net quality engineering lead at Red Hand and I like presenting about silly things earlier. Oh, I didn't know you were a Red Hand. Excellent. I am Miguel de Casa. I worked for the loyal opposition to dot net for many years and I am now part of the dot net team where we work towards bringing you a happy dot net experience across every platform. Hey, my name is Chris. I'm weird f sharp guy and on this panel I will always say yes, Miguel, you are right. You know, when people say that they're weird f sharp people, you look very normal. I was like, people told me about you know, he's an f sharp guy and when I saw you presenting today, I was like, oh, we should hire this guy. He's awesome. So one of you told me that the f sharp people were weird, but no. Yes, we are. Don't trust me, go. All right, so what is next, Michaela? Yeah. Okay. So in a bit, I'm going to start taking questions from the audience. So start thinking about what questions you might want to ask. But I'm going to start out by asking what first cut you into open source dot net. Well, I had cut me into open source dot net. Basically, I was, I started as a game developer on like the usual suspect C plus plus. And eventually I, our studio needed to write really fast prototypes. So we created a clone of world of tanks in six weeks, which is quite an achievement. And this was in unity 3D engine with C sharp mono at that point, I believe 3.5 version. And from there I was freelancing for a bit, doing a bit more game development. And then rather offered me a job because in my private time, I really liked playing with Linux. So they're like, you're the right person for the job. C sharp and Linux. So my first contribution was kind of like classical F sharp way. So there was some project. Actually, it was fake. So F sharp make, which is F sharp build system. And I've done this passive aggressive tweet that, oh, hi, fake doesn't support this feature that I really, really need. And there's this guy called Stefan Forkman. You might have heard about him. He's responsible for fake and pocket. And he tweeted me. Yeah, you should do this. And then after I've done it, he, like to every new contributor, he posts those really nice GIFs after contribution. He merged politicals and that was so great experience that I've decided to contribute more to F sharp ecosystem. Yeah, that was the story seriously. Well, I just did this presentation a couple of days ago, actually to some interns. I was inspired by Richard Stallman for a vision of free software and the free software of the freedom to use, modify, redistribute and redistribute modified versions of this for many years. And this started around 1991 or 1992 when I had access to a song computer and out of nowhere, I could get a free compiler that these people at the Free Software Foundation were giving away for free. And I could not believe somebody would give away a compiler for free. And I felt that in a text editor that I used to these days, Emacs, and I felt that I owed them something. So every scene I've been working on open source software, I've got a couple of gaps that I mentioned before, but open source at the time or free software was not really viable in the world that was dominated by windows. So I decided that I was going to work and build to create a world where free software was an equal partner in the world. Or in a shorter version of that, I was set out to destroy Microsoft. So I just had a slide of everything that I tried in my career, which was I worked on the Linux kernel, on device drivers for the Linux kernel, on the GNOME desktop, on a failed attempt at Java called Cafe with SWT, SWT is a piece that failed. Then I worked on the Windows emulator so we could bring Windows applications to Linux wine. Then I worked with SON, there was an opportunity to work with SON to compete against Office and have a free Office, so it turned Star Office into Office. That was a negotiation that included giving up my own baby at the time called Gnomeric. So it's been a long route of things that I competed with Microsoft for many years and the ironic part is that at the end, after trying many times to build companies that did open source software, it turns out it's very difficult to pay the salaries of people purely by writing software. You can try different businesses, but it's very tough, very, very tough to sell software, open source software. So I've been doing proprietary software for a while and ironically, like I mentioned earlier this morning, the ironic piece is that it took Microsoft to acquire my last company to open source my work of the last, I don't know, six years, seven years. But to me, the reason why I started doing .NET, it was because it was a means to an end. In this competition with Microsoft, we needed to build a lot of software and we were writing tools at the time when we started in C and C++. We tried Python, we tried Perl, we tried Scheme, we tried Tico, we tried everything that was available in 1995, 1996, 1997 and it was just too slow. Scripting languages in that era were just not good enough. The computers are running at 33 megahertz, they have eight megs of RAM, running an interpreter is just suicidal. So we had to write C code and then Microsoft came up with this thing which was a combination of high level programming and speed. And we said, huh, this is exactly what we needed. And it turned out it was exactly what we needed and it blossomed and now Mono is built and deployed in more places than you can imagine. If you own an Android phone or an iOS phone, you probably have one to 30 copies of Mono installed right now. And I can't share the numbers but they're not mine, they're Unity's. But yeah, it's been a fabulous, but to me it was a means to an end, right? It was the right technology for maximizing performance and productivity. That's it. So what excites you most about the current state of open-source.net? Well, I personally like the fact that it is open-source and that's, I guess, all that needs to be said. Because .NET framework has been closed for too long and I know there are issues why that cannot be open-source. So we have .NET Core. And I really like the exciting part for me personally is the cooperation between rather than Microsoft on .NET Core and the whole kind of journey, I guess. Yeah, well, my point of view is kind of similar to that. So what excites me is the fact that Microsoft is trying so hard. So not just the fact that they've dumped some code on GitHub, but that teams on the Microsoft product teams on Microsoft are really trying hard to cooperate with community, at least most of the teams. And yeah, that's something really exciting because only with true cooperation, true gains of community-based software open-source software may come. So it's not enough to just dump code on GitHub and do your own stuff, but you need to cooperate with community. And Microsoft is trying really hard to do that. Thank you. I think to me it's a sense of relief that now it's open-source. I think that if .NET Core had not been open-source, while Mono was available, I think that it would have continued to be a fringe technology used in a very narrow market. Specifically gaming. And that was not a general-purpose market. So what is really exciting to me is that it is now open-source, that we have a community. And one of the projects that we worked on in the past year, which I'm very proud of, is that we just dismantled the .NET foundation as you know it. It used to be a foundation run entirely by Microsoft people. Starting in January, we're going to have a foundation that is run like the ground foundation. I don't know where we got this idea from. But anybody that contributes to .NET code, documentation, advocacy, helping people, running events, will be able to become a member of the foundation. And becoming a member of the foundation essentially gives you one vote to name the board of directors. So the board of directors will no longer be appointed by Microsoft. We're going to have a board of directors that decides the future of the foundation and what we do by the community. And I think that from there it just goes into what you just said and what you just said, which is we have a lot of people now invigorated and excited about contributing in this open-source world. So a big sense of relief that this happened. I'd like to add to what you said that Microsoft is doing their best and really going all the way, not just like dumping some code somewhere on Git. So for example, we work on packaging for Fedora and Microsoft is really trying to not just publish binaries on Microsoft website for download, which is how it used to be for a long time. But there are engineers working directly with contributors in Fedora to meet the packaging requirements, which are quite tough in Fedora, which is for those of you who don't know. You don't just have to build from source on Fedora, you have to build all the things that are used in the build process from source on Fedora. And those are mostly pre-built currently. So engineers in Microsoft are dedicated to this work. So now I'd like to open it up to questions from the audience. So does anyone have a question? Okay. When are we finally going to rewrite evolution in .NET because that's actually why you started it, right? Well, I have mixed emotions about this. We now have the infrastructure necessary to build an email client in the form of Mailkit and MindKit that one of the early developers of evolution wrote. So he learned everything that is wrong about Mail APIs and he implemented the right ones. Although the problem today with writing an email client from the ground up is the amount of work that you need to do on filtering garbage. And maybe it's my 47 years of age speaking or 48, 46, I don't know. I'm on that range. But I just use Gmail. And I work at US Outlook. So yeah, it's just dealing with spam. I just my life. It's slipping away. So it was an interesting challenge. I didn't realize to what extent the Internet would be used by scammers, grifters, con men, slimy people. And it requires a full staff and very few people have the staff to keep up with just how horrific the Internet has become. And sadly an email client is at the forefront of this. So yes, I would like to just better things to do. Sorry. Okay, next question. So I first touched .NET about six years ago. And the more mature of .NET developers around that time, you can definitely tell that the... I was going to try repeating it. Okay, I'll go back to that. I'll go back to that. So basically I touched .NET first time six years ago. At the time the other more mature .NET developers had an expectation that Microsoft would lead the way. And any libraries you got, probably half of them you have to pay for. And I've seen the change over that time to where we are now. What are the things you think happened, either top down or more bottom up organic that caused us to be in where we are right now? What was the thing that made the change happen? For what specific thing? So now the expectation is more that... So I've compared it at the times of the Javik ecosystem where you still had a company leading the way. But a large fraction of the libraries were community contributed. And we're getting to that point now with .NET. Where Microsoft is still in some ways leading the way by dissolving itself. But I was kind of was getting at is that how much is this Microsoft made the decision and they caused this to happen? Or is it because the community made this happen or some combination? I don't believe I might have a full picture of how this happened. But I can tell you a couple of anecdotes that I saw. And I don't think I have the full picture because it's a large project and I cannot keep up with everything that is happening. But my reading from the outside was that at the time there was a feeling among some people that throwing software over the fence and calling it open source could be perceived as we are abandoning the software. So I believe that some people were very concerned that they did not want to give that impression. That is one piece. So there are certain people that were influenced by that. There are other people that came from different cultures, not necessarily the .NET culture or the open source culture. But there are people that started to get into the whole YouTube streaming thing. And they started to become very open about talking about what they were doing and the design. And they have these, I think that nowadays is a weekly stand up. I don't watch this thing, but I guess if you're into Twitch and video games you are into this. But a lot of people apparently participate in these discussions and rat hall about API decisions. And that independently of the other concerns kind of took on a life of its own. So I don't know if there was a concerted effort more than different people in the team were given the liberty of trying things out in the open source way. And we struggle, I propose Mel and Liz, which I love and I was shut down. But other people love get and they went with get, some people like getter, they went with getter as a way of engaging. So I think that the top down mandate is let's make this successful, let's engage the community. But the tactics, I've seen people try many things and some have worked and some haven't. But they keep trying and I think that emo is really into this kind of thing, right? So there are some people that are very gung-ho or people that are obsessed with GitHub notifications. I can't take it, it's just too much. But there's people that leave and die by GitHub notifications. I wish I had a better answer, but I think it's a lot of different viewpoints coming together and contributing to that. And that's the effect that you see. I don't think that it's a very well-coordinated from the top down, how we will engage and how we will not. So as a total outsider, I'm a member of the community, but I don't have anything to do with Microsoft. It seems that it's natural process in the fact that, oh, new people are joining the Microsoft and new people are getting more senior, new people are getting to the project manager position, senior project manager positions and so on and so on. And those new people that joined the company default now is open source. It's community everywhere, no matter from what background they're coming, whether they're joining just after studies, university or from some other ecosystem. Default is open source everywhere and that kind of probably flows through the company. That would be my wild guess as a total outsider knowing some of the people at Microsoft. Okay, so in the monotimes, I remember that you were trying to push like mono as a platform for developing like desktop applications for Linux and GNOME. And at the time there was part of the open source community that had some pushback because at the time Microsoft was not that friendly with open source. And I think that now we're in this interesting position where now Microsoft is way more friendly and they're open sourcing a lot of things and things have changed. But at the same time, I feel like the mono community got smaller and that link was lost. And in some way like Microsoft is more friendly but also like the parts from the community are smaller. So how do you think we can just come back and try to like push again for .NET and as a good alternative for open source in this world where there is not a mono community as strong as it was before? Well, that is a traumatic experience. There was a traumatic experience. The attacks on mono because it was built on a Microsoft technology at the time got fairly vicious. I had not seen anything like that in my life before. To give you an idea, we received, there were basically editorials written on a daily basis about how bad this was and calling my morals into question and the morals of everybody in my questions. And we did receive a few death threats. So I think, I mean, from my perspective, that was one of my early touch points with abuse on the Internet. We kept going because there were people that loved it. There were people that didn't care. And when we keep going, the in particular unity kept going and the community with unity didn't really care. And it's not even clear to me that it really mattered. I think that it became an ideological fight, like the ideological spies that we have over Brexit or we have over the orange men. So I don't think that at the end of the day it mattered and that is when we created Xamarin, my company that did mobile applications. We went full of proprietary and what happened is we took .NET, we made our version proprietary and we sold it to a community that was not ideologically bound. So once we went to the mobile world, the abuse stopped. I've never been as happy as that day when I abandoned open source because the abuse stopped and I was sick of it. I was sick of years of abuse. Then there was Gamergate years later and it gave me all the flashbacks of the delightful open source community attacking Mono. So yes, Mono did shrink. It did shrink and it did shrink because I did not care more to push it towards the Linux desktop or Linux in general. And because we were very happy with the mobile developers, mobile developers had the same needs that Linux developers had. They had money, they had a problem to solve and they were not ideologically driven. So Xamarin succeeded. And it's very interesting because when I look at other startups that succeeded to put it into perspective, when I look at the revenues of successful startups, Xamarin was making a lot more money than those are than what you think are those, right? So it was a very successful company. Her run rate was amazing. It was just fantastic. So those were very, very happy years. Now part of what makes me very happy that Microsoft open source.net and we got the patent covenant in place is that it eliminated the complaints that were the root of the abuse. Some of it's still continuous. People still type micro-dollar soft. People still think that I'm an undercover Microsoft agent. I do work for Microsoft. But it is a conscious thing that we are trying to restore from a community perspective because we did lose that community. And I think that the community that we attract today is mostly a web developer community and the mobile community. And we're starting trying to restore the rest, but it takes time and it's definitely not a priority anymore. At least it's not a business priority. So it's the people in our team that believe in Linux and open source and want to make it happen. So we keep working on those things. We contribute to open source constantly and we try to encourage the work. In fact, I've asked my team to move all of our discussions that are in an open source product away from our internal Slack to Gitter. Now it's a trick thing because we link Gitter with Slack. So we actually keep using Slack internally because it's fantastic. But we are engaged with the community. Gitter Mono Mono, Erho, MonoDevelop, Xamarin, Android, Roslin, all those things. We try to engage with the community, but we did kill those links. We killed IRC, we killed the mailing list. We're unattended for years. But it was part of it due to trauma, really. It was trauma. I would like to also add that I've been also called Microsoft's spy within Red Hat and stuff like that. They're still among us, yes. Miguel mentioned that C-Shark now runs on many platforms, Windows, Linux, Android, iOS. Are there any plans on supporting .NET languages on Google's next operating system, Fuchsia? I'm not sure how it's pronounced. I'm not a native speaker. But yeah, Fuchsia. So I work two hats. I work two hats. I am a Microsoft employee, so I'm going to give you the Microsoft answer first. No, we have no plans. But Microsoft generally will consider platforms that are important to support. Right now, Fuchsia is not considered a major platform, so ResearchOS. And if somebody wants to support it, fine. We support all kinds of other ResearchOS, like Wilderness Labs. Right now has a beautiful mono that you put into mono in a microcontroller. So I mean, we do support things like that. Now, with my personal Miguel de Caza hat on my spare time, I am working on getting mono to run on Zircon. And I have bindings to Zircon, Zircon-sharp. And I'm talking to a bunch of Google people that have been kind enough to help me do that. But it's not a Microsoft thing. It's a personal thing. I do like Fuchsia. I do love the design of the kernel. I don't know about the rest because I haven't figured it out yet. But the kernel is very pretty. It's a very interesting design. I don't know if it's going to be fast or as good as Linux, but it's interesting. So I love to try new things. I am trying it out. You can go to my GitHub. The other thing we can do is I could repeat the question, or we could repeat the question after the afternoon. Yeah, if it's short enough. Okay, short questions, everyone. Well, you can do it. Yeah, I'll repeat it. You talked about changing the mentality of the community. Let's say I have a friend in an organization where we have to change the mentality of the middle managers who were developers 15 or 20 years ago. And that was an era where they don't want to hear about Microsoft and they don't want to sell the idea of using Microsoft. Particularly for development. What do you suggest in this case? So the question is about how we can change the minds of middle managers to start using these new Microsoft open-source technologies. I've talked too much. If you guys want to take it, you can do it. Otherwise I can do it. But I don't want to... Yeah, you could probably learn a lot of money if you knew. But I think that the key is to start trying to contribute towards changing that, let's call it, legacy feeling from bottom up. Think about how you can contribute as an individual. So, for example, if you see a discussion and someone just says that it's Microsoft technology and starts flaming or something, don't argue with them. Just explain the facts, its open source and everything and let them take those facts. That's my take on it anyway. Let's try. So, first of all, in my experience with middle management, it's not only convincing middle managers to use Microsoft stuff, but there's also totally second kind of middle management is to convincing existing C-sharp shops to use Microsoft open-source stuff. Because there definitely is a huge part of the C-sharp.net ecosystem that will do only the stuff that Microsoft tells them to do. So, that's out of the box in Visual Studio, that's the policy. So, MS test instead of the community alternatives, entity framework instead of the community alternatives and stuff like that. And the response to both types, that was just random addition so I can have longer sentence. So, answer to both, to both those types is convincing your fellow developers in the team that it's a good idea. And then, if majority all your developers on the team are convinced, yes, this is a good idea, this would need to be really bad manager to not consider the fact that, oh, maybe my developers are right. So, yeah, that would be my tip, I guess. There's another question, but we can talk later offline. So, the question is, what changes that have happened in the last five years, have made your experience working with Microsoft and outside the .NET community, outside of Microsoft, working on .NET? What specific things have changed in the last, say, five years that have made your experience outside, working with .NET, better? And how can we repeat in self-interest if I want to? So, the question is, what changes that have happened in the last five years with .NET from outside of Microsoft, better? Yeah, so definitely the thing I've mentioned earlier, so the fact that Microsoft now is open to collaboration. I mean, F-sharp was always in, I speak from the F-sharp experience. F-sharp was always, F-sharp team was always kind of open to collaboration with the community because it was in this weird place. So, F-sharp on its own had really strong experience with the open source. So, when I started working with F-sharp, open source was default and in general, .NET open source was not default at this point in the time. And that was really annoying because I've got used to this fact that, oh, I can just tweet to project manager working on F-sharp team and talk with him about next language version or design or some IDE features or whatever. Or I can go to Don Simon and have a beer with him and just discuss whatever is happening in the F-sharp community and I couldn't do that with ASP.NET team or whatever other products that I've used. And nowadays, what has changed is, yeah, they are happy to cooperate with the community, they are happy to talk with community. At least most of the teams. So, yeah, so that's the change. And I guess on the most teams there are really like people, again, I'm outside there. But my experience is that many, many teams in Microsoft, there are people that are super happy to work with the community. So, just go to them, talk with them, email with them, tweet with them, whatever. And they will be happy that someone is interested, someone is passionate about the product. And they will be happy to collaborate with you. I think that the key, the piece to me that has been key is really the ascension of Sacha Nadella as the CEO. And I'm going to say why. I have not been at Microsoft for the whole time that Sacha has been CEO. But we did meet with him, Xamarin and Microsoft when he was the head of the service and tools business. And he's the one that triggered the collaboration between two companies at a time when we needed it. And he's been always a man that is very impressive because he listens and is willing to change his mind when he's presented with new data. I don't know when this started happening, but inside the company he rolled out a set of changes. And there's an article on Forbes in the last couple of days. I read it this morning, but it's something that is part of everything that we do, every time that we do a performance review it's there. And it's called the difference between what it's called the growth mindset versus the fixed mindset. And you can Google it, it's research from a Stanford professor on how to build better organizations and just leave a better life generally. But it comes down to changing your mindset to essentially acknowledging that you don't have all the answers and that when you have a discussion, the point of the discussion is not necessarily to win it, but to explore the alternatives, a little bit of the scientific method, right, of questioning and trying to find the answer. And sometimes you might learn 5%, and the next time that you debate the same thing you learn another 5%. But this has been now embedded in the company at least since I've been there since 2016. And it is part of the performance review. And some of it includes things like what have you done that has helped another team? I don't know if you remember that graph of organizational structures of Microsoft where there were guns pointing at each other. So this is what he set out to fix. And I think that these principles are good, not just there, but among our communities, among this horrible dystopian world that we're living in right now. And so some of the questions are, what have you done to build on somebody else's work? How have you helped somebody else use your work? Have you explained it? And then we have a secondary sort of principles that he introduced, and I'm going to mess this up, but they're called the leadership principles. They include deliver results and all kinds of things associated with that, generate energy and everything associated with that and create clarity. And these points are very important. Particularly creating clarity as a manager means that you know that your team understands the objectives and what are the constraints are. Which means that you as a manager don't need to micromanage. You have a chance to transfer a vision and then the team can execute on their own. So all of these principles were things that Sacha brought in. And honestly, they're principles that should be applied elsewhere that I wish were applied beyond their industry. And I'll give you another example that is very clear. In the last few years, we've realized that we treat women, minorities, peoples of different colors like shit. And they don't have the same opportunities. They don't have the same job opportunities. And you know, a lot of people say, well, it's a matter of the pipeline. If we don't hire more of Foo, it's because not enough Foo are applying, right? And no, it's because we're lazy. The reality is we're lazy. We go and we interview kids at Harvard, which means that we select the people that could afford Harvard, right? So a mandate, I don't know if it came from Sacha or from Kathy from Personnel. Anyways, there's a massive initiative within the company where we said we're not going to pay lip service to this. It is now one of each individual has an objective to drive some of these principles of diversity and inclusion. So while a lot of people are talking and debating externally, well, what does it mean? Why are you imposing me this? My freedom to do these things? We've moved on. We've acknowledged that this is a problem. We know that it's a problem. In the company, we go through training for, we just had an ally workshop last month in Cambridge. And McKellar can tell you more about that. I wish I could tell you about that, but I was not available that day. I'm scheduled for my trip on February. But we're doing that and diversity and inclusion exercises. And this is training that you have to take. So we're going beyond lip service, and we're trying to address those things. And I think everybody needs to get there. Get over your objections to the code of conduct and embrace it. So you would say it's cultural top-down? I think it have come from anywhere, but it came top-down here. Since you touched on diversity, I just wanted to mention that we can't change the current state of our industry. We can change the 90 to 10 ratio. It's not going to change immediately. We need to work towards educating our children and giving them equal opportunities. So when you're buying Christmas gifts, don't just buy Barbies for Girls, buy remote control robots and Barbies for Girls. Buy a painting set for the boy. That is the way to give the children basically equal opportunities. And we are at time. We're at time? We're at time, yep. Well, we have something else, right? We now have lightning talks. So how many people have lightning talks? One. One. Okay. So we could extend the panel a little then. Okay. Thank you guys for using it. Okay. So since Visual Studio is not available on Linux, what would you use to write code there? I would recommend Clusters Protect. It's JetBrains Rider. They also created the Resharper for Visual Studio and all kinds of other .NET tools like .trace, .memory, and . whatever. It's probably the only big IDE that you could use for .NET languages. The only other things that are there, like Visual Studio Code, which I believe you've been using in the presentation, they're plugin-based. They used language server. Rider is not using language server. There's a difference, I guess. There is also the fully open source, top-to-bottom MonoDevelop. And MonoDevelop serves as the core for Visual Studio for Mac. Visual Studio for Mac takes MonoDevelop and adds some proprietary extensions on it. But MonoDevelop is there. Now that said, if you really want to get the Visual Studio thing with all the Visual Studio things, you should go and complain on developer community. So my management. Here's about it. I would use Visual Studio Code. I've heard there was really good IDE for Fsharp for Visual Studio Code called Ionite. Yeah, you should try it out. I would also add to it that there are many other IDE that utilize the same language server. So, for example, Eclipse. Well, we have a bunch of letters working on that. Yes. And also, Atom, you had some support. I don't know to what extent. So the question is, what are the reasons that Microsoft would not have binaries for Visual Studio on Linux? I'll tell you the reason. The reason is when we launch Visual Studio for Mac, while it is a decent IDE for mobile, we added some capabilities, but we didn't add every capability. So what we're trying to do right now is we're trying to make sure that every capability that we ship is rock solid. So the mandate from my boss is that we need to polish this thing until it is perfect. And we have very concrete metrics as to what perfection means in this thing. And we're not meeting them yet. You just heard Mechin show you the numbers. And this is the kind of numbers that she has to report to my boss as well. So Julia Luzon, who is her boss, she's tough. She's tough and wants quality products and doesn't want half-baked products. So she is willing... No, she's willing to do it, provided I do two things. A, I deliver the quality that is needed and all of you are super happy with Visual Studio for Mac. So we have a survey built into the IDE and when the tie turns and people say this is super happy, she will let me do it. But that's it. We need to make this thing perfect and right now we're failing our users and our technicians. We know what those problems are and we're fixing them. And it's very methodical and I have a preview if you want to see it. Back then I said in Istanbul that .NET on Linux is probably never going to be a success because a .NET developer needs Visual Studio. But nowadays, Microsoft is apparently working on Visual Studio for Linux. So that opens up a whole lot of opportunities in my opinion. It is hard to discuss an opinion, I value your opinion and I believe, not only I value your opinion, I believe in your opinion. I believe that you're right. That said, we've offered a couple of band-aids, writer, VS Code, mono-develop, they're not the same thing, but they're options. That said, as management, once you become manager, you're really in the role of you kind of move away from that responsible manager like my boss is. You move away from the world of possibility and in limited options to it's more like a physics world. I have three buckets of water and I have a big pile that I need to fill in. What can I do with this? So you need to manage your three buckets and it's physics, it's people and time and so we need to serialize and rather than having two of the other products, we're going to have a fantastic product and we're going to serialize it and we're going to have a fantastic second product. It's her choice, I think it's the right choice and yes, it might be a little bit painful for a while, but we do have options in the meantime. But in the end, you're going to be happy that you didn't use incomplete stack and you'll thank us for that. I'll get there. I could also add that Visual Studio is not probably the highest of priorities on Linux because you can just write your code on Windows or Mac and then deploy it to Linux servers, which is the current most popular use case or containers. Alright, let's do lightning talks. Let's do lightning talks.