Advanced

Microsoft issues patent promise, dispels Mono legal concerns

Posted by justintime on · 81 comments
Ars Technica; By Ryan Paul
Mail this story
Print this story

This could have significant implications for Mono, an open source implementation of .NET that is developed by Novell. Mono is being adopted by a growing number of developers and has been used to build some popular desktop Linux applications, including the Banshee music player, the Tomboy note application, the F-Spot image manager, and the GNOME-Do launcher. Several of those applications are included by default in widely-used Linux distributions, such as Ubuntu and OpenSUSE.

Full Story

  Nav
» Read more about: Story Type: Editorial; Groups: Microsoft, Novell

» Get new stories by e-mail: nightly or as they are published

« Return to the newswire homepage

  Related stories
» More like this

Comments (81)

61 earlier comments in the full thread.

> Sorry if that wrecks your probability estimates.

Not really. It could happen.

> Sure you can ask the user install a runtime, but that can be problematic...

Uhm, .Net requires a runtime.

> Yes.

With meaning to be rude, if none of us are seeing it, it seems likely that you're failing to communicate it. :(

Since I've had that problem on occasion myself, I know it can happen.

This seems to be the important paragraph:

If there are no alternatives (Java) installed on Linux beside Mono, then my c# competition gains some advantage over me. If MS implements new protected parts, they will have advantage of providing early IDE implementation for these parts. The non-MS IDE users will have to wait until there are alternatives available. If would want my changes as soon as anyone has them. So who do I invest in? Right -- MS IDE.

First, as I noted above, unless you happen to be using MSLinux (if Microsoft actually does go crossplatform, I fully expect there to be a sanctioned version of Linux), then there will be alternatives available. Many of those alternatives have already been noted.

Second, yes Microsoft controls their language and IDE, and can implement changes which the competition has to react to. Again, this is a "Duh!" point. It's more of a reason not to use their products than a reason to use them.
Sander: "Python, Java, C/C++, Lisp, Erlang are all viable alternatives to C# for cross-platform development."

I think that Python, Lisp, Erlang are not comparing well to Java.

Here is where they say Python is slow: http://www.python.org/doc/essays/comparisons/ Here is where they say Python is not good for GUI: http://wiki.python.org/moin/GuiProgramming

Porting C/C++ is a pain.

The main point is that the platform that is installed by default and has the best features is the platform that I want to target. For me it is Mono, if Linux distros provide it as a default without Java on the side. Very simple.



No love for Ruby?

Geeeeeeeeeeee.

Ruby has had some, umm, issues, to be sure., but 1.9.1 provides a serious performance kick, and Rails-heads can get a good part of that with specially patched versions of 1.8.7.

As development goes, Ruby is a very sweet place to work. It's somewhere in-between and beyond perl and python. Like perl, it provides the developer a great deal of freedom. Like python, ruby is relentlessly object-oriented. Much nicer than perl's bless-this-mess approach.

Besides, rubies are prettier than pe(a)rls and they don't squeeze the stuffing out you.
> The main point is that the platform that is installed by default and has the best features is the platform that I want to target.

For Linux, that's either vi or emacs with GCC. :) But I'll agree that's not as easily made cross-platform.

> For me it is Mono, if Linux distros provide it as a default without Java on the side.

I think you're underrating Python, myself, but that's entirely my subjective opinion. However, I don't know of any major distro which doesn't provide a Java runtime. Most also provide a Python runtime.

Your criteria seem to be largely subjective, but now that you've expressed them more clearly, I agree that you're probably better off with either Mono, Java, or possibly Python.
> No love for Ruby?

I was just researching that for my last comment, and it looks like Windows is somewhat of a second class Ruby platform. I agree that it could be added to the list, but I doubt kt would consider it suitable.
"I don't know of any major distro which doesn't provide a Java runtime."

Ubuntu, Debian -- Java not there by default. There are others.

> Ubuntu, Debian -- Java not there by default.

I didn't say doesn't provide by default. I said doesn't provide.

"The Etch release was the first one to provide Sun's JDK environment without the need to download it from third-party repositories (see Java 5 and 6, Section 6.3.1)."

"To get Sun Java under Ubuntu 7.04 or later running on Intel or PowerPC platform, you should enable the Universe repository in Add/Remove programs, and install either the openjdk-6-jre package or the sun-java6-bin package."
"I didn't say doesn't provide by default. I said doesn't provide."

I know.
Slackware includes a Java runtime by default.
Quoting:I think that Python, Lisp, Erlang are not comparing well to Java.


