Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Programming Editorial IT Technology

Mono and dotGnu: What's the Point? 493

joeykiller writes "The Register features an opinion by Neil Davidson, asking 'Mono and dotGnu: What's the point?' Some of the points he raises may seem irrelevant for open source supporters (like why make a C# compiler while Microsoft's is free anyway), but others are thought provoking and maybe a little bit controversial. You may not agree with his opinions, but it's an interesting read anyway."
This discussion has been archived. No new comments can be posted.

Mono and dotGnu: What's the Point?

Comments Filter:
  • by uberchicken ( 121048 ) on Friday February 13, 2004 @11:32AM (#8269566)
    It reads like a troll. A software company directory who doesn't "get" why you need to
    bootstrap a compiler.
  • by Meat Blaster ( 578650 ) on Friday February 13, 2004 @11:34AM (#8269578)
    The points are avoiding vendor lock-in, remaining within a comfortable framework, and having the potential to extend things in your direction instead of Microsoft's.

    Although their time might be better spent in designing a true alternative to Java and C# instead of a copy that allows you to write a GNU application that runs everywhere, it's hard to fault Mono for recognizing a market niche and running with it. For example, maybe they'll make C# work on Linux embedded devices where Microsoft wouldn't go?

  • grrr. (Score:2, Insightful)

    by iMMersE ( 226214 ) on Friday February 13, 2004 @11:34AM (#8269586) Homepage
    Someone should tell him that there are other processor architectures than just x86, processors that aren't supported by MS ...
  • by Anonymous Coward on Friday February 13, 2004 @11:36AM (#8269610)
    ... doesnt always mean it makes sense from a resource point of view or from "the big picture". But that is the price with people giving up their own time.

    I, myself, am happy to have the chance to sample some of this work for free. Who am I to judge since I'm not paying?
  • by daviddisco ( 302106 ) on Friday February 13, 2004 @11:38AM (#8269641)
    We know that Slashdot posts these kind of articles as bait for the meatheads who think that being against Micro$oft makes everything they say correct. Microsoft bashing is no substitute for thinking. Be free! Think, think!
  • Motivations (Score:5, Insightful)

    by Pedrito ( 94783 ) on Friday February 13, 2004 @11:39AM (#8269653)
    As a .NET developer, frankly, I don't care what the motivations of Mono develoers or dotGnu developers are. Maybe I should be, but I'm not. I'm building an open source project in .NET and I want Linux, BSD and Mac OS X support (the latter two, hopefully with the help of SSCLI), and frankly, whatever other platforms I can include.

    I don't want to use Java. First of all, I've never used it to develop software. Second of all, every user interface I've ever seen done with Java stinks. Maybe I've been seeing bad examples, but the windows, buttons, and other contols of the Java apps I've seen have an old fashion look and feel to me and I don't care for it. My personal opinion, but for me, that counts for something.

    .NET is a really nice development environment. As much as I don't care for Microsoft, I have to admit that since I adopted C# about a year and a half ago, my production has roughly tripled, maybe more. I've never had ANY technology have that kind of impact on my development before, unless it was the reverse (making me 3 times LESS productive).

    So, whatever the motivation of Mono or dotGnu, I simply want to develop my cross-platform C# apps. That's MY motivation, and that's what matters to me.
  • One reply (Score:4, Insightful)

    by miguel ( 7116 ) on Friday February 13, 2004 @11:39AM (#8269654) Homepage
    We read with interest the piece from Neil on the purpose of Mono, and
    I wanted to clarify a few things, because Mr Neil does not seem to
    have looked at the Mono Roadmap, nor tried a recent release, since
    code signing (authenticode and strongnames is implemented, remoting is
    completed (soap, binary, http, tcp transports) and most of the
    side-by-side assemblies work is done, and will be part of 1.0).

    The Mono Roadmap (www.go-mono.com/mono-roadmap.html) contains the
    release time frames for the various features of Mono and will help him
    and other readers understand what exact plans are: no speculation, and
    no half-cooked facts.

    I am surprised by the motivation to do so little research on our
    project given that Mr Neil is the technical director of a company that
    sells .NET software; You would think that the use of Mono would help
    him reach customers using Linux, using mainframes or MacOS X.

    Mono is based on the ECMA 334 and 355 standards. We like the C#
    language and its runtime (as does Mr Neil's company) because it
    increases our developer productivity, reduces the time to market of
    our new products, this despite the fact that we do not implement Code
    Access Security, which will only be used in embedded situations, a
    segment that we are not ready to address in Mono 1.0.

    We want to improve the productivity of developers in Linux, mainframe
    and OS X developers by brining this unique platform to other
    platforms. Just like Borland, SGI, Sun and IBM provide compilers,
    runtimes and tools for other languages, we provide such a piece for
    C#/.NET.

    Mr Neil does not seem to understand why bootstrapping a C# compiler is
    important, so let me explain this in terms he would understand: it is
    important because:

    * Using C# to write a C# compiler means that it improves our
    development speed.

    * To be able to harvest the benefits of productivity of C# on
    Unix, we need a bootstrapping system.

    * It allows us to write software on Unix without and be
    self-sufficient to develop software as opposed to require
    a Windows machine to develop software, and another to run it.

    * It means that we trust our technology enough and it is solid
    to the point that a relatively complex piece of software not
    only runs, but is binary-compatible with the Microsoft
    runtime.

    Mono's objectives are not "To break Microsoft's monopoly". We do not
    define ourselves in this way, there are more important social causes
    to fight. We look at the ECMA 334/335 standards as a solid foundation
    to improve Linux and bring more software, more quickly to it, and make
    the development process more fun.

    There is a lot more about this on:

    http://www.go-mono.com/rationale.html

    And a few other interviews
  • Re:grrr. (Score:3, Insightful)

    by JohnnyCannuk ( 19863 ) on Friday February 13, 2004 @11:42AM (#8269683)
    And that's why you use Java instead of .Net.

  • by Anonymous Coward on Friday February 13, 2004 @11:42AM (#8269684)
    WINE is a bad idea in the long run. Sure, it may bring people to Linux but they are still using Windows program on Linux. They never break free of the Windows lock box even though there are (in a lot of cases) software that can do what they need natively.
  • Mono is evil (Score:1, Insightful)

    by Anonymous Coward on Friday February 13, 2004 @11:43AM (#8269703)
    I agree with quite a lot of this article myself. I've never liked Mono or thought it a very good idea. .NET is an OK platform but it exists solely to keep customers locked in to Windows. A quick look at the Longhaul previews show that it will be next to impossible to write Windows software in the future without embracing .NET. Java remains a real and viable threat to Microsoft but Mono is not since you can be sure that, should it ever become any good, Microsoft will start using spurious patents and other nastiest to kill it off. IF they weren't sure they could do this they wouldn't allow it - what otherwise was the point in spending all that money on a MS Java clone in the first place - they're not going to make any money off it directly.
  • No and Yes (Score:3, Insightful)

    by swagr ( 244747 ) on Friday February 13, 2004 @11:47AM (#8269737) Homepage
    Despite the fact that this guy doesn't seem to understand or appreciate Mono and dotGnu acheivements, I still pretty much agree with his conclusions.

    Let's look at Java. How many professional/hobby/academic Java developers use Sun's SDK?
    How many use Gnu classpath with some other VM? [gnu.org]

    Have you ever downloaded an app or library that was developed and tested under SableVM/Gnu-classpath but not Sun's SDK?
  • by Kupek ( 75469 ) on Friday February 13, 2004 @11:48AM (#8269759)
    While providing freedom of choice might be reason enough to justify a project, practical programmers could be asking: What's the point?

    Linux, maybe? Mac OS X? Free BSD? I see getting C# programs to run on other platforms as a practical purpose. Later on in the article he acknowledges that you'd be able to run these programs on Linux, but that's more like a throw away concession he makes. He plays dumb in the beginning, and makes himself look silly.

    How is making C# a standard on Windows and Linux going to hurt Microsoft?

    I think that the people behind the project have better goals than that - namely, getting a particular tool to work on Linux. People use Linux for a variety of things. It would be nice if C# - just another tool - worked under it. What's the big deal?

    There is an obvious practical purpose to getting C# programs to run on Linux. The real question, however, is will the .NET framework on Linux be good enough so that people will actually want to use it? That's a very real question, but it's not the main one he's asking.
  • by CompSci101 ( 706779 ) on Friday February 13, 2004 @11:48AM (#8269762)
    Hey all,

    It seems to me a little hypocritical to complain about MONO and dotGNU when there's also WINE out there. What's the point of getting Win32 Apps to run natively under Linux? We'll never keep up with MS adding things to the API...

    The point is, the more implementations there are of the CLR for .NET the better. I, for one, am glad to see that the effort is being made and that .NET is not going to become yet ANOTHER MS only technology. If you think Java has merit (and it does), then you can't reasonably believe that .NET has nothing to offer -- they're conceptually the same thing, skewed in slightly different directions. Java is bent more towards security, while .NET is bent more towards flexibility. It makes sense to bring it to Linux: it's useful (really!).

    On the flip side, why isn't anybody complaining that there's an abundance of Java VM implementations out there?

    C
  • by Karamchand ( 607798 ) on Friday February 13, 2004 @11:49AM (#8269775)
    You don't get it :)
    He understands all these points well. But he doesn't think it's a good thing because then everyone - even on Linux, even on embedded devices - will use .NET and whenever Microsoft feels like it (i.e. when Mono/dotGNU really have a market share) they can enfore their patents and - whooops, Mono/dotGnu have vanished.
    Regards
  • Re:grrr. (Score:3, Insightful)

    by Randolpho ( 628485 ) on Friday February 13, 2004 @11:51AM (#8269794) Homepage Journal
    But Java isn't available on all platforms either... which is why there are alternatives to Sun's Java. .NET is roughly equivalent to Java, but its promise is greater, IMO. C# is, in many ways, a better language than Java itself is, with many flexibilities Java still doesn't have. Of course.... some might not consider that "good", but that's the other great thing about .NET -- it's little more than a bytecode and an API. There are many languages that can compile into IL, allowing for greater flexibility.

    I personally very much like .NET, but I also very much want it to be cross-platform like Java.
  • Re:Free for who? (Score:5, Insightful)

    by Shillo ( 64681 ) on Friday February 13, 2004 @11:55AM (#8269840)
    Mono is currently focused on properly wrapping Gtk and GNOME functionality (pure wrappers, without going through Forms). There are already a few apps that use this, and at least one is IMHO a potential killer app (namely Dashboard).

    It goes without saying that both Gtk and Gtk# (Gtk wrapper for Mono) work on Windows, too. So you don't lose cross-platform angle, but this does show that Mono is *not* just a .NET knockoff.

    --
  • Re:grrr. (Score:4, Insightful)

    by larry bagina ( 561269 ) on Friday February 13, 2004 @11:56AM (#8269843) Journal
    C# is an ECMA standard. Sun has refused to bring java before a standards body.


    I don't care, you might not care, but for FREE/Open Source zealots it matters.

  • by meadowsp ( 54223 ) on Friday February 13, 2004 @11:59AM (#8269880)
    It's a more established framework and a lot more cross-platform.

  • by Cereal Box ( 4286 ) on Friday February 13, 2004 @12:01PM (#8269903)
    And Java is a better choice for embedded systems? Obviously native code is best, but you can't deny using languages like Java or C# on embedded systems -- the demand is obviously there. And .NET is bloated and produces "extremely bloated and slow programs"? By all accounts I've read, between .NET and Java, .NET is the one with the performance advantage (and a significant one at that).
  • The true question: (Score:5, Insightful)

    by happyDave ( 155169 ) on Friday February 13, 2004 @12:02PM (#8269922) Journal
    I think the real point that he's missing is that every project undertaken on Open Source that's a direct response to something that Microsoft is doing is a step in the direction of eliminating barriers to entry [joelonsoftware.com]. Anything that can be done on an Open Source platform that could previously only have been done in a Closed Source environment is a good thing.
  • Re:grrr. (Score:5, Insightful)

    by Baki ( 72515 ) on Friday February 13, 2004 @12:07PM (#8269972)
    Java is available on many more platforms though. And the JVM spec is open, plus all classes are available in source code.

    As for .net, only parts have been opened. Large and essential parts are closed and subject to change. Its potential for "run everywhere" is much smaller, and danger for vendor lock in much higher.

    Technically, .NET/C# is just like JVM/Java. Except that Java is older and more mature, which has advantages but also some disadvantages (cannot break backwards compatability). Many of C# extra "features" are unnecessary "syntactic sugar", some are superfluous and harmful, and those that are truely useful appear in JDK 1.5 soon. Plus, in JDK 1.5 gets features such as generics which are coming in .net as well, but at a much later time.

    You can also compile many language in JVM, but SUN has never used that as a selling point since it is pretty silly. All .net languages are fundamentally equal, just the syntax is different.
  • by Experiment 626 ( 698257 ) on Friday February 13, 2004 @12:09PM (#8269986)

    Why make another C# compiler when Microsoft already has one? That's a pretty silly argument. I wonder what Neil thinks of the redundancy among C++ compilers: Borland, Watcom, Intel, CenterLine, IBM, Sun, Microsoft, GCC/G++... More choice is a good thing, people can pick the one that best suits their needs.

    Also, whether Microsoft's C# compiler really adheres to an open standard or is eeeeeeeevil closed proprietary software is purely an academic question unless someone makes a non-Microsoft version. Then any parts of the original implementation that are mysterious black boxes, encumbered by patents, or otherwise not really so open become apparent.

  • Re:you do know.. (Score:1, Insightful)

    by Anonymous Coward on Friday February 13, 2004 @12:14PM (#8270049)
    Wuba wuba-

    The C# languages specification is only part of the ECMA AND ISO standards that have been ratified... As well something called the BCL or Base Class Library was submitted as well. Over 900 classes, namespaces and interfaces.

    Sure, Microsoft specific namespaces aren't there like WinForms, WebForms, Data & EnterpriseServices - but you would be surprised as what IS:
    - cryptography
    - networking (not just sockets, but higher level protocols as well)
    - XML
  • Re:One reply (Score:5, Insightful)

    by Pedrito ( 94783 ) on Friday February 13, 2004 @12:16PM (#8270069)
    C# exists to kill Java. By furthering C# you help Micros~1. .NET exists to kill Java. By furthering .NET you help Micros~1.

    That YOU are so sycophantic re: Micros~1 and mono is the greatest irony of all time. It would be funny if it weren't so truly stupid and truly dangerous.


    This is a variation of killing the messenger for delivering the message. Instead you want to kill the message (.NET and C#) because you don't like the messenger (Microsoft). Frankly, I think it's just as stupid as killing the messenger.

    Miguel thinks, and frankly, I agree, that .NET and C# are superior to Java in some respects. I don't think creating a .NET platform for Linux hurts Linux nearly as much as it helps.

    Has WINE helped or hurt Linux? It provides people a layer of compatibility that allows them to migrate to Linux. That's REALLY important to a lot of people, companies, and governments who are deciding which platform to use. If I'm a government agency and I have a custom tool written in C# and now we're thinking about whether to switch to Linux or continue using Windows, I have an option. Without Mono and dotGnu, my decision is made. I have to stick with Windows or rewrite my software. Which one do you think will cost me more.
  • by jaywhy ( 567133 ) on Friday February 13, 2004 @12:17PM (#8270076)
    I don't know why everyone in the open source community feels compelled in chasing behind Microsoft technologies, whether it be Mono or Wine. When I talk to people about the benefits of Linux and open source; I always seem to always mention Apache, Perl, and MySQL. I mention these products not because there based on or copied from Microsoft technology. It's because they are innovative open source projects. These open source projects do well not because there open source; but because there BETTER then there closed source counterparts.

    We shouldn't lag behind and chase Microsoft's coattails. We should instead innovate; create our own .NET our own technologies, and make them BETTER then their closed-source counterparts. That's the only way we win. You cannot win a race by chasing your enemy. You must pull ahead.
  • But Why!?! (Score:2, Insightful)

    by fozzylyon ( 696418 ) on Friday February 13, 2004 @12:18PM (#8270083)
    Neil is the type of person that would argue with the mountain climber about whether there's a reason for climbing the mountain. I imagine him saying, "But Why!?!" For all the other programmers out there, continue honing your skills and techniques even if the apps you create aren't appreciated or widely acknowledged
  • by GeckoX ( 259575 ) on Friday February 13, 2004 @12:20PM (#8270123)
    Good idea. Take something that is extremely bloated (.NET) that produces extremely bloated and slow programs (C#)
    You have proven with this statement that you have absolutely no idea what you are talking about. From someone who is actually using .NET and C#, I can say without a doubt that this statement is pure FUD. Compare the bloat and speed to Java or VB, now where are you at? Now add in all of the other features, like portability, interoperability, ease of development, wonderful design-time tools etc etc... No, it's not as tight, compact and speedy as well written C/C++/Assembly, but if you expect that well, apples and oranges really as they are totally different beasts...right tool for the job and there are a LOT of jobs that .NET and C# are an extremely good choice of tool for.
  • by GeckoX ( 259575 ) on Friday February 13, 2004 @12:23PM (#8270149)
    Good god, I thought we gave up on the 'java is great because it's portable across platforms' argument a long time ago now, because in the real world, it just is NOT true, period.

    It may be a more established framework, sort of, in a way, but it's also extremely fragmented, from framework through implementation through runtime.
  • by sirReal.83. ( 671912 ) on Friday February 13, 2004 @12:24PM (#8270164) Homepage
    What's the point of Microsoft making a web browser? They obviously can't keep up with all these standards like CSS, XSL and XUL... I think they should just quit.

    It cuts both ways.
  • by somethinghollow ( 530478 ) on Friday February 13, 2004 @12:25PM (#8270186) Homepage Journal
    I'll sum up the article: It'll be a really long an arduous task to be fully compatible with Microsoft's .Net stuff, so don't even try.

    I'm sure Linus would have gotten the same sort of flack when making Linux. But he started the project, and look what it is becoming.

    I think what the guy doesn't see is that not everyone 1) wants to program/compile on Windows (let alone whether they have a copy) and 2) wants to run this supposedly cross-platform language only on Windows.

    It's okay to have dreams of bringing down a monopoly, but the point of an open source project is to have other options. Even if it is a long and arduous task, it still has merit, and should still be done, even if for just another option.

    Now, if Microsoft makes a Linux compiler for .Net and a X11 implementation of Windows.Forms, then the article might have a little more validity. At least then there would be a choice of OSes.
  • by ncr53c8xx ( 262643 ) on Friday February 13, 2004 @12:28PM (#8270210) Homepage
    Kaffe is a free java vm, why they did it? Because now, if you want free java on ipaq, kaffe is a good solution. Also because kaffe is open source so its chanches of porting are better. And sometimes is quite faster then sun vm.

    Due to the SUN license, no distro would bundle the JDK in the Free version. Kaffe was /usr/bin/java for all of the GNU/Linux distros.

  • Re:Motivations (Score:2, Insightful)

    by gfxguy ( 98788 ) on Friday February 13, 2004 @12:30PM (#8270232)
    Not only that, but it's simple enough in Java to specify that you want the native OS look and feel.

    What this guys argument boils down to is "it's foreign to me, and since I'm already accustomed to something else, I don't really have the desire to use it."

    There's nothing wrong with that argument when you're talking about yourself, but it's not really a valid argument for or against anything in general terms. It's the same arugment people use to stick with MS Office instead of Open Office, even though for most people OO would more than suffice. Same thing with browsers.

    Personally, I love writing in Java, I think it's a great tool to teach this old the finer concepts of OO while being (mostly) platform independent.

    Looking forward to 1.5...
  • Re:you do know.. (Score:5, Insightful)

    by Waffle Iron ( 339739 ) on Friday February 13, 2004 @12:30PM (#8270233)
    that C# and IL are an international standard (at least in ECMA's eyes) and MS has absolutely no control over the language right?

    They have no control over C# standards in exactly the same way they have no control over HTML standards: Developers code to the Microsoft implementation, regardless of what the "standard" may say.

  • by GeckoX ( 259575 ) on Friday February 13, 2004 @12:37PM (#8270313)
    Glad you've found an exception to the rule.

    Note that I am in no way condemning Java, it certainly has proven to have it's place.
    However, it is not the golden bullet, the ultimate answer. It is not 42. It has lots of problems, or rather, limitations just like every other platform out there.
  • by billtom ( 126004 ) on Friday February 13, 2004 @12:43PM (#8270377)
    To my mind, it all comes down to the Office.NET test. That is, at some point in the future (if MS sticks with .NET), Microsoft will release Office.NET (the Office suite rewritten for .NET). The test is: will Office.NET run, off the shelf and without any major crashes or missing functionality, on a non-MS .NET framework.

    If it will, then I'll be happy to declare .NET as the greatest cross platform programming environment in the universe and hold the developers of the non-MS .NET frameworks up as champions of the open source world.

    But if it doesn't, then I judge the whole effort to produce non-MS .NET frameworks as a waste of the open source community's time. And while, of course, programmers are free to waste their time if they want, don't expect me to be interested and contribute.

    Now, .NET apologists might claim that the Office.NET test is unfair. That there are many useful things that can be done with a partial implementation of .NET. To that I say, you're deluding yourself. If the best that we can hope for is a two .NET world (MS .NET and the open source .NET ghetto) then, as a professional programmer, it's not something I'm going to use. My time is important enough that I'm not going to waste it trying to remember what bits of .NET I can and can't use when I use Mono or dotGNU.

    Now, as you can probably tell from the tone of my post, I've more-or-less concluded that there is basically no chance that MS will ever allow Office.NET to run on any non-MS .NET framework. They'll keep back just enough to insure that their Office cash cow continues.
  • Re:Free for who? (Score:3, Insightful)

    by Captain Rotundo ( 165816 ) on Friday February 13, 2004 @12:54PM (#8270482) Homepage
    I think this is the big advantage for Mono. I am a GNOME zealot, but was not excited about mono at all. But after seeing the ease of doing GNOME/GTK work in Mono I have to say it looks very interresting.
  • by GooberToo ( 74388 ) on Friday February 13, 2004 @12:57PM (#8270523)
    No idea why this was rated, "insightful". I suggest you go read the article again. Or, prehaps you're missing a very basic set of commonly accepted facts. Microsoft doesn't own patents on C++ technology. In fact, C++ does not originate from Microsoft. Microsoft is also not using C++ to leverage their monopoly. Microsoft would be unable to leverage C++ to leverage their monopoly because C++ isn't their technology base.

    Now that you know even the most basic of facts, perhaps now you'll understand why your posting belongs in /dev/null. It adds no value to the discussion.
  • by BCGlorfindel ( 256775 ) <klassenk&brandonu,ca> on Friday February 13, 2004 @01:00PM (#8270556) Journal
    I'm seeing alot of people complaing about how mono is a waste of time because MS can pull the carpet out from under everyone with proprietary library updates that will prevent .NET apps from running on mono. That is entirely probable and it is most likely beyond the ability of the mono team to keep up with such changes. Let alone the time to ensure .NET to mono compatability. But give the mono team some credit, don't you think they too might know this? I ask this question to all the waste of time whiners: What can MS do to stop mono to .NET compatability?

    That's right, open source projects written in mono will have the ability to run under both linux and windows, mono and .NET, without any rewrites, and with a consistent feel. That is the point. It would speed the cross-platform development of projects like Mozilla and OpenOffice that both windows and linux users alike are trying. What better way to transition users dependent on windows apps(not windows itself) to a linux environment, one app at a time. Forget about allowing the commercial .NET programs to run under mono, think about replacing them with equivalent Open Source mono apps.
  • by Tagren ( 715283 ) on Friday February 13, 2004 @01:11PM (#8270713) Homepage Journal
    They only submitted parts of the API to ECMA.
    Important stuff such as System.Windows.Forms and ASP.NET and a few more are not ECMA standards.
    That is why they will have ecma profiles for the compiler i guess.
    --
  • by ryepup ( 522994 ) on Friday February 13, 2004 @01:26PM (#8270933) Homepage
    2) wants to run this supposedly cross-platform language only on Windows.
    I think its more of a cross-language platform.
  • by Anonymous Coward on Friday February 13, 2004 @01:36PM (#8271051)
    I like the mono project but I get an icky feeling when I see .exe and .dll files. I don't know, they just make me feel icky.
  • by GooberToo ( 74388 ) on Friday February 13, 2004 @01:39PM (#8271084)
    Great quote! I love how it ignores basic facts of the players in question, not to mention the very, very long history of Microsoft's monopoly and abuse of the market.

    Nope...sure wouldn't want basic facts known, for people to make a decision.

    You can either look at history and nod knowingly, this is going to be bad for everyone except for Microsoft, or you can be a sucker and get kicked in the nuts, some time down the road, for the 1000th-time, and try your best to act suprised. While everyone around is laughing and pointing at the sheer stupidity of it all, I might add. Meanwhile, +10 points for Microsoft. Good thing you were there to help them. They sure needed help with their monopoly!

  • by Anonymous Coward on Friday February 13, 2004 @02:03PM (#8271432)
    There is no such thing as exception to a rule. Either the "exception" is bogus or the rule is.
  • Re:you do know.. (Score:3, Insightful)

    by AstroDrabb ( 534369 ) on Friday February 13, 2004 @02:05PM (#8271467)
    Someone mod parent up. I lost my ability to mod since I posted on this topic.

    This is exactly what MS will do. How freaking naive can MS weeines be? MS is all about dominating a market. Big deal if C# the language is a standard. The platform is what matters and MS controls their .Net platform. People/Companies will code to that MS .Net platform and leave all other platforms out of the game.

    If you want a cross-platform framework, use Java. If you want a cross-platform application, use wxWindows [wxwindows.org] or QT [trolltech.com]

    In the most recent Linux Magazie or Linux Journal (I don't recall which since I get both), I just read that many analysts are predicting that Linux will have at a minimum 45% of the server market share by 2007, only three years away. If Linux gets that kind of market share within 3 years, don't you think MS will continue to do whatever they can to continue to lock customers into their platform? Why do you think MS ported their C# compiler to FreeBSD over Linux?

    Again, C# the language is open and you or anyone else can create a compiler. Big deal, you can now compile your first Hello World! C# applications. The commercial C# applications will be built on .Net and limited to MS Only.

    Is there anyone out there that actaully thinks MS would develop a true cross-platform solution? Can their be a human that is that naive?

  • by Slime-dogg ( 120473 ) on Friday February 13, 2004 @02:40PM (#8271869) Journal

    ...they can enfore their patents and - whooops, Mono/dotGnu have vanished.

    Are you sure you have a good understanding of what a patent is? They are not enforceble if you do not use the same method as the one that is patented. Essentially, MS has patented certain algorithms that happen within Windows.Forms, which can be and are being rewritten in another way.

    I doubt that an API is patentable, since it isn't a method or a material object. Then again, if it were, enforcing it against Mono or DotGNU is pointless... the projects are not profiting from the sale of the technology. They don't even exist in the same marketplace as the framework, since they are completely free.

  • by strobert ( 79836 ) on Friday February 13, 2004 @03:42PM (#8272656) Homepage
    One of the things he doesn't seem to get is that he seems to think of Sun and Java as being on the good side. I actually trust Microsoft more than I trust Sun (in a twisted sort of way).

    At least with Microsoft we know they are anti-Linux. Sun trys to seem all buddy-buddy when around the Linux community but in a lot of their press releases and documentation they bash Linux.

    Shoot some people have claimed SCO is just a Microsoft pawn. And although I am not doubting Microtosft is somewhat cheering for SCO, I wouldn't be surprised if Sun wasn't doing the same.
  • by GooberToo ( 74388 ) on Friday February 13, 2004 @04:05PM (#8272907)
    I was merely stating that if people listened to the crap other people say, some great projects would not exist.

    I understood that, loud and clear the first time you said it. I have no idea how you came to the conclusions you made, based on my statements. Your assessment of my statement is far, far in left field.

    As for the "impossible" quote, I don't think anyone really cares if it's possible. Heck, let's argue it is possible. Great! Now, MS will break it to cause incompatibilities every chance they get, just like they historically have. That didn't cause enough problems. Wonder how large the pantent royalty base is going to be from the MONO user base. Why is empowering Microsoft good for anyone other than Microsoft? If you think for even a second that MONO isn't empowering for Microsoft, then we have nothing else to talk about. Seriously! Period.

    As far as stagnancy of Unix (and the creation of Linux), I think that is a narrow application.

    Hmm... I thought it was very broad. Not sure how or why you decided to narrow it and then decide that I said it.

    Your assertion would be similar to ".Net is going after Java," not development platforms in general.

    Well, I asserted no such thing, in that context. While it is very obvious that it is a Java power play by Microsoft, I'm not sure why you'd bother to slant it this way to take it out of context from the original thread.

    I'd think that since Microsoft is "betting the company" on .Net, they have bigger fish to fry than JUST Java, though I'm sure it is on the list.

    Granted. They need their next vendor/developer lock-in. Java has them on the run.

    I do agree with you about the UNIX market being stagnate, however, I do not believe Java has been. Java has continued to evolve from everything that I've read. Clearly 1.5 is getting some of the C# features, but look where they came from. That is, people that have been saying, we've been needing these features all along. If you want to say, they directly came about because .NET, fine...I don't really care. The point is, Java is fairly far from being stagnant.

  • by GeckoX ( 259575 ) on Friday February 13, 2004 @04:16PM (#8273077)
    I have already conceeded MANY times in this thread that java _can_ be very portable. Especially ServerSide java. That pretty much totally falls apart on the client.

    I'm going to ask you to 'cut the crap' as well.
    Comparing the portability of ServerSide java to the entire .NET platform doesn't make any sense whatsoever.

    Java isn't a silver fucking bullet. .NET isn't a silver fucking bullet. Why does everyone have to be so god damned absolutist? Can there not be the right tool for the job? And how many fucking times do I have to say this before you get it people?
    I am not condemning Java in any way, I'm not zealoting for .NET in any way, so why the hell are people assuming I am?

  • by t0ny ( 590331 ) on Friday February 13, 2004 @04:38PM (#8273364)
    A good strategy in any project is not tying your wagon too tightly to things you have no direct control (or even influence) over.

    It seems Mono made a mistake in relying too heavily on Wine. It may have been more work, and may have been a duplication of effort, but they would have been better off in the long run recreating what they needed to, especially if their goal is 100% compatibility. Thus, they can only attain that 100% if (and its a big IF) Wine also attains it.

  • by neilcawse ( 752299 ) on Friday February 13, 2004 @05:20PM (#8274017) Homepage
    I work on the Portable.net project
    http://www.dotgnu.org/ [dotgnu.org].

    Ive written a large chunk of the System.Drawing and System.Windows.Forms namespace. We currently have two "toolkits" that means our SWF copy will work on Windows and X Windows (using Xlib directly). Mac OS is thus supported.

    C++ improved on straight C, Java improved on C++, C# improved on Java. C# is becoming an important standard.

    We want to reuse software. We want to take existing software that is built to only run on Windows and run it on Linux or other platforms.

    We have much of the framework built to write gui applications using System.Windows.Forms. Despite peoples initial suspicions, what we have done works. We already have most controls completed, including textboxes, treeviews, comboboxes, tabcontrols etc.
    See http://pnet.homelinux.org [homelinux.org] for some screenshots

    You can now take a .net gui exe compiled in Windows, copy it to a Linux machine and run it and it works!
    The technology is excellent and open source. We need people to help us finish it off.
  • Re:Free for who? (Score:5, Insightful)

    by William Tanksley ( 1752 ) on Friday February 13, 2004 @05:32PM (#8274156)
    I understand where you're coming from, but none of these points pertain to the .NET Framework as a Framework, but rather what you can build with it.

    No. You can't build GTK# using only the Framework, any more than you could build Windows.Forms using only the Framework. You need GTK for GTK#, and you need Win32 for Windows.Forms.

    Windows.Forms is part of Microsoft's .NET Framework, and GTK# is Mono's extension to the .NET Framework to allow more portable .NET graphics.

    The Framework is the CLR and standardized API.

    Right. And Mono implements the CLR decently (minus a few features), then implements the API decently (minus a lot of features, but slowly catching up); then it adds to that API more features.

    Constructing their own GTK# language

    API, not language.

    and database access is not an extension to "The Framework" but rather an implementation of the "The Framework".

    Wow. No. Not even. Ever. Under any definition.

    Both of those things (GTK# and the database API whose name I've forgotten) are APIs that Mono developers have, that the .NET standard doesn't, but which could be added to .NET. They're extensions.

    They are NOT a implementation of the Framework. Mono is an implementation of the Framework.

    Unless they are making modifications to the CLR and/or adding new instructions to the CIL, they're not extending anything,

    Great! Then we agree -- because Mono makes modifications to the CLR (by providing more APIs), it's extending .NET.

    [they're not extending anything,] anymore than I do when I write my own application.

    But Mono isn't just a .NET application. If you wrote a reimplementation of .NET that had more capabilities in its APIs than Microsoft's, then you'd be extending .NET just the same as Mono is.

    -Billy
  • by t0ny ( 590331 ) on Friday February 13, 2004 @05:50PM (#8274393)
    As opposed to what? Only attaining it if (and it's a big IF) they attain it themselves?

    Um, ya, that was kind of the point.

    Let me draw you a chart. If Mono can acheive 100% compatibility with the code THEY are responsible for, but there are compatibility issues with Wine, than, overall, there is no 100%. Since they have no control or influence over the Wine project, they will have, at that point, reached an impasse; since Wine can improve, not improve, fold, or accept external improvements to their sources and summarily wipe their asses with them, there is nothing further Mono can do to improve their own project.

    If, however, they impliment their own windows emulation, they can make use of changes in the Wine project (giving them credit, of course), start from scratch, or whatever. But, they then have a situation in which they can acheive their goals, and have the control they require to further their main project.

    As people higher in this thread have stated, there are issues with Wine. Were this not the case, such a statement would be senseless. But all duplication of effort is not necessarily a bad thing.

    If you ever learn how to manage a project, this whole subject is basic.

  • Re:you do know.. (Score:3, Insightful)

    by GlassHeart ( 579618 ) on Friday February 13, 2004 @06:10PM (#8274665) Journal
    This is exactly what MS will do. How freaking naive can MS weeines be? MS is all about dominating a market. Big deal if C# the language is a standard. The platform is what matters and MS controls their .Net platform. People/Companies will code to that MS .Net platform and leave all other platforms out of the game.

    The question is, will these developers avoid .Net if there was no Mono? If not, then a few years from now you'll have the killer apps ported to the .Net API, and alternative OSes still won't be able to run any of them. If Mono is able to achieve significant compatibility, then a port becomes that much cheaper to make. Maybe even cheap enough to make a profit from Linux sales.

    The commercial C# applications will be built on .Net and limited to MS Only.

    MacOS X and Linux can probably claim at least 10% of the desktop market. MacOS X currently can attract major applications like PhotoShop. What if you could support twice the MacOS X market, using the same code base as your main Windows product, by avoiding a small set of Microsoft-only APIs?

    The commercial C# applications will support Linux if enough Linux users are willing to pay enough for them to justify the port. Today is port is very expensive. Tomorrow there will be more Linux users, and Mono may lower the porting cost significantly.

  • by Qwavel ( 733416 ) on Friday February 13, 2004 @06:38PM (#8274953)
    Mono & dotNet appear to be good technology, but that's already been discussed enough.

    So...

    With regard to Mono, Novell must either:

    (a) have done a complete legal analysis of what will happen when MS doesn't like Mono anymore, or

    (b) believe that Mono will always be acceptable to MS.

    The fact that they haven't told us about (a) makes me fear that the truth is (b).

    Novell, if you are listening, please tell me the answer. I'm a developer and I like the dotNet technology, but I need to know where you are going with this, and I need to now whether it is 'safe' for me (and my conscience) to use Mono and, for example, your windows forms library.
  • by Latent Heat ( 558884 ) on Friday February 13, 2004 @07:26PM (#8275349)
    Following the thread and the comments, it seems that the recommended GUI library is GTK#, Windows.Forms is being implemented for those people who want a "compatiblity mode", and given that Windows.Forms has so much Win32 in it (not only is it legacy-compatible in having a WinProc() hook for Windows messages, there are a lot of Win32 features not implemented in Windows.Forms that tempt developers into overriding WinProc()), the decision was made to go with WINE for that part.

    .NET is a bigger deal than Win32, but that part that uses Win32 (Windows.Forms) is not sufficiently abstracted from it, and if someone feels a hankering to use Win32 under Linux, WINE is the show that is in town.

  • Re:Free for who? (Score:3, Insightful)

    by ajagci ( 737734 ) on Saturday February 14, 2004 @01:29AM (#8277574)
    Windows.Forms is part of Microsoft's .NET Framework, and GTK# is Mono's extension to the .NET Framework to allow more portable .NET graphics.

    Gtk# is not an extension to the .NET framework. Gtk# is a completely different library and toolkit from .NET. Gtk# is a C# language binding of the Gtk+ library. You don't need to know .NET in order to use Gtk#.

    then you'd be extending .NET just the same as Mono is.

    Mono is a project that comprises many subprojects. One of those subprojects is .NET compatibility. But if that subproject were dropped from Mono, you'd still be left with a vibrant, useful project. It is therefore wrong to talk of Mono as "extending .NET" as if .NET was the foundation of everything Mono does.

"If it ain't broke, don't fix it." - Bert Lantz

Working...