
Microsoft takes .NET open source and cross-platform - ethomson
http://news.microsoft.com/2014/11/12/microsoft-takes-net-open-source-and-cross-platform-adds-new-development-capabilities-with-visual-studio-2015-net-2015-and-visual-studio-online/
======
jpgvm
I'm a hardcore *nix guy but boy do I love me some C#. Up until now it's been
the best language I have worked with but the worst platform due to it's lack
of 'nice things' that we just expect from languages/ecosystems these days.

Where 'nice things' is defined as being open-source, having open-source
ecosystem of developer tools etc.

This isn't so much the beginning (as good stuff has been happening for a
couple of years now) but it's a huge step.

Thankyou Microsoft.

~~~
eloisant
C# as a language is better than Java, but not as good as Scala.

~~~
jkrems
Yes, that's why you would use F# in .NET if you want something like Scala. And
then I heard many people say that .NET wins again.

~~~
bad_user
Meh, F# is pretty good, but Scala has a better type-system. You cannot model
type-classes in F# for example and there's some ugliness in it, in a true
Ocaml fashion - for example I don't like how you've got to deal with 2 types
of generics or the prevalence of "static" methods, static methods that are
complete hacks that go back to C++ at least (Scala has no such thing as static
methods btw). In many ways Scala is a very elegant language, too bad that many
people are scared by these myths that are flying around.

That said, people are missing the forest from the trees. This isn't about _the
language_ , but rather about _the runtime_ and _the standard library_. That's
the true value of the JVM, that's the true value in .NET.

There wouldn't be any problem for porting Scala to .NET. Sure, it would be
difficult as .NET's reified generics are maybe too limited for Scala's type-
system, but I'm sure somebody could make it work, at least partially.

And there was a Scala for .NET, but it lacked interest so it died. But hey,
you can still run stuff built in Scala on top of .NET by means of IKVM ;-) Has
poor performance compared to a JVM, but then again, people are willing to
build stuff in Scala for Android. Also Clojure.NET is doing pretty good from
what I've heard.

As a Scala developer that loves Scala and the JVM, I personally find this
announcement very exciting. As finally, the JVM has true competition ;-)

~~~
noblethrasher
You can model type classes in F#, but it's not pretty[1].

Interestingly, C# can model type classes much more straightforwardly (using
implicit conversions), and this is one of the reasons I continue to use it
along side F#.

[1][http://stackoverflow.com/questions/9868327/f-type-
constraint...](http://stackoverflow.com/questions/9868327/f-type-constraints-
and-overloading-resolution)

------
jacquesm
It's funny how Nadella has moved the needle more for developers in 9 months
than Ballmer did in the last decade or so, and all that without running around
like a madman too. Pretty good. I'll never switch back to MS for what they've
done in the past but it is nice to see them try hard to become a nicer player
in the software eco-system.

Google and Apple need some other party to keep them sharp, it might as well be
MS.

