5 ms·
I like C# and I'm impressed with Mono but there is just something not right. It might be irrational but knowing that Microsoft's DNA is everywhere makes me fee
by yapcguy 13y ago
I like C# and I'm impressed with Mono but there is just something not right. It might be irrational but knowing that Microsoft's DNA is everywhere makes me feel uncomfortable.
I'm also not happy that Linux is a second class citizen - there is no Xamarin Studio for Linux, the latest version of MonoDevelop is not packaged for Linux, and the latest version of Mono 3.2 is only packaged for Mac as an easy download.
The idea of writing most of my application logic in C# and reusing it on desktop and mobile platforms is appealing, but I don't want to use proprietary libraries like Xamarin.iOS and Xamarin.Android, while on the desktop I don't know how well supported GTK# and Qyoto are.
- UK-AL 13y agoYes thats how I feel. .Net has some great languages C#, F# etc but I like to feel platform independent.
- zanny 13y agoHow is Mono not platform independent? It doesn't have a lot of .net features from Windows like windows forms, but it has the entire C# language and their own implementations of xna, etc. The only concern I would have is that Microsoft might try to crush Xamarin at some point, but I wouldn't count that likely, Mono is their ticket to keep .net from looking like anti-competitive platform lock in.
- UK-AL 13y agoBecause the all the main frameworks asp.net MVC, entity framework tend to be a bit flaky using mono. The up to date versions may not work.
- WayneDB 13y agoSo, which platform independent kit do you use where every framework is kept perfectly up to date for every platform?
- bad_user 13y ago> How is Mono not platform independent? It isn't. Try developing apps with it. Then compare it with Java or Python. You'll see the light eventually. > The only concern I would have is that Microsoft might try to crush Xamarin at some point, but I wouldn't count that likely Microsoft is a beast. They are currently making more money from patents licensing for Android than they are from Windows Phone. Wishful thinking has no place in this world. That doesn't mean that Mono is any more of a risk than the alternatives. Oracle sued Google for Java, right?
- icantthinkofone 13y agoMono is Windows encroachment onto nix. It's a square peg forced into a round hole. It's trying to force fit its tools, something that works good for Windows, onto nix but *nix tools are superior in every way. I wish I could go on but I've had this argument before.
- chiph 13y agoMono is tolerated by Microsoft, and supported behind the scenes (not financially or anything, more like cheerleading) because it lets MSFT tell enterprise customers that "See: You aren't locked into Windows - there's a Linux alternative that you could use." Microsoft is not setting technical direction for Mono, and I expect that there are few (if any) Microsoft employees contributing to the project -- because of conflict of interest and IP concerns. They are very much at arms-length with regards to Mono. So far as *nix tools being superior - I would agree that they do what they are designed to very well. But don't turn up your nose at C# and the .net framework -- it's quite good, and doesn't have the Java factory factory factory issues.
- Zergy 13y agoHow is C# on Mono, a finger of Microsoft?
- jmspring 13y agoI think the issue is that the support for .NET libraries on Mono is trailing what is delivered with the MSFT tools. That said, Mono has been doing a generally good job trying to keep up and has very visible api pages about what is/isn't supported and how people can contribute.
- the_mitsuhiko 13y agoConsidering how much the Linux community showed the middle finger to the Mono guys I'm surprised there is any support left.
- bad_user 13y agoThat's a wild generalization which I don't think it's true. The "Linux community" you speak of is a loud minority of mentally deranged folks. Mono never succeeded on Linux because it always felt like a second-class citizen on the desktop and it's basically useless for server-side apps, an area where the Linux ecosystem shines. Python is popular on Linux because Python can be used for everything, including desktop apps, including server-side, including Gimp plugins. Out of all C/C++ alternatives, Python has the best bindings available. Java is also popular amongst Linux folks, because Java has always been first-class on Unix. If anything, it's Microsoft's fault. They were late in acknowledging Mono, they were late in giving a patents grant for the ECMA standards, they are always late in updating those ECMA standards (e.g. Async is not in the current version), they failed to make .NET cross-platform, they failed in fostering an open-source .NET community, they failed at PR and they continually disappoint by attacking Android or other projects with patents infringement threats (did you know that Microsoft makes more money from patents licensing to Android than from Windows Phone?)
- Helianthus 13y ago>That's a wild generalization which I don't think it's true. The "Linux community" you speak of is a loud minority of mentally deranged folks. Nicely done.
- MichaelGG 13y agoWhy is Mono "basically useless for server-side apps"? I've been running production apps, server-side, with Mono (first time was almost 10 years ago - near end of a payment processing project when some partner decided they needed a piece to run on a Linux box; just copied the exe over and done). Java and .NET both have a wide variety of libraries and bindings. I'd say that for many projects, the CLR will likely have the bindings you need. I believe there was probably a ton of in-fighting at Microsoft regarding .NET's cross-platformness. Microsoft did release an open source version of .NET (Rotor) that ran on Mac OS and FreeBSD. The CLR and BCL in general is not Windows-specific. For the most part, the runtime and core libraries are careful to realise they may operate in other environments. However, I'd imagine the argument of "why make software easier to run on non-Windows, which is a major source of revenue" won out. (After all, Sun put money into Java, which didn't seem to help their revenues, right? And then, when MS decided to adopt Java, Sun cut 'em off. Otherwise, .NET might never have had happened, at least not to the same extent, as MS would have sunk a lot of effort into J++.) The parts of .NET that are platform-specific are for good reason. Cross-platform UIs, for instance (like Java's), seem to universally suck. Meanwhile, the Mono guys are close enough to make cross-platform viable for many people. They provide a legitimate "it's not vendor lock-in" excuse. And Microsoft could always buy them if they wanted to get more involved.
- animesh 13y agoI wish someone would package this version of Mono for Debian Testing (or at least Sid). I am starting to love building things from source, but having no official documentation on how to build Mono/MonoDevelop from source the correct way really is tiring. (Installing pango/gtk etc from source really takes the juice out of you.)
- MichaelGG 13y agohttp://www.mono-project.com/Compiling_Mono http://www.mono-project.com/Compiling_Mono First result on Google for building Mono. Download the source, unpack, configure, make install. I've done this on many versions, and it seems to work just fine.
- boothead 13y agoNot my experience... I've been battling for several days now to try and get mono, monodevelop and F# installed from git (admittedly I'm trying to do that using a prefix argument to the various configure steps). My overwhelming impression is that linux simply isnt in mono's critical path anymore.
- animesh 13y agoSorry, I should have been more clear. Installing Mono from Git is quite straightforward. Whereas for MonoDevelop, I found its not that simple, at least for me. Installing dependency after dependency especially while building GtkSharp, pango has not been successful for me, yet. I go at it every few weeks with renewed interest, but at some point I find myself wading through the forums where there is little or no response to questions similar to the ones I have at that moment.
- coldtea 13y ago>I like C# and I'm impressed with Mono but there is just something not right. It might be irrational but knowing that Microsoft's DNA is everywhere makes me feel uncomfortable. (...) I'm also not happy that Linux is a second class citizen The first kind of thinking is what got us into the second kind of situation. Enjoy ...Vala.
- jnbiche 13y agoVala is an incredible project. With a relatively small number of contributors, it's turned into an easy language to work with, that can compile into shared libraries with automatic bindings for Python, Ruby, Lua, etc., and get near C performance. GTK bindings are pretty complete. With some effort (I hear -- never tried it), it can even run on Windows and OSX. Vala may be one of the most underrated Linux projects around. What's wrong with Vala?
- yulaow 13y agothe problem is that Vala is strongly linked with only gtk making impossible to use it with others ui libraries.
- yapcguy 13y agoVala looks interesting. It would appear that with GTK libraries available on Windows and OSX, a port of a Vala app should be trivial. Valac compiles to C and then GCC takes over for the rest of it. It seems like the most well-known Vala apps are managed in San Francisco by Yorba, however they're only for Linux. http://www.yorba.org/projects/ http://www.yorba.org/projects/ Any examples of cross-platform apps written in Vala?
- jlgreco 13y ago> The first kind of thinking is what got us into the second kind of situation. Or, the current situation is a vindication of that sort of thinking.
- _random_ 13y agoThey needed a GUI language and decided to go for a C-derived imperative one? That's an option I guess. At least it's not Python.
- jstedfast 13y agoThe Mono project leaves it up to the packagers for each specific Linux distro do the packaging (just like nearly 100% of all other open source projects) because they are more knowledgable about the various packaging subtleties of their own distros. GTK# is what is used to develop Xamarin Studio / MonoDevelop, so it is pretty well supported.