Slashdot Mirror


.NET has Open Source Competition

jeffy124 writes: "ZDNet is reporting a story in which Ximian will announce on Monday a project dubbed "Mono" that will produce an open-source product to challenge Microsoft's .NET initiative."

46 of 346 comments (clear)

  1. Re:Is KDE steering clear of this stuff? by Anonymous Coward · · Score: 5

    > KDE's got kParts to match bonobo, but other than
    > that, it looks like they're not getting involved
    > in this stuff. Why is that?

    We try to make KDE fit the needs of our users. I
    haven't seen a single request for .NET from our
    users. In fact, I haven't seen a single person who
    could tell me what it is, what it does, what
    problem it tries to solve or for what kind of
    things it should be used.

    Feel free to fill me in on that.

    Cheers,
    Waldo
    bastian@kde.org

  2. Re:Why... by gavinhall · · Score: 5

    Posted by polar_bear:

    .NET sounds cool, but it is still vaporware. There is no real need for it yet in the OSS/FS community.

    Actually, that's exactly why it's needed - this is a shot at getting ahead of the game rather than always being behind the game. If the OSS/FS community could deploy a .NET-like technology before Microsoft even gets out of the gate with theirs, it might cut them off at the pass(port).

    It's a longshot - but if IBM, Sun, HP and the rest got behind a true open standard Web services framework, Microsoft wouldn't be able to deny its competitors an equal playing field -- which is exactly what it wants to do with .NET -- they want to deploy pieces of .NET to other OSes to lure people in to using it, but the choice bits will only work with Windows. An open .NET would allow everyone to have an equal footing. Sure, Microsoft could still play ball, but they'd lose some of their bully power.

    I think there are some Exchange replacements in the works, but I don't recall exactly what company is behind them.

  3. Re:This is folly! by Klaruz · · Score: 5

    Why? Just because Microsoft is doing it does not mean we should follow along.


    If microsoft does it, companies will use it, when lots of apps use .net and there's no hope of an opensource clone, or it's very difficult to do right, it's going to be rather hard to integrate a linux machine into your office isn't it?

    It's not about following along, it's more like we're flanking them. They want to make the internet proprietary, and if nearly every windows user goes along with them, they'll succede, and linux will be useless online. If we develop something to compete, they may not.

    Not very well stated, but I'm tired, I'm sure you'll get the idea of what is meant, other posters have said similar things.

    As to the point about java/xml, the other post in reply to your's says it very nicely... [aol]Me Too[/aol]

  4. How easy would it be to make Java port of .net ? by antv · · Score: 3
    1) Since Java already have all the functionality .NET is supposed to have (XML-RPC,SOAP,CORBA), wouldn't it be possible to write an emulation layer that would translate .NET to Java ? Like classloader that would take CLR bytecode file and load it as java class (pre-cached probably), together with some wrapper library for basic .NET functions. Using reflection API you could then provide .NET code with access to all Java class functions.

    This would make sence, since Java already have huge installed base. Surely stuff like native code would be most likely impossible to implement, but if about 70% of .NET code could be just translated to Java, many companies would probably go that route.

    2) Is .NET really a development platform ? I was under impression it's a quick hack of Java, but with more impact on parts of software being run remotedly at Microsoft.

    Like word runs on user machine for efficiency reasons, but connects to MS server and calls one or two remote functions without which Word won't work, so that MS could charge user insane amount of money every 2 weeks. Or even worse, all user documents are encrypted, each time Word runs it downloads decryption key and encryption key for the next session - that way MS would keep user as hostage and he/she won't be able to switch to let's say OpenOffice.

    IIRC, that was the goal behind .NET, and it's technology is mediocre at best.

    3) Anyone knows any reliable documentation on .NET architecture? MSDN, I think was created by NSA to exchange encrypted information, since there's no way I could understand anything if I try to read without the key ...

    Opinions are mine only and could change without notice.

    --
    Obama 2012: our incompetent asshole is slightly less of an incompetent asshole than the other incompetent asshole !
  5. Re:Interesting .NET technologies by sheldon · · Score: 3

    In terms of performance, I found this article a month or so ago that sort of compares and benchmarks Java versus C#:

    http://www.codeproject.com/useritems/sharphsql.a sp

    From that articles point of view they are comparable with C# only being slightly slower in memory access.

    It's difficult to say because Microsoft technically disallows published benchmarks.

    As far as your concern regarding security of the data. Yes being XML it is sent essentionally as text. Even if it was binary data it still would not be safe without the use of SSL.

    I don't think it's unreasonable to assume a company would wish to use SSL or perhaps a VPN or even a leased line. I also don't think it's unreasonable for Microsoft to make this assumption, certainly if they had implemented a different solution they would have been accused of subverting standards, whatever.

    For my part, I really could care less about Web Services. What I'm most interested in is how they've improved the languages and the development environment for web apps, etc.

  6. Re:Why... by sheldon · · Score: 4

    "If Free Software developers can get a version of .NET that is as good or better than the Microsoft version at the same time (or before) "

    Ahh the optimism of youth.

    When is Mozilla releasing version 1.0? :)

  7. Re:Bruce, what are you thinking? by Bruce+Perens · · Score: 5
    Open standard means that it's published, not that it achieves world domination. MS clearly intends it to be a single "log in" for all internet services. OK, that's not such a bad idea, but it's a bad idea for Microsoft to be the sole organization in charge of such a thing. If we were able to get a look at how it works, then we'd be able to say if it was any good technically or not. MS, for all of its sins, employs some good software engineers and is responsible for a number of standards that have already been incorporated into GNOME. We might well want to go along and do things their way if the main objection to doing so, their central control, was not an issue.

    As a general policy, our goal is not to destroy Microsoft, but to make a good partner of them. I'm not sure either one is possible, though :-)

    Thanks

    Bruce

  8. Re:hrm... by PD · · Score: 5

    Let's call it MicrosoftFUD. Won't it be amusing to see press releases from Microsoft denouncing some open source project called "MicrosoftFUD"?

    Seattle, WA (AP) - Microsoft Chairman Bill Gates said today that MicrosoftFUD was a cancer, and bad for business. After a round of snickers in the conference room, the obviously flustered billionaire shouted "MicrosoftFUD sucks!" loudly and stormed out of the room."

  9. Re:Why... by MAXOMENOS · · Score: 3
    Here's my take on why Mono should be ported to BSD:

    MS has already announced that they are going to port .NET to BSD. Keep in mind that BSD still has a few technical advantages over Linux as a server OS, and it has a few really big users (Yahoo! for example). So, there's a lot of money involved. It makes for Ximian to want to grab that share of support dollars.

    For this same reason (BSD as server), BSD support becomes important for expanding Mono's mindshare. Knowing MS, they will probably introduce certain "features" into .NET to make it completely and utterly incompatible with Mono. That means that any company that is using BSD for serving applications is going to have to choose between Mono and .NET for compatibility. With MS behind .NET, Mono is going to have a hard time in that market space, even if Mono is a superior product. With no BSD support for Mono, the choice is automatic.

    Ximian can't afford to screw around on this. If they get Mono right, it could be a company maker.

  10. Java? by MAXOMENOS · · Score: 5
    I'm very happy to see Ximian working on this project, and I think it will do much to help Open Source at least stay level with Microsoft. However, I am curious as to what advantages Mono and .NET would offer over Java.

    Part of my curiosity comes from the fact that Java already gives us a virtual machine (for compile-once-run-anywhere), Enterprise already gives us CORBA (as opposed to COM), and the Java language at least gives us XML tools. Also, there are already several languages ported to JVM, including Perl and Python. So, from my eyes, everything that .NET/Mono offers seems to already be present for Java. The only thing missing would be a decent set of GUI components (Swing is bloated and slow!), and Microsoft's marketing.

    Is there something I'm missing here? Is there some way in which .NET/Mono is not just a reproduction of Java's efforts?

    1. Re:Java? by TWR · · Score: 5
      Two orders of magnitude. That's roughly how much faster a desktop app that I rewrote in C++ for my employer works these days.

      Can you send me the original Java code? Absurdly slow Java code usually means a very bad programmer. I've written plenty of Java UI code and I've yet to see 10 seconds for a menu to appear.

      I'll take that over half assed, broken JDBC drivers for Sybase any time. Does this language have a SINGLE API that's not broken?

      Sun doesn't provide a Sybase driver. Sun provides a JDBC spec which driver writers can support. There are several companies which supply Sybase drivers (and I assume Sybase does, too). Blaming Sun for a broken Sybase database driver would be like blaming Microsoft because Dikatana sucked.

      I won't even mention the quality of other Java related prdoucts such as servlet containers (yes I evaluated a number of them and they are all buggy as shit) and don't get me started on the dubious benefits of EJB with it's $15000/CPU rates.

      I think you're looking at the wrong products.

      Take a look at Resin. High quality, very fast, good support, $500/box licence for a servlet engine.

      If you want EJBs, look at Orion. $1500/box for a fast EJB container that meets the J2EE spec fully. Oracle just dumped their own internally-developed J2EE app servers to licence and relabel Orion.

      Both Orion and Resin are free for non-commercial use, including commercial development. You only have to pay when you deploy.

      Oh, and Resin lets you download the source code, too. It's not quite Open Source (you can't ship modifications, I don't think), but I've yet to see the source for IIS on MS' web page...

      There are Free (Speech and Beer) J2EE environments, but Resin and Orion are a good start in looking at quality J2EE servers.

      -jon

      --

      Remember Amalek.

    2. Re:Java? by prizog · · Score: 3

      "Also, there are already several languages ported to JVM, including Perl and Python."

      ... and Scheme. But that's not really the same as the Common Language Infrastructure. The CLI is much more transparent. You can just call a Python or C# function from your Perl program as you would a Perl function. Also, they all would have access to one standard library. It's easy (I think) to port a language to the CLR, but it's hard to port non-Java languages to the JVM (as in, I met a dude who did his thesis on porting Perl).

    3. Re:Java? by janpod66 · · Score: 3
      C# code is compiled whereas most Java code is interpreted.

      That's just wrong. Both C# and Java use an intermediate "virtual machine", which can get handled by an interpreter or a compiler. Sun's JDK mostly compiles, and its native code compiler is very good, better than Microsoft's C# native code compiler.

      It would be interesting to see how GCC 3.0 compiled Java code would compare with C# code.

      While quite usable, the GCC 3.0 Java compiler doesn't generate highly optimized code in my experience. Sun's JDK seems to beat it handily. The big advantage of GCC 3.0 for Java right now is that it generates more traditional executables that start up fast.

  11. Re:Missing the point. by sammy+baby · · Score: 3

    Sorry - I have to disagree.

    SOAP is a messaging protocol based on XML, and can be parsed in any language for which there are decent XML parsing tools: hence, the already extensive SOAP tools for Perl. It's already on the standards track with the W3C. There's already a good deal of support for SOAP in Perl.

    Committing to CORBA means using a CORBA-compliant development environment, which doesn't even take into account the differences between CORBA implementations. Committing to RMI basically means you're using Java, period. Support for SOAP in a programming language, on the other hand, is only a couple of steps past a decent XML library.

  12. Re:4th alternative by HiThere · · Score: 3

    I'm not really sure that copying a marketing brochure counts as innovative. I think that I'd prefer to see some project starting from java, possibly with gcj (gjc?) as it's base. Then on a Linux, etc., platform one could freely use any language from gcc. Ditto on windows, via CygWin (XFree for CygWin is reported nearly ready, the XWindows edition of KDE is gpl, etc.)

    If things are done right, then building on the foundation of tools that already exist we should have a good implementation of most of what MS-Net promises fairly quickly, with a historic trail that far predates the latest MS gee-whiz, and a clear record of prior art.
    What would really help this would be if Sun donated, say, the JDK2.0 libraries, but I don't think that it's needed. Either Qt or GTK should be a good cross-platform library fairly soon, and the Glade GUI builder is a good start at a cross-platform IDE. ... Package that together with a good editor (Glimmer would work, except for the way that it handles tabs), add make and you have a basic development environment. (Which would, it must be admitted, require either *nix or CygWin to run.)

    The catch here is that there are a few parts that need more development. CygWin and XFree need to work together better. Preferably to the extent that KDE or Sawmill could run. XFCE just isn't sufficient. But the programs would need to run within a the standard window manager, whether on *nix, Windows, Mac, or other.

    Is this innovative enough? It's based totally on projects already in motion.

    Caution: Now approaching the (technological) singularity.

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  13. Announcment by augustz · · Score: 4
    We are pre-announcing the announcment of a product that does not exist.

    And I thought announcments were always a bit short on details. This is worse...

    1. Re:Announcment by idistrust · · Score: 4
      We are pre-announcing the announcment of a product that does not exist. And I thought announcments were always a bit short on details. This is worse...

      We apologize for the faults in the announcements. Those responsible have just been sacked.

      ...[some time later]...

      We apologize once more for the faults in the announcements. Those responsible for announcing the announcement concerning the sacking of those responsible for announcing the announcement have also been sacked.

      Mike,

      --

      --Ask a silly person, get a silly answer.

  14. Seriously, though.. by mindstrm · · Score: 3

    Because microsofts 'innovations' revolve around world domination, not technology.

    The whole .net idea isn't all that interesting in a technical sense, the idea has been out there for ages. Microsoft did not invent the idea of the ASP. Whatt's REALLY innovative is the business model they are going to try to achieve.

    The oss/hobbyist (I don't mean the oss community are hobbyists, I just didn't want to exclude the hobyists) types simply don't try to take over the world.

  15. Re:Ironic choice of names... by adavidw · · Score: 3

    'mono' is Spanish for monkey. I believe that this is the association, not "monopoly", and not "mononucleosis".

    -Aaron

  16. Re:Interesting .NET technologies by Dr.Evil · · Score: 3

    The new universal runtime takes (obviously) a very substantial amount of ideas from java and expands on them

    What exactly does it expand on?

    - You can pretty much write in the language of your choice on top of it.

    No, actually you can write in one of the supported langauges on top of it, all of the useful ones of which have corresponding projects that target the JVM. Nothing I've seen about the CLI or the CLR suggests to me that it's got anything over Java. IL is just JVM bytecode warmed over. There's nothing about JVM bytecode that inherently ties it to the Java Language - just judge from the ports of Perl, Python, Scheme, etc. As long as a language can understand the Java object model, it can compile/reconstruct JVM bytecode, thus enabling it both inherit from Java libraries and allow inheritance from its own libraries. There's no particular reason, for example, why C# can't be compiled to JVM bytecode, since the object models are easily mappable between the two.

    - C# introduces some ideas that are, imho, an improvement over java such as boxing, where for example, a native type such as an integer is transparently converted to the object type without the need for function calls.

    Wow, now there's a feature, because those wrapper types are so painful to call -

    Integer a = new Integer(int);

    Never mind that explicit object encapsulation of primitives provides some uses of its own - protecting against accidental casting comes to mind.

    - A huge cool aspect is that the runtime seemlessly allows interaction between none runtime and raw code. Thus, you can implement parts of your c++ code in the same module to run in the runtime environment and other parts to be 'raw'-- but they can still call each other without the need of special interface layers (aka JNI). Thus your handy dandy super duper collection of anyting in the world could run on top the runtime, thus being garbage collected, and the rest of your code could run 'raw' outside of it.

    Yes, but all the data types you want to transfer between your 'raw' elements and your 'safe' code have to be part of the managed extensions Microsoft has introduced, so you're still going to end up rewriting large sections of code. Besides that, all of the overhead of JNI is still there, it's just abstracted by the runtime.

    - COM developers are going to like this runtime a lot. It introduces 'revolutionary' (sarcasam) ideas such as searching in the current directory for a COM object and not requiring really gross GUIDs to load interfaces and libraries.

    So it's finally catching up to Java in this regard? Whoopee. I will admit that the abstraction layer that allows old COM objects to plug in to .NET seamlessly are nice, but there are similar projects to make it work for Java on Win32 platforms, too.

    The obvious attraction of some of these features is enough for any developer to say hmmmmmmmmmmm

    No, actually they're enough to make any Java developer say "yawnnnnnn...."

    Nobody ever said that we should be copying .NET from the ground up. What we should be doing is making it possible to talk to .NET's Web Services, which should be possible, since SOAP 1.1, WSDL, and UDDI are open protocols, and are probably going to make up the W3C XML-RPC spec when it's finished. The rest of it's fluff - I don't think anybody's going to worry about making Web Forms work on Linux, for example. C# and the CLR have nothing to do with Web Services - they're just an attempt to steal Java's thunder on WORA. The Java community is already working on Web Services APIs for Java - JAX-RPC and JAXM. That's where Open Source developers should be concentrating, too.

    The most important thing besides getting tools that speak the wire protocols is creating something to compete with Microsoft for authentication services. This is where Microsoft expects to control the whole ball of wax. If they are the only authenticators, they can charge for every transaction. If Ximian is smart, they'll release an authentication framework as soon as they can, hopefully not long after Hailstorm is in the water (since before is likely a hopeless cause at this point).

    --
    Right...
  17. Mono is obsolete by chrysalis · · Score: 4

    Everyone has stereo hardware, nowadays. And even prologic and 5+1 . And what's Ximian doing ? Trying to implement mono . It's already obsolete.

    -- Pure FTP server - Upgrade your FTP server to something simple and secure.

    --
    {{.sig}}
  18. Why... by LordNite · · Score: 5

    doesn't Ximian do something a little more needed, like make a replacement for M$ Exchange?

    .NET sounds cool, but it is still vaporware. There is no real need for it yet in the OSS/FS community. There is, IMHO, a definite need for an Exchange Server replacement, however.

    Just a thought.
    --

    --
    If it looks like a duck, and quacks like a duck, it must be a duck.
    1. Re:Why... by Unknown+Lamer · · Score: 3

      .NET is more important because it doesn't exist, not less. If Free Software developers can get a version of .NET that is as good or better than the Microsoft version at the same time (or before) the Microsoft version is released, Microsoft may end up very screwed. Why get locked into one vendor / one OS when you could use one available from multiple vendors on many Operating Systems. If Ximian can get its .NET stuff out before Microsoft does, it will have a large advantage over Microsoft. Especially if it is better. Of course, this is assuming that Ximian will have clients for not only GNU/Linux but other UNICES (especially the BSDs) and (yes) Windows.

      -------------

      --

      HAL 7000, fewer features than the HAL 9000, but just as homicidal!
    2. Re:Why... by silicon_synapse · · Score: 5

      That's just it. .NET isn't a defacto standard yet. We need an OSS competitor from the beginning. It will be much easier for a company to move to Mono rather than move to .NET and then to Mono. We have the oportunity to get a competing product out early in the game and not have to play catchup. Who knows, maybe this will give OSS the boost it needs?


      --

    3. Re:Why... by Diomedes01 · · Score: 3
      We've been lower priced copycats for sometime, and now they get to play catch-up to us by offering something already around for a higer price (why the hell would you change to tah?)
      Whenever I see something like this, my hopes for the Open Source movement and community are dashed. How is this different from the "lower priced copycatting" that occurs now? Why does everyone feel the need to take a Microsoft idea and "implement it better"? What the community really needs is a NEW idea that Microsoft hasn't had! Not until this occurs will you see Linux and the other open source packages making inroads into corporate America. An example of this is Apache; it didn't start out to "emulate" Microsoft, they just wanted to build the best damn web-serving software around. And, for the most part, they succeeded. We need more new ideas and fewer "Outlook/.NET/etc..." clones.

      One thing that I will concede is that Linux and the other Unices are in desperate need of a fully-featured productivity suite (Wordprocessing, presentations, spreadsheet, etc). Yes, yes, I know about StarOffice and Open Office and Abiword and Gnumeric... these are all decent packages, and I have real hope for OpenOffice. But the problem is that right now this is what is keeping many people from adopting Linux on the desktop.


      -------
      --
      "To hope's end I rode and to heart's breaking: Now for wrath, now for ruin and a red nightfall!"
  19. Oh Great... by rkent · · Score: 5
    I guess I can't use it; the doctor said after I had Mono in 10th grade I couldn't get it again :(

    ---

  20. Interesting .NET technologies by Vicegrip · · Score: 5

    I still think this is a huge gamble for Microsoft which is by no means guaranteed to succeed.

    .NET is a an all-encompasing mish-mash of new products and tools all designed to cater to this new "information service" economy that Microsoft thinks is the next big thing.

    From a technical point of view, here's what I like in .NET
    The new universal runtime takes (obviously) a very substantial amount of ideas from java and expands on them:
    - You can pretty much write in the language of your choice on top of it.
    - C# introduces some ideas that are, imho, an improvement over java such as boxing, where for example, a native type such as an integer is transparently converted to the object type without the need for function calls.
    - A huge cool aspect is that the runtime seemlessly allows interaction between none runtime and raw code. Thus, you can implement parts of your c++ code in the same module to run in the runtime environment and other parts to be 'raw'-- but they can still call each other without the need of special interface layers (aka JNI). Thus your handy dandy super duper collection of anyting in the world could run on top the runtime, thus being garbage collected, and the rest of your code could run 'raw' outside of it.
    - COM developers are going to like this runtime a lot. It introduces 'revolutionary' (sarcasam) ideas such as searching in the current directory for a COM object and not requiring really gross GUIDs to load interfaces and libraries.

    The obvious attraction of some of these features is enough for any developer to say hmmmmmmmmmmm

    But I have a lot of reservations. First and foremost is that the word on the street is that the common runtime is four times slower than java. SOAP transfer data by text over any connection. Thats fine as long as you run over SSL between any two servers, but the whole idea of .NET is a point to point network of servers stepping between corporation bounds and countries. Thus, instintively I think: "how much thought to security have they given". Being unwilling to accept the propaganda, for this reason alone I've adopted a "wait and see" approach.

    Trying to reproduce .NET on Linux is not something any one of the main players in our community should try to do alone. Imho, those who have the resources should try to hedge their bets a bit, but "wait and see", because, from what I've seen, I guarantee that the face of .NET tomorrow is going to radically change. If one thing is certain, Microsoft has absolutely no qualms about radically changing directions if they feel it's motivated.

    Don't bet the house on something that isn't even guranteed to be the same in six months from now.

    --
    Do not spread "09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0" over the internet, thank you.
    1. Re:Interesting .NET technologies by janpod66 · · Score: 4
      C# introduces some ideas that are, imho, an improvement over java such as boxing, where for example, a native type such as an integer is transparently converted to the object type without the need for function calls.

      That idea predates both Java and C# by decades. The Java designers surely considered it.

      Is it a good design decision to automate this? That is an open question. If you automate boxing/unboxing, most programmers won't know it's happening, and they will wonder while their code runs so slowly. It also leads to unobvious behavior when people try to use inheritance with number classes.

      A huge cool aspect is that the runtime seemlessly allows interaction between none runtime and raw code. Thus, you can implement parts of your c++ code in the same module to run in the runtime environment and other parts to be 'raw'-- but they can still call each other without the need of special interface layers (aka JNI).

      Specific compilers do that for Java as well. GNU GCJ treats C++ and Java classes interchangeably, and some commercial compilers do (or have in the past) as well. The disadvantage is, of course, that if you rely on this, your code is now machine dependent and unsafe.

  21. Re:.NET cloned or not, Microsoft wins by _Mustang · · Score: 3

    So true. What this really means then is that the OSS community needs to come up with it's own OPEN standard version of this concept as opposed to a compatible OSS version of the actual ".net". Don't play Microsoft's game, rather beat them to the punch by releasing something REAL, SOONER that is OPEN. It's far more likely that institutions would make use of this if it allowed them to leverage the internet in the same manner but at a fraction of the cost. I think the best example is SAMBA, but without the MS part..

  22. 4th alternative by Carnage4Life · · Score: 3
    So, whatever the community decides to do with .NET, Microsoft wins. That's why Microsoft has "no objections" (sic) to third-party open-source .NET implementations, and that's why most open-source public figures look like they're sitting on hot coal when the issue pops up.

    4th alternative...
    • Create an Open Source alternative to .NET and see how many people show up at the party. People are always ragging on OSS for being un-innovative and riding on the coattails of corporations, well what are y'all waiting for?


    --
  23. CORBA reeks by weisserw · · Score: 4

    I find the GNOME mindset of copying Microsoft blindly to be somewhat bothersome. I understand the mindset of wanting to re-implement everything MS does (the "me too" syndrome), but oftentimes it seems like they don't consider whether Microsoft is doing things the right way.

    Take .NET for example. One of the things it hinges on is SOAP/DCOM, which is essentially XML-based RPC. Now some in the open source community look at this and say "Hey! We can do that too! We have XML support! We have CORBA!", but I see this as a rash move. Without launching into a discussion of XML (which deserves its own rant), consider that RPC implementations are really a poor approach to network-based applications. To a newbie, RPC looks really cool, and it is in some ways a pretty neat-looking trick; just make method calls to another machine instead of your own! In practice however there is no golden rule stating that RPC, at least in current implementations, is the best way to write distributed applications.

    A local method call and a network transaction are different things and should be treated as such. When you try to transparently layer one over the other, you end up blocking, which is a great way to write poor applications which use too many threads and end up tied in resource conflicts and deadlocks. Even if you can solve the non-trivial problem of synchronization, who wants all our apps spawning 2-3 threads to do trivial network operations? Isn't it the Linux community always complaining about bloat? The more you fill up your process table, the more your machine slows down.

    Likewise, where is the error handling? If a CORBA routine returns failure, how can you be sure that the operation did not actually complete successfully on the receiving machine but that it failed to notify the caller due to network problems?

    So anyway, I am all for Ximian et. al. providing an alternative to .NET, but I would prefer that they did it the right way, with actual network protocols which have actual asynchronous non-blocking interfaces.

    --
    "Well it should be obvious to even the most dim-witted individual who holds an advanced degree in hyperbolic topology...
  24. This is folly! by DerFeuervogel · · Score: 5
    That's just it. .NET isn't a defacto standard yet. We need an OSS competitor from the beginning.

    Why? Just because Microsoft is doing it does not mean we should follow along.

    Frankly I want to know what compelling components of .Net can't be performed with existent technologies such as Java, XML, etc... I am no expert so if some one want s to answer this I would like a legit answer. I just don't seen any reason why we have to jump at something because Microsoft does it. It is distracting to the movement.

    Besides with the current broadband roll-out timetable, building server side applications/services as a main business is not smart right now, not to mentions the issues of security when data is centralized.

  25. Swing is bloated and slow? Excuse me? by e_n_d_o · · Score: 3

    Swing is pretty damn fast under the 1.3.1 Hotspot Client VM on my 333MHz Linux box. I'm not exactly writing Hello World here either... the application I'm developing needs to be able to support dragging bitmapped images around on a JLayeredPane (Imagine moving layers in Photoshop). It also scales all the images when the window is resized. I had absolutely no idea Swing and the Java2D stuff was this fast before I started writing this app. And its running on a 3-year-old computer.

    And please define bloated! I just can't imagine calling Swing "Bloated". Sure, there's a lot too it, but it all makes sense, works well together, and is considered by most folks to be the state of the art in GUI frameworks. I've also found it incredibly easy to learn.

    Yes, I used to think Java was going to be a server-only thing and that "client side Java is dead." After working on a few projects with Swing & 1.3.1, that isn't the case anymore.

    I don't mean to flame here, just had a minor problem with the one statement (I'm quite in agreement with most of whay you have to say)
    --

  26. XML Web Services! XML Web Services! XML Web... by e_n_d_o · · Score: 4

    XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services! XML Web Services!

    I got a flyer from MS today that used the word XML about 500 times. Just thought I'd offer you all a brief summary :)

    Okay, Microsoft, I'm tired of hearing about how the future of the world is XML Web Services. Yes, I think XML Web Services might be a really great idea. I don't think those of us with our heads screwed on correctly can imagine them to be the silver bullet MS does.

    Seems the PR folks over there have learned that "if it says XML, it is good", and have run with it. Personally I think C# and the CLR are much more important than XML Web Services. So is Visual Basic-dot-NET, as I've heard rumors that Microsoft has actually made a noble attempt to clean up the evil that is Visual Basic-dot-6.

    Can someone please explain to me if I'm missing the point on .NET though? I mean, all I understand is that Microsoft has three fairly cool technologies based on XML and Java-like-technologies (CLR, C#, XML services). They are grouping these together and calling them an exciting new platform, and brand-tying things together in an unheard of fashion even for Microsoft. Then we have a product "HailStorm" built on this technology, whose value I would measure with numbers less than 0. This seems like Windows DNA, take 2, only this time there actually is a little tiny bit of substance to the company-wide branding scheme.

    Of course, to me, its really all academic. There's no way in hell I'm going to tie myself to the Windows platform after working so hard to break free. Especially with IBM and Sun putting Java exactly where all the BS hype in '95 said it was going to go and farther (No, its not in your golf clubs, but its on your server).

    I just can't wait for the media to kill XML. Remember "Java is dead" or lately "Linux isn't working out?" Well, in six months, our trusty computer media will try to kill XML because its nice and trendy to do so, because it hasn't the saved world yet. While the XML technology is wonderful, I'll welcome this drivel, as XML is currently Microsoft's main buzzword. Hopefully they won't be able to adapt to the change quick enough. (And then of course in 3 years, XML will deliver on all its promises, and the media will turn around again :))
    --

  27. Re:There is already open source competition for .N by connorbd · · Score: 4

    The idea being that Smalltalk (which is what Squeak is) was doing basically the same thing as Java and .NET 30 years ago with virtual machines and GUI primitives -- the only difference is that it took Apple to throw a metaphor on the GUI and Smalltalk lost out because it didn't evolve. It's actually a somewhat legitimate comment, even if it shows the person saying it to be a bit of a fanatic...

    /Brian

  28. Good name by wishus · · Score: 3

    Since we all know free software licenses are viral, "Mono" is a good name for the project.

    wishus
    ---

  29. I don't know about you... by dieZeugen · · Score: 3

    ...but I would rather have an infectious disease than use .NET;)

    --
    - remove the primate to mail
  30. Ironic choice of names... by mblase · · Score: 5

    ...since ".Net" comes from the word "networking", while "Mono" comes from the word "monopoly".

  31. .NET cloned or not, Microsoft wins by Rosco+P.+Coltrane · · Score: 4
    The trouble with .NET and the community is this :

    If nobody creates an open-source .NET, Microsoft will be its only vendor and, because of their strong monopoly, .NET will be accepted reluctantly by everybody.

    If someone creates an open-source implementation of .NET that's compatible with Microsoft's, it will help make the .NET standard accepted, so Microsoft will sell more of it and .NET equivalents (free or not) will die disappear even faster

    If someone creates a broken implementation of .NET (or Microsoft breaks the standard afterward), people will fall back reluctantly on Microsoft's version (the original) and the open-source community's ability to create good software will be questioned by Microsoft and the Microsofties.

    So, whatever the community decides to do with .NET, Microsoft wins. That's why Microsoft has "no objections" (sic) to third-party open-source .NET implementations, and that's why most open-source public figures look like they're sitting on hot coal when the issue pops up.

    All in all, .NET is pure genius from Microsoft, a very subtle game of chicken with the community where they have no chance to lose because of they monopolistic stronghold. Pity for us ...

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  32. Why let MS write the rules here? by kstumpf · · Score: 5
    What in the world would Ximian build their own .NET-compatible version of .NET for? If there is a need for a .NET-like service, then so be it, but dammit, dont copy Microsoft's implementation, grow something native for the unix world.

    I think it behooves the Linux community as a whole to stop longing for compatibility with Microsoft (they obviously dont want it anyway) and build products that outclass theirs instead. Do you honestly think a non-bloated word processor couldnt be made that would beat out Word? Stop trying to support word's format and build your own wp app. (or maybe a better one already exists, I don't use wp apps, hooray for vi)

    Exchange seems like another product that could be bested. Exchange is a total mess! Don't try to make your mail server work with Exchange, make your mail server work better than Exchange. Most Exchange features aren't used anyway, and just add to the bloat.

    Why break your backs trying to play nice with .NET? I don't mean to invalidate compatibility for existing standards, but don't help usher in their new MS-centric efforts. Would you rather support their way... or have your own way?

  33. Re:I know what they should *really* call it... by kenthorvath · · Score: 3

    Why do people always seem to thing that Open Source = not for profit? If this was the case, Microsoft might actually have a valid point against using the GPL.

  34. There's still a problem by nexex · · Score: 3
    Even if Ximian makes a better product, adoption will be slow. For example, Sun's StarOffice has been free a while now, but I have only heard of one company that has deployed it as the standard office suite, meanwhile Microsoft can't sell Office fast enough. And if those companies did make Linux/StarOffice standard, they would have to teach everyone but the techies how to use it, which could quite possibly cost more than just buying the Mircosoft solution. It seems to me be that being computer literate is more closely equated to "Microsoft Literate". Although, if Linux was more widely adopted for mainstream use, Linux coders would probably be able to name their salary for developing internal company apps :)

    --
    Winter 2010: With Glowing Hearts
  35. I know what they should *really* call it... by Eryq · · Score: 5

    .ORG (Since .org is for non-profits).

    --
    I'm a bloodsucking fiend! Look at my outfit!
  36. no, sorry, that's not quite true by janpod66 · · Score: 3
    C#'s delegates kick ass - no equivalent in Java. (Java's interface impose a method name on the caller and a class hierarchy)

    Both "C# delegates" and nested classes were considered for Java by the designers, and they decided to go with nested classes. Nested classes are more powerful and also give you independence from method names. (As an aside, "delegates" is a misnomer for what C# provides.)

    Java's op codes prevent languages like C and C++ to target their VM, whereas .NET allows C and C++ programs to target their VM as well as efficiently as any other language.

    Microsoft's runtime does not run C or C++, it runs "managed C++", which is a subset of C++; you could do the same on the JVM. They also integrated their C++ compiler with the Java runtime so that C++ code compiled to native code can interoperate with the Java runtime, kind of like what gcc and some commercial Java compilers offer for Java, but that has all the usual disadvantages of native code.

    C#, CLR submitted as standard to EMCA. Java is proprietary. Sun may charge a fee for the use of their JVMs, libraries in the future.

    That's a red herring. There is no guarantee that Microsoft will continue to comply with their ECMA submission; they may well add extensions. In fact, since their ECMA submission lacks most libraries real programs rely on, they already have. And unlike C#/.NET, there are already dozens of third party Java implementations, several of them open source. So, it doesn't matter what Sun does or doesn't do. Sun controls the "Java" trademark and their implementation, nothing more (and it is those that Microsoft ran afoul of).

    Templates to be built into .NET virtual machine for greater efficiency and code sharing unlike GJ's template afterthought mechanism.

    Right now, they are absent. It's also unclear whether there is any significant advantage to having them built in. Any implementation that wants to share a lot of code would essentially end up with an implementation similar to Java anyway.

  37. completely agree: Gnome should go with Java by janpod66 · · Score: 5
    I completely agree. I think Ximian's decision to clone .NET is a mistake. Some specific points:
    • Lots of universities are teaching Java, and there are many programmers who know it.
    • Sun has delivered a very complete set of APIs for which we already know that they can be implemented on many different platforms; .NET/C# relies on a lot of Windows-specific APIs.
    • There are already lots of open source libraries for Java.
    • It looks like the embedded and handheld market has widely adopted Java already.
    • There already is a gcc frontend for Java, allowing you to compile standalone applications.
    • There are already several open source JIT compilers, including Kaffe, Intel's Open Runtime Platform, and OpenJIT (the latter isn't open source compliant, but maybe could become so).
    • There are already Gnome bindings for Java.
    • There are numerous Java implementations
    • Despite frequent claims to the contrary, Sun's recent JDK's (1.3, 1.4) have excellent compilers and runtimes, rivaling C++ performance.

    Also, while I think it would make sense for the Gnome project to use Java bindings to Gnome, I think Swing itself is getting a bad wrap. It's a well-designed toolkit that runs fine on reasonably fast machines. It's completely written in, and completely extensible in, Java. In a year or two, nobody will think twice about its speed. Most of the performance complaints about Swing are actually just the cost of the initial class loading and JIT compilation. Well-written Java programs structure that load process so that it doesn't bother users, but Sun is addressing these issues with each release.

    There are no significant technical differences between Java and C# as languages. C# is neither harder nor easier to compile than Java. C# is not more expressive and it isn't less expressive. As languages, they are interchangeable. The question is: given these other considerations, which is the right choice? To me, the answer is pretty clearly Java, not C#.

  38. So...er... by Violet+Null · · Score: 4

    That's wonderful. Does this mean that Microsoft has finally decided what .Net actually is?

    Or did Ximian decide for them?