Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
I don't think this is going to help you write OS X apps in C#. It sounds like they are only open-sourcing the server-side code. This will allow you to run a .NET-based application server on OS X, but it won't let you build a WinForms or WPF app in OS X, for example.

However, the availability of a fully-supported .NET runtime on OS X could certainly make adding such support in the future easier.

You guys are missing some of the guts of the announcement. Microsoft is partnering Xamarin the company behind the Mono project. They have been providing .NET on non Windows platforms like Linux and Mac Os X for 14 years! For the last 5 or so commercially with products for Mac, Android and iOS.

They are using the just released Open Source .NET source code to legally expand their offerings and fix bugs and implement missing features.

Visual Studio will become Xamarin aware as standard and their products will be made to be easily added to the IDE.

By the way Xamarin do support WinForms on Os X with a recompile, but most people choose to implement a native UI calling Cocoa from c# on Mac.

http://tirania.org/blog/
 
If this means that there is a possibility of detaching C# from .NET framework then I'm all for it!

C# is a great language but the .NET framework hinders it.

If C# could run on LLVM/Clang and with another framework then it would really take off!
 
I know Linux people love dependency hell and shared libraries all over their system, but keep that crap out of my Mac software. If it's not all in the app bundle, I don't want the software (this doesn't include app associated data, like sample libraries). The Mac App Store doesn't allow prerequisites. That then means developers will be fattening up their app packages or .net installers will come as part of every app package that needs it. Neither of which I want.

External linked/shared libraries and frameworks are legacy engineering concepts and marketing (to developers) that programmers just won't let die. Microsoft created an entire system folder wrapper/emulation subsystem just to try to deal with the decades of DLL hell that legacy DOS/Windows created with its sloppy system architecture and design guidelines (as in, no guidelines). We do not live in the days of tiny storage devices, so there's no need to avoid compiling your code into the binary. If you need to reuse code, so be it. Code reuse isn't the cause of bloat; bad code is.

If it's not provided by the OS API, it should be compiled into the binary, or at the very least never live outside the app bundle. Dependencies SUCK. Multiple objects to position in a user's file system sucks. That's why Microsoft has a pile of breakable shortcuts to executables inside cluttered application folder hierarchies, and Apple has a programs folder where you can pretty much put things wherever the hell you want to, as it should be.
 
I know Linux people love dependency hell and shared libraries all over their system, but keep that crap out of my Mac software. If it's not all in the app bundle, I don't want the software (this doesn't include app associated data, like sample libraries). The Mac App Store doesn't allow prerequisites. That then means developers will be fattening up their app packages or .net installers will come as part of every app package that needs it. Neither of which I want.

External linked/shared libraries and frameworks are legacy engineering concepts and marketing (to developers) that programmers just won't let die. Microsoft created an entire system folder wrapper/emulation subsystem just to try to deal with the decades of DLL hell that legacy DOS/Windows created with its sloppy system architecture and design guidelines (as in, no guidelines). We do not live in the days of tiny storage devices, so there's no need to avoid compiling your code into the binary. If you need to reuse code, so be it. Code reuse isn't the cause of bloat; bad code is.

If it's not provided by the OS API, it should be compiled into the binary, or at the very least never live outside the app bundle. Dependencies SUCK. Multiple objects to position in a user's file system sucks. That's why Microsoft has a pile of breakable shortcuts to executables inside cluttered application folder hierarchies, and Apple has a programs folder where you can pretty much put things wherever the hell you want to, as it should be.

I have to say I strongly agree.

That said, it's all a moot point anyway. This is a self-serving, desperation move by Microsoft to try to get people hooked on Microsoft tools and a play to win some cloud market share for Azure. Microsoft is doing this now because they've failed to anticipate the changing computing world and have no successful inroads into modern markets. Their entire company is on the decline, propped up by the same monopolies they won decades ago with shady business practices and this is just a crazy gambit to stay relevant and win over mindshare by new developers who largely do not care about Microsoft at all.

Now, let's be clear, nothing Microsoft is doing here is a bad thing for developers or even end users, really, it's just really not going to change much of anything except in the short term it will annihilate Mono and probably cause a tsunami of new bug reports. Mac users are really not going to see any impact from this whatsoever.
 
I know Linux people love dependency hell and shared libraries all over their system, but keep that crap out of my Mac software. If it's not all in the app bundle, I don't want the software (this doesn't include app associated data, like sample libraries). The Mac App Store doesn't allow prerequisites. That then means developers will be fattening up their app packages or .net installers will come as part of every app package that needs it. Neither of which I want.

External linked/shared libraries and frameworks are legacy engineering concepts and marketing (to developers) that programmers just won't let die. Microsoft created an entire system folder wrapper/emulation subsystem just to try to deal with the decades of DLL hell that legacy DOS/Windows created with its sloppy system architecture and design guidelines (as in, no guidelines). We do not live in the days of tiny storage devices, so there's no need to avoid compiling your code into the binary. If you need to reuse code, so be it. Code reuse isn't the cause of bloat; bad code is.

If it's not provided by the OS API, it should be compiled into the binary, or at the very least never live outside the app bundle. Dependencies SUCK. Multiple objects to position in a user's file system sucks. That's why Microsoft has a pile of breakable shortcuts to executables inside cluttered application folder hierarchies, and Apple has a programs folder where you can pretty much put things wherever the hell you want to, as it should be.

Dependency versioning enforcement leades to dependency hell not shared libraries so much. There are distro's out there that do not enforce versioning so there is no hell. There was actually a thread about this not long ago on one of my Linux boards. There are advantages to both was of doing it and being that there are big upheavals coming to Linux we just might loose our shared libs
 
I know Linux people love dependency hell and shared libraries all over their system, but keep that crap out of my Mac software. If it's not all in the app bundle, I don't want the software (this doesn't include app associated data, like sample libraries). The Mac App Store doesn't allow prerequisites. That then means developers will be fattening up their app packages or .net installers will come as part of every app package that needs it. Neither of which I want.

External linked/shared libraries and frameworks are legacy engineering concepts and marketing (to developers) that programmers just won't let die. Microsoft created an entire system folder wrapper/emulation subsystem just to try to deal with the decades of DLL hell that legacy DOS/Windows created with its sloppy system architecture and design guidelines (as in, no guidelines). We do not live in the days of tiny storage devices, so there's no need to avoid compiling your code into the binary. If you need to reuse code, so be it. Code reuse isn't the cause of bloat; bad code is.

If it's not provided by the OS API, it should be compiled into the binary, or at the very least never live outside the app bundle. Dependencies SUCK. Multiple objects to position in a user's file system sucks. That's why Microsoft has a pile of breakable shortcuts to executables inside cluttered application folder hierarchies, and Apple has a programs folder where you can pretty much put things wherever the hell you want to, as it should be.

Xamarin.Mac compiles everything into a Mac app bundle. like any other app. The same this is true of iOS Apps. On linux your free to bundle it in a single directory or share.
 
From the posts in this thread, should I come to the conclusion that Microsoft provides a better environment for developing applications than Apple, even after the release of Swift?

Is this a reason for Windows applications to be better or have more features than Mac applications?

Isn't this a disadvantage of Macs in comparison to PCs, especially given that Apple is willing to let small developers produce and sell most Mac applications, instead of providing many of them such as Microsoft does for Windows?
 
Isn't this a disadvantage of Macs in comparison to PCs, especially given that Apple is willing to let small developers produce and sell most Mac applications, instead of providing many of them such as Microsoft does for Windows?

From what I hear, MS provides a few better tools, but doesn't have any inherent advantages or disadvantages in comparison to OSX.

As for the application question, I believe it's because, as is very oft said, Apple is primarily a hardware company, MS primarily a software company. MS wants you in their software ecosystem, regardless of what OS you use, and they'll happily provide you plenty of pieces of software to help facilitate that. Apple primarily motivation is to get you buying more Macs, and the one major way they get you to do that is through OSX. All other software is secondary to that.
 
A little late to the thread, but I just heard about this. This is a pretty big move from Microsoft. This should allow for client-side integration into iOS and Android platforms, assuming that runtimes will eventually be included with those systems. Apps written in Visual Studio will work across all platforms and developers seem to really like Visual Studio/.Net for development.

In Microsoft-speak, "cross platform" means it will run on different versions of Windows. I'm not joking.

That is not true. .Net was never claimed as cross-platform, since Microsoft wasn't building a runtime for any system other than Windows. However the license allowed for free development of a runtime, which is what Mono is, a third-party .net runtime. Microsoft is now developing frameworks for Linux and Mac OSX, so it is cross-platform.
 
Last edited:
That is not true. .Net was never claimed as cross-platform, since Microsoft wasn't building a runtime for any system other than Windows.

I do remember Microsoft making cross-platform claims since it ran on multiple Windows platforms rather than on just a single Windows platform. This is not a laughable statement if you are developing for Windows environments running XP, Vista, Windows 7, Server 2003, Server 2008...
 
this comment is pure gold

Its also not accurate.

----------

Actually, I just ran some benchmarks

*sigh* All this is based on the premise that comparing benchmarks across platforms is valid. I'm not sure that it is - they are running on different operating systems and CPU architectures.

Think about all the things your Macbook Air CPU, GPU and storage are doing whilst these benchmarks are running compared to what isn't running on your iPad (because of the hobbled multitasking).

----------

Depends on the persons perspective, but it is more Open Source in philosophy and ideal than MIT. The GPL v3 has not been wildly successful that's for sure.

That's because Linux has not adopted it.

----------

The debate over these two software licenses could run pages and not be settled. Developers tend to be pragmatic and choose the license that best fits the SW being released SW is not religion unless you RMS.

Yea, and GPLv3 is a direct manifestation of his zeal.
 
Its also not accurate.

----------



*sigh* All this is based on the premise that comparing benchmarks across platforms is valid. I'm not sure that it is - they are running on different operating systems and CPU architectures.

Think about all the things your Macbook Air CPU, GPU and storage are doing whilst these benchmarks are running compared to what isn't running on your iPad (because of the hobbled multitasking).

----------



That's because Linux has not adopted it.

----------



Yea, and GPLv3 is a direct manifestation of his zeal.

Linus said he won't adopt it for a variety of reasons, If I were a dev I would stay away from v3 like the plague. Again dev's are pragmatic, but I'm not, not going to use SW because it has a particular licence.
 
I do remember Microsoft making cross-platform claims since it ran on multiple Windows platforms rather than on just a single Windows platform. This is not a laughable statement if you are developing for Windows environments running XP, Vista, Windows 7, Server 2003, Server 2008...

At least Vista was and still is better and more stable than Yosemite...

PS I'm running both;)
 
Based on his mailing list posts he doesn't like GPLv3 because it "fixes" problems he doesn't think exist in GPLv2.

I just recently watched his talk at the 2014 Debian developers conference. During that he talked about the shady stuff the FSF did during the transition from v2 to v3. Linus is not one of the people you want to annoy in the little Linux world even if you are RMS
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.