~~~
OWaz
Seeing comments like this “I'll never switch back to MS for what they've done
in the past” always reminds me of this post from Hanselman
[http://www.hanselman.com/blog/MicrosoftKilledMyPappy.aspx](http://www.hanselman.com/blog/MicrosoftKilledMyPappy.aspx)

~~~
jacquesm
\- Stacker

\- Netscape

\- SCO

And many others besides.

Companies have reputations just like people do (that's why we call them
'incorporated') and just like you can lose your trust in a person you can lose
your trust in a corporation.

This is not about Microsoft just doing 'stupid stuff sometimes' it is about
institutionalized criminal behavior sanctioned at the highest level of one of
the largest software companies in the world. Your silly linked blog post by a
Microsoft employee tries to wipe all that under the carpet. For the record,
I'm not exactly 25, used to be a MS developer and user and have decided that
their ethics are not fit for my taste, feel free to disagree.

~~~
tlb
I'm curious whether, with the fullness of technological hindsight, you still
deplore what they did to Netscape.

Microsoft was the first to release a free browser included with the OS. That
killed Netscape's business of selling browsers on a CD for $40, and Netscape
was understandably upset.

It now seems clear that an OS needs a browser included, at least so you can
read documentation and download the browser of your choice.

~~~
JackC
It's not the "what" they did to Netscape (releasing a free browser), it's the
illegal "why" they did it (to break the cross-platform web).

As the government wrote in a trial brief:

"In short, Microsoft feared and sought to impede the development of network
effects that cross-platform technology like Netscape Navigator and Java might
enjoy and use to challenge Microsoft's monopoly. Another internal Microsoft
document indicates that the plan was not simply to blunt Java/browser cross-
platform momentum, but to destroy the cross-platform threat entirely, with the
'Strategic Objective' described as to 'Kill cross-platform Java by grow[ing]
the polluted Java market.'"

[http://en.wikipedia.org/wiki/Microsoft_Java_Virtual_Machine#...](http://en.wikipedia.org/wiki/Microsoft_Java_Virtual_Machine#Antitrust_trial)

This is the strategy an MS exec described as "embrace, extend, extinguish":

[http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish](http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish)

The "embrace" part is particularly gross. IIRC, the court found that Microsoft
deliberately misled developers to make them think that apps developed with MS-
JVM would work cross-platform, when really it was designed to prevent that.
They lied to developers to trick us into wasting our time, to destroy cross-
platform technologies that threatened their monopoly.

Want to make it practical? There are thousands of us here who have _each_
spent hundreds of hours struggling with IE compatibility when we could have
been building cool stuff. We're building the future as fast as we can, but you
and I and Bill Gates will all get to see less of that future before we die,
because Microsoft set out to break the web and it took a whole lot of time to
fix it.

Of course that was going on 20 years ago now. Microsoft probably has interns
now who were born after IE came out. I realized recently that I'm not mad
about this stuff anymore. But it's not a history we should forget or repeat.

~~~
danielweber
I was just thinking of "embrace, extend, extinguish" when reading through the
class-action about Apple routing texts over its own network, so people
switching away from Apple would think that Android's texts were broken.

------
JeremyMorgan
I feel like the last couple years I've been cheerleading for MS and telling
people how much they've changed, how open things are becoming, and how awesome
the development experience is. It's fallen on deaf ears or met with
resistance, but today's announcements are really gonna drive the point home.
Developers need to start looking more seriously at C#/.Net.

The Scotts (Hanselman/Guthrie), Miguel De Icaza and so many others have worked
tirelessly on this, and we (.Net Developers) owe them a ton of gratitude for
helping to make sure this ecosystem doesn't wither on the vine.

~~~
aerique
Too little, too late IMHO.

Also MS has always come across as very opportunistic, giving the impression
they will drop support for this if it serves them better.

~~~
shmerl
That's my feeling as well. No amount of opening stuff can fix their reputation
at this stage. Unless they'll completely drop all their crooked practices,
which is not likely.

------
danabramov
I know it's silly but I'm tearing up. I grew up with .NET but neglected it for
years because of moving to OS X, iOS and web dev. I played for some time with
Xamarin and I'm so happy this is where MS is going. <3 Scott & Miguel, I'm
sure they both had _a lot_ to do with it.

~~~
nailer
Is this Microsoft's runtime or Miguel's? I can't work out whether:

\- he's made it (if Mono is everywhere and now blessed by Microsoft)

\- he's ruined (if Microsoft's original Windows-only .net runtime is now
everywhere, and there's no need for Mono)

EDIT: apparently it's both -
[https://twitter.com/shanselman/status/532558786486370304](https://twitter.com/shanselman/status/532558786486370304)

~~~
joshrivers
What I've overheard on some podcast discussions is that they are taking the
multiplatform Silverlight runtime, and have enhanced it to be a headless
server-type runtime instead of browser-plugin-UI-focused. It doesn't include
all of the windows-only features of the CLR and BCL, but has all you need for
ASP.NET vNEXT.

------
_stephan
According to Scott Hanselman they are also open sourcing their new RyuJIT and
even the GC. Incredible!

[http://www.hanselman.com/blog/AnnouncingNET2015NETasOpenSour...](http://www.hanselman.com/blog/AnnouncingNET2015NETasOpenSourceNETonMacandLinuxandVisualStudioCommunity.aspx)

or

[http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://www.hanselman.com/blog/AnnouncingNET2015NETasOpenSourceNETonMacandLinuxandVisualStudioCommunity.aspx)

~~~
_stephan
Apparently the .NET runtime and Mono will merge:

[https://twitter.com/shanselman/status/532558786486370304](https://twitter.com/shanselman/status/532558786486370304)

------
alkonaut
I have been working with .NET for 11 years since 1.0beta (On the _same_
application, i.e. have been continously pushing a massive codebase through
every released version of the framework yet!), so to me this so huge. It has
felt like I would have to go do Javascript, or go back to java, if I wanted to
leave the .NET ecosystem or do something radically different. Not anymore.
Feels like not just Windows-based server (asp.net) and desktop (WPF/WinForms)
apps are .NET based in the future, but a good chunk of what today is Node.js,
Java, Objective-C and so on will be .NET, and hopefully F#, in the future.

If you want a high-level lang runtime with good IDE support, you can just use
.NET now. You know, unless you want Ask toolbar.

~~~
MichaelGG
So, you'd rewrite in JavaScript versus dealing with Mono?

~~~
alkonaut
Not sure I follow you here, rewrite what?

~~~
MichaelGG
Sorry my misunderstanding. When you said it sounded like you'd have to go to
Java/JavaScript, I thought you meant for the application you've been writing.

Either way, I meant that even before this announcement, Mono was a choice (I
use it at fairly high-scale server apps) in many cases. It wasn't C# and
Windows or Java for anything else.

~~~
alkonaut
Yeah, Mono was at least realistic in the last year(s), but it was always a bit
of a guessing game whether something was going to work or not.

Having an official linux/mac os ASP.NET will be huge, even if the functinoal
difference is minor compared to Mono. Just knowing it will work _tomorrow_ ,
and after the next major release is huge.

Yesterday I would rather have chosen Node.js than a .NET solution for a small
service on Linux, simply because it's safer. Tomorrow I'll be back to rather
having pineapples shoved up my nose than write JS.

~~~
MichaelGG
Node's like, one of the worst choices, due to the idiotic package manager.
They ship essentially every function call as a separate package. It's actually
a thing to take a dependency on "sha1" and literally pull in a package just
for that one bit.

Using Node/Grunt/Bower to build a straightforward run end site (just to
compile static outputs) required npm installing over 13 _thousand_ files. Now
imagine on a build server, starting clean, each time? Yeah, it takes a very
long time just to download that stuff or do anything with it. Insane.

And at the end of it all, it's just JavaScript on the server, like ASP did in
the 90s. With a cumbersome async API. OK.

~~~
gedrap
And then add sometimes not properly defined version dependencies (or
developers abusing version numbers a bit) and you have a dependency hell when
running npm update -g will almost definitely break something.

I love yeoman, great scaffolding tool, but it depends on so many packages that
sometimes it simply doesn't work because some package it depends on did
something silly. So once you have a working set up, don't update it if you
absolutely must.

That shouldn't be the case in 2014.

~~~
Havvy
You really should not be installing dependencies for anything globally.
Instead, add them as dev-dependencies and call them in the package.json
`scripts` property. The only npm package you really need installed globally is
npm itself, and you can almost always let the package manager handle that for
you.

------
eyeareque
If you would have shown me this headline 15 years ago I would have thought it
was an onion article. Who would have thought they would have come this far?

~~~
click170
I'm not so sure, I kind of feel like this is them following Embrace Extend
Extinguish, except they realized they moved to step 3 too soon so they're
going back to step 2 or 1. I do not have faith that they won't try step 3
again later.

~~~
fapjacks
Absolutely. There is zero regard for open source from Microsoft here. At the
very least they must be trying to return to the "developers, developers,
developers" days. With Bill Gates punching the clock, it's really anybody's
guess what the real motivation is here, but it sure as hell isn't all the
things we know and love about open source.

~~~
SideburnsOfDoom
> Absolutely. There is zero regard for open source from Microsoft here.

What would it take for you to say "gosh, now Microsoft has regard for open
source!" ?

If the answer is "nothing, I'd never say that ever" then you don't have an
opinion, you have a fixed religious belief.

And how does your threshold for Microsoft differ from the same for Apple.
Google, Facebook et al?

~~~
fapjacks
When its history shows otherwise.

~~~
SideburnsOfDoom
What _specifically_ has to be in the history? What yes-or-no test, what action
that hasn't already happened?

Major projects open-sourced on GitHub under MIT licence? Check. Runs Linux,
java and PHP in the Azure data centres? check.

~~~
fapjacks
It sounds like _you_ have a fixed religious belief instead of an opinion.
Every day must be infuriating for you! You're too much of a fanboy to consider
that Microsoft isn't your friend, or that other people have opinions counter
to yours. But I've already put too much food beneath this particular bridge of
yours.

~~~
SideburnsOfDoom
Hahaha. Projecting much?

Microsoft is a company, like many others. Some divisions do things that are
friendly and benefit me, sometimes, because they want to sell things. That's
realistic.

I'm well aware that onions differ, which is why I ask about people’s reasons
for holding those opinions, so that I can understand them. Of course, it's
equally likely that people will resort to bluster and accusations instead of
answers when they really don't have reasons, rather than examine themselves.

------
pjc50
The politics of this are interesting, and IMO related to the decline of the PC
as a platform. Suddenly Microsoft is the outsider crying for "openness" and
"freedom" while hammering on the gates of the Google/Apple ecosystem.

For Microsoft, it's less bad if everyone switches to an uncontrolled platform
than if they switch to a platform locked in by a competitor. The
embrace/extend/extinguish logic works the other way when Apple are driving it.
(They've done fairly well at killing off Flash, and Silverlight never stood a
chance in this environment)

~~~
Guvante
> The politics of this are interesting, and IMO related to the decline of the
> PC as a platform.

Why would this signal the death of PC? If anything this is most closely
related to the death of Windows Server, since a ton of application development
is done via the web.

~~~
valarauca1
"Signalling the Death of X" is a horrible term to use.

Mainframes have been dead since the early 80's. Yet IBM maintained being
relatively strong until only recently, surviving 30 years on a "Dead"
platform.

------
Someone1234
It will be interesting to see how this will work in practice.

C# will port over just fine. But the .Net libraries? System.Windows has little
to nothing in it, and right now using things like System.IO.* on Linux and Mac
is just asking for trouble.

What are they going to do, hack in System.IO.* Linux support after the fact?
Or just add Linux.IO.* which is even more of a hack. In either case you're
going to get very messy very fast.

The .Net libraries absolutely could have been designed with cross platform in
mind, for example if they put the IO libraries in System.Windows.* and several
of the other Windows-specific APIs.

As it stands the .Net framework/libraries are very Windows locked. So much so
you'd almost have to scrap them and start over to make it more platform
agnostic.

~~~
billyhoffman
"What are they going to do, hack in System.IO"

System.IO works very well on Linux/Mac right now. It was one of the first
things implemented by the Mono team.

Having ported numerous .NET applications, all of which do fair heavily file
I/O (the most common use case for System.IO), the main sticking point has been
code that deals with filenames and paths. As in "/home/billy" vs
"c:\Users\Billy". A hour or so of cleaning up your code and making use of
Path.DirectorySeparatorChar and IsRooted is all I've needed to do.

"As it stands the .Net framework/libraries are very Windows locked"

This shows a lack of understanding of the .Net framework. Yes, if you used
crazy Microsoft specific WCF libraries for networking protocols instead of
industry standard stuff, or used WPF for graphics, that going to be a problem.
But there are literally thousands of classes providing a fairly comprehensive
set of data structures, network protocols, etc that are completely untied to
Windows or Microsoft. If you are using something in System.whatever you are
pretty OK.

P.s., Sockets aren't in System.IO, they are in System.Net

------
FlyingSnake
This is epic. Peter Thiel was right about creative Monopoly.

The new Microsoft under Satya Nadella has totally changed the direction of
Microsoft in just a few months. They had one of the best and rock solid
development platforms and research division, and loyal customers. The new
Azure cloud (Online + On Premise) along with the opening of .Net will change
the playing field.

I'm sure this is a great new for us developers. The change to work on one of
the best runtimes, on a platform of our choice and on one of the best
programming environments.

Great job Microsoft!

~~~
nrb
I'd pin more of this on Scott Guthrie and Scott Hanselman, really. They have
been championing this kind of behavior for years within MS.

~~~
chx
But it's Nadela who allowed that vision to move forward.

~~~
jhatax
A vision this large cannot move forward without buy-in from key executives,
and it is unlikely for the execution to take 9-months. Therefore, like other
comments have postulated, the work had to have begun long before Nadella took
over as CEO.

Let's say, for the sake of argument, that this announcement was made under
Ballmer. How many of you would trust this announcement/take it at face value?
Even going by this thread, there is a deep distrust of Microsoft's moves, and
that is despite all the positive press that Satya has received for creating a
more "open" Microsoft.

IMO, the biggest change that Satya's moves have resulted in is a change in the
"perception" of Microsoft's intentions. The non-Microsoft community trusts his
intentions, and by association his actions, more than they did Ballmer's. I
don't blame this lack of trust, heck I subscribe to it. But attributing all of
these decisions to just Satya shows a lack of appreciation for how decisions
of this magnitude are made at a company like Microsoft.

------
sytelus
Here's Github repo: [https://github.com/dotnet](https://github.com/dotnet).
Wow, these things are being released under MIT licence - who would have
thought .Net would be more "free-er" than Java?

In other news:

* Visual Studio 2015 and ASP.NET 5 will support gulp, grunt, bower and npm for front end developers.

* OmniSharp is a family of Open Source projects, each with one goal - To enable great .NET development in YOUR editor of choice - [http://www.omnisharp.net/](http://www.omnisharp.net/).

~~~
drdaeman
Given that the primary issue with .NET/CLR ecosystem adoption was not lack of
implementations but unclear situation with software patents, I don't think MIT
is a wise option. It's certainly up to Microsoft, but anything with an
_explicit patent grant_ would be a much better idea.

~~~
enL01Ugxc0q6Dzp
They have given an explicit patent grant:

[https://github.com/dotnet/corefx/blob/master/PATENTS.TXT](https://github.com/dotnet/corefx/blob/master/PATENTS.TXT)

------
agarden
According to the announcement on visualstudio.com about the Community Edition,
it isn't just for students and open source developers. Basically, only
enterprises or companies with more than five developers need to pay.

------
cwyers
"To further support cross-platform mobile development with .NET, as part of
their strategic partnership, Microsoft and Xamarin announced a new streamlined
experience for installing Xamarin from Visual Studio, as well as announced the
addition of Visual Studio support to its free offering Xamarin Starter Edition
— available later in the year."

Well that should make a lot of people around here happy.

~~~
atwebb
Nope, now I don't have an easy thing to complain about in Xamarin threads.

Joking aside, there are a lot of surprises coming out of MS, this is all quite
nice.

------
jordanilchev
[http://tirania.org/blog/archive/2014/Nov-12.html](http://tirania.org/blog/archive/2014/Nov-12.html)
here is what Miguel of Xamarin has to say

------
BloatControl
So here is a 700+ comments thread about MS products without one single
occurance of the word that is associated most with anything MS: bloat.

We have a serious problem with generations of so called software engineers
growing up with the perception that this kind of code flatulence is ok to be
released to the world.

We need more programmers with real knowledge to solve the problems the world
has today. These really good guys feel offended by such bloated systems and
like minimal, efficient solutions. MS has lost the ability to attract these
elite programmers forever and it is today a propagator of an anti-concept of
software and software development.

Already too many people are not seeing the obvious. They believe MS produces
acceptable operating systems, while anybody with real knowledge can only laugh
about these caricatures of computing systems - this is doing so much harm to
the whole IT world and therefor to the real world.

Bloat, bloat, bloat. Incredible. We must actively prepare to not let this
illness float into the world of elegant, slick and efficient open source
products. This is a dangerous bloat attack against the world of free thinking
- be prepared to fight the invasion of miriads of dumb zombies! Neanderthalers
are still out there, many of them, to fight the evolution of homo sapiens
sapiens.

~~~
gfodor
I hate the term bloat. It's unquantifiable and is always inevitably in the eye
of the beholder. It's a trick meant to make people think there is some
objective measure being discussed, but in fact it is just a subjective 'gut
feeling', that tends to be 'I don't like this software.'

I'd suggest if you want to criticize this release, you do so on a specific
basis. You're generalizing not just about bloat (which is a relatively
meaningless term) but also Microsoft itself. If you feel the .NET framework is
bloated, then be specific. What does MS's operating systems have to do with
the release of the .NET CLR and frameworks? These are two completely different
pieces of work.

------
korobool
C# is the most modern, and one of the best languages we have in the market.
Linux is the best platform. Hope to see them truly together. Thank you MS guys
for the contributing into world industry.

~~~
72deluxe
Linux as the best platform is subjective! It isn't the best for desktop use,
not for me anyway.

C# has been available for Linux for years.

I would argue that C++ is also a brilliant language, and is just improving and
improving.

But anyway, just another platform to write another language on. More
employment opportunities for all of us.

------
sytelus
I seriously hope this pushes out Java closer to graveyard of forgotten
languages. Java had been rotting for a long time without significant progress
compared to modern languages including C#. It's only advantage had been that
it was cross platform. Now it's owned by lawyers-driven Oracle which is as
worse as things can get. Also I really want to stop worry about having my mom
install crapware like Ask toolbar and say No to Update Java every single day.

~~~
Sindisil
While I agree the damn Ask Toolbar thing is abhorrent, you could just check
the "Suppress sponsor offers when installing or updating Java" box at the
bottom of the Advanced tab in the Java control panel.

I know ... I'm surprised they didn't add a "Beware of Jaguar" tab on which to
place that option.

As for java going to the graveyard -- don't hold your breath. Not that I mind
- I actually enjoy coding in Java, given the tools & libraries that are
available. Heck, I really don't even mind the language. I'd appreciate better
handling of value types, and continued improvement of the GC (both to make it
more cache friendly and to provide better control of pause time vs.
performance), but really, I find it comfortable and productive.

------
programminggeek
This makes a lot of sense for Microsoft. It doesn't in any way cheapen or
lessen the .NET business at all, if anything more things will be built on .NET
which will lead to higher sales of things like Azure, which for a lot of non
.NET devs has almost 0 mindshare.

I've never heard a Ruby or PHP developer list Azure as a potential deploy
target. That is a real problem for Microsoft, even though Azure can do a lot
of the same things AWS or Google's cloud does.

Smart move Microsoft.

------
SwellJoe
Microsoft only acts right when they're losing. It took the loss of dominance
on the web to begin to produce a standards-compliant, modern browser.
Silverlight never really took off because it had such limited OS support. And,
now that they know beyond a shadow of a doubt they can't win the mobile device
market (and are even losing some of the laptop market to Chromebooks, and
Android hybrid devices), they'll grudgingly open up their developer tools and
support other platforms.

I am, of course, happy to see it. But, let's not get too excited about what
good Open Source citizens Microsoft have become. Let's let their actions going
forward determine that.

~~~
zmmmmm
> Microsoft only acts right when they're losing.

Can you expect anything more, really, in the end? It's why we have to always
be vigilant against any company taking a stranglehold on any technology. My
biggest question in nearly any technology choice these days is "to what extent
does this lock me in?". Because the only thing that really keeps these
companies working in your favor is the threat that you can, and will, leave if
they don't.

------
lawl
Can anyone clarify for me, does this include WPF? I remember I wanted to run a
few apps off github on linux and they used WPF, which mono doesn't support.

Otherwise mono seemed to run pretty much everything i threw at it. Can someone
with .NET experience clarify for me what this will enable that mono doesn't
(yet)?

In other words, if .net will continue to be riddled with windows only API's
I'm not really interested.

The article seemed to mostly focus on the server side of things, but I'm not
really sure if they can pull many devs over to writing application servers on
.net. It will be hard competing against Java there.

~~~
hamxiaoz
Server side makes more sense. WPF is an UI framework, even it includes WPF,
the user experience will be bad just because it looks so differently than
native apps.

~~~
captainmuon
OTOH, WPF apps already look different than native apps on Windows. Look at
pushbuttons for example, they are completely flat in WPF and have a gradient
in Win32. (WPF controls are not drawn via uxtheme, but have styles defined in
XAML.)

WPF is part of a trend I believe to see, going away from strictly consistent
UI styles:

QT used to emphasize simple widgets that you could theme consistently. With QT
quick the emphasis is on individual per-app styles themed with css (but you
also have the old widgets). Very similar situation in GTK3, where cross-
desktop themeing is deemphasized (they removed support for changing theme
colors, hid the theme changer in gnome-tweak-tools, and some developers
advocated removing themeing altogether). At the same time, individual GNOME3
apps experiment much more with nonstandard widgets and CSS than before.

Windows 8 "Metro" apps are similar. With the simple, clean design language, I
_thought_ they would be really design-by-intent. A la "I want a list here, and
I want to link it to a detail view. My elements have these properties. Build
me a CRUD interface and spice it up with these colors." and it would generate
a Metro UI. But instead, after playing with Visual Studio, I find it's almost
the opposite: "Place a rectangle at these coordinates, a label there. When the
user clicks here, run that code." There is very little in the development
experience to encourage consistent UIs, and you have to look up stuff like
recommended font sizes manually on MSDN. Naturally, it makes it impossible to
upgrade the UI style over all apps in a later Windows version.

Same in Android. Try to make an app look up-to-date, even on currently
unreleased OS versions is impossible. UI code is way to low-level, considering
a huge fraction of apps are just fancy list-views.

I could go on for a while. The point is that (unfortunately) UI consistency is
not a priority nowadays (maybe except on OSX), at least when it comes to
_tooling_ (the efforts of many developers to still make consistent UX/UI are
very laudable). And compared with the competitors, you could write at least as
nice apps in WPF.

------
tdicola
Great news, but I think people need to realize this is really just Microsoft
pledging to merge and support what Mono has already been doing. You won't
magically be able to take a WPF app and run it on your Mac. You will however
be able to write a server app or maybe simple command line tool that runs on
Mac & Linux. It's great news to see Microsoft acknowledging and supporting
Mono, but there isn't a magic switch that will flip and everything suddenly
works on every platform.

~~~
alanh
Right. And that is a good thing. Java has shown us that no one really wants
write-once-run-everywhere GUI software, as it never feels "right" or at-home
on guest platforms

~~~
MrBra
So because Java shown that then it is a good thing to try for? Does Java
represent to you a sort of a unbeatable limit that no one could possibly pass?
Have you ever seen a JavaFX app?

------
perlgeek
This is huge.

A few months ago, we decided to write a big new software component at $work,
basically a service layer that is going to accumulate lots of business logic.
We discussed several programming languages, and thought that a statically
typed language might be a good fit (we mostly did perl and python so far). C#
was dismissed pretty quickly, because .Net was closed source, and Mono had the
reputation of being a bit second rate (possibly not well-founded, but also
hard to debunk for somebody not in the community).

I mentioned that Roslyn was also open source, but it was hard to convince
anybody when the "main" implementation was still closed source (and we're very
much an open + linux shop).

If this had come a year earlier, we might have picked C#. Maybe there'll be
another project here in a few years...

~~~
jaked89
What ever you were designing, it's almost certain that a more expensive, and
mission critical system than yours was already built with C#. Objecting to a
major language as C# because it's "closed-source" seems irrational to me.

Why does it matter if it's open or closed-source? It's not like you can
realistically invest time to dig in the source code and modify it, in the rare
case that you found a problem. C# had huge amounts of money invested on it,
probably more than your entire project you were planning.

~~~
perlgeek
> Why does it matter if it's open or closed-source? It's not like you can
> realistically invest time to dig in the source code and modify it, in the
> rare case that you found a problem.

Except that exactly this has happened with lots of libraries that we use, and
sometimes also language implementations.

Compilers and interpreters aren't any more scary than other projects, really.

------
NicoJuicy
Being a fan of Android and Microsoft for years... I truelly hope that Google
would discuss about changing from Java to C#... They don't have to change to
c#, but this would be a win for both of them (Microsoft and Google) and a huge
loss for Oracle/Apple.

~~~
miguelrochefort
It's called Xamarin.

~~~
V-2
Yeah and it costs one grand a year. Plus it's playing constant catch up with
Android SDK. I remember moving files manually or my projects wouldn't build
(when Google made some change in folder structure that Xamarin hadn't reacted
to yet). Don't get me wrong, I think it's awesome, it just has some
limitations that are beyond Xamarin's control. Plus it's pricey.

------
fsloth
Hot toes in springwater! I had figured out that since .Net was proprietary I
really should ween myself away from the sweet, sweet F# and learn some clojure
but it seems Microsoft has stumped on my plans for self improvement. Immutable
by default, algebraic datastructures with pattern matching to boot, great
concurrency story and now actually open with permissive licence. Mind. Blown.

~~~
djur
Wasn't F# already open source? And it runs on Mono.

This does bump F# up quite a bit in my estimation, though; I never loved that
Mono was a reimplementation of a proprietary platform.

------
_stephan
"We are open sourcing the RiyuJit and the .NET GC and making them both cross-
platform."

That's incredible!

~~~
_stephan
Apparently the .NET runtime and Mono will merge:

[https://twitter.com/shanselman/status/532558786486370304](https://twitter.com/shanselman/status/532558786486370304)

~~~
rip747
reading that tweet brought back feeling of the whole Rails, Merb merge.
Awesome to hear!

------
FreakyT
I hope this positively affects projects using outdated versions of Mono, like
Unity. I'd love to see them move to a more up-to-date version of .NET, and I
wonder if this could enable them to do that.

~~~
_random_
I hope not, this way we will see a bit more of healthy competition in the
indie game engine space. This is something Unity desperately needs.

~~~
jjoonathan
Honest question from an outsider: it looks like Epic and Crytek have finally
gotten around to moving in to the "low-end" of the game engine market. What's
still unique about unity?

~~~
bussiere
Laziness. And your graphic designer can use it. As a lot of engine, it's nice
when you want something simple very quick. But when you want to tweak it or
make it things more specific it's a lot of time a pain in the __*.

It can save time in the beginning and you will prototype early.

Easy to use and easy to access.

~~~
unoti
I work on a team with a graphic designer who cannot code at all, and is doing
amazing things with Unreal Engine. This includes coding shaders (yes,
shaders!) using only the blueprint drag and drop system. You just set up how
you want it to look, and the system compiles it to shaders under the covers.
The technology is super amazing.

The revolution in competition for indie game development platforms is here. I
don't know why Crytek is doing, but Unreal Engine is very usable and amazing
technology.

~~~
_random_
To be fair visual programming is a known territory for designers:

[http://blog.interfacevision.com/design/design-visual-
progarm...](http://blog.interfacevision.com/design/design-visual-progarmming-
languages-snapshots/)

Also Unreal Engine will be fixed soon ;) - Xamarin is working on C# scripting
for it.

------
elchief
"Oh, shit", said Oracle.

~~~
edwinnathaniel
Good, hopefully this pushes Oracle to refocus, reinvest in Java.

Competition is good. Microsoft still have megatons of work to do to catch up
Java (mindshare or tooling wise).

~~~
orf
Really? I think they are catching up fast on the mindshare front. Java is not
cool anymore, it's grey and verbose, and I think C# has got nicer features.
Also VS beats the pants off Eclipse any day.

~~~
edwinnathaniel
Silicon Valley is all OSS/Java.

ElasticSearch, Hadoop, Cassandra, HBase, HDFS (mixed with C).

Newer infrastructure for big-data are either Java, Scala, Clojure (one or two
tools).

Some of the startups also use Java (not all). I rarely see C#. So yes, C# is
not catching up yet.

Sorry, Eclipse + Ecosystems (that include plugins/integrations and whatnot) =
beats VS any day (with or without pants). And if you have money, IntelliJ is
right around the corner circling VS.

I think people don't realize that comparing the Java and .NET requires
dragging the community, the platform, the tools, the plugins, and everything
else in-between.

I granted in Windows/Desktop .NET is the king. Everywhere else it's the other
way around by a long margin.

~~~
amalag
.NET is big in enterprise too, not just desktop.

~~~
edwinnathaniel
People keep saying that Microsoft/.NET is "big" in enterprise but I have not
seen real data.

If by "enterprise" you meant WalMart bought ten thousands license of Windows 7
OS for their workstation then sure...

But let me offer a different point of view: SAP, IBM, Tibco, Oracle,
Salesforce (not too big yet but they are entrenched), NetSuite (same level
with Salesforce), Workday. Mostly Java...

~~~
amalag
Maybe it is the mid-level I am thinking of. The transition from active
directory server to sharepoint intranet to .net web projects is pretty
standard for many companies. An unscientific search on indeed.com results in
38k for java developer and 27k for .NET developer.

Deploying .NET to linux is pretty huge.

------
_random_
2015 is going to be a year of Microsoft.

~~~
MrZongle2
It may be a bit premature to say _that_ , though 2014 looks to be the year
that I started liking Microsoft again.

------
mnkypete
This is really a great move. C# is an awesome language and deserves to have a
future on Mac & Linux. Microsoft is changing for sure.

------
tasnimreza
It is really a big news, I'm a .Net guy over couple of years. When i started
with .Net i thought why i have to buy everything for development ? Now the day
have changed and we found Microsoft in the open source community race. Thank
you Microsoft.

Visual Studio is awesome, specially debugging when it is in Symbol server
debugging.

Though i hate the thing 'Not Responding' and your OS is freeze. When your
solution growing with 50+ project, it took 4-5min to open and by any chance if
you click the solution it will hang.

------
plq
I see so much emotion in this thread. Yes, I was there to witness what M$FT
(ha! take that Mr. Gates!) did around the dawn of this millenium as well, but
we had all felt that the times they were a-changin' when Slashdot retired the
Bill-the-evil-Borg image already. It's just Microsoft refused to adapt until
now, which e.g. made them miss The Mobile in its entirety.

So, Microsoft is finally adapting. But what are they actually doing? Why did
Microsoft finally decided to make .Net cross-platform? What's in it for them?

Look at what's in this shiny new package: They've open-sourced just the core
runtime. They are not open-sourcing Visual Studio. Or WPF. Or SQL Server. Or
Active Directory. Or Office.

There's one thing the Linux ecosystem is pretty good at: Scaling, both up and
down. There are technical reasons for that, but none could possibly be an
issue for a software powerhouse the size of Microsoft. There are also
commercial reasons for that, most important being: You just can't beat free.

So that's what Microsoft is finally moving against -- Dear startup founder who
is afraid that licensing costs will eat him/her alive while his/her "Growth
Hacking" strategy is working, dear embedded programmer whose tiny IoT device
that just can't cope with the whole Windows mumbo-jumbo, welcome to the
Microsoft platform -- You can now safely run your C# on these free platforms
as well.

So, Microsoft is finally back in the game. They even seem to be playing nice.
But the question in everyone's mind is: For how long?

~~~
seanmcdirmid
> So, Microsoft is finally back in the game. They even seem to be playing
> nice. But the question in everyone's mind is: For how long?

I think a better question might be: what next? (Disclaimer: optimistic MS
employee)

------
Animats
Is this an abandonware move? Does it mean .NET is on the way out, and
Microsoft's way forward is something else? A year or two ago, Microsoft was
talking about the future of application development being Javascript/HTML/CSS.

~~~
Sir_Cmpwn
I doubt it. The .NET ecosystem is strong and C# is still the only way to write
code for Windows without growing to hate the platform.

------
reitanqild
Now, with a patent promise amd a MIT license, any chance that android could
build on .Net going forward?

That would take more than a few non public meetings betweenn G and MS I guess
but possibly better than having to tiptoe around Oracle in the long run?

~~~
ajross
Only by either breaking compatibility or including two managed runtimes on
every device.

Really other than the C# language itself, there's not much to recommend the
.NET core stuff over the ART runtime (which is in the process of replacing
Dalvik). .NET has much broader library support, but that has to be balanced
against the need to ship a lean(ish) runtime (c.f. the installed size of a
Windows Phone image vs. Android!).

And if Google really wanted to play games with source language (which they
don't seem to), there is no shortage of very decent JVM-targetting
environments either.

------
colbyh
Microsoft people correct me if I'm wrong - but this feels like a decision
Ballmer never would have let pass?

This feels huge to me as someone that has always been on *nix variants but
that has been told the .Net environment is amazing as long as you're willing
to pay/work on Windows. I still probably won't switch over to C# or F# any
time soon but it's good to know I could actually work on a WinMo app if
needed.

------
AndrewDucker
This is massive. I love the C# language, and hopefully this will lead to wider
adoption, and usage on more architectures/operating systems.

------
skittles
This is going to be a huge boost to ClojureCLR, IronPython, and F#. I think F#
especially is going to take off in popularity now that its best VM target is
going to run on Linux and Mac.

~~~
agentultra
I hope so. F# is a really nice language. Microsoft Research is an amazing lab
with some very bright minds working there.

It'd be nice to be able to use some of the fruits of their labor without
having a steep entry fee to evaluate it.

Thanks MS, this is a good move.

------
wilsonfiifi
This is such a bitter sweet announcement for me! I had just made up my mind to
stop language hopping and settle/focus on Python and Go for backend
development. But now C#, my first love, has come back to whisper sweet
nothings in my ear!

Still this is great news and kudos to Microsoft for taking this bold step in
the right direction.

------
untog
This is amazing. But I really, really wish Microsoft would buy Xamarin. I know
it sounds counter-productive - they're doing great work on their own - but the
subscription costs associated with Xamarin hold it back. MS would have every
motivation to release it for free to try to corner the app development market.

------
dkopi
Together with the Visual Studio Community announcement
[https://news.ycombinator.com/item?id=8595855](https://news.ycombinator.com/item?id=8595855),
this is great news.

I've always missed the power of visual studio when programming for open source
platforms. This can change things a lot.

~~~
Someone1234
There's no indication from that that you'll see a Linux or OS X port of Visual
Studio. They might, but they haven't said that.

This Community Edition is extremely similar to the Express Edition, except
with some limitations removed (e.g. extensions enabled) and some new
limitations added (5x team members max, which the Express Edition doesn't
have: no limit).

The Express Edition can be used to produce and publish commerical software. It
says so right on their home page [0].

[0] [http://www.visualstudio.com/en-us/products/visual-studio-
exp...](http://www.visualstudio.com/en-us/products/visual-studio-express-
vs.aspx)

~~~
dkopi
Still great news, even without a port of VS to OSX or linux. Personally I'm
perfectly fine with using a windows PC as my development station, as long as I
can create cross platform .NET code.

Extensions enabled on the community edition is great news for people who can
integrate awesome tools like resharper

------
jot
Could work on this have started before Steve Ballmer left? Maybe he took my
2007 email to him more seriously that his response let on:

[http://jonathanmarkwell.com/2013/08/23/me-and-steve-
ballmer-...](http://jonathanmarkwell.com/2013/08/23/me-and-steve-ballmer-
in-2007/)

------
codeshaman
Good move, but (too) late.

The move is designed to attract iOS and Android Devs to .NET.

But let's see:

As an iOS developer, I've invested years in learning Objective-C and Cocoa,
UIKit, etc. Now I'm starting with Swift. I'm sure a lot of iOS devs feel this
way. Besides, if I can't use it from OSX, then I'm out.

Why should I forget everything and learn C#/.NET ? If I want a write-once-run-
everywhere thing, then I could go for one of the miriad Javascript or HTML5
cross-platform frameworks or C++ with Qt, JUCE or the likes.

Same thought pattern applies for Android/Java - why would a seasoned
Android/Java developer want to learn a whole new framework and programming
language ?

Is C#/.NET so much better than Java/Android or ObjC/Swift that it mandates
switching to it ?

~~~
potatolicious
This doesn't seem like a mobile play at all, honestly.

They're opening the core, and large portions of the web server stack. This
points to it being a play for web development, not native mobile.

There are some additional integrations with Xamarin - but Xamarin isn't owned
by MS nor is it the key highlight of today's announcements.

~~~
codeshaman
I should have read TFA before commenting :)

But that is even more puzzling. The backend space is so crowded with native,
scripting and exotic languages, that I really don't see how they can attract
hardcore c/c++/go/node.js/python/ruby/perl/php/erlang/haskell/lisp or Java
crowds to .NET.

Maybe it's exciting for existing .net developers to be able to deploy their
backend apps on linux servers.

~~~
aggronn
You could have said the same thing about several of the languages you listed,
even within the last 5 years. The difference here is that C# already has a
massive userbase.

------
giancarlostoro
I really wish they'd make Visual Studio run on other platforms as well... I
suppose they'll work on making Office run on Linux next, or at least a full
version of Office that's entirely web enabled would be nice too.

------
Someone
Great news, but something else drew my attention: the related stories. I got,
among others:

 _" Microsoft Announces Windows 2000 Certification For Microsoft Certified
Systems Engineers"_

 _" Microsoft and Samsung Reveal Windows Powered Pocket PC For GSM/GPRS
Networks"_

 _" Microsoft Office 97 Family of Applications Honored With Industry Awards"_

 _" Microsoft Invests in General Magic"_

 _" Microsoft Internet Explorer 3.0 Beta Download Demand Overwhelming"_

Ignoring the time machine aspects, I wonder what made their algorithm come up
with these stories. They mention "Microsoft" and "Net", but that is about it.

~~~
pjc50
"Microsoft and Samsung Reveal Windows Powered Pocket PC For GSM/GPRS Networks"

.. in 2003, four years before the iPhone launch. I wonder how that one got
messed up? Carrier brokenware? Inadequate hardware?

~~~
itsboring
Windows Mobile was so so soooooo bad.

------
blt
Holy shit, now I don't feel like I wasted so much time learning C# and .NET.

------
omarish
Link to source code:
[https://github.com/microsoft](https://github.com/microsoft)

------
fit2rule
This demonstrates the importance of documentation in the framework wars. What
could Microsoft possibly gain from open-sourcing .NET? They already have a few
thousand great developers working on their jeweled prize, designed to lure
developers to the brand as resolutely, and immutably, as possible.

.NET going open source is Microsoft admitting that, despite its best efforts,
developers still want to know whats going on behind the curtain, whether the
mirror really works, and just what kind of smoke is being blown up their ass
in the effort to capture their minds and bind them to the brand.

~~~
daigoba66
To be fair, the source code for most of the core .NET libraries has been
freely available under a "reference source license" for a very long time now.
You could look behind the curtain, you just can't modify or redistribute.

~~~
fit2rule
So it was not really 'open' then, was it? More like "sources available for
reading only" ..

~~~
nmeofthestate
Yes, but this open-ness is irrelevant to your point - "developers still want
to know whats going on behind the curtain"

~~~
fit2rule
Then what you're saying is that this is hardly news, and hardly of note in any
sense other than they're going to give the community .. what exactly?

------
archagon
Does this mean that Mono will no longer be necessary for cross-platform C#
use?

~~~
jxf
Open-sourcing .NET doesn't magically make it work on other platforms (a not-
insignificant chunk is Win32-specific, for example). But it certainly makes
the Mono team's job easier.

~~~
viraptor
They say open source, but not which license they're going to use. It may not
be possible to integrate with anything in practice, or as free as developers
would like it to be.

~~~
px1999
It's MIT (and there's also a patent promise).

[https://github.com/dotnet/corefx/blob/master/LICENSE](https://github.com/dotnet/corefx/blob/master/LICENSE)

------
rjsamson
Wow - I have to say I'm impressed. I wonder how extensive the cross platform
support is, and what sort of work has gone into targeting iOS? What does this
mean for Xamarin and Mono?

~~~
cwyers
Miguel de Icaza's post:

[http://tirania.org/blog/archive/2014/Nov-12.html](http://tirania.org/blog/archive/2014/Nov-12.html)

------
api
Wow. The new Microsoft indeed.

If there are any MS people in this thread: I would pay for Visual Studio for
Mac and Linux if I could also use its GUI designers on those platforms. If I
could write a GUI front-end in C# and design it with VS and ship it for
Windows, Mac, Linux, and possibly others, then I'd definitely pay money for
that.

Right now we've got Qt, Java, and possibly HTML5+node-webkit for that, and
none of those are anywhere near as good as MS's GUI tooling and IDE.

------
simonmales
No mention of which license they are using?

~~~
yulaow
I can't find anything but if I remember well almost all other open source
project by microsoft are under apache2

~~~
simonmales
Here they mention MIT License.
[http://blogs.msdn.com/b/somasegar/archive/2014/11/12/opening...](http://blogs.msdn.com/b/somasegar/archive/2014/11/12/opening-
up-visual-studio-and-net-to-every-developer-any-application-net-server-core-
open-source-and-cross-platform-visual-studio-community-2013-and-preview-of-
visual-studio-2015-and-net-2015.aspx)

------
f055
Wow, writing in C# for Mac, that's almost like heaven.

~~~
migueldeicaza
You can already do this today.

Miguel

~~~
megaman821
What do you use for GUI apps? GTK or native Core.Graphics libraries?

~~~
gagege
I bet you a million dollars he uses Xamarin.Forms ;)

~~~
sandyarmstrong
Xamarin.Forms is not supported on Mac.

~~~
gagege
Nor Windows, nor Linux. I know that. The OP didn't specify a platform.

~~~
sandyarmstrong
Still, I should take that million dollars and hold it in escrow for you two.

------
tomp
I want to believe this, but I just don't. .NET is so much more than just the
core libraries. There will be a long time until it's on the same level as
Java. I hope Microsoft proves me wrong, of course (C# is an awesome language,
F# is not bad either), but I will believe this when I see a distribution of
Visual Studio running _both_ on Mac/Linux and on Windows (i.e. the same
executable, same as Java).

~~~
bigdubs
Why would you only be convinced if the IDE runs on both platforms. You realize
that the IDE and the CLR/Runtime are two different things right?

~~~
tomp
Any non-trivial GUI program will do, really.

~~~
bigdubs
Ah got it, the IDE is the benchmark or litmus test of the cross platform
compatibility.

------
none_for_me_thx
Here's the announcement from Microsoft:

[http://blogs.msdn.com/b/somasegar/archive/2014/11/12/opening...](http://blogs.msdn.com/b/somasegar/archive/2014/11/12/opening-
up-visual-studio-and-net-to-every-developer-any-application-net-server-core-
open-source-and-cross-platform-visual-studio-community-2013-and-preview-of-
visual-studio-2015-and-net-2015.aspx)

------
curveship
I started as an open source programmer. Then I got a job as a .NET programmer.
Now I'm an open source programmer again.

Feels good :)

~~~
general_failure
I don't think you understand what open source programmer means :) You have to
actually contribute to opensource projects to become one. Just using them
means nothing.

~~~
curveship
What makes you think I haven't :) I spent several years as a Debian package
maintainer, plus the usual mix of patches and bug reports to several projects.

~~~
general_failure
Ah, ok :) I didn't mean to offend you (if you took any!)

------
Fede_V
I know this won't convince many hardcore Unix people who are used to the
command line, but Visual Studio is still an absolutely incredible piece of
software, and I really, really wish I could run it under Linux.

Even if you are a command line ninja, amazing autocompletion, magical
debugging with inspection are pretty wonderful.

~~~
bad_user
IntelliJ IDEA runs everywhere and is a lot smarter than Visual Studio out of
the box. The community edition is not only free of charge, but open-source as
well. Visual Studio needs the Resharper plugin by IntelliJ, to be able to call
it a modern IDE.

It also has really good plugins for many languages, besides Java, like Scala,
Python, Ruby, Javascript, PHP, Clojure and Groovy.

My colleagues that are doing Ruby development are saying that it's the best
IDE for Ruby. Whereas myself, as a Scala developer, I'm saying that it's the
best IDE for Scala - the Scala plugin for example is still not as smart as the
Java functionality, but has everything you'd expect out of an IDE, like
amazing autocompletion and magical debugging with inspection - personally I
feel that IntelliJ IDEA for Scala is better than Visual Studio for C# without
Resharper.

Its only problem is that there's no support for C#. This is because people
doing C# are doing it on Windows with Visual Studio, so there wasn't demand.
But say that demand increases for cross-platform stuff due to these moves by
Microsoft, IntelliJ IDEA will probably gain C# support and if IntelliJ the
company is the one that does it, then it's going to be darn good.

So don't get me wrong, but for cross-platform stuff alternatives already exist
and even if Microsoft releases Visual Studio cross-platform, problem is that
it will have serious competition, plus they'll have to poor serious resources
into it and frankly I'm not seeing it happening - IntelliJ IDEA is built in
Java and runs on the JVM, hate it or love it, for IntelliJ it is easy to port
it to other platforms. Visual Studio on the other hand, well, it probably has
very Windows-specific guts. So a cross-platform port probably won't happen.

But what I'm seeing happening is a plugin for IntelliJ IDEA or Eclipse
(hopefully IDEA, since it's my favorite). And from what I understood there are
things in project Roslyn that IDE authors could use to jump start the nice
stuff, like completion or refactoring support.

~~~
vorg
> Visual Studio needs the Resharper plugin by IntelliJ, to be able to call it
> a modern IDE

You didn't say what Resharper does, and why other IDE's need it to be called
_modern_. Is this an advert for Resharper?

> like Scala, Python, Ruby, Javascript, PHP, Clojure and Groovy

You listed one middling language among 6 top languages. Is this another
advert, trying to promote a language by associating it with the oft used ones?

~~~
frowaway001
> You didn't say what Resharper does, and why other IDE's need it to be called
> modern. Is this an advert for Resharper?

It's clear what he meant for everyone who hasn't been living under the rock
for the last 10 years. Don't blame him if you are clueless.

> You listed one middling language among 6 top languages. Is this another
> advert, trying to promote a language by associating it with the oft used
> ones?

Heh? It's a list of some languages supported by that IDE.

Did you have a bad day, or are you just confused?

~~~
vorg
> IntelliJ IDEA runs everywhere and is a lot smarter than Visual Studio out of
> the box. The community edition is not only free of charge, but open-source
> as well.

Perhaps he meant "automated code refactoring" but used a brand name instead.
I've never knowingly used Resharper whenever I've used IDEA community edn, but
perhaps it's been running anonymously beneath the surface. That's why I asked
what it was. His whole comment read like an advert for brands like IDEA,
Resharper, and Groovy so that's why I questioned it.

~~~
frowaway001
Resharper is an add-on for Visual Studio, it doesn't exist as such in
IntelliJ.

------
claystu
Finally! One of the major players has finally decided to really push cross-
platform.

Looks like it's time to finally learn F#

------
_stephan
Google cache link:
[http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://www.hanselman.com/blog/AnnouncingNET2015NETasOpenSourceNETonMacandLinuxandVisualStudioCommunity.aspx)

~~~
imarihantnahata
This cache link gives me a 404 :( and the actual link is not working as well.

~~~
_stephan
I've updated the link. Does it work better now?

Btw, if you copy the original link into the Google search field, you get a
search result with the page, and then you can just view the cached version by
clicking on the small green arrow at the right side of the URL.

~~~
imarihantnahata
Yes, that's the first thing I tried, doesn't work for me. Also your updated
link is not working.

~~~
felipesabino
they the text only version
[http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://www.hanselman.com/blog/AnnouncingNET2015NETasOpenSourceNETonMacandLinuxandVisualStudioCommunity.aspx&strip=1)

------
codegeek
Loving this. Recently started working on a project with my brother who loves
MS .NET stack and I have no experience in it. I was really skeptic due to the
reputation MS has of being closed source and license heavy. I could not have
chosen a better time hopefully!!

------
jayvanguard
Never in Microsoft's history have they ever followed through on a promise of
multi-platform support for their infrastructure. They've tried multiple times
but they always end up bailing on it or half-assing it to death.

I wouldn't believe them this time either.

------
jnem
This completely caught me by suprise. Will .NET see a comeback now? Or is it
too little too late? In any event, this is a huge move for Microsoft who has
historically avoided open source(ive always thought of yhem as the anti-open-
source company).

~~~
gagege
"Don't call it a comeback."

IMO, it never really went away. It's still huge in enterprise.

~~~
jnem
Truth, they are still there. Like many other Microsoft products they will
likely be here for many years to come (with or with going open source). I just
meant to say that it seems up till now we were seeing a decline in the .NET
community. I know more than a few MS pro's jump ship, including at least one
MVP.

------
radioact1ve
Faith in C# restored. Amazing.

------
talltofu
What happens to Xamarin business model now?

~~~
migueldeicaza
It improves it.

We now get all these bug fixes for all of our products across Android, Mac,
iOS, PlayStation, Xbox and every other embedded system we support.

Some details:

[http://tirania.org/blog/archive/2014/Nov-12.html](http://tirania.org/blog/archive/2014/Nov-12.html)

~~~
Xdes
I like it how .NET Core has a more permissive license (MIT) than Mono (LGPL).

------
presty
This is pretty cool. Java (the platform) is finally getting a much needed
competitor and alternative. And a VM that was built from scratch to support
multiple languages.

The next decade will be interesting.

------
jpetersonmn
Is there going to be a Visual Studio for the mac? I write a lot of vb.net
utilities in Windows for my day job. It would be awesome if I could work on
that stuff natively on my MacBook.

------
buf
Excellent job, Microsoft.

------
diltonm
I didn't think I'd ever see this happen. Java is my bread and butter but this
could be a game changer.

Edit: It probably won't be for me but just saying who knows, some developers
might prefer C# over Java on Linux and Mac. Too bad Microsoft is 13 years to
late for me on this. They had my interest when I was beta testing Visual
Studio .NET 2002 but by 2005 when I saw how far Java had come and got a taste
of the power and Cadillac nature of Eclipse; it would be tough to turn back
now.

------
Rapzid
This is fantastic! I've been waiting for the .net train to pull all the way
into the OSS station(as a Linux engineer) :) I wonder if .Net native will also
be open sourced.

------
jxm262

         Developers can get started with Visual Studio Community 2013 here.
    

<<link is not working>> [http://www.visualstudio.com/en-us/products/visual-
studio-com...](http://www.visualstudio.com/en-us/products/visual-studio-
community-2013-vs)

I think they meant here? [http://www.visualstudio.com/news/vs2013-community-
vs](http://www.visualstudio.com/news/vs2013-community-vs)

~~~
saravanaram
thanks, i was searching this thread to get the correct link.

------
NicoJuicy
Considering Scott is probably watching this.. What do you think about the near
future about running vNext projects on a simple Raspberry Pi (= low-end
configurations).

~~~
shanselman
Yep. Some folks are already doing this.

------
jangid
Microsoft had designed .NET to be independent of platforms. But the strategy
advices they got were mostly wrong; so they did not release it for other
platforms. Open Source alternatives existed (Mono) but due to unavailability
of committed support enterprises did not endorse it. Now there is very little
hope that the *NIX users will now use .NET languages.

It was a great platform though. I was impressed by the it when I first went to
Teched in year 2002.

------
joelthelion
This is really big news. I'm not sure why Microsoft is doing it, though? Seems
like a great way to completely kill Windows in the server market.

~~~
duncans
Bear in mind Microsoft will happily sell you Linux VMs running in Azure.

~~~
MrBra
ASP.NET running on Linux servers doesn't magically make people want to buy
Linux VM's at Microsoft.

------
logn
Neat. Maybe eventually they'll open source the OS too, but .NET is probably
more significant.

I wanted some more specifics regarding licenses and found this page helpful:
[http://www.dotnetfoundation.org/projects](http://www.dotnetfoundation.org/projects)

Hopefully one day they'll support the entire Java runtime so that I can deploy
Java apps to the JRE or .NET.

------
sauere
Link is dead for me.

Google Cache:
[http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://news.microsoft.com/2014/11/12/microsoft-
takes-net-open-source-and-cross-platform-adds-new-development-capabilities-
with-visual-studio-2015-net-2015-and-visual-studio-online/)

------
AdventureJason
Microsoft's CVP Soma Somasegar will be answering questions about today's
announcements on TechCrunch article -- in comments -- at 2:30pm Eastern today.

[http://techcrunch.com/2014/11/12/microsoft-takes-net-open-
so...](http://techcrunch.com/2014/11/12/microsoft-takes-net-open-source-and-
cross-platform/)

------
AdventureJason
Microsoft's CVP Soma Somasegar will be answering questions about today's
announcements on TechCrunch article -- in comments -- at 2:30pm Eastern today.

[http://techcrunch.com/2014/11/12/microsoft-takes-net-open-
so...](http://techcrunch.com/2014/11/12/microsoft-takes-net-open-source-and-
cross-platform/)

------
stplsd
So that does that means for linux developers like me, who want to start dabble
in .NET ecosystem. Where MONO stand in this?

------
silveira
Any guarantees about patents? Can using and extending .Net will cause in the
future claims of software patents violations?

~~~
desdiv

        Microsoft Corporation and its affiliates (“Microsoft”) promise not to assert any .NET Patents against you for making, using, selling, offering for sale, importing, or distributing Covered Code, as part of either a .NET Runtime or as part of any application designed to run on a .NET Runtime.
    
        If you file, maintain, or voluntarily participate in any claim in a lawsuit alleging direct or contributory patent infringement by any Covered Code, or inducement of patent infringement by any Covered Code, then your rights under this promise will automatically terminate.
    
        This promise is not an assurance that (i) any .NET Patents are valid or enforceable, or (ii) Covered Code does not infringe patents or other intellectual property rights of any third party. No rights except those expressly stated in this promise are granted, waived, or received by Microsoft, whether by implication, exhaustion, estoppel, or otherwise. This is a personal promise directly from Microsoft to you, and you agree as a condition of benefiting from it that no Microsoft rights are received from suppliers, distributors, or otherwise from any other person in connection with this promise.
    

From
[https://github.com/dotnet/corefx/blob/master/PATENTS.TXT](https://github.com/dotnet/corefx/blob/master/PATENTS.TXT)

~~~
ralmidani
The absurdity of betting your livelihood on a Microsoft 'promise' aside, to me
this reads as a green light to use, but not extend, the .NET runtime.

MS still doesn't get free software, and probably never will.

Edit: My bad. "As part of a .NET runtime" means you can extend it. But I'd be
no less nervous about using it because it is not a license, merely a 'promise'
with questionable legal weight.

------
MrBra
.NET newbie here. Could someone explain me if thanks to this it is currently
possible to write GUI multiplatform apps?

~~~
alkonaut
It's possible but the windows ui libs like Windows.Forms and WPF won't be
included in the core. You have always been able to use monk+Qt and this will
likely improve now. See e.g MonoDevelop.

~~~
MrBra
But isn't Mono supposed to merge with .NET now? So in the end will I be able
to use VS to this purpose?

Also I am seeing that last version of
[https://code.google.com/p/qt4dotnet/](https://code.google.com/p/qt4dotnet/)
is 4 years old?

~~~
alkonaut
Not sure what will happen to Mono, I believe they will continue to live side
by side, and Mono will include parts of the now released framework source.

There are a number of Gui toolkits to choose from, see e.g. [http://www.mono-
project.com/docs/gui/gui-toolkits/](http://www.mono-project.com/docs/gui/gui-
toolkits/)

All should work with microsofts framework just like they do with mono.

------
tdsamardzhiev
I'm glad the new CEO isn't stuck in the 1980s! Props to Microsoft. I hope it
isn't too late for them.

------
zmmmmm
For a long time I have held off on embracing .NET even though it offers
certain advantages over the JVM ecosystem because it was clearly a Windows-
first, everything else second ecosystem. If this changes that then I might for
the first time in a long time take a second look at it.

------
bkeroack
Next up (hopefully): Windows core subsystems (basically everything minus the
GUI shell, a la Darwin)

~~~
ngcazz
I wish Windows was Unix on the inside.

~~~
ygra
What would be the benefit of that?

~~~
mjard
Updates without rebooting.

------
MagicWishMonkey
Does anyone know if this means an OSX/Linux version of Visual Studio might one
day be possible?

~~~
bchen
I am hoping JetBrains folks will port their suite of .Net tools to other
platforms. Since the core of these tools is already cross platform (JVM-
based), it may happen faster than Microsoft does to Visual Studio.

~~~
Someone1234
Most of the JetBrains products won't be relevant when Roslyn ships. Visual
Studio 2015 already ships with many ReSharper features out of the box, with
the ability to add the missing ones being made trivial by the new Roslyn APIs.

I definitely won't be running ReSharper in VS 2015.

------
scotty79
They faked being kind of opensource so many times that I'll believe it when
I'll see it.

~~~
CodeCube
[https://github.com/dotnet/corefx/blob/master/LICENSE](https://github.com/dotnet/corefx/blob/master/LICENSE)
:)

~~~
testymctester
Not GPLv3, watch out for patent issues.

~~~
readerrrr
[https://github.com/dotnet/corefx/blob/master/PATENTS.TXT](https://github.com/dotnet/corefx/blob/master/PATENTS.TXT)

~~~
testymctester
Patent promise only covers .Net Runtime, so don't touch the rest of the stack.

~~~
itsboring
Yeesh, give it a rest already.

------
MangoDiesel
It will be interesting to see how this works out, and how many resources are
put behind it. If it does allow developers to choose to work on Linux/Mac for
.NET development, it will put a lot of pressure on Windows to create a great
product.

------
delhanty
Does anyone know whether the full-server side .NET stack open sourcing
includes C++/CLI?

My experience has been that .NET interop with C++ code bases using C++/CLI was
much smoother than with PInvoke. It would be if that were cross-platform too.

------
KedarMhaswade
In general, open sourcing is helpful decision (it's also a practical business
decision in several cases)! And the possibility of running C# on *nix really
creates opportunities in a way that contributors grow. It's a win-win.

------
Tiktaalik
Potentially great news for Unity game developers. Unity uses an ancient
version of Mono that doesn't support all sorts of sensible things. Maybe now
some future version of Unity will have a more cutting edge .NET library.

~~~
numo16
Unity has been developing their own runtime for a while now to get away from
the mono licensing costs of using a new version. I'll be interested to see how
they react to this turn of events.

------
rocky1138
All this reads like great stuff, and as a developer I applaud the work. But, I
haven't read anywhere how they intend to make money off this stuff. How does
going open source and cross-platform make them money?

~~~
cjackson27
Azure.

------
datashovel
Congratulations Microsoft. Welcome to 2014! :) Although I will say, since it
took so long I would still expect the community to be somewhat skeptical /
cynical, and / or slow to adopt / buy in.

------
Beltiras
[http://www.visualstudio.com/en-us/products/visual-studio-
com...](http://www.visualstudio.com/en-us/products/visual-studio-
community-2013-vs) returns a 404.

~~~
Someone1234
Try this: [http://www.visualstudio.com/en-us/products/visual-studio-
com...](http://www.visualstudio.com/en-us/products/visual-studio-community-vs)

~~~
MrBra
Hardware requirements: 20 GB of available hard disk space

Since we are here, could someone please explain me how is it that it takes so
much space?

------
alediaferia
This is a huge amount of tech resource. Don't know if it will actually bring
to something working on the other platforms, but for sure it will help
projects like Mono which deserved a little help.

------
Illniyar
What happens to mono now?

Also its great to have an engineer at the helm of microsoft again.

------
Immortalin
Good strategy Microsoft!

------
kelvin0
Read the article, looking for the download link to the open sourced code. Is
is bundled with the VS2015 preview (4.4GB iso)? If not, were and how can we
access the code?

~~~
nullymcnull
.NET: [https://github.com/dotnet](https://github.com/dotnet)

ASP.NET + related stuff:
[https://github.com/aspnet](https://github.com/aspnet)

------
laveur
Does anyone know if this builds for anything but Windows yet?

------
sciurus
This is a duplicate of
[https://news.ycombinator.com/item?id=8595935](https://news.ycombinator.com/item?id=8595935)

------
anta40
"the full server-side .NET stack and expanding .NET to run on the Linux and
Mac OS platforms"

so that means I can write GUI-based desktop apps for Linux in C#, right?

cool :D

~~~
seanmcdirmid
There is mono.cairo, at least.

------
MrBra
It would be a great moment to restart the Iron Ruby project
[http://ironruby.net/](http://ironruby.net/)

------
jacquesm
You were beaten to the punch:

[https://news.ycombinator.com/item?id=8595905](https://news.ycombinator.com/item?id=8595905)

~~~
buckbova
It's a different article of course. But I gave you an upvote anyway. Way too
many "MS Open Sources .NET . . .. " links right now.

And the hanselman blog won't load for me.

~~~
Guvante
To be fair massive interest in this is expected given Hacker News' population.

------
tiedemann
Next step is to change all "\" to "/" and make drive letters optional to
enable a better cross-platform experience :)

------
chenster
what does iOS developer get out of it? What's the implications for iOS & Mac
developers? It would be nice that I can finally develop iOS and Mac apps using
C# and .NET coming from a seasoned .NET developers to iOS developer. But
doesn't Mono can just do that already? Besides Apple will never approve apps
not written in Swift or Object-C (exclude PhoneGap).

~~~
DanKlinton
You can do this few years already with Xamarin. Thousands of developers are
doing this today. What this changes is better .Net framework
compatibility(less bugs) because Microsoft .Net source code will be reused.

------
hrasyid
Good news :)

For Microsoft though, doesn't this mean (ironically) loss of business, because
many people will no longer have a reason to run Windows?

------
edpichler
Good to us, and good to Microsoft.

Great news, but this platform should be born as Open Source since the
beginning. Anyway, before late than never.

------
penguindev
So when are they going to stop suing android for having the nerve to try to
interoperate with their shit FAT filesystem?

------
bonsai80
It's like slashdot on april fools day!

------
Slackwise
If only this included a revival of IronRuby.

And, moonshot, but — giving IronRuby/IronPython as much prominence as
PowerShell.

~~~
stinos
And IronPython! (yes, it works, quite well actually, but porting of numpy etc
seems to have stalled years ago IIRC)

~~~
Slackwise
Well, I was mentioning a revival of IronRuby because it was totally abandoned.
I didn't know the state of IronPython, but last I checked, it was still being
developed.

I want both to be available, though.

------
tn13
I am not so much enthu about the open source part but more fascinated by the
fact that it is cross platform.

------
anonyfox
Great. Now release visual studio "native" for OS X and I'd have a look at it.
Having to run an emulated windows just to fiddle around in a fairly
heavyweight IDE sucks.

As nice as C#/F# is, the real fun comes from the powerful IDE. And I just
don't do windows anymore, except for occasional gaming (and this only until I
finally buy the new retina iMac and throw the last PC at home away).

------
enlightenedfool
Does nvidia NSight now work with VS community edition? They say VS community
is fully extensible edition.

------
bmurphy1976
I just want to add my $.02. It's about fucking time. They should have done
this 15 years ago.

~~~
Todd
That might have been difficult, given that .NET is only 12 years old.

~~~
bmurphy1976
Oh aren't you so smug.

I was at the 2000 PDC when they announced C#. We are now just shy of 2015. My
15 is more accurate than your 12.

~~~
MrBra
Announcing occurs at vaporware stage. Realeasing is what makes it real. So do
your math again.

~~~
bmurphy1976
Do your math again. We were given Tech Preview CDs at the time that contained
a preview versions of .NET. So yes, we were able to write and experiment with
C# and VB.Net code back then.

I was actively looking for a cross-platform replacement for Perl at the time
and while C#/.NET was exciting it was also a huge disappointment because it
was yet another "runs on Windows only" Microsoft technology.

I don't see how you can tell me that _I_ am wrong when I was sitting there
with the CDs in MY hand 14.5 years ago actively disappointed because .NET was
NOT cross platform like Perl and Java.

I'm done arguing this. This is stupid.

~~~
MrBra
Tech Preview CDs or demo is not releasing. It is a totally different thing.
But oh well.

------
foolinaround
How does this impact the future growth and adoption of mono as an alternative
open-source platform?

------
marcofiset
I love the direction Microsoft is taking towards open source and targeting
multiple platforms!

------
HelloNurse
I'll believe in cross-platform .Net when Microsoft releases Sharepoint for
Apache.

------
icc97
This is a good move by Microsoft, but from what I can tell this is only
happening because Microsoft no longer has its dominant position.

Now that Microsoft has proper competition from Apple and Google it has to
start playing nicer.

It would have been much more benevolent of them if they were still the
monopoly power of 20 years ago.

Yay for competition.

~~~
NicoJuicy
Microsoft still has an absolute monopoly in desktop OS:
[http://goo.gl/oBY93k](http://goo.gl/oBY93k) .

And microsoft never had a monopoly on mobile (smartphones + dumbphones)

So, what exactly has been changed the last 20 years? In my country (Belgium
and my work also sells computers / laptops), practicly all laptops / notebooks
/ desktops are Windows (we have a sister company which is a computer store)...

~~~
icc97
The mobile OS is the big change. So where as Microsoft still has control of
the desktop OS, the desktop OS is a much smaller share of the whole OS market.

I'm coincidentally in Belgium too :) Any chance you work for CoolBlue then?

~~~
NicoJuicy
No, i work for an smb in Belgium andere freelance 2. You work for coolblue
perhaps?

------
elliotec
Finally. Do you think this will significantly hurt the virtual machine
industry?

~~~
fapjacks
My instinct is that people at MS are freaking out right now about Docker
specifically. It's hard to say which decisions were "coaxed" into place with
Bill Gates advising the new CEO, and which are attempts to strategically react
to the negative mindshare of Azure against everything going Docker. First we
have the "news" that MS is doing some mystery thing with Docker (which really
must be a matter of semantics, because for an OS which didn't have symbolic
links until 2008, I can't imagine it's possible to bring something like LXC to
the Windows kernel), and now this news about Microsoft "open sourcing" a
portion of their development tools, from the same company paying TV shows to
awkwardly use the phrase "Bing it". If anything, it's just an interesting time
to be alive.

~~~
SideburnsOfDoom
> My instinct is that people at MS are freaking out right now about Docker
> specifically.

All, right, why would you say "freaking out" specifically? MS has a habit of
adopting good ideas from elsewhere, and I don't think containerisation is any
exception. Maybe they see not supporting it as a strategic weakness, but
shoring up strategic weaknesses is business as usual for any large company,
not "freaking out". Throwing chairs is freaking out.

We know that .Net is rolling out containerisation features in 2015, including
but not limited to docker integration. Going all in on any tech is an odd way
to "freak out about it".

~~~
fapjacks
Whatever, kid.

------
SonicSoul
The dream of writing c# on a mac without having to fire up a VM is so so close
:))

good work MS!

------
yohanatan
I see this as a last ditch attempt by Microsoft to stay semi-relevant. Of
course this was the great promise of .NET to begin with, but it seems rather
late to exercise the option now (some 15 years or so after .NET was created)--
a very desperate move by a dying empire.

------
pjmlp
Also as part of the announcement clang will get some Visual Studio love!

------
FrankenPC
Does this mean WPF will be made available on Linux and Mac desktops?

------
dda
Is is the clear yet when Microsoft will deliver .NET for Linux?

------
jitbit
I'm starting to like MS without Ballmer (no offence Steve)

------
vastinfest
Someone somewhere is spinning at mach 1 in his grave..

------
noobermin
I'm curious what this means for mono, then.

------
SEJeff
I do wonder what this means for the mono project

~~~
tgb
They seem to be cooperating with Xamarin, to some extent:

"To further support cross-platform mobile development with .NET, as part of
their strategic partnership, Microsoft and Xamarin announced a new streamlined
experience for installing Xamarin from Visual Studio, as well as announced the
addition of Visual Studio support to its free offering Xamarin Starter Edition
— available later in the year."

[http://news.microsoft.com/2014/11/12/microsoft-takes-net-
ope...](http://news.microsoft.com/2014/11/12/microsoft-takes-net-open-source-
and-cross-platform-adds-new-development-capabilities-with-visual-
studio-2015-net-2015-and-visual-studio-online/)

------
biafra
The way I see it, I still need a Windows machine to run VS. I will consider
their platform when I can develop for it on MacOSX.

------
skykooler
What does this mean for ReactOS?

~~~
eropple
I don't think it moves the needle off of "irrelevant".

------
derengel
If the support for osx and linux depends on xamarin, the future of .NET on
those platforms is very dubious.

~~~
migueldeicaza
It does not.

~~~
coldtea
Don't feed the troll.

He didn't gave even one argument. Just spilled some venom.

------
jbverschoor
But it was already opensource more than 10 years ago. I remember compiling the
ms .NET runtime on FreeBSD.

------
yarrel
Will this wipe out Mono?

Please say yes.

------
sorpaas
Thank you Microsoft!

------
maerF0x0
Hacker news karma jackpot! ~200 karma to 1800 in one link.

------
jbob2000
aka "We're actually facing competition from open source now, so we're going to
listen to what people have been saying for years. Love us?"

~~~
akmiller
You really need to step back and look at how much Microsoft has already
changed under the leadership of Satya Nadella.

It does appear that he has a completely different vision of what Microsoft
will be in the future compared to what Ballmer had.

~~~
GhotiFish
The devil you know eh?

Microsoft has being at the locus of so much bad behaviour in the tech sector
that I really have to wonder. Even if Stallman started running the company,
how much could it change?

------
FiveTimesTheFun
What a day :)

------
bosky101

        '...show me the code.'

~~~
numo16
[0]: [https://github.com/dotnet](https://github.com/dotnet) [1]:
[http://microsoft.github.io/](http://microsoft.github.io/)

------
everydaypanos
LINQ

------
cyber1
Super!

Thankyou Microsoft.

------
WorldWideWayne
The key points seem to be:

"Available Wednesday, Visual Studio Community 2013 is a free, fully featured
edition of Visual Studio including full extensibility."

So, it sounds like this will replace the Express edition and let you install
extensions like you can in the Pro version.

"Visual Studio 2015 and .NET 2015: build for any device - Built from the
ground up with support for iOS, Android and Windows, Visual Studio 2015
Preview makes it easier for developers to build applications and services for
any device, on any platform."

It _almost_ sounds like you're going to be able to run VS2015 on different
platforms, but I doubt it. Maybe you'll run the web version of VS2015 to
develop from Mac/Linux?

"To further support cross-platform mobile development with .NET, as part of
their strategic partnership, Microsoft and Xamarin announced a new streamlined
experience for installing Xamarin from Visual Studio, as well as announced the
addition of Visual Studio support to its free offering Xamarin Starter Edition
— available later in the year. "

This is very interesting - .NET is going fully cross platform but they haven't
bought Xamarin...are they planning on competing while keeping their frenemies
close or something else?

~~~
Danieru
One theory I've read is Microsoft wants Xamarin to stay third-party so
Microsoft's competitors continue working with them.

Xamarin is working with a great many companies who would think twice about
working with Microsoft directly. This way Microsoft can shove money to Xamarin
to forward the ecosystem without scaring anyone.

~~~
wernercd
Nice theory... but they went the opposite direction with Nokia.

I don't think they'd have any issue purchasing Xamarin and importing/re-
branding.

~~~
coldtea
Nokia is a totally different case, so doesn't invalidate his theory.

Nokia sells to consumers, so there wasn't the problem (as his theory suggests)
of corporate clients not wanting to have business with MS.

Not saying that his theory is correct, just that it's different case to Nokia.

~~~
Finster
Nokia was also definitely pre-Nadella. The Xamarin theory supports Nadella's
whole "cloud and mobile services" schtick.

------
mnglkhn2
At the moment .NET is making great inroads into all mobile platforms (mainly
due to Xamarin's iOS and Android platforms). The one area where Microsoft
needs to push more i son the server side: to be able to develop ASP.NET apps
and push them to Linux servers. You can do it now but not as smooth and stable
as it should be. When this happens, then the circle is complete: you can write
both client and server code in C#/F# from within Visual Studio.

Quite a powerful combo at that point!

~~~
nimbosa
i think the potential for F# just got bigger and better with a brighter
future!

this pretty much highlights the whole movement at Microsoft +Xamarin: (and
directly answers most of the questions in this thread) Microsoft intends to
make Xamarin's job a lot easier and realign its developer-oriented strategy in
the same direction

Scott Hanselman outlines it concisely here
([http://www.hanselman.com/blog/MicrosoftKilledMyPappy.aspx](http://www.hanselman.com/blog/MicrosoftKilledMyPappy.aspx)):

Delivering on its promise to support cross-platform development, Microsoft is
providing the full .NET server stack in open source, including ASP.NET, the
.NET compiler, the .NET Core Runtime, Framework and Libraries, enabling
developers to build with .NET across Windows, Mac or Linux. Through this
implementation, Microsoft will work closely with the open source community,
taking contributions for future improvements to .NET and will work through the
.NET Foundation.

“A strong, open source, cross-platform CLR opens significant new options for
building large server-based systems,” said Brian McCallister, chief technology
officer, Groupon. “This significantly expands the choices developers have when
finding the right tool to solve their problem. I’m very excited to have access
to the quality virtual machine and tooling of the CLR without having to
completely rework our production infrastructure in order to run it!” ____

this will be of great interest to those already using the CLR as it gives more
incentive to those developers / dev shops

------
dschiptsov
First we have to see it as a standard Debian package.

Then we have to look at its memory usage, GC pauses, locking issues.

It is much easier to say than to port correctly a large, very complex code-
base to an alien platform. (Mono has been written from scratch, if I recall
correctly).

------
venomsnake
I welcome it. And still think it is 10 years too late. 2.0 was a blast and
provided higher quality of life and speed of contemporary JAVA. If they had
made it multiplatform back then the world would have been different.

~~~
wvenable
They probably didn't have the resources back then to make it multiplatform. It
would be a distraction from providing the core features of the platform. Now
that the platform is mature, it's a good time to do it.

~~~
venomsnake
You mean they could release Rotor under crap licence? But could not make .NET
multiplatform? Doubt it.

[http://en.wikipedia.org/wiki/Shared_Source_Common_Language_I...](http://en.wikipedia.org/wiki/Shared_Source_Common_Language_Infrastructure)

This was the CLI

------
notastartup
I guess it's now easier to create cross platform desktop apps using Visual
Studio 2015? Does this mean I can finally make iOS apps on Windows? I'm
downloading the 2015 preview to try it out.

------
michaelvkpdx
Oregon legalized marijuana on Tuesday. Microsoft open sources .NET today. They
say miracles come in 3. What's next?

~~~
igl
adobe brings photoshop to linux _crosses fingers_

------
iamjustasking
Repost1.

------
iamjustasking
Repost2.

~~~
jdpage
This is big news; it probably warrants two or three front-page posts. :)

------
iamjustasking
Repost...

------
iamjustasking
Self advertising by ms... What a surprise!

------
aarongray
A couple decades late to the party, but surprising nonetheless. ^_^

------
Jacky800
This is a very bad news. .NET and Microsoft must die after apppl.

------
anthony_barker
MSFT Pls fix ODF before you claim to be open!

[https://joinup.ec.europa.eu/elibrary/case/complex-
singularit...](https://joinup.ec.europa.eu/elibrary/case/complex-singularity-
versus-openness)

------
robodale
Well, fuck me and call me Shirley...this is awesome news.

------
gjvc
[http://blogs.msdn.com/b/somasegar/archive/2014/11/12/opening...](http://blogs.msdn.com/b/somasegar/archive/2014/11/12/opening-
up-visual-studio-and-net-to-every-developer-any-application-net-server-core-
open-source-and-cross-platform-visual-studio-community-2013-and-preview-of-
visual-studio-2015-and-net-2015.aspx)

True to form, the links to github are broken.

------
grandalf
After recently using Microsoft's online tools (OWA, web-based office, etc.)
and the IOS version of OWA, I'm shocked at how bad the UX has become.

Recently, there was a bug that makes the IOS OWS client replace its standard
icons with emoji. It's been over 90 days and the bug is still not fixed.

There have recently been a lot of bold decisions at Microsoft. If anything can
turn around a dying company it's this kind of approach.

~~~
grandalf
Not sure why the downvotes. I'm rooting for MS to be successful.

~~~
guardian5x
Didn't downvote you, but maybe because that sounds a bit anecdotal. Also for a
"dying company", they do very well.

~~~
grandalf
True, though it was clearly voiced as anecdotal and not pretending to be
otherwise.

MS is doing well but there have been a number of shifts in the landscape MS
has yet to successfully navigate.

------
fapjacks
Too little, too late. At the end of the day, you're still being forced to pay
a company to use their shitty software. Once you lose developers, you lose the
race.

~~~
coldtea
The thing is, it's anything but shitty.

C# is one of the best languages out there for generic enterprise work and app
development, and there's a magnigicent next gen language in F# thrown in, and
a great web framework.

~~~
fapjacks
I keep hearing that, as if people are trying to convince themselves. But the
fact is that it just doesn't exist out in the wild like its alternatives.
What's more, anybody who thinks Microsoft is embracing open source by doing
this is kidding themselves. There is only one motivation behind everything
Microsoft does, and it isn't bringing open source philosophy to its products.
Hint: That philosophy serves to undermine Microsoft's single motivation. I'm
sure this comment -- while more thorough and reasonable -- will also be
downvoted into oblivion because of the fanboys in here high on their own
dreams. Microsoft is not your friend.

~~~
alkonaut
> Microsoft is not your friend

Nor is google or Oracle. So who is? To put this in perspective you need to
look at the alternatives. Getting a free (as in speech) source
CLR/BCL/JIT/Compiler and a free (as in beer) IDE is pretty sweet.

Sure, you can do python or Node.js, but it's not covering all that you can do
now with .NET. Only java/jvm really competes on "everything except high perf"
(from enterprise to mobile to cloud etc.).

And in the java universe you may end up with Ask toolbar, Eclipse and tears on
your keyboard.

~~~
jacquesm
> So who is?

Linus Torvalds, RMS, Guido van Rossum, and a very long list of other open
source contributors who were writing open source code before it was 'hip' or
good PR.

~~~
alkonaut
Those guys do (did) some great things. However, I wasn't asking about who was
a cool developer or great OSS personality (Or a crazy person or obnoxius
mailing list asshat for that matter :) )

I meant, when it comes to choosing a platform/language/IDE for enterprise dev
or mobile/cloud dev, there are lots of options but most of the "big" ones also
come from megacorps (Oracle, Google...)

What scared people most about .NET is usually the closed nature (will they
continue to develop it? will they charge more tomorrow?) and the fact that it
only runs on windows which makes it more expensive. When it's open sourced and
available for other platforms, it's no worse than the alternatives in that
respect.

~~~
tkubacki
I think people didn't trust MS because of Android patent extortion fees (which
they still do BTW) and Mono was covered only partially by patent promise. I
still don't know if every part of Mono is "patent promise" covered (by MS).

I don't believe MS would sue some random ISV but let's assume Google today
forks Mono - will this be safe for them to use ?

------
tosseraccount
I've reverted to WIN32 because users can run a single file, bare bones EXE
without the Permission Police blocking you.

Too often users aren't allowed to install programs. A simple program that can
run on anything since XP is a good solution around Microsoft's sandbox
strategy and DLL hell and install programs are big problems.

With wine you can even run your simple EXE on Linux and Mac. Native x86 means
you run faster than these virtual machine based solutions.

~~~
ynik
Are you talking about the .NET misfeature that gave managed programs running
from network shares less permissions than native programs running from the
same network share? Because that was removed a long time ago (.NET 3.5 SP1?).

~~~
mc_hammer
i think hes saying for less dependencies, and portability, and no required
elevated users, and speed: its best to write it in straight win32. i agree and
ill chime in down here in the downvotes. i think a lot of authors like the op
and myself if we want a speedy app we have to go to win32 api only. c# is slow
and even MS doesnt use it in windows desktop mgr or IE. ex: without hw
accelleration the hearts game is unplayable on a 2ghz machine. with raw win32
api thats not a problem

