Announcement

Collapse
No announcement yet.

Why Mono Is Desirable For Linux

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Why Mono Is Desirable For Linux

    Phoronix: Why Mono Is Desirable For Linux

    On this Friday we have a freelance open-source opinion article that was written by Ciprian Khlud. This developer, who uses C# among other languages at his place of employment along with a combination of Windows and Linux, argues why the Mono open-source ECMA CLI/C#/.NET implementation is actually desirable for Linux.

    http://www.phoronix.com/vr.php?view=17874

  • #2
    Registered just to say how dumb this article is.

    This article is so backwards it blows my mind... I started out as a C# developer in the .NET 1.1(if I remember correctly) days. At one point, I realized that Windows was a sinking ship, and decided to learn Linux. Naturally, migrating my C# skills directly to Linux via Mono seemed like the thing to do. WRONG.

    Mono, is, was, and always will be a turd. Stability-wise, it's terrible, and if Winforms ever actually works right in Mono, then they will have won the award for implementing complete crap long after it was already outdated. Then there's ASP.NET, which is still a complete joke on Windows or Mono. Nobody in their right mind should want to use ASP.NET, much less on Linux. I even gave Mono another whirl last month just to see how it's progressed, and it took no time at all to crash Monodevelop.

    After giving up on Mono, I moved to C/C++ and Qt, and discovered that it is a comparable solution to .NET. Eventually I moved more towards writing web code in Python/Django, and desktop apps in Python/PyQT, and whenever I need extreme performance, I just port functionality to C and call it from Python. Vastly superior to C# on Windows or Linux.

    Comment


    • #3
      I'm not too convinced with the legal attack scenario presented in the article. If someone (and I think 'someone' means M$) sues Xamarin and forces the removal of some functionality things aren't so soft: finding an alternative technology to reimplement some of the application's components in general isn't an easy and trouble-free task. Said this there's another thing missing: if this scenario happens, I'll have to ship as soon as possible a new version of the application to all my customers, because a simple 'apt-get upgrade' (or Windows update equivalent, i think that .NET is installed system-wide even on Windows) could lead to total breakage (and anyway, i can't force them to use an outdated version of mono/.NET because of obvious security risks).

      Sorry for the bad english. I've not the intention of bashing Mono, personally I like Java and .NET, but really I can't trust Microsoft. We need the certainty that Microsoft will not try to harm Mono in any way.

      Comment


      • #4
        I do think Qt is much safer from a legal standpoint.

        That being said, Mono is very important to Linux. It might not be the best for business applications, but I think it is the best for games. Just look at games like World of Goo, Atom Zombie Smasher, Bastion, SpaceChem, etc.. Gorgeous games written by a very small team of developers because they fully leveraged the capabilities of a high level language that is C# and mono. Mono is *very* important for cross-platform games from small companies.

        Comment


        • #5
          The "legal attack" argument isn't even the biggest problem.

          The biggest problem is that Windows is and always will be the prime platform, and Linux is and always will be the alternative platform, a day late and a dollar short. Until C#/Mono is SOOOOO accepted that Microsoft essentially loses control, the way that they have with Win32, developers will want to stay at or near the leading edge. That leading edge will always be Windows, and that's where the new development will be done. The Linux version will follow, probably by enough time that by then the new Windows version will be out.

          That means that co-development of Windows and Linux versions just won't work. The new version will always be Windows, and it will be a question of how much resource to apply to port the previous version to Linux.

          The scenario I see for "legal attack" would be if the Linux version gets too "uppity" and gets too close or even ahead of the Windows version. I think Microsoft is content to have a Linux version available - as long as the Windows version is squarely out in front by a comfortable margin.

          Comment


          • #6
            hmm. Firstly, I felt like this article should have been edited for fluency by a native speaker, because it was difficult for me to sit down and force myself to read it, and I gave up towards the end. This is not a comment about the author by any means, it is just a realization of the fact that reading technical material requires enough brain power as it is, that having to figure out the meaning of each sentence makes it tremendously harder.

            But, more on topic, I do believe Mono is important. I don't care about the .NET framework. For the purposes of this discussion, I believe we should straight up ignore .NET for Windows. I believe Mono should be treated as a separate entity. The tools are actually pretty good, and when you target Mono, your code will run on Linux, Mac, and even Windows. Plus, the performance is much better than Java, as seen in the MonoDroid project.

            Legality is not an issue. The Mono framework is publicly documented and licensed in the same way Javascript is, or at least in a very similar way. If you're worried about Javascript being nuked, then sure, worry about Mono... but I personally have no concern about that.

            Honestly, I prefer Python or Vala, but I see nothing wrong with C#/Mono... and I see no reason to need a multipage article discussing why the Mono framework is legal, when I've seen no evidence to suggest it isn't legal.

            Comment


            • #7
              Originally posted by Sidicas View Post
              ...
              Just look at games like World of Goo, Atom Zombie Smasher, Bastion, SpaceChem, etc.. Gorgeous games written by a very small team of developers because they fully leveraged the capabilities of a high level language that is C# and mono.
              ...
              Sorry, but where did you get the information that World of Goo and Bastion are made with Mono?

              Comment


              • #8
                Originally posted by Sidicas View Post
                I do think Qt is much safer from a legal standpoint.

                That being said, Mono is very important to Linux. It might not be the best for business applications, but I think it is the best for games. Just look at games like World of Goo, Atom Zombie Smasher, Bastion, SpaceChem, etc.. Gorgeous games written by a very small team of developers because they fully leveraged the capabilities of a high level language that is C# and mono. Mono is *very* important for cross-platform games from small companies.
                just because, obviously, C# is the only high level language, only C# allows small teams of people to create games.
                Oh wait! Java is a high level language!
                Oh wait! C# was created with the intention of being java cloning for windows.
                Oh wait! Minecraft was written in Java.

                As for the author of the article. "...Uses C# among other languages"
                Question: Why would you use C# if you could use anything else at all.
                (Obvious) answer. Because someone pays you to do so.

                Comment


                • #9
                  I had to laugh at the C++/GtkMM semicolon "argument" :-P

                  Comment


                  • #10
                    Originally posted by Sidicas View Post
                    I do think Qt is much safer from a legal standpoint.

                    That being said, Mono is very important to Linux. It might not be the best for business applications, but I think it is the best for games. Just look at games like World of Goo, Atom Zombie Smasher, Bastion, SpaceChem, etc.. Gorgeous games written by a very small team of developers because they fully leveraged the capabilities of a high level language that is C# and mono. Mono is *very* important for cross-platform games from small companies.
                    WoG is not a C# application.

                    Comment


                    • #11
                      Originally posted by mdias View Post
                      Sorry, but where did you get the information that World of Goo and Bastion are made with Mono?
                      Bastion definitely IS a Mono game.

                      The MonoGame.Framework.Linux.dll in the Bastion install folder is a good hint.

                      Comment


                      • #12
                        Originally posted by XapaJIaMnu View Post
                        just because, obviously, C# is the only high level language, only C# allows small teams of people to create games.
                        Oh wait! Java is a high level language!
                        Oh wait! C# was created with the intention of being java cloning for windows.
                        Oh wait! Minecraft was written in Java.

                        As for the author of the article. "...Uses C# among other languages"
                        Question: Why would you use C# if you could use anything else at all.
                        (Obvious) answer. Because someone pays you to do so.
                        Minecraft being a clone of C#-based Infiniminer, of course, if you want to pursue the "clones are evil" line.

                        And if you look at the prevalence of games using XNA versus LWJGL (which are beginning to see MonoGame ports as that project matures), or the utter domination of Mono-based Unity3D in the indie game space (with Unity 4.0 heralding a world of Linux ports), then that might provide a few hints as to the validity of Sidicas' argument.

                        Comment


                        • #13
                          Is this article for real or was Phoronix hacked by an advertising company?

                          Comment


                          • #14
                            I believe that the majority of the resistance to C# adoption has little to do with the language, and much to do with MS. I like C# as much as I like Java. It makes writing middleware logic a breeze to the point where I can write and navigate code as I think. I feel that java is more desirable for non-gui applications and .Net is more desirable for GUI applications. I would love to see the stability of the mono runtime improve a bit, as I have had a couple bad experiences in the enterprise.

                            The entire patent argument may be moot, but is part of a larger fear. The fear is that somehow MS will find a way to screw us. They have done so in the past, they will do so in the future. I cannot help but feel a hefty amount of paranoia every time I see C# running on linux. Its uncomfortable and I don't like it.

                            I hope the author is right. I hope mono does great things for the linux desktop. I hope MS doesn't pull another SCO or some new trick.

                            F

                            Comment


                            • #15
                              Originally posted by russofris View Post
                              I like C# as much as I like Java.
                              Yep, same here. ;-)

                              Comment

                              Working...
                              X