Slashdot Mirror


Mono Project Releases Version 1.0

theblackdeer writes "Just poking around the go-mono.com Mono website; it's now the multi-colored mono-project.com. Even better, it updated before my eyes to include the 1.0 release. Screenshots are (slightly) updated, too. Mono 1.0 includes the Mono Develop IDE (based on SharpDevelop, I believe). Download now and start your GTK# engines!" Alliante adds "You can download the Release Notes and the Packages on their website."

106 of 517 comments (clear)

  1. Licensing concerns abated by SIGALRM · · Score: 5, Informative

    From the FAQ:

    The Mono project has also sparked a lot of interest in developing C#-based components, libraries and frameworks

    Yes it has. In our company's roadmap, we considered C# and Mono, but the controversial elements of their licensing (ASP.NET, ADO.NET, and Windows Forms subsets) gave us pause until we researched it further. Most of it is covered under the ECMA/ISO and the other technologies developed on top of it.

    Looks like the Mono strategy is to work around the patent issues by using a different technique that retains the API but changes the mechanism.

    --
    Sigs cause cancer.
    1. Re:Licensing concerns abated by alext · · Score: 2, Interesting

      Retaining the API is one option, but not the only one they talk about - "removing code" is another.

      If this looks like nit-picking, consider the implications for porting a Dotnet app to Mono: if 80% of API coverage is achieved instead of 100% it could easily make the port uneconomic.

      This is the problem with the Mono value proposition - it drops exponentially in relation to compatibility, and you don't have to drop far until you've brought the whole cloning strategy into question, the question being whether there was a need to make Mono any closer to Dotnet than Dotnet is to Java.

    2. Re:Licensing concerns abated by jeanph01 · · Score: 2, Interesting

      I am very afraid of Mono and its consequences. This kind of project is exactly what Microsoft need for hurting linux. Like someone from Red Hat said, the problem with Mono is that it has the backing of Novell and can become and important part of the future linux systems (in gnome, mozilla, the desktop, whatever). Until Mono has not a CLEAR and written message from Microsoft of what can and cannot be done, we can never be sure that Microsoft will not use it to make linux suffer. I don't think that the stategy of "playing around" the Microsoft patents will be something trivial in a world where Mono would be a critical part of a Linux system. I know that Mono has a lot to offer and that it fill a need that Java has not yet completely filled until now (with Sun yoyo attitude with the GPL one can never be sure). But I don't understand how the Open Source community does not reject this whole Mono project altogether until the Microsoft Damocles sword has been dealt with.

  2. beware... by Anonymous Coward · · Score: 5, Funny

    mono makes your throat sore. you get it from kissing girls. actually i guess that's not going to be a concern around here.

    forgive the interruption.

    1. Re:beware... by saforrest · · Score: 3, Funny

      ...following in Miguel's inexplicable primate fetish.

      I don't know about you, but every animal I find attractive in that way is indeed a primate.

  3. How important is this for Linux? by Pengo · · Score: 4, Interesting


    A open source RAD evironment sounds like it could have a huge impact on the number of apps that could be rolled out.

    Not so much for the enterprise market, but also for the 'shareware' class applications. Most of my Windows specific applications are programs that are from very small development houses or shareware products. (I love to support a small shareware author!) . I use open source when prudent, but I also love to use a nice simple tool that even if it costs $15-$20 bucks to a pay-pal account, is money well spent in my opinion. Maybe Linux will start to attract this development base with Mono.

    Another question, I have a pro version of C# I picked up at staples last year. Anyone know how realistic is it for me to build an application in Windows using my copy of C# and compile it and run it on mono?

    1. Re:How important is this for Linux? by chetohevia · · Score: 4, Informative

      As long as you don't use P/Invoke or too many of the Windows.Forms items, it should do fine. That's part of the whole point.

      The other thing you can do is run Gtk# on Windows for your xplatform GUI. :)

    2. Re:How important is this for Linux? by Tobias+Luetke · · Score: 5, Informative

      As long as you either use GTK# ( download ), wxNet or console mode you won't even have to recompile it under mono on linux/MacOs/whatever. You will be able to just run it.

    3. Re:How important is this for Linux? by Anonymous Coward · · Score: 2, Informative

      This would depend upon which class libraries you used. Basic apps should work fine, but those using the windows GUI APIs wil not be portable.

    4. Re:How important is this for Linux? by thelexx · · Score: 4, Insightful

      Dear God NO, the last thing I want is the Linux software landscape to degenerate into a million shitty little utilities that all want $20-40 from me for something I probably only need to use once.

      --
      "Gold still represents the ultimate form of payment in the world." - Alan Greenspan, 1999
    5. Re:How important is this for Linux? by jdh-22 · · Score: 2, Informative

      It will take a little bit of porting if you have any Windows.Forms or any windows32 API calls (hah). Most of the Windows.Forms stuff is currently handled under Wine with Mono. Changing that stuff over to GTK# wouldn't be too bad, plus they would be able to use the application on Linux, and OS X.

      I would like to congradulate the Mono developers on a job well done. Programming languages are finally becoming a little more senesible!

      --
      Every Super Villan uses Linux.
    6. Re:How important is this for Linux? by arvindn · · Score: 4, Interesting
      I cheer your voice of sanity in crowd of ideology and narrowmindedness.

      When the windows desktop market was the size of the current linux desktop market (not in terms of percentage, of course, but numbers) there was a huge market for shareware. Why doesn't that market exist for linux today?

      One reason could be the technology, which you've addressed, but IMHO the main reason is the economics. A while back, in a newsforge article I analyzed the situation and suggested how to create such a market. I was quite taken aback by the feedback, which consisted mainly of semi-coherent rants saying "shareware is teh evil!!!" and "kill anyone who dares to suggest proprietary software for linux!!" and so on, despite the fact that what I proposed would have the side effect more open source software getting written.

      The linux landscape is changing, its going mainstream, and there are a lot linux users who don't like that. I must humbly suggest to such people that you cannot do anything about it, and you should therefore either accept the reality or start moving to another system where you can feel more "l33t".

    7. Re:How important is this for Linux? by ckaminski · · Score: 4, Funny

      I recommend these people try the HURD. I hear they need a bunch of wannabee uber-geeks to test their kernel...

      Plus, you can bitch and moan all you want about it being the One True Gnu, and be right for a change.

    8. Re:How important is this for Linux? by bassburner · · Score: 2, Informative

      I developed a ASP.NET web application that connected to both Microsoft SQL Server and MySQL in Visual Studio .NET and moved it over to a Linux server for deployment without a problem. One important thing to note is that I understand that debug versions from MS .NET won't work in mono, only release versions.

    9. Re:How important is this for Linux? by Jason+Earl · · Score: 2, Insightful

      Actually Mono/GTK# is quite likely to quickly become more cross-platform than Java. There are plenty of platforms that are underserved by Sun's JVM (the BSDs, Linux on anything but x86, etc.). Because Mono is Free Software it is very likely to get ported to all sorts of niche platforms that Sun is never going to be interested in.

    10. Re:How important is this for Linux? by Dr.+Evil · · Score: 3, Interesting

      That's politics, not economics.... and Shareware's only bite is in closed-source non-free software.

      The shareware model has generally proven ineffective. It has the maintinence problems of closed source along with stunting growth of other software by leveraging the effect of "market dumping".

      I'd like to see more creative models, like the one where the author sets a "freedom" price on the software and people contribute to having the source code released under an open license. I think people would feel better contributing cash to a project if they knew it wasn't going into a vacuous pool.

    11. Re:How important is this for Linux? by 4lex · · Score: 2, Funny

      I was just thinking the same. I personally think of crosshurd. This lets you choose between several kernels (4 at the moment) for a lot of architectures (12 at the moment). This should be 1337 enough for anyone... However, if everything else fails, what about good old Plan 9?

      --
      My journal. Mainly about freedom.
    12. Re:How important is this for Linux? by EvanED · · Score: 3, Interesting

      Now I don't usually run with the hype, I usually wait until new ideas and products prove themselves. As a result I'm a late adopter of Java (by now I'd say it has proven itself) maybe I'll be a late adopter of Mono/.NET as well. For now I don't see the added value. Anyone clue me in?

      I think it's mostly the matter of extra options and personal choice. For instance, coming from a C++ background there are several things that I feel are "missing" from Java (default arguments, enums, operator overloading, etc.) and thus I am partial to using C# that has most of what's missing. A good cross-platform .Net and Windows Forms implementation would be very nice. So it adds (or at least will add once they get Winforms mostly done) another option to the "so you want to make a cross platform program" toolbox, in with Java, Qt, wxWindows, etc. Options are always good.

      (My intent is not to start a Java flame war here; this is just my opinion.)

    13. Re:How important is this for Linux? by Darth+Daver · · Score: 2, Insightful

      Hmmm, sounds like the software market for Mac OS X. Don't get me wrong, I like OS X almost as much as KDE on Linux, and I absolutely love my PowerBook. Some of these little $10 to $50 apps are also pretty cool and useful, like Konfabulator. I just find it amazing/disturbing/appalling that hardly anyone will give you the time of day on a Mac unless you pay them $20. These little apps are much cooler than the shareware I remember on Windows, but there is a much stronger FOSS community on Linux providing just about anything I need.

    14. Re:How important is this for Linux? by Dalcius · · Score: 5, Informative

      "The linux landscape is changing, its going mainstream, and there are a lot linux users who don't like that. I must humbly suggest to such people that you cannot do anything about it, and you should therefore either accept the reality or start moving to another system where you can feel more "l33t"."

      You call others narrowminded but I don't think you yourself understand the reasons people are afraid of the side-effects of Linux growth. Maybe you're just hearing a vocal minority.

      I personally cannot stand to use Windows these days, for many reasons... but one of the biggest is the environment. Under Linux searching for help, files or other content is particularly easy: the signal to noise ratio is quite good. Under Windows, it's "Sign up to download, we sell your email, now you can wait in a queue to get your file, but here are some ads to keep you busy". Pop-ups, spam, misdirection, just junk in general.

      The bottom line for this reasoning is that Linux it's just easier to find what you want (or at least a definitive 'It doesn't exit') in a shorter time. When the community starts growing, we'll see lots of wannabe applications attempting to sell themselves to you, registration keys and website registrations, hassles downloading files or getting help, etc. This is a Bad Thing.

      That all said, I'm in favor of Linux's growth and I think most people are. There aren't many true Linux users who do it just to be "leet" and I think its pretty silly to suggest that. Most Linux hobbiests do it because they are in control, in one way or another -- application choices, configurations, power, etc.

      Slapping a dogma on someone and calling them an idiot isn't helping anyone. I think the Linux community is ready to expand and wants to expand, it's just afraid of how severe the consequences might be when the 'unwashed masses' start using this stuff.

      Cheers

      --
      ~Dalcius
      Rome wasn't burnt in a day.
    15. Re:How important is this for Linux? by GrayTech · · Score: 2, Funny

      That's functionality challenged software you insensitive clod!

      --
      -- I need to remember to update my sig
    16. Re:How important is this for Linux? by Anonymous Coward · · Score: 4, Insightful

      People have to eat. As far as I can tell, food isn't free. Until food is free, I will charge a reasonable fee for the use of my software. If the software is terrible, I'll give it away - or, more likely, not even release it. I have hundreds of projects that never made it to a release-quality state and would never release them without serious effort on my part.

      So, I cheer on anyone who encourages closed-source commercial development for Linux because food isn't free and people have to eat.

      Now, before you rate this down, here's what I would recommend the Linux community seriously consider. There are a large contingent of commercial organizations who would port their Windows applications over to Linux in a heartbeat if there was a Windows-like registry for Linux with the sole purpose of accomodating commercial applications. This registry would have to be protected by the OS itself and require Linux users to generally agree to not touch it (read: crack it). I don't care how the registry is implemented, but organizations want the ability to enforce 30 day trials on systems. The lack of a centralized, secured repository of information really deters commercial interests from porting high-quality software from Windows to Linux. There's a lot of Linux software for Windows, but over 90% of it seriously lacks in an area called usability - Oh, I've heard of "great strides" being taken, but every once in a while (every 3-4 months) I'll randomly try a distro. - Fedora Core 2 being the latest since it looked pretty interesting, but the first screen I encountered after the unusable installation put the username and password entries on separate screens...this is what I mean by usability - ease-of-use, the command-line login is more usable than the new graphical login of Fedora. The result? I went back to Windows and I'll wait a few months and try another distro. or a ported application to see if usability has improved any. BTW, I'm one of those people who makes recommendations for software/hardware combinations. To win me over to Linux is going to take some serious effort in the area of usability - effort I have yet to see. (And I know my way around enough of Linux to be dangerous, so don't write me off as some idiot Windows user).

      That said, I also want every company that ports to Linux to agree that if a product goes EOL (End Of Life), the source code to that product becomes Open Source under a compatible license. This, IMO, is fair and reasonable. See, I like to develop software first and once I've finished what I've worked on, then I receive input about it. However, until I am completely done working on the source code, I don't want anyone else to touch it, let alone see it. Just like an artist, I only want people to see the finished product, not some half-finished masterpiece. It is only fair to existing users of the software to see the source code if it is no longer being developed. As such, if I EOL a product in the product line, I'll either migrate existing users to another product or open the source code. One thing I won't do is leave them hanging without options.

    17. Re:How important is this for Linux? by DaHat · · Score: 3, Insightful

      First up... I am the poster of #9571933 above, secondly, you have completely misunderstood my point... frankly I'm not surprised.

      At no time did I say or even hint at 'support' meaning 'fix'.

      Support for a Microsoft product for instance is often easy to get and exists at multiple levels. If you truly need Windows 2003 Server support at 3 am over the phone, you can get it... you just may be paying an arm and a leg for it. However if you are getting an error message which makes little sense to you, a quick search of the Knowledge Base can often resolve it.

      Because of some problems I was having today with Linux and kDevelop, I decided to start a blog about my anger. If you read the initial post you'll see a bit about what my gripe is, but I'll say it again here.

      In my experience... (note that I say 'my experience', lets not flame me for being too dumb to have a good experience or anything else along those lines), Linux an open source software have an awful support record.

      Lately I've had a number of difficult Linux related questions which I could not find answers for. No matter how many Linux 'experts' I'd ask or message board posts or Google searches I'd do... answers were never forthcoming.

      Traditionally when you pay for a product, the author of it is more dedicated to it and spends a fair amount of time on it... unlike many open source projects that begin as a hobby or other non professional project.

      I have no doubt that there is plenty of good (F)OSS, but in my experience (yes, that term again), a lot of it fails when it comes to documentation and support if the problem does not fall into very narrow bounds.

      Yes, there are plenty of "How-To" Linux books in the world, but no matter how many they are, they and all of the other "How-To's" and related documentation and tutorials in the world are worthless to me if they cannot solve my problem.

      The moral of my story is "Money = Incentive to (Succeed|Expand)", coupled with "Incentive => Higher Quality", "Higher Quality => Money"

      That is to say, paying for a product motivates the author to continue their good work and support the product and make it the best they can. In turn a higher quality has a better chance of having people be willing to pay for it.

      In my experience (and only my experience), (F)OSS tends to lack heavily in terms of usability compared to commercial products. With an income related to a product, one can often get better input (often from skilled consultants) on layout and design to ensure the application is as easy to use as possible... thus increasing the potential for further profit!

    18. Re:How important is this for Linux? by Dalcius · · Score: 2, Interesting

      Regardless you make a very good point and that is that we won't have hardware support and photoshop and good games, etc., until we get the other crap that comes with it. That said, we're not only going to get good software we want (signal), but a lot of bad software we don't (noise) as well as ads and other junk (noise).

      But I didn't say that I'd prefer to stay the way we were, I said I'm all for Linux's growth. I'm just dreading the day that I have to start dealing with this stuff in the Linux environment. A good comparison, I think, is going from the early days of the Internet to now. Sure, we have lots more content and the ability to order plane tickets, but then we have spam, pop-ups, etc.

      Hopefully the existing Linux communities (like Gentoo, which I use) will keep things together.

      Cheers

      --
      ~Dalcius
      Rome wasn't burnt in a day.
    19. Re:How important is this for Linux? by TRACK-YOUR-POSITION · · Score: 2, Insightful
      There are a large contingent of commercial organizations who would port their Windows applications over to Linux in a heartbeat if there was a Windows-like registry for Linux with the sole purpose of accomodating commercial applications. This registry would have to be protected by the OS itself and require Linux users to generally agree to not touch it (read: crack it). I don't care how the registry is implemented, but organizations want the ability to enforce 30 day trials on systems. The lack of a centralized, secured repository of information really deters commercial interests from porting high-quality software from Windows to Linux.

      You need to be modded down, not because of ideology, but because what you're saying makes no technical sense. Windows users can just run regedt32.exe to change the "centralized, secured repository of information". It's not like warez doesn't exist in Windows--in fact, come to think of it, there's way MORE warez in Windows. And now that I think about it, there isn't that much shareware in Windows OR Linux nowadays as there was in the days of registry-less. If you want a centralized, insecured repository of information, you can use the Windows registry, GConf in GNOME, or any filesystem.

      What you're asking for is DRM, and that exists in neither Windows nor Linux today, and I wish it didn't exist tomorrow. Not to mention that you're advocating a general pattern of taking control away from the user, and therein lies the path to spyware.

      There's a lot of Linux software for Windows, but over 90% of it seriously lacks in an area called usability

      You may be right, you may be wrong--but one thing is for sure--any usability advantage by Windows has NOTHING to do with shareware, which is all but gone. I think it has more to do with software being what microeconomists call a Natural Monopoly--marginal costs of producing the next item are zero

  4. I never thought I'd be chanting this, But... by cmdrwhitewolf · · Score: 4, Funny

    Go Mono, Go! I hope you infect everybody!

    (at least I'm not back in college anymore, where they would've probably hauled me away in straight jacket for chanting that...)

    --
    [Now, I'm off to lift my le... Um, visit... at another place.]
  5. .NET terrarium.. by joeldg · · Score: 4, Informative

    Wonder if that can be run in mono..
    installing to find out.

    I have been playing in GTK getting sprites and such working, but would like to use this for more portability.. .NET terriarium is damn cool
    http://www.windowsforms.net/default.aspx?tab Index= 6&tabId=42
    Check it

  6. Congratulations Mono team by Anonymous Coward · · Score: 2, Interesting

    It's been 3 years and a ton of code. Great work. Let's get those apps rolling out.

    I now await the FUD machine.

  7. ah, the joys of playing catch-up by jbellis · · Score: 4, Insightful
    ironic that this comes just days after MS announces that whidbey and the next-generation .NET framework hit beta 1.

    I'm cheering for the Mono guys but I don't see how they can avoid being also-rans in the compatibility race.

    1. Re:ah, the joys of playing catch-up by miguel · · Score: 4, Insightful

      Like Alan Cox said: "Free software is always late", followed by something like `The moment you write the first line of code you are already late: you need the feature, thats why you wrote that line'.

      Everyone of your favorite projects was late or playing catch up: Samba, OpenOffice, Gnome, Linux, glibc, gcc, gdb, CUPS.

      Miguel.

    2. Re:ah, the joys of playing catch-up by Sunspire · · Score: 4, Insightful

      First, Mono already supports a lot of the stuff coming in Whidbey (generics for example).

      Second, even if Microsoft killed their .NET effort tomorrow it wouldn't change the fact that we now have a kick-ass development platform for Linux. Everybody needs to take a look at the two software stacks of Mono.

      Wether Mono has feature parity with MS .NET is not the most important thing, neither is supporting Windows.Forms. Mono is good enough to stand on its own, as the next generation Linux development platform. Interoperability with Windows is just sugar on the top. Where do you see the Linux desktop being five years from now? I truly hope we're not still at the time writing our applications in C, as we do for the GNOME desktop now. Unless Sun steps up to the plate to release their JVM under a open soruce license, Mono is pretty much our only hope to modernize our development environment in any reasonable timeframe.

      Of course, some will say we've already got Python, or Ruby or whatever. But I say I want to program Python in Mono.

      --
      It's like deja vu all over again.
    3. Re:ah, the joys of playing catch-up by goodviking · · Score: 4, Insightful

      I used to agree with you, then I read "How Microsoft Lost the API War". The thing that really struck me was that fundamentals components of .NET will be abandonned with Avalon . This is why I now think that open source .net is a masterstroke. MS is basically asking/forcing their developer base to adopt a now open sourced, platform neutral enviornment. In a few years, they're going to break the whole model and say that to play, you have to retrain and recode major portions of your work. At that point, it becomes more cost effective to stick with mature solutions that work, not play catchup to the latest and greatest. "Look, Shinny Things" is not a better business strategy than compatibility and reuse.

    4. Re:ah, the joys of playing catch-up by WhiteWolf666 · · Score: 2, Insightful

      Really?

      Just hours of configuration changes, and admins that are coders?

      Seriously, that isn't that much of a requirement. Anyone doing enterprise level roll-outs is going to be spending THAT much time, and that many SKILLED manhours doing the rollouts anyways.

      For companies running custom apps, that they have the source to, or they desgined themselves, or that they have a good relationship with the supplier for, Mono represents a great way to move back and forth between .NET and *ix.

      Yes, it some cases, it will take some elbow grease. Hopefully (and the goal is), it will not take an insane amount of work.

      Paralell source trees are not the devil.

      And eventually, it will offer the claimed portability, either through practice or technically.

      Through practice: Enough people are using Mono to know not to use .NET features that Mono can't handle.

      Technically: Mono gets enough funding to just whoop .NET's ass.

      Personally, I think the first is more likely, and not even that difficult depending upon the context.

      --
      WhiteWolf666 an exBush supporter. All you new-school,compassionate,save the children Republicans can rot in hell
    5. Re:ah, the joys of playing catch-up by XMyth · · Score: 2, Informative

      Not abandoned exactly. There will be new APIs that supercede them for Longhorn only (Avalon/XAML) apps. What they're really trying to do is break the tie with legacy apps on Longhorn. Your System.Windows.Forms (which is really the only part that is changing with Longhorn) apps will not be using the latest and greatest API once longhorn hits, but that's about it. If you've properly seperated your UI from the rest of your app then this shouldn't be a *big* problem for most people....especially since it will work without any changes anyways.

    6. Re:ah, the joys of playing catch-up by bay43270 · · Score: 2, Interesting

      Microsoft released .net as a standard to get better support for it. It doesn't hurt them in any way because .net isn't all that revolutionary (nice, but not revolutionary). Avalon is just the Windows-specific API for creating rich UIs (like cocoa# will be for the mac). Avalon is Microsoft's way of making sure Windows will stay the preferred environment for .net development. You can still code GTK# or cocoa# applications. You could even code winforms if you want.

      If the community were smart, they would take Miguel's suggestion, and start on a competitive stack. Perhaps something that extends SVG to allow binding to .net and a friendlier syntax for reusable components.

  8. CLR is good stuff... by tcopeland · · Score: 2, Interesting

    ...it enables things like calling Ruby from C# and vice versa.

    I think someone is working on a Ruby to IL compiler, but I failed to successfully Google it...

    1. Re:CLR is good stuff... by IamTheRealMike · · Score: 2, Interesting
      Originally I thought the CLR would be great, as it's basically language interop the Right Way - as long as you remember that language interop always involves compromises, you're good.

      But it seems that the dream of great language interop has not been reached even with .NET - look at the work Nat+Trow are doing with Beagle/Dashboard. Rather than use the .NET CLR tools to reuse the Lucene search engine (written in Java), they forked it and rewrote it in C# - why?!

      I see this even more. Interop is great in theory, but lacking in practice. See how they started out by using libxml/libxslt to implement the System.Xml APIs and then abandoned that and wrote their own in C#, partly because C interop was not good enough/high performance enough.

      To be frank, I think Mono isn't going to unify anything. People will still code in C, C++, Python, C# and so on, and they will all be running in their "native" forms. So we just have yet another platform that needs to be bridged for useful work to get done (via some kind of COM-like technology).

  9. Why .NET and not Java? by Sanity · · Score: 5, Interesting
    This may seem like flamebait, but they throw the first stone right there on From the Mono website:
    ...However, the Java runtime systems commonly available on Linux lack the performance that customers demand, and Java applications do not conform to the Linux GUI look and feel.
    If these are the best justification for .NET over Java, then they are pretty weak.

    As has been pointed out ad tedium in various Java-related discussions on /. - Java's early reputation for poor performance may have been justified in the 1.0 and 1.1 days, but modern Java VMs employ sophisticated JIT compilers which gives it comparable performance to natively compiled languages like C++, and easily matches .NET's CLR performance. Java's bytecode and .NET's bytecode are not that different, the main differences are in the APIs.

    Which brings us on to the second justification for .NET over Java, native GUIs, which is even weaker. Java-Gnome does the same thing as Mono's GTK bindings, offering exactly the same GUI abilities, and SWT offers a truely cross-platform GUI API with a native look and feel on each platform it runs on.

    1. Re:Why .NET and not Java? by Kaellenn · · Score: 3, Interesting

      Unfortunately, while I agree with you on all your well-made points, I don't think your'e gonna be able to convince people who have a long-held hatred of everything to do with Java.

      Yes, it's unfortunate, but at the time the mono project started, those statements were true and were good justification. However, as time progressed and java stabilized as a great programming language, different reasons for pressing the mono issue came to the forefront.

      Like it or not, this is an MS dominated industry, and they're going to be pressing .NET, not Java. Java's a great tool and I'd love to see more java apps written, but we're never going to keep up with MS if we can't do the .NET thing too.

      In the end, it's probably good to have both; more cross-platform implementations are better. :)

    2. Re:Why .NET and not Java? by miguel · · Score: 4, Informative
      First, keep in mind that Mono also ships with a Java VM, so your Java code will work on Mono ;)

      There are other reasons, I do not claim these are all of the possibilities, but here are some more:
      • Multi-language support by design, which lets some complicated languages like C, C++ and Fortran
        to be supported without hacks.
      • ValueTypes (structs) are not supported in Java, which is a source of major pressure on the GC, an
        issue solved completely by the availability of it
        on .NET
      • Today: Generics are a VM feature, not only a language feature: which means that your list of
        ints will be a list of ints, and not syntactic sugar for a list of objects of Integer. Importan
        for performance.
      • Binding APIs for C# and .NET is trivial, which is why there is a whole industry of bindings
        for the framework: its trivial to call back into the old code base, without using JNI of any kind.
      • Some people care about the fact that it has been standardized by ECMA.
      • .NET improves upon the lessons learned from Java and were able to make changes that Sun could not
        (yes, that means that someone else can build something new now, and fix the .NET mistakes ;-)
      • Some of us prefer C# the language to Java the language.


      But feel free to use Java for doing Gnome applications, I have nothing against it, we are
      only an equal opportunity platform provider. Let the big boys fight it over.

      Miguel
    3. Re:Why .NET and not Java? by Sunspire · · Score: 4, Insightful

      Java, as it is now, is a complete non-contender in the area Mono is focusing on, which is Linux desktop apps. First, there's no complete open source Java implementation, no distribution ships Sun's JVM. Sure, you can download the JVM for free, but how can you expect us to build a desktop around the thing in that case?

      If these are the best justification for .NET over Java, then they are pretty weak.

      There's a lot of reasons to go with .NET over Java, and vice versa. This argument will likely never die. Ultimately the difference isn't that big. That said, I personally prefer the direction .NET/Mono is taking and I think Sun is foolish to be resting on its laurels. At this rate Mono will become a major force in the Linux landscape and Sun is doing nothing, five years from now they'll still be wondering what the hell happened.

      Which brings us on to the second justification
      for .NET over Java, native GUIs, which is even weaker. Java-Gnome


      Java-GNOME is completely dead. Java on the desktop, except for Eclipse and SWT (no thanks to Sun) is completely dead. GTK#/Mono has a lot of momentum and Ximian/Novell throwing their weight behind it which is not to be underestimated. Guess which is more likely to have support two years from now, Java-GNOME or GTK#?

      --
      It's like deja vu all over again.
    4. Re:Why .NET and not Java? by danheskett · · Score: 4, Interesting

      First, Java as a client tool is not popular for Windows development. .NET of course will be. And it is rapidly becoming that way. If a properly written CLR and Class Library was constructed for non-Windows, any app written to use the provided libraries would run immediately on Linux/etc. This a big thing. If any old user can run any old Windows app natively on Linux, that's good (TM).

      Second, .NET isn't as language specific as Java. Though the .NET CLR is slightly or moderatly biased towards some languages it is vastly more friendly to new compilers. The whole point of the .NET CLR is to encourage new languages to compile to it. This means that a single CLR can support any number of new languages. It means that a Ruby# program compiled to CLR on Windows will run under .NET. This is a "good thing" that Sun can't really with Java.

    5. Re:Why .NET and not Java? by Timesprout · · Score: 3, Informative

      Ive been a big critic of Eclipse in the past but 3.0 is huge improvement over their previous efforts and its not actually bad. IDEA IntelliJ is probably the best IDE out there but will cost you a few bucks. NetBeans is passable or you can download JBuilder Foundation which is quite limited, the decent versions will set you back a fair whack. I'm not sure if Oracle JDeveloper is free, it's a JBuilder spin off and from what I hear not bad. Eclipse is the pick of the freebies but I prefer to pay for the quality of IntelliJ.

      --
      Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
      What truth?
      There is no dupe
    6. Re:Why .NET and not Java? by levell · · Score: 2, Informative

      SWF=System.Windows.Forms

      --
      Struggling to find a day everyone can make? WhenShallWe.com
    7. Re:Why .NET and not Java? by LDoggg_ · · Score: 4, Interesting

      You know Miguel, you've honestly ticked me off in the past with your anti java sentiment.
      That said, this is the first time I've seen a post of yours that has some merit.

      I've been coding in Java for more than 6 years now, and I guess I've just gotten really comfortable with the language. I've also been using linux for several years now. The last few years has seen good JVMs & IDEs available for linux, so I've kept developing with it.

      Recently I've become involved in setting up K12LTSP networks. I started a project that's windows companion CD of software the students will be using at school on linux.
      I wrote the graphical installer in Java and it took me no time at all. Its XML based and exactly what I wanted.
      One problem, I have to bundle a vm to make it autorun.

      Your mono stuff looks like it can do this and totally open source. I'll have to get use to some new libraries and what not, but if this works out, I'd be really psyched about your project.

      Anyway, keep up the good work, and congrats on 1.0 !

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    8. Re:Why .NET and not Java? by Coward+the+Anonymous · · Score: 2, Informative
      --
      -- Jason
    9. Re:Why .NET and not Java? by mrtrumbe · · Score: 4, Interesting
      Java-GNOME is completely dead. Java on the desktop, except for Eclipse and SWT (no thanks to Sun) is completely dead. GTK#/Mono has a lot of momentum and Ximian/Novell throwing their weight behind it which is not to be underestimated. Guess which is more likely to have support two years from now, Java-GNOME or GTK#?

      Smells like trolls 'round these parts.

      Here are sourceforge's statistics on GTK#.

      Here are sourceforge's statistics on Java-Gnome.

      What criteria are you using to proclaim Java-Gnome dead? From the statistics on sourceforge, it seems that there is interest in the project and far more reports of bugs than for GTK#.

      I agree that Sun hasn't been as cooperative as I'd like to see in terms of Java's relationship with the open source community. However, I think you are making some baseless assertions about the current and future relevence of projects supporting Java in the open source arena.

      Also, I think it is laughable that the mono team claims "Java applications do not conform to the Linux GUI look and feel." Which look and feel is that, exactly? KDE? Gnome? FVWM? The majority of Linux apps that I use do not conform to any single look and feel. OpenOffice? Looks like Windows 95. Mozilla/Firefox (by default)? Completely different (though skinable). Sure, Mono, with GTK# looks like a Gnome app, but that really isn't going to help a KDE or FVWM user, is it?

      Much of the anti-Java sentiment around slashdot seems to originate from rabid pro-open source ideology. I wish people would evaluate these technologies on their capabilities and applicability rather than whether the companies supporting them conform to their particular ideology.

      Taft

    10. Re:Why .NET and not Java? by GlowStars · · Score: 5, Informative

      ...no distribution ships Sun's JVM...

      WRONG! SuSE does.

    11. Re:Why .NET and not Java? by iwadasn · · Score: 5, Insightful


      That still seems a little weak. Most of the things you are trying to solve are either vacuous, or simply problems that should be solved at the VM layer without causing the users any additional pain.

      Multi-Language: Please, they're all the same language designed to look like other languages. Java has multi language support to (Jython). This is not a fundamental reason.

      Value Types: Use escape analysis and a better GC. This is a hack so programmers can give hints to a stupid GC.

      Generics: Where are the C# generics? The version we're using at work doesn't have them. Java Generics will arrive first, but be worse off in the beginnnig. C# will arrive later, and initially have a better implementation. Java should fix their implementation in a future revision of the VM and bytecode standard.

      Bindings: Spin the wheel and see which function gets called today. Not much needs to be said here, but there's something to be said for the precision of the java bindings as opposed to the pattern matching of the C# bindings.

      ECMA: And patented by Microsoft. Fact it, Microsoft will embrace and extend it, or threaten lawsuit to keep their monopoly. The ECMA won't do jack about that.

      C# language: The only even marginally valid claim. However, the lack of checked exceptions and sub-standard stack traces are pretty nasty. I don't think C# is a step up in any meaningful way, unless of course you like writing crappy code and just can't bear to know which exceptions you should be worried about. If that's the case, VB6 will always be waiting.

      I'm not saying that the C# people are stupid, or anything like that. But this whole endeavor seems to demonstrate a monumental lack of foresight. Why fragment the world even further rather than uniting behind a standard the Microsoft doesn't own?

    12. Re:Why .NET and not Java? by chill · · Score: 2, Interesting

      Slackware and SuSE both ship the Sun JVM.

      And Sun's 1.4.2 also has:

      Swing
      Release 1.4.2 includes many bug fixes and these major enhancements:

      * The Microsoft Windows XP look and feel. If you are using the system look and feel on the Windows XP platform, Swing components now match the platform.

      * The GTK+ look and feel. You can now customize your look and feel to a particular theme.

      Which means the look/feel argument for .NET is moot.

      -Charles

      --
      Learning HOW to think is more important than learning WHAT to think.
    13. Re:Why .NET and not Java? by mingot · · Score: 3, Insightful

      Structs? Have you heard of classes? .NET included structs which was nice but its only there for compatibility with older languages like C. You shouldnt use them for straight .NET development. Its up there with continueing to use pointers. If you have to have those sort of things why even use .NET?

      Huh? Structs are there to give you stack based storage outside of the GC so that if you are creating and destroying thousands, hundreds of thousands, or millions of variables the GC doesn't have to constantly collect. Even though gen zero collections are fast it's still an issue.

      Generics exist in Java. They existed as open source projects and are now part of the language (see version 1.5). Ive heard this argument in the past: .NET has this feature and Java doesnt. Apparently no one gave thought to the idea that Sun would just put out a new version with that feature included also.

      You obviously don't understand the distinction he was making. Let me try harder for you. In Java generics generate the same old code as always and are really just a fancy way of letting you add type safety at compile time. In .NET they are actually part of the backend. The VM. In Java, in the VM they're all just boxed objects. And lots of typecasts. Shitty. Google around for better explainations.

    14. Re:Why .NET and not Java? by dragmorp · · Score: 2, Insightful

      I've never seen someone so misunderstand a post.

      1. He meant multiple computer language support, not internationalization.

      2. Structures are useful because they are value types, not references, which allows for some optimizations.

      3. He mentioned that Generics exist in Java. He said they were a VM feature in the CLR which leads to very dramatic performance benefits (no casting behind the scenes).

    15. Re:Why .NET and not Java? by cakoose · · Score: 2, Interesting
      • ValueTypes (structs) are not supported in Java, which is a source of major pressure on the GC, an issue solved completely by the availability of it on .NET

      Since you know something about JIT compilation and GC, I'd like to ask you about the actual benefit of value types. At first I thought they were great but now I'm not so sure. There appears to be a couple ways to solve the GC and performance issues without creating a user-visible partition of the type hierarchy (and the potentially error-inducing difference between copying references vs. copying values).

      Escape analysis can be used to figure out when an object stays within the bounds of a single thread's stack. That way, many objects can be allocated on the stack automatically.

      Also, if the compiler can detect that a class is immutable, then the it would be free to copy instances around when they're sufficiently small (instead of passing a pointer).

      Those two optimizations seem to be feasible, though the first probably requires intra-procedural analysis to perform well. Are there benefits to value types that these two optimizations don't nullify?

      On the topic of Generics, the CLR implementation has a lot of advantages over the Java implementation (I especially like the runtime specialization for value types). However, currently Java has the convenient notion of covariance and contravariance of type parameters (though they chose really, really bloated syntax). This is one of those features that I expect will make it into the CLR pretty soon (or maybe it'll stop at the langauge level) because MS seems to have no problem adding features, which, as a side benefit, also pushed Sun to start adding stuff!

    16. Re:Why .NET and not Java? by Pxtl · · Score: 2, Interesting

      I think the problem people don't realise is that "Object" in modern languages means something different from "Object" in C++. In C++ an object was just a struct with extra optional features like privacy, inheritence, etc. In Python, .NET and Java, an object is part of the garbage collector.

      For example, in Python (the only interpreter I know under-the-hood), a simple int has to deal with refcounting, next and previous objects in the garbage collection chain, and a host of other issues because it is an object.

      Am I understanding this right: In the context of these newer languages, the feature that is desired is the ability to have local, generic structures rather than full blown "objects" to avoid all this overhead. So that a struct is just a shorthand collection of a few primitives?

    17. Re:Why .NET and not Java? by Sunspire · · Score: 4, Insightful

      Multi-Language: Please, they're all the same language designed to look like other languages. Java has multi language support to (Jython). This is not a fundamental reason.

      The big difference is that .NET/Mono is actively moving towards a general purpose VM whereas the JVM is not. Sun will officially support other languages when... well never. Today, you've got languages like Python/Ruby/Haskell being targeting at the .NET CLR, but look at the big picture. What about CLR version 2, 3, 4... ? The potential is huge. Parrot is the only thing even remotely like it the open source world, and that's only for dynamic scripting languages at the moment. Don't count out a Parrot to Mono CLR compiler yet either! The multilanguage feature has the potential to unify all the minor languages to a single CLR. Right now we're writing GTK bindings for C, C++, Python, Ruby, Perl, etc. With GTK# (despite the name, it's more like GTK-Mono IMO) every language targeting the CLR gets up to date bindings!

      Where are the C# generics?

      In Mono.

      --
      It's like deja vu all over again.
    18. Re:Why .NET and not Java? by Armchair+Dissident · · Score: 5, Informative

      I now have to use C# at work as our company has decided that this is what Microsoft's future is invested in. I've had a love-hate relationship with it, and my opinion of .NET is possibly clouded by my use of C#, rather than a criticism of .NET, but anyway:

      • Multi-language support by design is a hack. It's not real. C++, for example is not C++ as I, as a C/C++ hack, know it. It's a thing that is something like, but not quite C++.
      • structs as ValueTypes are a pain in the arse. They have the same syntactic semantics as classes but have no similarities. Because of this
        flibble foo = new flibble();
        flibble bar = new flibble();

        foo==bar"
        means two completely different things depending upon whether flibble is a struct or a class. Which has given me endless problems with DateTime.
      • Generics are not yet a standard feature of of .NET CLR. This is the reason given by Microsoft for not including generics as part of C#.
      • EMCA standardisation is a joke if the libraries can be butchered. The language is the least of the problems when portability is concerned. The precise way in which the libraries work and interoperate is the big problem.
      • .NET - as far as I can see - was simply a way of touting a "write once, run anywhere" platform, without actually proving the case. C# takes some things out of Java, and some out of C++, but never asks the question "why are these here". Operator overloads without templates, and without a good distinction between references are pointers spring to mind. (what does 'foo == bar' do?)
      • Some prefer C#, but I can't see why...
      Sorry Miguel. Mono is a worthy project, and I have it running on OS/X - it's impressive from that point. But as .NET stands, and especially C#, Microsoft got it hideously wrong.
      --

      The ways of gods are mysteriously indistinguishable from chance.
    19. Re:Why .NET and not Java? by mingot · · Score: 2, Interesting

      Wow, you ARE clueless. Are you having the same conversation as anyone else here?

      Most API's in both Java and .NET wrap native code that takes care of most hardware and memory intensive operations such as guis.

      Which is not the point. These operations still take up memory in your address space that is managed by the garbage collector. And since a paint routine is not a usually a single line the chance that the GC could decide to collect in the middle exists.

      For short lived objects where there is no API its best to reuse objects rather than create new ones since in both languages the allocation process hits performance much worse than the deallocation process.

      I can't speak for Java, but for CLR apps you are dead wrong. Allocations are made linearly from a contiguous chunk of memory (managed heap) that the GC holds. You ask for MyClass and it gives you the next availible slot of memory in it's heap, and updates the startpoint to initial + sizeof(MyClass). Hell, its faster than a C runtime call to malloc because it doesn't have to go sniffing around for a large enough block.

      The perf hit comes when it's time to deallocate. Remember, though that deallocations are non-deterministic and happen when the GC needs more memory. So although you will not see the performance hit when an object goes out of scope or when you call it's finalize method you still don't have a perf hit. Only when the GC cleans house. At this point (which should still be considered deallocation, even though it's usually an allocation that prompts the event) things slow down. All object trees have to be walked and those that are unreachable are collected and the managed heap compacted.

      What value types do is bypass the garbage collection. Never adding items to it. Making it so that the collection phase does not need to happen nealy as often. They are also faster to allocate and take NO TIME to deallocate.

      Not a clue on how the Java GC works, so instead of making assumptions I'll just leave it at that.

      Java 1.5 (now at beta 2) generics are a part of the VM. It also supports auto unboxing like .NET.

      *SIGH*. No, they are part of the COMPILER. Which generates a load of shit bytecode with tons of typecasts that ARE bad for performance. See, the VM RUNS the bytecode. The Compiler MAKES the bytecode. In .NET it is a change to the compiler AND the VM. The VM knows what they are. It really does hold the collection of objects as the native type. It is NOT ignorant of the fact that is dealing with a colletion of said native type, as the Java VM IS.

    20. Re:Why .NET and not Java? by mingot · · Score: 3, Informative

      Give an example of where this is needed.

      Um, anywhere that a method gets called continuously that has a large number small local variables (int, double, etc) that are used in calculations. My choices are to either pass in a re-usable object (which sucks when you have a method with 10+ local doubles) or to make the thing class level (if the method happens to be in the calling class) or to stash it in some static class that both of my classes now need to know how to interact with. Pretty much every option sucks, save defining the thing where you need it. Hell, if I was programming Java performance would have to suffer and I would not think twice about it (unless I *had* to) simply to avoid the maintenance headeaches of the alternatives.

      Also note that structs can be created, manipulated, and destroyed with Java with JNI and CNI.

      The entire point of using structs in .NET is performance and your solution is to wrap them with JNI which has its own overhead? Maybe you're still stuck on the idea that the only reason they exist is to gived pinned memory which can be used to interoperate with older C API calls. False. If that were the case NONE of the native types would be value. The value type would be something esoteric that was only dragged out when you needed to P/Invoke.

      Java 1.5 has auto unboxing. Same thing .NET has. This was added on top of JSR-14. You are probably looking at the original generics design for Java 1.5 on googled pages. Its been updated.

      It's quite possible that my general ignorance about most things Java is showing. I'll dig into this and see how it compares to the (admitadly date) materials I have read.

    21. Re:Why .NET and not Java? by iwadasn · · Score: 3, Insightful

      Here's a good one everyone.... When does if(null == blah) { return true;} throw an exception? When the guy writing a class has decided to override == and not really considered nulls. Wow, isn't that grand. Now we can get a null pointer exception when we're trying to prevent a null pointer exception. So now there's no possible way to avoid throwing the exception, and the exceptions in C# are slow too. THANKS MICROSOFT!!!!! Operator overloading should be strictly forbidden. Here's another question for all you operator overloaders.... Does your + operator commute with your - operator? Does you * or / operator distribute over + or -? If you don't know the answers to these questions, you should never overload operators.

  10. But by Fooby · · Score: 2, Insightful
    Is any besides mono developers user mono yet? The screenshots are pretty but why haven't I seen a single mono framework or C# app come to the linux desktop in any of the major distributions?

    But C# hasn't exactly exploded on the Windows desktop yet either so I suppose it's premature.

  11. Try MonoDevelop by Anonymous Coward · · Score: 5, Informative

    For those looking for an IDE, try out MonoDevelop 0.5. It doesn't have a gui builder, but has code-completion(intellisense), class browser, project management, etc... It's a port of Sharpdevelop.

  12. Shifting ABI's by IGnatius+T+Foobar · · Score: 3, Insightful

    I'm still a little skeptical about using a Microsoft-owned technology on Linux, but perhaps this is just what we need to get ISV's on board. I'm going to guess that the "Mono ABI" is going to be less of a moving target than the "Linux ABI" has been. That would be very ironic.

    --
    Tired of FB/Google censorship? Visit UNCENSORED!
  13. Debate all you want by Stevyn · · Score: 4, Insightful

    While people can debate about this, I do think it's something important for linux. It says that no matter what one company can do to try to make their development platform closed and proprietary, the open source community can retort back with their open standards. Yeah, this is just an attempt at cloning yet another microsoft product by the open source community, but when the world uses microsoft and they're distributing this for free, it hardly is as bad as one software giant cloning say...word perfect. I haven't tried mono yet, but when the day arrives when I can run a windows app and linux app without jumping through wine I'll be a happy linux user.

    I really think operating systems have become a comodity anyway. To me, linux, windows, and mac don't mean much but the software that runs on them. Sure, making different versions like mozilla does works now, but you can't expect companies like adobe to ever do the same. I think running things off the same compiled code is where software should be headed. This would make the argument of not being able to switch to linux because of lack of supported applications moot.

    This is the first time I've ever thought of .NET as something positive.

  14. Re:Someone... by B1ackDragon · · Score: 2, Informative

    I've used Muine, a while ago. It automatically downloads album covers from amazon or something, which was cool but didn't always work. Also, it is organised into albums, so if you've got a directory of music thats mix and match, you have to select an album just to hear the one song off of that album. I could be wrong however, it was a while ago.

    Actually, I think it suffers from that all too common among Apple and Gnome base apps problem of "Its so intuitive it's annoying." I like an asthetically pleasing app as much as anyone, but it's almost as if people are afraid of control and buttons and things these days. If you're used to XMMS, it's going to be hard to beat in terms of functionality.

    --
    The snow doesn't give a soft white damn whom it touches. -- ee cummings
  15. Go Cross-Platform! by krmt · · Score: 4, Interesting

    I've been looking for a good way to write a crossplatform GUI for an app I'm working on. Java is not a good choice for a variety of reasons, so Mono is looking pretty tempting right now. Since Mozilla-The-Platform hasn't taken off as well as it could, Mono may wind up being the best option for a totally Free Software approach to cross-platform work. On the other hand, wxWidgits is a great toolset as well, and I wouldn't be surprised if they get C# language bindings for the library.

    --

    "I may not have morals, but I have standards."

    1. Re:Go Cross-Platform! by Timesprout · · Score: 2, Insightful

      Would you care to share your reasoning as to why a language specifically built to be cross platform and with an incredibly flexible and powerful GUI infrastructure is not a good choice for a GUI app but an immature, unproven platform with serious GUI shortcomings is?

      --
      Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
      What truth?
      There is no dupe
    2. Re:Go Cross-Platform! by Joe+Tie. · · Score: 2, Informative

      You might try the wxwidgits bindings for python. I've been using it for the past six months on a somewhat large multiplatform project, and have been nothing but happy with it so far. It's snappy, gives a native look and feel, and has a fairly nice gui builder with boa-constructor.

      --
      Everything will be taken away from you.
    3. Re:Go Cross-Platform! by Jesus_666 · · Score: 2, Informative

      Or, if you don't want to make your Win users install the proprietary QT Windows trial, you could try FLTK.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
  16. Re:How can Miguel say that Mono is independent.. by miguel · · Score: 3, Insightful

    The same applies to GNU C, GNU C++, GNU Fortran, GNU Ada, GNU Pascal and POSIX.

    If you want to call it something else `D#', be my guest, but I think that incremental changes to the
    language have a better chance of having an impact in the world, if we work with the standards organizations
    than just by forking things.

  17. Dashboard by Mr_Silver · · Score: 4, Interesting
    After viewing the screenshots I was really impressed with Dashboard (especially if it works).

    Given that my main OS is Windows (sorry), is there anything like this for it?

    --
    Avantslash - View Slashdot cleanly on your mobile phone.
  18. Congrats, mono is impressive by Ars-Fartsica · · Score: 5, Insightful
    The mono team has released an incredible amount of code in a relatively short timespan. The mono codebase goes beyond a compiler and runtime - graphical bindings, documentation, and a full IDE are all being rolled out as one more strong alternative in the linux development world. Added to which there are already "for real" apps out there you can use today that are not just toys - for example the Muine music player.

    Too many people will get hung up over the Microsoft angle and notions that mono is out to wipe out all other development toolkits. This is nonsense. What the mono team has done is upended a Microsoft strategy - that Windows is differentiated because of the .Net platform. Now we have a level playing field on top of all of the other inherent advantages of open source.

    Bravo and thanks mono team.

    1. Re:Congrats, mono is impressive by mr.+marbles · · Score: 2

      The mono team has released an incredible amount of code in a relatively short timespan.

      Not the mention that they've cloned the entire system and have a product ready to ship in such a span of time. This is the leading indicator of why the Mono team is right about this technology. The GCJ team has had a head start on Java and they still don't have an entirely useful product. This says to me that one or more of a possible list of things are true.

      1) the .NET standard is far more openly available and legally open than the Java system. Or that the Mono team is more reckless in ignoring the legality of the code.

      2) the language itself, C# is a better platform for developing applications rapidly, seeing as how a majority of Mono is written in C#.

      3) the .NET framework is more elegantly designed. Thus in hacker jargon "The right thing".

  19. Re:Some please explain to me by Tony · · Score: 4, Insightful

    I'm probably feeding a troll, but I'll assume you are sincere.

    Mono was developed because Miguel thought Mono was kinda cool, and because he could. Beyond that, though, there are a few other important issues.

    Most importantly, Mono is vital to the future of Linux and other open-source projects. This was a blatant attempt by Microsoft to reign in wandering developer mindshare. Also, it is part of their strategy to bring the application space back from the web, to the desktop-- Microsoft's desktop.

    Also, although most geeks realize that Microsoft is not to be trusted, and that generally they produce shoddy (or downright dangerous) software, most of the rest of the world doesn't understand the danger. So, for a lot of manager-types (you know the ones, knuckles dragging the ground, sloped brow furrowed in concentration while parsing simple sentences, signs your paychecks with an 'X'), they see this as "Microsoft's next big direction." Many will choose to follow that direction, because they love Power Point.

    And finally, there's the issue of choice. Java is Okay, but there are issues with it. C# has a different set of issues. Both suck. Both are great. Both cower before the awesome power of LISP. Different developers like different things in a language. Some languages suit our personalities better than others. Me, I'm a LISP and Perl kinda guy. The guy sitting next to me likes C and PHP.

    There are potential pitfalls with C#, but at the moment that is all they are: potential. And in most cases, those problems are perceived, and not actual. Now .NET is deployable on any platform with a CLI, like Mono. Nobody pays Microsoft anything, though it doesn't put them at the disadvantage that Java would.

    But ultimately our goal should be to produce damned good software, not just destroy Microsoft; we should concentrate on building up, not tearing down.

    --
    Microsoft is to software what Budweiser is to beer.
  20. Free as in 'Free from vendor lockin' by NigelJohnstone · · Score: 4, Interesting

    Look, mono have cloned an enviroment & language whose direction is steered by Microsoft.

    This is a problem, Microsoft is not nice.

    Microsoft can take it into a direction where MS holds patents & IP protection (if it doesn't already which is very unlikely). Mono will either have to follow and lock its user in, or go in a separate direction and abandon any pretensions at cloning MS .NET.

    What I think they should do is embrace and extend the the .NET framework *NOW*, add features and support for things that the Windows .NET does not have. But also bring the extended version to Windows itself.

    That way the MONO implementation of .NET becomes the real one, not the MS one.

    1. Re:Free as in 'Free from vendor lockin' by MenTaLguY · · Score: 5, Insightful

      What I think they should do is embrace and extend the the .NET framework *NOW*, add features and support for things that the Windows .NET does not have. But also bring the extended version to Windows itself.

      That's precisely what they've been doing all along. Until recently, they've just been very quiet about it...

      You'll notice lately that Miguel's been talking about "API stacks" -- i.e. Gtk# et al versus Microsoft's SWF et al., both built on the safe substrate of the ECMA standard. They've been working on that stuff all along, but until recently not talking about it separately.

      See also this post.

      I believe they're offering packages without any of the Microsoft-specific bits now (to make e.g. Debian happy). And yes, this stuff works on Windows.

      I don't think Microsoft quite realizes what's hit them yet. Embrace and extend again, but this time it's Microsoft on the receiving end.

      --

      DNA just wants to be free...
  21. Java Ruby bridge by SuperKendall · · Score: 2, Interesting

    Someone is also working on a Java->Ruby bridge here.

    Once they figured out the CLR is really meant to run C# apps and they would have to drop interesting Ruby features, they probably gave up.

    BY "Supports other languages", the CLR really means "Supports migrating other language developers to C#".

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  22. Re:Some please explain to me by bradkittenbrink · · Score: 4, Informative

    The greatest risk of the Mono project is Microsoft stepping in and filing suit against the project for using its API w/o a license. Doesn't anyone else see this? Why was Mono ever started to begin with? All you Mono developers are doing is putting $$$ into microsoft's pocket!!!

    Actually, the majority of the API is covered by the public EMCA specifications. Microsoft specifically made it impossible (very very difficult) to sue someone for that when they made the standards public. See the mono and microsoft faq for details. The fact that mono is perfectly legal doesn't change the fact that they may be putting $$$ into microsoft's pocket though.

  23. JOIN FORCES WITH PORTABLE.NET by Space_Soldier · · Score: 3, Insightful

    While mono is better overall, Portable.NET has better WindowsForms support. It sucks to have 2 open source projects that at their core want the same thing. If the open source community wants to compete with the fast releases of the Microsoft .NET , they need to be more unified.

  24. Mono:.NET == Apache:IIS == Firefox::IE by Dwonis · · Score: 4, Insightful
    See the Mono Licensing and Patents FAQ:
    Mono implements the ECMA/ISO covered parts, as well as being a project that aims to implement the higher level blocks like ASP.NET, ADO.NET and Windows.Forms.
    The Mono project has gone beyond both of those components and has developed and integrated third party class libraries, the most important being: Debugging APIs, integration with the Gnome platform (Accessibility, Pango rendering, Gdk/Gtk, Glade, GnomeUI), Mozilla, OpenGL, extensive database support (Microsoft only supports a couple of providers out of the box, while Mono has support for 11 different providers), our POSIX integration libraries and finally the embedded API (used to add scripting to applications and host the CLI, or for example as an embedded runtime in Apache).

    The nifty thing about this is that Mono has the potential to be bigger and better than the .NET Framework, and we don't actually *need* .NET to make good use of Mono.

    The way I see it, Mono could end up gaining more market share than Microsoft's implementation, and as long as we don't tie ourselves to the Windows-specific APIs, there's not a whole lot Microsoft could do about it!

  25. PPC Support by Omega1045 · · Score: 2, Interesting

    I have been digging through the documentation, but haven't found anything on whether 1.0 supports power pc. We run AIX on ppc chips. I tried to get Mono to run on this platform a few months back without any real success. Does anyone close to the project know if this is working now?

    --

    Great ideas often receive violent opposition from mediocre minds. - Albert Einstein

    1. Re:PPC Support by arhra · · Score: 2, Informative

      The PPC JIT works pretty well (on OS X and PPC Linux), but getting it to compile on AIX would probably take a bit of hacking to work around the various low level differences... (i don't know how weird AIX is at the POSIX level, i just know it's... somewhat idiosyncratic, to say the least... from a sysadmin point of view).

  26. Java's performance is vastly overstated by PhysicsGenius · · Score: 2, Interesting
    I run cgoban2, which is written in Java. It's basically a chat client with a pretty simple point-and-click board game interface thrown in. How much RAM does it use? 40 MB. Others have reported numbers as high as 65 or even 75 MB.

    I also run ed2k_gui (the Java frontend to overnet). I cannot run both of these apps at the same time if I want my system (1.2 GHz, 256 MB RAM) to be usable.

  27. Re:Some please explain to me by WaltFrench · · Score: 2, Interesting

    If all I cared about was platform independence, Mono wouldn't matter. (Java covers that very well.)

    But .Net and Mono further promise language interoperability. That means I'll be able to blend 3rd parties' libraries without caring what the source language is, and take a serious foray into Eiffel without the expense of backing out, if it doesn't really deliver what I want, or if it threatens to become orphaned. With luck, 3rd party compilers for the .Net CLI will work fine to the Mono CLI. Sweet!

    And still not worry whether it's OSX, WinXX or *nix.

    For me, this is all about choice, (minimizing the risk of a little fling) and leverage.

    --
    "Inquiring Minds Want to Know!"
  28. Slashdotted already :-( by james_bray · · Score: 2, Informative

    Anyone know of a mirror site?

    --
    http://www.reeb.freeserve.co.uk
  29. Kudos to the Mono team by MudflapSoftware · · Score: 2, Interesting


    I have been a pretty vocal detractor in the mailing lists about the lackluster attention paid to the OS/X port, but this release is really a huge milestone for the team, and they deserve a round of applause.

    Kudos to Miguel, Nat and the rest of the team for getting this shipped. The Linux port is rock solid.

    Now, if I could only get monoDevelop to run under OS/X without having to jump through endless hoops, I would be a happy man...

  30. Runtime Distribution by Nurgled · · Score: 5, Interesting

    This Mono 1.0 release seems to be developer-oriented. Will they (or someone else) be creating smaller runtime packages which only include the stuff necessary to run applications?

    It would be nice if there were an easy install package for Win32, too. This might seem pointless on the surface, but Microsoft.NET won't install on all Windows systems due to deliberate barriers, plus Microsoft's distribution does not come with GTk# and so forth.

    I'm installing the full release on my main system, but it'd be nice to have a smaller runtime package that I can put on my other boxen to run any apps I create. Perhaps in a few hundred years Debian will have a runtime package which can be depended on by mono apps without having to pull in the whole development environment. (mono-runtime vs. mono-devel, both depending on mono-common)

    (I see a page about the Mono runtime but it's talking about the runtime portion of the project rather than a specific runtime distribution.)

    1. Re:Runtime Distribution by 4lex · · Score: 2, Interesting
      Perhaps in a few hundred years Debian will have a runtime package which can be depended on by mono apps without having to pull in the whole development environment. (mono-runtime vs. mono-devel, both depending on mono-common)

      Perhaps this will happen sooner ;) Anyway, if you like it to happen soon, why not join the Debian mono package mantainers?

      --
      My journal. Mainly about freedom.
  31. Not true... by Phil+John · · Score: 2, Interesting

    ...the source code for the java class libraries comes with all Java 2 SDK's, and the source code for the JVM and Hotspot JITs is available for download from sun..

    I know this because to run Java on FreeBSD you have to compile it from source, which you have to download from sun independantly and then patch.

    .Net on the otherhand is the one that is not open, true, parts of the C# spec have been submitted to ECMA as standards, but the cast majority of the platform is under tight microsoft control (and covered by numerous patents).

    Care to give me the URL of the C# compiler and the CLR source code? No? That's becuase they exist only in your imagination.

    --
    I am NaN
    1. Re:Not true... by The+Bungi · · Score: 2, Informative
      ...the source code for the java class libraries comes with all Java 2 SDK's, and the source code for the JVM and Hotspot JITs is available for download from sun..

      That doesn't make it "open" or "standard". Have you read the license lately? What exactly can you do with the source?

      .Net on the otherhand is the one that is not open, true, parts of the C# spec have been submitted to ECMA as standards, but the cast majority of the platform is under tight microsoft control (and covered by numerous patents).

      Ah, selective amnesia. Who controls Java again?

      Care to give me the URL of the C# compiler and the CLR source code?

      There you go. This is what people are doing with it.

      The Visual Studio project is not "open source", and it never will be. That includes Microsoft's implementation of the CLI, as well as the compilers.

      And yet that's still a heck of a lot more "open" and "standard" than Java could ever hope to be. Why do you think Microsoft went to ECMA with it?

      Sun could sue the pants off the classpath folks and everyone else that ever thought about doing a JVM or something like it. That they don't do it is another matter, but using Java conveys no less risk than Mono does at this point.

  32. Mono vs JVM by Sunspire · · Score: 3, Insightful

    One huge benefit to Mono on the desktop is that it acts as, and for all intents and purposes is, just a normal language/platform for Linux. Exactly like C/Python etc. You install the RPM, or compile the source, or get the whole thing pulled down as a depdenency from yum/apt for some third party program you really wanted to run in the first place. It's there in the background as any other package on your system. When you run a Mono GTK# program from your GNOME menu or the shell, you can't really say just from looking at it that it's a Mono program and not standard C.

    Java on the hand, goes out of its way to jump in your face at every opportunity. Java is completely unlike everything else on your system. Java spews its shit all around your system even when you install it from a package (what the hell entitles Java to a toplevel directory in /usr, it's just one of 12 languages and development kits I've got installed on my system). You're not going to get Java with your distribution. You can't pull down Java as a dependency for some other app. You don't get Java apps in RPM/whatever format in the first place. You've got to know what the heck a classpath is, etc.

    Then you've got your Ant build systems, Jar packages, and tons of other stuff completely alien to Linux. The few Mono apps I've compiled have been the standard "./configure, make, make install". Long story short: Mono will will the desktop because end users don't have to know what Mono is in the first place.

    --
    It's like deja vu all over again.
    1. Re:Mono vs JVM by MemoryDragon · · Score: 2, Insightful

      You have obviously no clue on what you are talking about. a) Java if you go the self extracting binary route just expands itself wherever you want it to be and follows from one top level dir into its subdirs, there is no spawning itself over the entire system, just one java dir with its subdirs, thats it. b) nobody prevents you to use make it is just ant is so much better and therefore everybody uses it c) you can use zip instead of jar, jar is just a zip file with some extra data in a manifest file d) face it ant is currently ported to .net and probably will become the standard make tool there as well e) how much more alien is a zip file with the extension ant to linux compared to an exe file? f) the classpath thing is not that far away from unix either, in fact java cannot deny its unix heritage, many unix tools use environment variables and classpath is just one which can be set optionally within a .bashrc or given to the command line tools

  33. Re:What the Mono guys don't get by elflord · · Score: 3, Informative
    is that using C# implies accepting being led by Microsoft

    No. You're the one who doesn't get it.

    Just exactly how is Mono+Linux any better than .NET+Windows?

    Runs on Linux.

    Does the Mono team have ANY plans to innovate beyond what Microsoft is doing

    Yes. See GTK-sharp, Qt-sharp, Mono.Posix, Mono.Data, etc. (in fact, try reading the FAQ before posting) The Mono and portable.Net projects are both interested in supporting the Microsoft APIs, but support for Linux APIs is also important.

  34. glade can fill the gap for now by Skeezix · · Score: 2, Informative

    And if you need a GUI builder you can always use glade-2 which ships with most distributions. I've designed practically the entire user interface for my little app, WoodPusher, in glade, and have been writing the code using MonoDevelop. Eventually there will be a new form designer for MonoDevelop which will not be based on glade at all, but in the meantime, glade gets the job done.

  35. Longhorn is a ruse by fijimf · · Score: 3, Funny

    All the Microsoft developers are secretly rewriting MS Office in C#.NET.

    As soon as the Mono guys finish the hard part of the Linux port, MS will abandon Windows, fork Linux and start selling MS Linux bundled w/ Mono (and of course, Firefox with the new IE theme), and MS Office for Linux.

    It's just crazy enough to work.

  36. Re:What the Mono guys don't get by polyp2000 · · Score: 2, Insightful

    I also have the same problem with the mono project, however think about the positives...
    I think that the speed at which they have acheived version 1.0 is to be commended; What the mono project is acheiving that Microsoft in not, is a true crossplatform framework based on the .NET architecture; Many will tell you that .NET is not inherently a bad archictecture; But admittedly it is essentially just a rehash of the traditional JAVA / XML /SOAP Framework that has been around for much longer. The difference being Microsoft formalized the framework; and embraced and extended its components so that Java became C# and so forth.

    Dont forget who copied who in the first place here. One could just as easily say that microsoft copied java and was therefore conceding that someone else other than them had a better platform.

    By making Mono work with .NET on another platform they are to a certain extent fighting Microsofts "We Want It All And We Want It Now" attitude. You have to make the decision, do you concede to Microsoft or do you fight them. Microsoft have no intention of making their so-called "cross platform" .NET work on Mac , Linux or whatever else. Enter the Mono Project.

    While my ideals of not wanting anything to do with Microsoft get the better of me here; I think it would be short sighted to ignore the acheivements, benefits and political movements that Mono stands for.

    Nick ...

    --
    Electronic Music Made Using Linux http://soundcloud.com/polyp
  37. Re:Any tutorials out there? by Sunspire · · Score: 4, Informative

    Check out the The Mono Handbook for tutorials and general getting started instructions. It's still a work in progress, so many sections are still quite empty. Another resource you should familiarize yourself with is the MSDN developer documentation for most of the core .NET API, it includes a lot of examples.

    I also recommend you check out the standard GTK+ tutorial. A lot of it is still directly applicable to GTK# and it's more complete than most GTK# only tutorials. If you're already familiar with GTK+, Glade# for Rapid Development will help you get up to speed with Mono.

    --
    It's like deja vu all over again.
  38. What about the patent issues? by Eric+Damron · · Score: 2, Insightful

    I like the idea of writing code once and being able to run it on multiple platforms. MONO takes us a half a step closer to that. I do have concerns, however. Primarily the screwy patent laws bother me.

    The SCO fiasco, which was funded both directly and indirectly by Microsoft, tells me that litigation is probably going to be Microsoft's weapon of choice in the not too distant future. I have expressed these concerns in previous MONO discussions and always get a lot of replies telling me that Microsoft "won't" do this because of this reason or that reason. What I have never got was a reply telling me why Microsoft CAN'T to this.

    So, given the fact that SCO has shown that litigation can and is being used as an anti-competitive tactic and given the fact that Balmer not so long ago said, when referring to open source that Microsoft would "vigorously enforce its IP rights", why should I feel good about the MONO project?

    Would some lawyer type please tell me why Microsoft CAN'T prevail in a lawsuit over patent violations when the time is right for them to strike? I'm not trolling. I really want to be able to use MONO and feel good about it. But until I know that I'm not putting Linux at risk I simply can't support MONO.

    Help me out here Please!

    --
    The race isn't always to the swift... but that's the way to bet!
    1. Re:What about the patent issues? by Teancum · · Score: 5, Insightful

      First of all, Microsoft has been directly helping the Mono project, in terms of technical assistance. While this doesn't solve the patent issue, it does show a certain culpability on the part of Microsoft, and it would be a big fly in the ointment if MS decided to file a lawsuit.

      Also, Mono is much closer to a "clean-room" development model, based almost exclusively on the API libraries and reverse engineering of data formats to become more compatable with MS function calls. Although Mono started with the core components being compiled with the free dotNet compiler from MS, it has been self-compiling for some time now.

      The anti-trust issues won't help out MS either if they file a lawsuit against Novell. Novell has some relatively deep pockets, and it would be in their interest to get into a legal fight with Microsoft, particuarly one that MS initiated. From a sheer anti-trust viewpoint it would not be a good thing for MS to engage in something like this directly, and it could only be a direct threat from MS that would amount to be worth anything, unlike the SCO fiasco. No hiding behind serrogates for this fight. Furthermore, MS would risk a counter suit from several parties (Miguel to start with) if they tried to get the software pulled, potentially costing MS quite a bit of money.

      Almost all of mono is derived from the ECMA documents, which also state rather clearly (with formal waivers signed by Microsoft) that anybody is free to create their own implementation of those standards.

      Where the Mono Project could run into problems is if somebody (in a really stupid moment) decided to include some "shared source" source code from MS into Mono. This would be the same issue that Linux is facing from SCO, and when that goes to court it will have a final court ruling on that issue. If SCO wins by some act of God, it will become a huge issue for almost all open source/free software projects, not just Mono. I don't know if the courts have the political will to shut down a multi-billion dollar industry that easily over a technical ruling. Besides, the remedies to fix an issue like that are very easily done, and can even be done in a very pristine "clean room" atmosphere to replace any code that caused problems like that.

      I would have no problem testifying in court that Mono and dotNet are two totally different pieces of software, from benchmarks and I/O behavior to variable names and even Mono-only software classes.

      What is going to be interesting is that Mono, now that they are at version 1.0, is going to be in a position to actually drive mindshare with this system. I predict that you will seem MS backporting some of the mono class features (including method names... even a mono.* class naming system) into standard dotNet. The question would then become who is driving the development for whom?

      Yes, I dont trust Microsoft, and won't rely upon their goodwill. True as well, if you had developed a completely independent virtual OS (like dotNet or Java), there might not be as much to argue here, but then again, you might even be in more danger of violating a patent, simply because you weren't aware of it.

      I think a much bigger threat for a submarine patent that would threaten Mono would come from Sun, or even some silly 3rd party that filed a patent 5-10 years ago covering virtual operating systems. The concern then is not with Microsoft, but with the USPTO instead.

  39. Open Source Gaming... by Psymunn · · Score: 4, Insightful

    One of the problem with Shareware (or cripple ware) and open source is that it's generally just as easy to distribute the shareware version as the complete version, so it only takes one person to purchase a product and give it to everyone.
    I think this impacts open source game production because, frankly, it's hard to find a way to give the source to the community and still ensure some kind of revenue stream.
    What I figured is, why can't someone release a game, GPL all the source code, but claim that the artwork and level data are copyrighted and, please, feel free to give your buddies a copy, but don't use the art/leveldata in a commercial release
    I think that, while not nesseccarily in keeping with the free software ideology, it is in keeping with the open source philosophy (and yes, bare with me, i know that free is not cost free and open is not simply saying 'check out my code')
    By providing my source code to whomever wants it, I make it easier for the next guy not to have to reinvent the wheel. But the specific game data (leveldata, game sprites) are what makes this game unique (if only at the surface level) and are useless to a programer who wants to use my code to write his own game.
    Such a license would allow one to release a Shareware version of the game (akin to Doom or Commander Keen, where you get an episode, not some software that expires over time and does half of what you want) which allows for commercial distribution, and a full version which the author can sell.
    Of course, maybe that makes the author a capatalistpropriatarypigbastard, but i'd like to hear feedback on the idea...

    --
    The Neo-Bohemian Techno-Socialist
  40. Re:Dashboard and OS X 10.4? by EMiniShark · · Score: 2, Informative

    I was only noting that they had the same name, and considering that Tiger's Dashboard was announced on Monday. Also note that, as has been pointed out in other threads here, Tiger's dashboard, while similar to Konfabulator, is actually much more similar to an Apple feature nearly as old as the Mac. It was Konfabulator that added a similar feature to OS X, arguably 'ripping off' an Apple innovation almost two decades old.

  41. Re:I stand corrected... by The+Bungi · · Score: 2, Informative
    One thing that bothers me, reading the shared source license it seems to insinuate that you cannot use the source for commercial purposes or create derivative works of it, so how is that open?

    That's right. Then again you can write your own implementation (which is permitted under ECMA's royalty free + RAND policy), which is what Mono is. The SSCLI is written by Microsoft and therefore carries whatever license they choose to stick on it. Miguel used a combination MIT+LGPL+BSD for Mono, I believe. The SSCLI has nothing to do with how you can use or interpret what Microsoft has released to ECMA, except that it is a very complete reference implementation of that spec. The .NET framework is yet another implementation of the spec, which has yet another license, tho that one places no restrictions on what you can do commercially with it - but you get no source.

    This is not "open source" or "free software" as most of you understand it. But again, that's besides the point when comparing it to Java.

  42. Re:Microsoft can kill this project anytime it choo by elflord · · Score: 3, Informative
    If Mono ever does really take off, Microsoft can clip its wings off in an instant.

    No they can't. read the FAQ

  43. Interesting paper by SuperKendall · · Score: 3, Informative

    You can implement scheme on the JVM too - read this paper comapring the compilation of Scheme to C, the JVM, and the CLR! It was put on 6/16/2004 so is pretty recent - the link came from here

    One interesting result is that precompiling .Net executables yielded no perforamnce gain over just leaving the executable in IL!

    Also, the .Net VM was found at this time to be generally slower than the JVM.

    I couldn't really find a complete Scheme for .Net - Scheme.Net is still pretty new, and Hotdog is not really done yet either.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  44. Re:Interpreted languages by daveaitel · · Score: 3, Interesting

    I think the biggest problem with .Net is that it's not interpreted enough. Despite the work being done to pretend that it can handle it, no one has a decent interpreted langauge (i.e. perl, Python) running in it that can use any of the real features of the VM. The funny thing is to hear Miguel and others rave about how much faster they are coding now that they are using C# rather than C. Imagine how much more they'd rave if they were using Python, which has the same advantages for RAD over C# that C# has over C. And it has GTK bindings, just like GTK#, only more mature.

    If only they'd thrown their weight behind a Python Gnome, and made that the standard language...

    I noticed in Miguel's post that he posited that you wanted real arrays of ints for speed reasons, instead of arrays of integer objects. But in a large application, speed is more commonly gained by doing intelligent caching - something easy in Python, but brutally hard in C# or C.

    And there's no Patent issues or other nonsense.

  45. Re:My System got Mono! by Teunis · · Score: 3, Informative

    debian-unstable's had the packages for a while. Works for everything I've tried... have to admit I haven't tried that much yet, but so far so good. Works nicely with apache2 last I tried.

  46. Re:Everyone is raving about Python here by Antity-H · · Score: 2, Informative

    for python informations :
    simply go to the python website (http://www.python.org), it lists quite a lot of tutorials for begginers to experienced programmers, it also has FAQs and a few papers about python design. The online documentation is pretty extensive too

    as for an IDE, you can either use eclipse and pydev (http://pydev/sourceforge.net, don't be afraid by the alpah/beta thing, it is quite stable). Or you can try eric3 (http://www.die-offenbachs.de/detlev/eric3.html). The latter also integrates with Qt Designer to create GUI with a visual editor, using pyqt.