It depends on who you ask. Funny that the guy saying Python GUI programming sucks is a Ruby fanboy. I can point to boatloads of programmers all recommending a different stack. I can get even bigger boatloads of programmers criticizing a different stack.

I have worked with many stacks. Python + Glade + PyGTK is fantastic. Python + Clutter is great too. Python + Qt.ui is apparently great as well (haven't tried yet). C + Glade + GTK is also good if you need raw speed and can develop decently in C (I developed gnome-hearts that way). In my experience, GUI programming in Java sucks. Big time. I wonder if it has improved now that it has Qt bindings.

Don't believe the people claiming Python is slow. It's pretty fast. In a complex app 95% is running in plain C anyway. Python has bindings to an ungodly amount of C and C++ libraries. Python is just the bit of glue in between. Yes, implementing number crunching algorithm Foo in pure Python runs slower than you'd expect, but a Python programmer doesn't do that. They "import Foo" and use the Python bindings to the fast C library.

You need to open your eyes and look. Your world seems to consist of a choice between Java and Mono. Well, in my opinion they're both suboptimal choices for GUI development. There are much nicer stacks out there. Did you know that there are Lisp bindings for GTK and Qt? Lisp is a brilliant language if you can wrap your head around it. I know Lisp programmers that can write a 100 line Lisp program that runs circles around the equivalent developed in e.g. Java or C# that need a thousand lines or more. Same goes for Erlang. Need a resource intensive GUI app that makes the most of a 16-core monster machine? Use Erlang.

There's more out there than Java or Mono.
> I know.

Then why the objection? It's not like firing up your package manager, changing repositories, and selecting the desired program is harder than purchasing and installing a commercial app.
jd:"It's not like firing up your package manager, changing repositories, and selecting the desired program is harder than purchasing and installing a commercial app."

I prefer not to bother users with installing dependencies. Going to a website and just running whatever is there (java applet, activex) without installing any dependencies is easy for users and beneficial to the developer. User-friendly apps are a good concept.

Are Python, Erlang, Lisp so good as far as a browser support goes?
kt: "The main point is that the platform that is installed by default and has the best features is the platform that I want to target. For me it is Mono, if Linux distros provide it as a default without Java on the side."

I also want support/backing of a serious entity like Sun (soon Oracle) to keep updating the platform. Your alternatives are not backed well.
Oh, so now we're throwing in embedded browser support? As in, the browser is the platform? Every time someone answers you, kt, you move the target.

And saying that Lisp isn't well-backed is the mark of a troll. It was the first language to present its own interpreter in less than 1 page of code, AND it could do this in the 1960's, AND it didn't require an entire room of hardware. It's one of the oldest languages still in active use. In fact, right now I'm using a window manager written in a homebrew dialect of Lisp with GTK+2 bindings.

Your constant bickering and dodging tells me you're either on Microsoft's payroll, or still in your parents' basement. My bets are on the former, based on your spelling skills and lack of 1337-5p34k.
kt gus may have a point, you mention activex as if its a good thing.
Quoting:you mention activex as if its a good thing


And it only runs on IE, which is hardly useful.
Quoting:Your constant bickering and dodging tells me you're either on Microsoft's payroll, or still in your parents' basement.


I disagree. More like a corporate 9-to-5 developer. But let's not go ad homonym here.

As for ActiveX, the sooner it dies, the better for everyone. Even Microsoft agrees.
I remember when ActiveX was first released, it was a horribly insecure technology, and was recognised as such at the time, and nothing about it has changed in all that time.
@kt: On your link about 'they' say Python is slow. In addition to the existence of Cython, f2py, and the comments made by Sander above, it is perhaps helpful to quote the first sentence, that starts with "Disclaimer" in bold:

"Disclaimer: This essay was written sometime in 1997. It shows its age. It is retained here merely as a historical artifact. --Guido van Rossum".
> I prefer not to bother users with installing dependencies.

And yet not every distro installs Mono by default, so some will have to.

> I also want support/backing of a serious entity like Sun (soon Oracle) to keep updating the platform. Your alternatives are not backed well.

OK, so now corporate backing is required, huh? Why didn't you say so in the beginning, since that eliminates something like 80% of languages from consideration. And it means I could have ignored the entire conversation. Silly me, here I thought being productive was what was important.

Post a comment

A free account is needed to post. Write your comment here first: your text is kept in this browser while you sign up or log in, and is waiting for you when you come back.

Your message:
|||||
10
Markdown: **bold**, *italic*, [text](https://link), - lists, > quotes, $x^2$ for math. Formatting help

Sign up and post (it is free)  or  Log in and post