News for hackers. Stuff that matters.
Re:Microsoft donates the Mono Project to the Wine team by Kye on Tuesday August 27, 2024 @04:33PM (#41372656)
For historical context: this was before the conclusion of the antitrust case that led Microsoft to start softening its stance toward open source. https://en.wikipedia.org/wiki/United_States_v._Microsoft_Cor....

This was the same year Antitrust came out: https://en.wikipedia.org/wiki/Antitrust_(film)

Any support for open source or cross-platform stuff was a bulwark against claims of monopoly abuse, but none of it worked well enough to be a true replacement. Mono worked for some purposes, but it was far from the first party support cross-platform .NET gets today. Nowadays it sounds like .NET Core + third-party GUI libraries is the way to go.

Re:Microsoft donates the Mono Project to the Wine team by paranoidrobot on Tuesday August 27, 2024 @06:37PM (#41373992)
> Nowadays it sounds like .NET Core + third-party GUI libraries is the way to go.

For reference for those unfamiliar with the terms:

.NET Core was the name given to the cross-platform fork of the .NET runtime.

It was forked out of .NET 4.x and dropped support for a lot of things in the first versions.

It ran on various distributions of Linux and MacOS.

At the same time there were forks of other libraries/frameworks in the .NET ecosystem to have 'Core' variants. Often these were dropping support for legacy parts of their code so that they could run on Core.

Later versions of .NET Core brought over support for a many of the things that had been dropped.

.NET Core and .NET had stand-alone versions until .NET Core was renamed to . NET and became .NET 5.

So, if you want to do the most modern cross-platform C# you would use .NET 9.

Re:Microsoft donates the Mono Project to the Wine team by lolinder on Tuesday August 27, 2024 @07:51PM (#41374548)
Okay, this helps a lot! So .NET Core is now out of date, and any version of .NET >= 5 is cross-platform and has no Core variant?
Re:Microsoft donates the Mono Project to the Wine team by paranoidrobot on Tuesday August 27, 2024 @07:56PM (#41374575)
That's correct
Re:Microsoft donates the Mono Project to the Wine team by SideburnsOfDoom on Wednesday August 28, 2024 @05:16AM (#41377591)
More or less. any version of .NET >= 5 is cross-platform and is a direct descendant of the "Core" side of the fork, and so has no "full framework, windows only" variant.

It is "Core" in a lineage sense, but there's no need to make that distinction any more. The term "Core" is out of date, because the experimental "Core" fork succeeded, and became the mainstream.

Re:Microsoft donates the Mono Project to the Wine team by Kye on Wednesday August 28, 2024 @07:12AM (#41378247)
I've been a long way from Windows development for a while, so missed that shift. I knew it was coming since moving functionality to the open source thing seemed to be Microsoft's target (with some skeptics doubting it, understandably). I didn't know it already happened.
Re:Microsoft donates the Mono Project to the Wine team by SideburnsOfDoom on Wednesday August 28, 2024 @08:09AM (#41378582)
The shift is slow, but it has been ongoing for years, and is pretty much wrapping up now. .NET 5 was released in November, 2020 and that was the "beginning of the end" of the shift over.

For what I do, it's not really "Windows development" in any meaningful way. It is business functionality with HTTP, message queues etc, developed on mostly Windows laptops, and deployed to mostly Linux instances on the cloud. Not that the host OS is something that we have to think about often.

For this, .NET 3.x "the full framework windows only version" services are regarded as very much legacy, and I wouldn't go near one without a plan to migrate to a modern .NET version.

However, YMMV and people are also making windows desktop apps and everything else.

Re:Microsoft donates the Mono Project to the Wine team by Kye on Wednesday August 28, 2024 @08:22AM (#41378666)
It sounds like .NET is on the way toward becoming the Java competitor it set out to be.
Re:Microsoft donates the Mono Project to the Wine team by toyg on Wednesday August 28, 2024 @10:47AM (#41380144)
It has always been, but for 20 years Microsoft used it as a way to maintain lock-in at the OS level.

They've now abandoned that strategy, and instead they use it as a way to maintain lock-in at the IAAS/PAAS level (Azure).

Re:Microsoft donates the Mono Project to the Wine team by SideburnsOfDoom on Thursday August 29, 2024 @04:08AM (#41388463)
Is Java on the way to being a .NET Competitor yet? I can't answer that, I don't know Java well enough.

I am told that the C# language has evolved faster and better than Java. Despite its origins in .NET 1.0 being basically a "Microsoft Java".

But paradoxically there is now more diversity of actively used languages that target the JVM. e.g. Kotlin, Scala, Clojure.

Re:Microsoft donates the Mono Project to the Wine team by Kye on Thursday August 29, 2024 @09:43AM (#41390739)
I got curious and found there's a whole wikipedia page for each:

https://en.wikipedia.org/wiki/List_of_CLI_languages

https://en.wikipedia.org/wiki/List_of_JVM_languages

Quantity of languages might be less important than: how many needs are served by those languages, whether the ecosystem is dynamic enough to keep expanding served niches, and whether the culture and community is likely to produce language support for a niche that matters to you ever or on a realistic timeline. The JVM does appear to have a lot more niches covered, but you can still do all the things those languages do in what's available for the CLI.

I don't know much about the current state of CLI and .NET beyond what I've read here, but it sounds like it's dynamic enough to keep expanding. I also don't know enough about the long tail of niche languages supported by each to know which direction they're headed.

That's the situation with the tools used for music production. In theory, any DAW (Digital Audio Workstation) can make any kind of music. In practice, they all move toward different kinds of music, and you'll run into increasing friction as you do weirder or more complex stuff if you pick the wrong DAW. Cubase can do electronic music, but you're better off with FL Studio or Live. Live and FL Studio can do orchestral, but you're better off with Cubase.

And I'd guess there's a similar dynamic with CLI and JVM and the languages that target them.

Re:Microsoft donates the Mono Project to the Wine team by thanksgiving on Tuesday August 27, 2024 @09:37PM (#41375168)
Minor nit: from what I understand dot net (core) is not a fork but rather a reimplementation / rewrite as far as I understand

> It was forked out of .NET 4.x and dropped support for a lot of things in the first versions.

Re:Microsoft donates the Mono Project to the Wine team by giancarlostoro on Tuesday August 27, 2024 @10:40PM (#41375474)
Correct, the bytecode wasn't even 1:1 compatible. They then brought over missing pieces, and consolidated .NET Framework features into .NET Core, thus becoming just .NET to end the dumb naming war, since everyone calls it .NET anyway...
Re:Microsoft donates the Mono Project to the Wine team by kgeist on Wednesday August 28, 2024 @02:20PM (#41382534)
It's a fork with a lot of modifications (mostly removing deprecated stuff and making it cross-platform). You can still see a lot of ancient stuff in the sources such as referring to the base Object class as "COM+ object" (.NET was originally envisioned as a successor to COM).

>An early name for the .NET platform, back when it was envisioned as a successor to the COM platform (hence, "COM+"). Used in various places in the CLR infrastructure, most prominently as a common prefix for the names of internal configuration settings. Note that this is different from the product that eventually ended up being named COM+.

For example, see the top comment in https://github.com/dotnet/runtime/blob/main/src/coreclr/vm/o...

Re:Microsoft donates the Mono Project to the Wine team by aspeckt112 on Tuesday August 27, 2024 @06:44PM (#41374060)
Good write up that wonderfully encapsulates how stupid Microsoft’s naming is - you didn’t even mention .NET standard.

I love .NET. It’s a great stack, especially for backend web apps. Blazor is a great SPA framework too. But I loathe how Microsoft continue to handle just about everything that isn’t the framework and C# / F#. It’s laughable.

Re:Microsoft donates the Mono Project to the Wine team by paranoidrobot on Tuesday August 27, 2024 @06:56PM (#41374163)
Well, to be fair .NET Standard wasn't a framework, it was a standards/compatibility label and compilation target.

.NET Standard includes various versions of things that MS doesn't even touch.

I stopped doing .NET stuff before .NET 5 so I'm not hugely up to date with the latest shenanigans.

Re:Microsoft donates the Mono Project to the Wine team by aspeckt112 on Tuesday August 27, 2024 @06:59PM (#41374182)
Oh don’t get me wrong - I wasn’t criticising your write up. It was concise and still relevant.

It’s just funny for newcomers to peel back the onion more. Writing a source generator? Target .NET standard 2.0 (not even 2.1) for a whole host of reasons.

Re:Microsoft donates the Mono Project to the Wine team by 486sx33 on Tuesday August 27, 2024 @07:25PM (#41374366)
But….net is everything! And also nothing ! It’s a product? It’s a suite! It’s a system !

Visual Basic .net ! What ?

Re:Microsoft donates the Mono Project to the Wine team by paranoidrobot on Tuesday August 27, 2024 @08:21PM (#41374745)
The ".NET" label was applied to a bunch of things at Microsoft. It was also an early name given to their social networking / IM things.

But for the last 20-ish years it's really only been applied to things related to the .NET Framework.

So, yes - Visual Basic.NET is a language - it's the language that replaced Visual Basic 6. It compiles to the Intermediate Language (IL) that the Common Language Runtime (CLR) executes. There are other languages that compile to IL, too like C#, F#.

The .NET Framework is really a bunch of libraries and tools that are packaged together.

The .NET Standard is a standard that allows you to build a library to a known set of supported libraries and IL / CLR features.

So, yes, depending on which specific part you're referring to - it's all of those.

Re:Microsoft donates the Mono Project to the Wine team by pjc50 on Wednesday August 28, 2024 @05:26AM (#41377664)
This was probably copying Sun's "we put the dot in .COM" advertising. Yes, this is stupid.
Re:Microsoft donates the Mono Project to the Wine team by hermitdev on Wednesday August 28, 2024 @04:43PM (#41384139)
Microsoft needs to stop letting marketing decide product names. Just look at Xbox: Xbox, Xbox 360, Xbox One, Xbox Series X/S.
Re:Microsoft donates the Mono Project to the Wine team by Maken on Wednesday August 28, 2024 @07:34PM (#41385566)
The "Xbox Series X" is such a nonsensical name that only a marketing department could come with it. And this entire line of names exists solely because someone thought that nobody would buy a "Xbox 2" instead of a "PlayStation 3".
Re:Microsoft donates the Mono Project to the Wine team by tracker1 on Thursday August 29, 2024 @12:40PM (#41392688)
Because X's mean moar marketing power... Like the Extreme X870E X motherboard... There's multiple X's and Extremes and the X's mean extreme... so it's moar extreme!!!
Re:Microsoft donates the Mono Project to the Wine team by mixmastamyk on Wednesday August 28, 2024 @12:04AM (#41375847)
Re:Microsoft donates the Mono Project to the Wine team by dirtyhippiefree on Wednesday August 28, 2024 @06:57AM (#41378168)
Absolutely!

I’m just sad the video is not readily available because the facial expressions enhance the spot-on vocal inflections.

We do have the vocal inflections: https://m.youtube.com/watch?v=wPO8PqHGWFU

Re:Microsoft donates the Mono Project to the Wine team by trustno2 on Wednesday August 28, 2024 @12:49AM (#41376058)
It's the Microsoft way to apply the same name to bunch of unrelated products.

everything is .net, azure, 365, now also copilot.

Re:Microsoft donates the Mono Project to the Wine team by toyg on Wednesday August 28, 2024 @10:49AM (#41380162)
Branding be branding, yo.
Re:Microsoft donates the Mono Project to the Wine team by ForOldHack on Wednesday August 28, 2024 @05:18PM (#41384503)
Copilot is just Clippy II+.
Re:Microsoft donates the Mono Project to the Wine team by anticensor on Friday August 30, 2024 @08:10AM (#41399901)
More like Clippy-II/ChatGPT.
Re:Microsoft donates the Mono Project to the Wine team by parineum on Tuesday August 27, 2024 @10:06PM (#41375297)
Among the other small nits in your otherwise concise post... the windows only versions of .NET (1-4) were known as .NET Framework. So, Framework is the only windows only version, followed by Core being a limited feature set but cross platform and then .NET 5 (no suffix) being a full featured version that is cross platform.
Re:Microsoft donates the Mono Project to the Wine team by SideburnsOfDoom on Wednesday August 28, 2024 @07:12AM (#41378248)
> So, if you want to do the most modern cross-platform C# you would use .NET 9.

The current release is .NET 8

.NET 9 is about 3 months away from the usual November release.

Re:Microsoft donates the Mono Project to the Wine team by dtech on Wednesday August 28, 2024 @05:38AM (#41377730)
I'd argue that the dominance of Linux on cloud and Azure growing business is what's causing Microsoft to have an ongoing interest in linux support.

A factoid that's shared sometimes (no idea if true) is that Microsoft now employs more Linux kernel engineers than Windows kernel engineers due to Azure.

Re:Microsoft donates the Mono Project to the Wine team by Kye on Wednesday August 28, 2024 @07:19AM (#41378291)
That came after. Linux wasn't even on 2.6 with its famous stability yet when this kicked off. What you see now is a result. They softened on open source as they realized it actually has some benefits for a company like Microsoft.

The Microsoft of the Halloween Documents[0] is a different Microsoft from the one we see today that understands open source as something good rather than as a threat, and it started with Microsoft being forced to play nice.

"The cloud" as we understand it didn't exist yet.

[0] https://en.wikipedia.org/wiki/Halloween_documents

Re:Microsoft donates the Mono Project to the Wine team by cutler on Wednesday August 28, 2024 @07:52AM (#41378488)
After having gouged Red Hat and Suse for years with their bogus Linux patent racket and bankrolling the infamous SCO Unix lawsuit. Make no mistake M$ coming over all We Love Linux was like Donald Trump turning up at the DNC.
Re:Microsoft donates the Mono Project to the Wine team by Kye on Wednesday August 28, 2024 @08:19AM (#41378652)
I do remain skeptical that the node on the Microsoft org chart that usually strangles anything good the companies does is waiting to strike. It used to be Windows node, but now it seems like the ad node comes in for the kill most of the time. The company is slowly morphing into Google as Google morphs into Amazon, while Amazon is morphing into UPS.

Strange times.

Re:Microsoft donates the Mono Project to the Wine team by keepamovin on Wednesday August 28, 2024 @08:34AM (#41378752)
Off-topic but to join in the general good vibes this announcement emanates: i have to say that my experience using Azure cloud has been stellar. Their co-pilot integration works well, IME. Azure shell is simple and good. Dashboard UI is always good.

Bona fides: I have used GCP for 3 years, AWS for 3 years, and Azure for ~ 1 year. As well as the more "bare-metal" types of cloud providers like Linode/Akamai, and Vultr -- all the latter of which are great for self managing your infra.

I also really find the ability to spin up Windows Server and Windows 10/11 etc super useful for builds, testing, Hyper-V.

I really like Azure for huge projects with many moving parts.

Re:Microsoft donates the Mono Project to the Wine team by tracker1 on Thursday August 29, 2024 @12:34PM (#41392614)
More like it was shoring up for developers who use and/or target mac and linux. Many devs are using macs and targetting linux for deployments. MS wants Azure to be a first class option for developers and is the focus for making money going forward. It makes sense for their developer tools to offer that.
Re:Microsoft donates the Mono Project to the Wine team by Kye on Thursday August 29, 2024 @12:50PM (#41392821)
Azure didn't exist. OS X had just come out and almost no one took Macs seriously as a development target yet. Windows was the only user-facing thing anyone developed for aside from little Java games on flip phones. The Web 2.0 takeover was still years off and Internet Explorer ran the show.

Is "historical context" not as clear as I thought? You're the second person to challenge this by pointing out the current situation when I'm talking about how we got here.

Re:Microsoft donates the Mono Project to the Wine team by tracker1 on Thursday August 29, 2024 @12:55PM (#41392869)
The first Macs to use Intel processors were released in January 2006

Microsoft Azure was first released on February 1, 2010

Microsoft released .NET Core 1.0 on June 27, 2016

Re:Microsoft donates the Mono Project to the Wine team by Kye on Thursday August 29, 2024 @12:57PM (#41392891)
This was 2001 and earlier. You're talking about stuff that happened 5+ years later.
Re:Microsoft donates the Mono Project to the Wine team by tracker1 on Thursday August 29, 2024 @01:52PM (#41393485)
Yes, I'm talking about when they added real cross-platform support to .Net, which was with .Net Core.
Re:Microsoft donates the Mono Project to the Wine team by Kye on Thursday August 29, 2024 @02:52PM (#41394117)
Then you're not talking about what I was talking about in the post you replied to with a framing that suggested you were disagreeing. Did you click the wrong reply link?