back

by rbanffy·17y ago·view on hn ↗
VS is required to develop software that will run on Windows (and that will forever be handcuffed to Windows). I do not wish to develop such an abomination, but many people won't have the same moral objections.

VS is Microsoft's "Office for developers" application. It's only reasonable to tout the features os languages and compilers not available elsewhere from Microsoft as features of the whole thing, because Windows developers have no other option.

1 comments
VS is required to develop software that will run on Windows

I'm sure the user base of the delightful open source #develop making Windows apps will be sad to hear this, as will everyone using VS to develop against Mono.

Which compilers are part of VS that aren't available elsewhere?

Mono is something weird. I confess I fail to understand what drives clever people to hand over the design goals of their open-source project to Microsoft. They are clever people doing an extraordinarily stupid thing. And .NET apps are as much Windows apps as Java or Squeak apps are - they happen to run on Windows and, if you care enough, you may be able to run them elsewhere - and many do.

At least until the next broad Microsoft patent-infringment lawsuit. Mono is toxic in that regard - Microsoft may decide to start a FUD campaign anytime they want and Mono just gives them a huge stick. If that's not a dumb thing to do, I am not sure what would qualify.

As for the compilers, I am quite sure you cannot obtain any Microsoft compiler that is sold as part of VS without at least some part of VS. You can run them from the command line (if you could call cmd.exe a command-line) and you can download them from Microsoft for free, but saying that they are available "elsewhere" is a bit of an overstatement.

You obviously have no idea what you are talking about and if anyone is doing FUD, it would be you.

The .NET compilers costs absolutely nothing and are part of the free (as in beer) .NET SDKs you can download whenever you feel like.

As for mono: Microsoft has actively supported the community, helped out with getting moonlight (the opensource Silverlight implementation) working, and as part of the Silverlight package you have IronPython, IronRuby and the DLR (dynamic language runtime) which are all largely opensource.

Even if Microsoft wanted to bail out at this point, it would be too late.

Not to sound rude, but I think you had one thing right in your comment: "Mono is something weird. I confess I fail to understand". How about the simple explanation? The .NET framework (despite the silly name) is a solid framework, C# is a good language, the CLR is sexy and people want to use it on more platforms than just Windows?

Why do you think that MSFT's current behavior toward mono will continue in perpetuity? If mono ends up negatively affecting profit motive, then MSFT will attack with full force, as it should. If mono doesn't have some security in writing, then mono may be vulnerable - and that's a perfectly fair issue for commercial developers to concern themselves with.

There's all kinds of ways to spin the mono future. One might be that, as MSFT realizes the OS is being devalued, let mono become popular, then work a licensing deal after litigation. How is this different from Novell caving in on Suse?

I'm pretty sure Microsoft themselves having contributed to mono projects would invalidate any such lawsuit. Also, Microsoft submitted the whole common language infrastructure (CLI), the core of .NET, to ECMA as an open standard.

So, unlike most things Adobe and Apple, Microsoft has actually made the .NET infrastructure open, but you don't see people decrying people for wasting their development efforts there.

So if that's a perfectly fair question, the FOSS world should immediately start reviewing pretty much all efforts not currently centered around POSIX, OGG and Theora as possibly wasted.

"I'm pretty sure Microsoft themselves having contributed to mono projects would invalidate any such lawsuit"

No. It wouldn't. And, most of all, it has no effect on where they take .NET in the future. If they decide to break Mono by moving the reference platform and to make Mono developers run in circles, they can. If they decide to sue _users_ of Mono programs, they pretty much can, unless at least a significant part of the code being used is licensed in a patent-litigation-proof license, which, I gather, is not the case.

The whole case is that you just have to trust Microsoft to, for the first time in its history, act in a civilized way. You may judge it's an acceptable risk for you and your users, but I just don't think that way.

If they decide to sue _users_ of Mono programs, they pretty much can

Now you are pretty much talking bullshit. If this is actually somehow allowed in the US, that is a failure in the US justice system and for the remaining 95% of the world unrelated to actual reality. With all this time spent trying to avoid lawsuits, I sometimes wonder how people in the US manage to be productive at all.

Anyway, your arguments seems to boil down to that any platform which isn't under 100% open source control is a risky investment and that it's not worth it. If that is your point of view, I can respect that, but at the same time you have to accept that puts you in a very narrow window with regard to what markets and platforms you can develop for.

To me, from my point of view, that's just too deep into Stallman-land and not a viable strategy in the real world.

"if anyone is doing FUD, it would be you"

It's FUD only if you deny the risk of Microsoft behaving badly. It's entirely possible Microsoft's legal staff is larger than the whole Mono developer base. Whether Microsoft crushes Mono is irrelevant to me - I have long migrated away from Windows and, while Gnome seems to use Mono a lot, I can also migrate away from that. It's my advice, however, to never, ever, under no circumstances, trust Microsoft to do the good thing. It's behaviour is highly predictable and I am yet to see a single sign it even can act like a good corporate citizen.

"The .NET compilers costs absolutely nothing and are part of the free (as in beer) .NET SDKs"

True. You can develop for Windows with .NET without Visual Studio.

"Even if Microsoft wanted to bail out at this point, it would be too late."

Microsoft can bail out any time it wants. All they need is to come out with a "new and improved" API and a "new and improved" Visual Studio that are both slightly forward-incompatible with what Mono needs. Windows developers will flock to the new platform while Mono developers will struggle to make Mono compatible again. And do so every time Microsoft wants to. Mono developers really work for Microsoft.

The scenario where Mono declares independent and follows a distinct path is as reasonable as expecting Mac developers to develop against GNUStep (which is really fine) instead of using Xcode. It won't happen and it won't be able to steer the reference for compatibility a bit. As ECMA-sanctioned (which is sort of meaningless) as they are, the real standard, the one the market follows, is the one dictated by Redmond.

You also seem to imply the #develop user base can be compared to the Visual Studio user base. I would like to check your numbers as I suspect the active user #develop-to-Visual Studio ratio is very close to zero. Were VS not a requirement, your number should be above, say, .3?