3 ms·
You are correct that Linux is new to many folks on the .NET team. For another set of folks, it's a return to an old friend. Some team members have switched to a
by runfaster2000 10y ago
You are correct that Linux is new to many folks on the .NET team. For another set of folks, it's a return to an old friend. Some team members have switched to a favourite Linux distro as their primary computing environment, even at home. About half of the team is now using MBP as their main computing device.
I have been complaining recently because I am constantly fighting space on my 512GB MBP due to the Linux and Windows VMs and all the Docker usage. My colleagues were smarter and got the 1TB versions to avoid this problem. I guess mine needs to be garbage collected.
That must seem quaint for some readers, but is a strong suggestion of a big shift from 5 years ago and will only continue for this team. Totally agree that you need to live and breath Linux if you want to have a compelling and competitive dev platform for it.
For the code-base itself, the move to nix is not at all new. CLR supported BSD Unix as early as 2000. The source was published for the BSD version through 2005. Silverlight brought new life into the codebase with Mac support (the earlier choice to target BSD was a prescient one). And then, the source did indeed lay unloved for multiple years and was revived again a few years ago. We started where we had previously left off and moved forward, a lot.
Many of the engineers have worked on at least two of our nix projects. A couple have worked on all 3. They are very happy to be working on it again and under very different circumstances.
Main point is that *nix support is not new for the codebase and for a signficant number of folks on the team. Being competitive on Linux is indeed the new thing. No question there! We're very happy to play in that space, in terms of runtimes, libraries, languages, tools and support.
Last, we have moved our web properties (that the team owns) to .NET Core on Linux, some time ago. With Azure supporting containers and orchestration, we will be moving those same web properties to Linux containers as the next step. We also use a ton of Linux in our test infrastructure. We are actively using Linux, happily.
- kodfodrasz 10y agoThis may be slightly off-topic, but I'd like to grab the opportunity to give some direct feedback to a member of the .Net Team. I think one very weak point is the native support/debug tooling, and the lack of communication about the roadmap of those. - debugging a running app on Linux, - tracing a running app on Linux, - creating a dump of a running process and analyzing it on Linux - profiling a process on Linux - resolving addresses to symbols (for use with tools like perf) - being able to record these data and analyze in visual studio "offline" on a different machine. It would be important to communicate about these, as these are very weak points for someone new to the platform (and frankly, everybody, even experienced .Net folks are new to this, as the common windows tools are not available, and the Linux tools are not applicable, or unknown how). These are needed to deploy an actual service on the platform, and must be considered. The Java world offers very strong tooling on these grounds, and I think that is what .Net Core has to compete with in these topics, as that is the most mature cross-platform application platform, way more mature than Go, node, and other hyped platforms. This very day we found a strange problem in an app running on .net core 1.0.0 in docker on Linux in azure, and we didn't know how to start with trying to trace down the problem, and the lack of information found on the internet was annoying.
- runfaster2000 10y agoGreat point. I agree with you. We know that this is a weakness. We had a planning meeting yesterday where we discussed this very scenario and want to shore up this space significantly. Your point on roadmap is also well-taken. We're on the cusp of communicating our plans for the next version, and will be looking for more feedback like this. Happy to take your issue offline if you'd like. It may help inform our future diagnostic plans. I'm rlander@ms.
- SEJeff 10y agoHey thanks for the detailed and long reply, I really appreciate it. Is it safe to assume you work on this team at Microsoft? Would you be ok saying what team in specific you work on? Do you work with Miguel (for instance) on any of the Xamarin stuff? I am a long time GNOME guy and loved to see the merger + integration of that stack into Microsoft.
- runfaster2000 10y agoYes. I work on the CLR/.NET Team at Microsoft. Sorry for not disclosing that more clearly. Oops. Yes, Miguel and I are friends and work together frequently. Usually, he's badgering me, asking me when my team is going to deliver something we promised. We are now starting to adopt more of the Mono/Xamarin tech (in this case, their assembly linker), so the relationship is reversing. Here's a video of us together (where he makes fun of me): https://channel9.msdn.com/Events/dotnetConf/2015/The-NET-Voyage-into-Open-Source https://channel9.msdn.com/Events/dotnetConf/2015/The-NET-Voy... Haven't started looking at the GNOME ecosystem yet. I'll leave that to Miguel to make suggestions on.