Live data from Hacker News

.NET 6 is now in Ubuntu 22.04

devblogs.microsoft.com

191–200 of 351 posts

Re: .NET 6 is now in Ubuntu 22.04

#191

Question for the experienced .net folks - how is the dev experience of .net on linux vs .net on windows? Is it smooth or clunky? Pretty cool and interesting that a big linux vendor is on board with .net.

It depends a bit on what tools you use, but if you've jumped the ship from VS to VSC and mainly use the dotnet cli for things then there isn't much of a difference between platforms. If you're using VS, as in really use it and all it's feature, there is going to be a massive difference. That being said, I've used .Net and C# for over a decade and it's frankly just a clunky language and toolset. It's gotten better wit…

Yeah, I was specifically curious about VS (not VSC).

I am not a vs/c#/.net dev but I tried it once on a windows machine and thought it integrated well and seemed to be a really nice DX. Probably the nicest DX for an "enterprise" stack.

Re: .NET 6 is now in Ubuntu 22.04

#192
post #93

Earlier quoted context omitted.

Any interest in doing a short comparison? As in, why are you in no rush to switch back to rails? Any features you miss from rails? (edit: register beat me to it. I'll leave my post as a +1)

For the most part, I think there is a lot of feature parity between the .NET and Ruby on Rails frameworks when it comes to developer tooling. As I grow older I guess I am growing more fond of statically typed languages. It's easier for my decaying/distracted brain to reason about. There is less mental overhead I suppose [might be a good blog post?] They both have a good database migration system and various generator…

> with Rails I have to introduce React

Do you know about Hotwire? It's Rail's html over the wire solution and seems comparable to Blazor.

Re: .NET 6 is now in Ubuntu 22.04

#193

Earlier quoted context omitted.

I'm glad it works for you. It gave my team years of headache while we ported it all to jOOQ. Also our Ruby engineers liked the flexibility so much that they exposed our entire database as a service to customers, which we had to emulate and support. Two sides to every position.

Amen to that. We had a high-level engineer who sincerely believed that Rails and Postgres were the right tools for Everything. Consequently he shipped a mission-critical query engine whose API is - you guessed it - just ActiveRecord! It's great if your users are disciplined and experienced Rails engineers who understand how the system works, but we don't live in fantasy land and a year later, we are so very constrain…

> It's great if your users are disciplined and experienced Rails engineers who understand how the system works.

I'm continuously shocked at how much bad ActiveRecord code there is lying around given that it's so easy to just look at the SQL it generates and be like "yeah this looks reasonable".

WHY SPONGEBOB WHY!?! Why do you pass around your relations making all of ActiveRecord part of your external API? It's so hard to do stupid things with AR if you pretend that AR objects can't leave the scope they were fetched in.

Re: .NET 6 is now in Ubuntu 22.04

#194

Moved to Debian 11 after (X)ubuntu moved to snap packages. Anybody knows if this affects the ease of installing on Debian 11 in any way?

> Anybody knows if this affects the ease of installing on Debian 11 in any way?

MS provides packages for Debian. https://docs.microsoft.com/en-us/dotnet/core/install/linux-d...

Re: .NET 6 is now in Ubuntu 22.04

#195

A fully devoted Linux developer here that never touched Windows' ecosystem(.NET, Visual C++, win32 api, all those), any reason for me to jump on .NET? where does this runtime run(x86/windows, now linux, what about MacOS, and embedded systems), and what's the selling point(web framework in c++ like language? a better c++/java?) https://learnxinyminutes.com/docs/csharp/ it looks more like Java than c++ to me. On a diff…

It runs on Windows, Mac, and Linux x86/x64/Arm64 The main target is enterprise software systems and web backends. Asp.Net is a very mature framework for Web APIs and MVC applications. Entity Framework is a decent ORM solution supporting several popular DBs with tools for code generation and migrations, and LINQ is a complementary query language that is useful for in-memory collection operations as well as db queries.…

> Asp.Net is a very mature framework for Web APIs and MVC applications.

*ASP.NET Core

Re: .NET 6 is now in Ubuntu 22.04

#196
post #144

Earlier quoted context omitted.

Yeah, but the general standard is for open languages to either have an open debugger (e.g.: V8 JS) or else otherwise have support for an open debugger interface (e.g.: Rust via GDB). It's not strictly unreasonable for MS to offer a proprietary debugger, but it is bass-ackwards for the core .NET team to not offer an open source debugger or open standards compliant debugger interface to go with their open source langua…

The debugger interface is open (it's part of the CLR itself), and so is the debug symbol file format. However the debugger interface is low-level, making writing a debugger engine from scratch fairly complex. The complaint is that Microsoft uses a restrictive license for their higher-level wrapper around the low-level API. But it should be possible to write independent .NET debuggers -- I believe Jetbrains has done s…

Samsung did it too

Re: .NET 6 is now in Ubuntu 22.04

#197

Earlier quoted context omitted.

I'm glad for you, but ActiveRecord is still the best ORM of all time. OF ALL TIME. I rewrote one of my main Rails applications in .NET, and trying to use Entity Framework was like pulling teeth for me, in comparison.

I'm glad it works for you. It gave my team years of headache while we ported it all to jOOQ. Also our Ruby engineers liked the flexibility so much that they exposed our entire database as a service to customers, which we had to emulate and support. Two sides to every position.

> they exposed our entire database as a service to customers

ActiveRecord is the least of your problems, then... seems like you may have a fundamental problem of inexperienced or foolish devs.

Re: .NET 6 is now in Ubuntu 22.04

#198
post #187

Does it come with telemetry enabled by default[1] as the Microsoft binaries do? Or does the Ubuntu version either remove that code or make sure to set the DOTNET_CLI_TELEMETRY_OPTOUT environment variable everywhere? If "Canonical and Microsoft are committed to working together", probably the former. [1] https://docs.microsoft.com/en-us/dotnet/core/tools/telemetry

Yes, telemetry collection is still opt-out. I just tried it.

Re: .NET 6 is now in Ubuntu 22.04

#199
post #56
post #2

It has been rumored for years that Microsoft might acquire Ubuntu. This is an interesting move though not proof of any such future merger. All of that said, it would be nice if Microsoft had the same level of cooperation with Fedora and another distro or two as well. (And where the hell is support for .NET Core on FreeBSD???)

> Microsoft might acquire Ubuntu That would make a lot of sense, despite the backlash it would generate. Remember when they acquired GitHub, developers were vouching to move over to GitLab. Yet very few did. The same would probably happen if they acquire Ubuntu. Developers would vouch to move to another distribution, yet few will, because Ubuntu is so much nicer to use than the competition.

> Remember when they acquired GitHub, developers were vouching to move over to GitLab. Yet very few did.

GitHub benefits from a powerful network effect: if you want contributions from the greatest number of developers, you need to be on the platform they use and understand.

Ubuntu doesn't have a comparable form of social lock-in. As long as they are popular and until portable and/or containerized package formats for Linux mature, they do exert some network pressure on publishers, but not really end users.

> Ubuntu is so much nicer to use than the competition.

I don't think this has been true for some time. Canonical's server offerings are pretty much coasting on the mindshare that they gained with current-gen Linux sysadmins and developers who grew up experimenting with desktop Linux in the aughts, when the usability delta between Ubuntu and other mainstream distros really was vast.

They still benefit quite a bit from their willingness to bundle proprietary software with the OS, and from sheer inertia on the desktop, where they are still most likely to receive native packages by proprietary software vendors.

But the collection of desktop operating systems that actually attract new users to the ecosystem who will become the next generations of Linux sysadmins is increasingly comprised of distros that are not based on Ubuntu. User-friendly Arch downstreams now have more and more of theml mindshare that Ubuntu did when I was 'growing up.

The most popular Ubuntu-based distribution, which has actually surpassed Ubuntu both in interest from new users and in its reputation for OOTB usability, deviates strongly from Ubuntu in some core technical aspects that make some Ubuntu knowledge non-transferable.

APT is aging poorly, even compared to its RPM-based counterparts. It has recently been at the center of some high profile blowups where package installation triggers a catastrophic cascade of uninstallations that newbies would likely perceive as 'bricking' their installations. This has damaged the reputation of the most popular Ubuntu-based distros, including Ubuntu itself as well at driving home the case for portable/containerized package formats.

The success and growth of these portable package formats, including Snap itself, additionally threaten to undermine Ubuntu's strategic advantage because they work pretty much as well on any distro as they do on Ubuntu.

Moreover, Canonical's own offering in that space is already driving users away from Ubuntu. Snap is slow, clunky, space hungry, and bandwidth hungry, and the way that Ubuntu has chosen to force Snap packages for key software, e.g., Firefox, has had a negative impact even (and perhaps especially) among non-technical users precisely because it has a shitty UX.

Meanwhile Snap has failed to gain much developer interest outside of Canonical, and looks likely to suffer many of the same adoption problems as previous Canonical offerings in the space of core system software like Upstart and Mir. It seems that Canonical has not figured out a way, in the past decade or so, to displace Red Hat as the most influential corporation on projects that require widespread, cross-distro adoption to succeed.

Similarly to the situation witb portable packaging formats, there's a pretty clear trend in the wider Linux world away from relying on old-school package management 'raw' in favor of immutable operating system images. There are Ubuntu derivatives in this space, but the clear leaders are NixOS on the radical side and Fedora Silverblue for the more conservative approach that reinforces/enhances traditional package management tools with OSTree to gain some of the same benefits.

It may be that Canonical's advantage in the server space and among developers is 'sticky', now that Ubuntu is established in those markets, and that it's less ripe for the same kind of play that Ubuntu made by building mindshare first on the desktop. They may also catch up in some of these areas.

But for all of the reasons I outlined above, I don't think Canonical is in nearly as strong a position to retain its relevance as GitHub was, especially in the long term, in the face of one more thing that makes it less attractive to new desktop users for whom much of the appeal of running Linux in the first place is escape from Microsoft.

Post reply on HN