Slashdot Mirror


De Icaza Says Microsoft Has Shot .NET Ecosystem In Foot

An anonymous reader writes "Microsoft has shot the .NET ecosystem in the foot because of the constant threat of patent infringement that it has cast on the system, Novell vice-president and Microsoft MVP Miguel de Icaza is quoted as telling the website Software Development Times recently."

96 of 425 comments (clear)

  1. De Icaza is Novell veep? by blind+biker · · Score: 2, Insightful

    I used to respect that company (NetWare 3.11, NDS, NetWare 5.0, GroupWise, ZenWorks, all top-notch tech, IMHO).

    Now, a tad less.

    --
    "The agriculture ministry is not in charge of Gundam" - Japanese ministry official.
  2. Not very persuasive... by AliasMarlowe · · Score: 4, Funny

    Microsoft has shot the .NET ecosystem in the foot

    A head shot would have been clearer. We all know .NET limps already.
    Or is this just the usual Microsoft wobbling instead of making an actual decision?

    --
    Those who can make you believe absurdities can make you commit atrocities. - Voltaire
    1. Re:Not very persuasive... by Jurily · · Score: 3, Insightful

      Yeah, it limps alright. Just take a look at StackOverflow.

    2. Re:Not very persuasive... by Joce640k · · Score: 5, Funny

      Microsoft hasn't shot/killed anything, they just stopped pulling the puppet strings and making the silly squeaky noises that made it look like it was alive in the first place.

      --
      No sig today...
    3. Re:Not very persuasive... by dbIII · · Score: 4, Funny

      Does that mean "gimp" is going to be ported to ".NET"?

    4. Re:Not very persuasive... by Filopopulus · · Score: 3, Insightful

      Yeah! See how hard it is to program in C#? Those guys keep asking more and more questions! ;-)

    5. Re:Not very persuasive... by Foofoobar · · Score: 3, Insightful

      Lots of questions means lots of confusion. I think all you proved is a severe lack of documentation or how newbies are confused as hell by it.

      I'd say check the Tiobe index for a more accurate record. You'd think that a major corporation like Microsoft could garner more popularity than PHP instead of less than half.

      --
      This is my sig. There are many like it but this one is mine.
    6. Re:Not very persuasive... by shutdown+-p+now · · Score: 4, Insightful

      Lots of questions means lots of confusion. I think all you proved is a severe lack of documentation or how newbies are confused as hell by it.

      Or, maybe, lots of questions just means lots of newbies?

      Or it could even mean that StackOverflow is historically more .NET-centric, so that's where you go to ask .NET questions; and Java ones are asked elsewhere.

      I'd say check the Tiobe index [tiobe.com] for a more accurate record. You'd think that a major corporation like Microsoft could garner more popularity than PHP instead of less than half.

      TIOBE index is extremely unaccurate due to their, ahem, "methodology", and they even tell so themselves.

      It is particularly inaccurate with respect to .NET, because you need to extract VB.NET out of all BASIC job offerings, add C#, and then add all positions that just say ".NET" without specifying the language (which isn't even tracked on TIOBE), to get a real figure.

      Then, also, think about what it measures - if you look at what is found by googling for "PHP programming" (which is what TIOBE does, pretty much), it's mostly various tutorials/howtos. So, it effectively measures the amount of learning material available online for a given tech, including any low-quality and duplicate ones. It's no secret that there's a crapload of that for PHP. In fact, by your logic, it would indicate that PHP is so bad, since it needs so much tutorials to teach people to do things, no?

      Instead of TIOBE, why don't you open your nearest job search website, and look at the number of available .NET positions vs Java ones? (the ratio will vary quite a bit by region/country, by the way)

    7. Re:Not very persuasive... by BitZtream · · Score: 2, Interesting

      No one gives a shit that uses .NET.

      No one does anything of importance and cares about Mono. Unless your app was written to deal with the inadequacies of Mono its unlikely that any non-trivial app will work in Mono. There is no concern by anyone with a non-trivial app about what Mono licensing issues might mean because Mono is incapable of running any app that matters.

      Rant, whine, moan, talk out your ass, lie, cheat and steal to make it sound like MS is the reason Mono isn't taking off ... won't make it so ... won't change the fact that Mono isn't even second best, its not even in the running, it didn't start the race.

      Yes, this is a rant, I want Mono to be useful so I can use it, but licensing has never been the issue, its gotta actually work before the licensing issues are anything I could give a shit about.

      Perhaps making the product actually work would get the project further than coming up with some political bullshit reasons for its utter and complete failure to provide any value.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    8. Re:Not very persuasive... by shutdown+-p+now · · Score: 2, Informative

      Again, you need to compare C# + VB.NET to get a meaningful comparison of .NET vs Java.

      And if you want to count Groovy and Scala, sure - but then let's also count Boo and F#.

      Oh, and the link is from 2006. Here is a newer comparison, from 2009 (though they don't give the methodology they used to determine what ".NET" is). Still shows Java roughly 1.5x ahead in terms of job count, which isn't surprising, considering the head start.

      Salary distribution is more interesting. It shows that .NET salary distribution is skewed more towards lower pay, while Java spikes at a higher rate. This also produces an average salary disparsity. Overall, I'd take it to mean what I wrote previously - that .NET has more people in it who are new to this whole programming thing, while Java has more senior devs that specialize in the platform.

      Here is a job trend graph for a typical job search web site. Notice how both C# and VB on themselves, and even combined, are way below Java, but .NET is above. Just goes to show how many job postings specify ".NET" without detailing the language...

      An unrelated, but also interesting trend is that of technical book sales - have a look, and notice how rapidly Java in particular is falling.

      Then also there are studies like this one - but I'm not sure what to look at there, since they don't give neither their sources nor methodology, so the numbers could all just as well be conjured from thin air.

  3. Finally by Airline_Sickness_Bag · · Score: 5, Insightful

    It took how many years for Miguel de Icaza to realize this? Most of us could have told him that with seconds.

    1. Re:Finally by sigmoid_balance · · Score: 5, Interesting

      When Stallman said the same thing, de Icaza called him a fanatic. Well, most voices on /. called him the same thing. He was right then like he was right with his movement from the start. You can't have half-measures.

    2. Re:Finally by Dan667 · · Score: 4, Insightful

      Yes, but it has been long enough for de Icaza to totally forget that and think it was his own idea. Now it totally makes sense.

    3. Re:Finally by Abcd1234 · · Score: 3, Insightful

      Huh? When did Stallman ever say that Microsoft "shot .NET in the foot" (paraphrased)? I'm sure he said .NET was evil. That Mono was equally evil. But Miguel's quote does not, to my knowledge, echo a single damn thing Stallman has ever said.

      Maybe you should try actually reading and comprehending the text of the quote, first, before you try and fit it into your own ideological mold?

    4. Re:Finally by sigmoid_balance · · Score: 2, Insightful

      ... he said .NET was evil ...

      And he said .NET is evil because it's patent ridden. To which de Icaza responded saying "it's ok, they promised not to sue"(paraphrased). So, what about my mold? Maybe I'm missing something.

  4. So Miguel finally figured it out? by OzPeter · · Score: 4, Insightful

    There is hope for him yet!

    --
    I am Slashdot. Are you Slashdot as well?
    1. Re:So Miguel finally figured it out? by gmuslera · · Score: 2, Funny

      Don't think so. In any moment Bill Gates will tell Miguel "I'm your father" and he will run out of Luke.

  5. Wah wah wah by bigtomrodney · · Score: 5, Insightful

    That's a little rich for De Icaza to be coming out and saying this now. He's spent years shouting down anyone that warned him about the patent scenario with Microsoft's technologies and yet he continued to proselytise. He's worked away on Mono and Silverlight and made sure to get them included wherever he could.

    So is he allowed to be surprised or angry now?

    --
    I never get used to these constant resurrections
    1. Re:Wah wah wah by UnknowingFool · · Score: 3, Insightful

      Kinda like when you tell a female who is having an affair with a married man: "You know he's never going to leave his wife." The reaction is usually denial and false hope. Some day, maybe years later, they realize the truth and move on. They didn't just were not ready to acknowledge it until they are ready.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    2. Re:Wah wah wah by Chris+Burke · · Score: 5, Insightful

      So is he allowed to be surprised or angry now?

      Of course he is.

      And we're allowed to roll our eyes and say "No shit, Sherlock! Welcome to five years ago!"

      I mean sure he's slow on the uptake. Sure it was pretty silly to dismiss the quite plain threat of Microsoft's patents with "Oh but they won't do that!" But hey, at least the "but they won't do that!" turns into "gee, it's looking like that's exactly what they plan to do" eventually.

      Doesn't mean I think he's any smarter than I did yesterday. But sure he's allowed to change his mind, and that's a good thing.

      --

      The enemies of Democracy are
    3. Re:Wah wah wah by Anonymous Coward · · Score: 2, Informative

      I mean sure he's slow on the uptake. Sure it was pretty silly to dismiss the quite plain threat of Microsoft's patents with "Oh but they won't do that!"

      Is that what he did? I remember long, in-depth justifications from him and others. Endless debates on slashdot with Miguel personally arguing in dozens of threads.

      And we're allowed to roll our eyes and say "No shit, Sherlock! Welcome to five years ago!"

      He deserves greater censure then that. He got his mono in my free desktop.

    4. Re:Wah wah wah by Chris+Burke · · Score: 3, Interesting

      Is that what he did? I remember long, in-depth justifications from him and others. Endless debates on slashdot with Miguel personally arguing in dozens of threads.

      Yeah, I personally argued with him, and yes, I think that's an accurate characterization of his response to the patent issues. He couldn't deny that patent issues existed, so instead he simply claimed that they would not be a problem. After all, Microsoft had promised. So we were just being paranoid.

      --

      The enemies of Democracy are
    5. Re:Wah wah wah by randomencounter · · Score: 2, Insightful

      It is useless to hate a rabid dog, but it is dangerous to ignore that it is a rabid dog and will bite anyone who comes too close.

      Microsoft is not to be loved or hated, but it is to be treated as a dangerous animal and kept in its place.

      --
      Forget diamonds, copyright is forever.
    6. Re:Wah wah wah by miguel · · Score: 4, Interesting

      You are mixing two different things.

      Microsoft claims that they have patents had a chilling effect on Mono adoption.

      That does not mean that I do not stand 100% by our position in the Mono project regarding patents. To begin with, we think it is a bullshit argument, since everything you use is infringing on someone else's patents (Microsoft included).

      Microsoft like any other corporation will do a cost/benefit analysis of suing someone over patents. So far the kernel has been a juicier target than Mono has.

    7. Re:Wah wah wah by bigtomrodney · · Score: 4, Insightful

      Come on Miguel, really. It's not the same thing. It's one thing to go ahead making technical progress and accidentally infringe an obscure patent in someone's portfolio. It's quite another to adopt and adapt someone's technology and hope they won't sue you. This is even more important a distinction when the technology in question belongs to your competitors and they've publicly sword to defeat your cause.

      I know you're getting a hard time in this thread but it has to be taken for what it is.

      --
      I never get used to these constant resurrections
    8. Re:Wah wah wah by Penguinisto · · Score: 2, Insightful

      So, err, you're building all of this, and trying to attract developers... on the basis of: well, maybe they won't sue us because everyone is a crook and Microsoft probably won't see a benefit in suing you for using it, so...?

      I can't be the only one thinking 'WTF' here.

      Seriously, Miguel - you need something better than that.

      /P

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
  6. He was a retard by BhaKi · · Score: 4, Insightful

    for assuming (and advocating to others) that Microsoft won't threaten Linux.

    --
    The largest prime factor of my UID is 263267.
    1. Re:He was a retard by Anonymous Coward · · Score: 2, Interesting

      Well, it looks like he now understands why people had reservations about the Mono project in the first place, and why it wasn't embraced with open arms by the community. Considering that he seems to be quite smart it may feel like a surprise that the learning experience took this long, but frankly I'm just happy that he seems to have learned the lesson. Hopefully this means he will put his considerable skills to better use now that he is starting to see the problems with his original approach.

    2. Re:He was a retard by vegiVamp · · Score: 3, Funny

      Yep. From what I've seen from him, I suspect he'll now have seen the light and start devoting his considerable skills to porting whatever is MSes current ultimate programming language, or maybe WGA.

      --
      What a depressingly stupid machine.
  7. Re:Pwahahahaha by V!NCENT · · Score: 4, Insightful

    Dude... (chicks don't react like that) .NET is supposed to be cross hard- and software.

    It was introduced to abstract the OS so that if Microsoft were to also release Windows for PowerPC's or whatever architecture, .NET apps would still run,

    Later on Microsoft announced the interoperability (this is my time to "Pffffffwahahahahaha") and they killed it with patent infringements.

    So now, yes, Microsoft has shot the .NET ecosystem in the foot, which is differently from shooting it in the head.

    What I am saying is yes; .NET is still very strong and succesful, but limited to Windows pretty much. Good for Microsoft and Windows, bad for the ecosystem itself that had spread to other OS platforms with Mono (which is chasing taillights and thus sucks).

    --
    Here be signatures
  8. The original SD Times article. by Anonymous Coward · · Score: 5, Informative

    Taken from Google Cache: http://74.125.93.132/search?q=cache:LPFDjfqGMRMJ:www.sdtimes.com/link/34203+Does+Windows+cost+Microsoft+opportunities&cd=1&hl=en&ct=clnk&gl=us

    Does Windows cost Microsoft opportunities?
    By David Worthington

    March 17, 2010 —
    The evolution of the .NET Framework has won new users to the platform, and drawn its share of criticism from those who think Microsoft’s stewardship has often been off-target.

    Among the critics is Novell vice president Miguel de Icaza, who said .NET's focus on Windows has come at the expense of opportunities for Microsoft, and its desire to guard its intellectual property is an impediment on the platform.

    "Microsoft has shot the .NET ecosystem in the foot because of the constant threat of patent infringement that they have cast on the ecosystem," he said. "Unlike the Java world that is blossoming with dozens of vibrant Java Virtual Machine implementations, the .NET world has suffered by this meme spread by [Microsoft CEO Steve Ballmer] that they would come after people that do not license patents from them."

    In practice, the Java community only uses two or three JVMs (IBM's, JRockit, and OpenJDK from Sun), while others are research efforts or smaller-scale open-source projects, said author and consultant Ted Neward. "Virtual machines are not something the open-source community seems to want to experiment with."

    Microsoft submitted the Common Language Infrastructure (CLI) specification to ECMA International, which ratified it in 2001. Microsoft built technologies on top of the specification as .NET evolved.

    Microsoft has made an open-source CLI implementation codenamed "Rotor" freely available, but it has had little or no uptake, Neward noted.

    However, Mono remains the only implementer of the ECMA CLI specification outside of Microsoft, and that is a testament to the legal uncertainty surrounding some aspects of .NET due to Microsoft's statements about open-source software, de Icaza said.

    "[Microsoft] would still be the No. 1 stack, but it would have encouraged an ecosystem that would have innovated extensively around their platform," he added.

    Facebook, Google, Ruby on Rails and Wikipedia could have been built using .NET, de Icaza claimed. "All of those are failed opportunities. Even if the cross-language story was great, the Web integration fantastic, the architecture was the right one to fit whatever flavor of a platform you wanted, people flocked elsewhere."

    "To say that Google could have used .NET is to undervalue both Google and .NET. Google creates value from things like distributed MapReduce and a brand-new system-level programming with concurrent coroutines," said Larry O'Brien, an independent analyst and consultant who writes the Windows & .NET column for SD Times. ".NET creates value from a fantastic IDE, great mainstream languages, and well-executed technologies like Silverlight, LINQ and the DLR [Dynamic Language Runtime]."

    Despite the criticisms, customers are "making bets on .NET" all the time, said Brandon Watson, director of product management for Microsoft's development platforms. "The fact that we didn't get Google—I'll cry a little, but not a lot. I'm not certain that Google wouldn't have taken a bet on philosophy, wanting to beat us."

    Further, developers can build languages on top of .NET 4.0's dynamic language runtime, which supports both Python and Ruby, Watson said. But it's the addition of new technologies on top of the ECMA specification, such as the DLR, that de Icaza believes impedes the CLI's adoption.

    Microsoft's submission to ECMA has remained at a "core level," de Icaza claimed. "I

    1. Re:The original SD Times article. by WWWWolf · · Score: 4, Insightful

      "Unlike the Java world that is blossoming with dozens of vibrant Java Virtual Machine implementations, the .NET world has suffered by this meme spread by [Microsoft CEO Steve Ballmer] that they would come after people that do not license patents from them."

      In practice, the Java community only uses two or three JVMs (IBM's, JRockit, and OpenJDK from Sun), while others are research efforts or smaller-scale open-source projects, said author and consultant Ted Neward. "Virtual machines are not something the open-source community seems to want to experiment with."

      ::Incredibly slow facepalm::

      What the hell kind of rhetorical diversion that was?

      "I love air", de Icaza was quoted as saying. "Breathing oxygen is a wonderful thing. I couldn't get through a single day without oxygen."

      In practice, oxygen only accounts for about 20% of Earth's atmosphere, said author and consultant Ted Neward. "O2 just isn't something that the open source community wants to inhale frequently."

      Tip: Java isn't popular because people work on multiple JVMs (however small in their number they might be). The point de Icaza was making is that Java is popular because there can be multiple JVMs.

    2. Re:The original SD Times article. by shutdown+-p+now · · Score: 2, Informative

      Microsoft has made an open-source CLI implementation codenamed "Rotor" freely available, but it has had little or no uptake, Neward noted.

      Rotor isn't open source, though. It's "shared source", meaning that you can look at the code, but you can't hack on it and redistribute the result. It's more of a reference implementation for study.

      It's not full-featured, either. It doesn't have the complete set of .NET class libraries, for example; only the basic stuff (what was in Ecma CLI spec, I believe).

      Oh, and it's Windows-only (the first release, which corresponded to .NET 1.1 IIRC, was for Windows and FreeBSD).

  9. Oh Noes! by hduff · · Score: 5, Funny

    The sky in Miguel de Icaza's world just turned blue!

    --
    "I believe in Karma. That means I can do bad things to people all day long and I assume they deserve it." : Dogbert
  10. O rly. by David+Gerard · · Score: 4, Interesting

    "He also claimed that Facebook, Google, Ruby on Rails and Wikipedia could have been built using .NET."

    Wikipedia? AHAHAHAHAHAHAHA no. Really, no.

    (Although the WMF Lucene search implementation was done in C# on Mono for a while, when Java wasn't yet sufficiently free software. It ran at half the speed of the Java version.)

    --
    http://rocknerd.co.uk
    1. Re:O rly. by TheRaven64 · · Score: 2, Insightful

      I don't see why Wikipedia couldn't have been built with .NET. It's mostly database-driven; you could write the front end in pretty much anything. It's not an especially complex bit of software, the value is in the content. People have written wikis in all sorts of languages and even something as slow as Ruby scales well enough in most cases to keep the bottleneck in the I/O.

      --
      I am TheRaven on Soylent News
    2. Re:O rly. by shutdown+-p+now · · Score: 3, Informative

      Although the WMF Lucene search implementation was done in C# on Mono for a while, when Java wasn't yet sufficiently free software. It ran at half the speed of the Java version.

      Mono runtime (both JIT and GC) sucks, to be honest - compared to both Sun JVM, and MS .NET VM. Any .NET vs Java performance comparison that uses Mono is thus flawed from the get go.

      It's faster than Python, though, I'll grant them that...

    3. Re:O rly. by chdig · · Score: 2, Informative

      Yes, it was this quote that made me question whether de Icaza has any clue at all.

      .NET was released first in 2002. Wikipedia was released in 2001, Google in the 90's. As for Ruby on Rails -- don't you need Ruby first in order to build a framework on Ruby (incidentally, Microsoft got into IronRuby in 2007)? Facebook, meanwhile, was a classic example of a commercial website done on the cheap, and at the time it was started, LAMP was about the only practical option. Your average group of kids with an idea in college aren't going to go out and buy Window servers, software, and very pricey MSSQL licences.

      Really, why would anyone bother listening to what this de Icaza guy has to say, when he spouts off nonsense like this?

    4. Re:O rly. by Anonymous Coward · · Score: 2, Informative

      De Icaza is claiming sites like Wikipedia "could have been built" using .NET, not that they were. In other words, he's claiming the .NET platform is capable of performing as well as the platforms on which those sites actually were implemented.

      He then goes on to say that because those sites were not implemented in .NET, they were "failed opportunities", implying that if Microsoft were not so aggressive or paranoid, they would have more .NET success stories to point to.

    5. Re:O rly. by Sir_Lewk · · Score: 2, Informative

      You have to actually produce reasons here

      No. Nobody has to do anything here. He was indicating that he found that statement hilarious, and there is nothing wrong with that. If you want more in-depth analysis feel free to read any of the other dozens of posts here.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    6. Re:O rly. by miguel · · Score: 3, Insightful

      .NET was released in July of 2000.

      And Google uses a mix of languages and tools: different features require different tools and all that. Had there been no legal problems, it would have been a no-brainer to use .NET over other technologies.

      It did not have to be Mono, it could have been a third party .NET implementaion.

    7. Re:O rly. by Cato · · Score: 2, Insightful

      Google uses a range of technologies but as far as I can tell it doesn't use Windows on its servers, partly because it needs the flexibility to do quite advanced things with Linux to gain performance. The big attraction of .NET is not the CLR but the .NET libraries, which still aren't replicated on Mono - so why would Google choose to use .NET and limit its options to a closed source OS owned by its biggest competitor?

  11. Re:Pwahahahaha by David+Gerard · · Score: 2, Interesting

    Mono is a cheap imitation of .NET, which is a cheap imitation of Java. This is why Java rules on the server.

    --
    http://rocknerd.co.uk
  12. You need to engage with the frameworks by Viol8 · · Score: 5, Funny

    I'm afraid your commitment to excellence has not synergised with market driven realities of the mission critical holistic buzzwordverse. Buck up your ideas sonny and buy into the knowledge base on a going forward basis or you'll soon suffer negative organic growth in your wetware core vocal services vis-a-vis next generation corporate employment opportunity scenarios!

    1. Re:You need to engage with the frameworks by beakerMeep · · Score: 2, Funny

      You sir, are shifting the pair of dimes.

      --
      meep
    2. Re:You need to engage with the frameworks by h4rr4r · · Score: 2, Informative

      Much of userspace is hidden behind the scenes and often not related to the desktop directly.

  13. Re:Pwahahahaha by Fujisawa+Sensei · · Score: 4, Insightful

    Microsoft's idea of cross platform is one of their platforms; like Windows 2000, XP, Vist and 7.

    --
    If someone is passing you on the right, you are an asshole for driving in the wrong lane.
  14. So, Miguel by rubycodez · · Score: 3, Insightful

    can we get that diseased crap out of GNOME?

    1. Re:So, Miguel by Robert+Zenz · · Score: 5, Insightful

      No problem: sudo apt-get remove mono-runtime mono-complete

    2. Re:So, Miguel by miguel · · Score: 4, Informative

      Rather, submit patches to replace System.Data with Sqlite-net and you have protection from Microsoft patents on .NET

    3. Re:So, Miguel by Lorien_the_first_one · · Score: 2, Insightful

      I think he means, "Send a memo to Mark Shuttleworth," but I could be wrong.

      --
      The diversity and expression of human opinion is essential to human survival.
    4. Re:So, Miguel by rubycodez · · Score: 2, Informative

      I could see there may be some problems...

      The following packaegs will be REMOVED:

          f-spot libart2.0-cil libflickrnet2.2-cil libgconf2.0-cil libglade2.0-cil
          libglib2.0-cil libgmime2.2a-cil libgnome-keyring1.0-cil libgnome-vfs2.0-cil
          libgnome2.24-cil libgnomepanel2.24-cil libgtk2.0-cil
          libmono-addins-gui0.2-cil libndesk-dbus-glib1.0-cil
          libndesk-dbus1.0-cil tomboy

  15. C# and F# by DoofusOfDeath · · Score: 3, Interesting

    Maybe the biggest lamentation I have is regarding C#. I keep on hearing how it's a wonderful improvement on C++, which is my bread-and-butter language. But I'm just not willing to invest time in a language that requires paying a Microsoft tax one way or another.

    Similarly for F# (I have a deep love for functional programming).

    1. Re:C# and F# by Chris+Burke · · Score: 4, Insightful

      Maybe the biggest lamentation I have is regarding C#. I keep on hearing how it's a wonderful improvement on C++, which is my bread-and-butter language.

      I wouldn't be too sad. C# is really more of an improvement on Java than it is on C++. I'm going to go out on a limb and assume there's a reason you use C++ and not Java, and those reasons would probably still mean you'd use C++ over C#.

      --

      The enemies of Democracy are
    2. Re:C# and F# by david_thornley · · Score: 2, Insightful

      As a general rule, getters and setters suck. They're one step better than making variables public.

      Your class APIs should be based on how the class should behave, not on how it's implemented. This may include getters and setters on particular member variables, but if you really miss properties you're almost certainly doing it wrong.

      This applies to all OO languages with more or less the C++ model, including C# and Java.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    3. Re:C# and F# by icebraining · · Score: 2, Informative

      For a Python/Ruby style scripting language there's Groovy.

      You can use Python or Ruby themselves with Jython or JRuby, respectively.

    4. Re:C# and F# by ShadowRangerRIT · · Score: 3, Funny

      The C++ template mechanism alone is turing-complete.

      I'm not entirely sure that's a good thing.

      --
      $_ = "wftedskaebjgdpjgidbsmnjgcdwatb"; tr/a-z/oh, turtleneck Phrase Jar!/; print
    5. Re:C# and F# by ShadowRangerRIT · · Score: 2, Informative

      Why is missing properties a bad thing? Properties are just syntactic sugar over getters and setters. They can do work under the hood, same as a getter or setter; very different from just making a variable public. It's just a readability difference; particularly when combining getters and setters on a single line, it's a lot easier to read:
      foo.fraction = bar.num / bar.den;
      than it is to read:
      foo.setFraction(bar.getNum() / bar.getDen());
      Contrived example, but an idiom that allows all assignment to be done via the equals operator makes for much more readable code. In Java, you can only do the more readable version by exposing the variables directly; in C#, you get all the implementation hiding of getters and setters with all the ease of use of a variable.

      --
      $_ = "wftedskaebjgdpjgidbsmnjgcdwatb"; tr/a-z/oh, turtleneck Phrase Jar!/; print
    6. Re:C# and F# by h4rr4r · · Score: 2, Informative

      I don't understand what you mean by Microsoft Tax? I can develop in C# without giving any money to MS (well, I spose I need a copy of Windows

      looks like you answered your own question.

  16. .NET is a Marketing Term by Anonymous Coward · · Score: 3, Insightful

    Miguel was enamored with a lot of the technology behind ".NET", and thought he could outsmart Microsoft, in a sense. He thought he would be pragmatic and non-religious about the technology and adopt it.

    What he never realized, and is maybe now only starting to realize, is that .NET is a *marketing* term. It was brilliantly crafted by Microsoft's marketing people. As smart as their developers are and as cool as Miguel thought their engineering and technology is, their marketing is far and away better and more sophisticated. .NET is a brilliant marketing strategy. Miguel didn't realize that by using the '.NET' term so incessantly, he was basically ensuring that he would be in the position that he's in now.

    Sure, there was C# and the CLR. That was probably 10% of ".NET", which was a overarching strategy for the *Windows* ecosystem at the time that involved extending Windows into the Internet as much as possible, including "tieing" it into all sorts of Microsoft-oriented services that were MSN at the time.

    Think about it. VisualStudio.NET. What the !@#$ does that mean? It's a branding term. Miguel showed his complete lack of understanding of marketing by using that term so regularly and continuously WRT Mono.

  17. That took guts to admit, Miguel by Sloppy · · Score: 4, Insightful

    Everyone else has been saying that forever, but to hear it from you.. I'm impressed.

    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    1. Re:That took guts to admit, Miguel by Monkey-Man2000 · · Score: 3, Interesting

      Well the fact the paper disappeared except for a cache suggests he (or a superior) had a change of heart. I want to see his response to this thread.

      --
      This post was generated by a Cadre of Uber Monkeys for Monkey-Man2000 (603495).
  18. Microsoft needs to get a grip by MikeRT · · Score: 3, Interesting

    Put aside the fact that De Icaza is now eating his own words about the patent issue and look at the issue itself. Microsoft simply has not accepted how things have begun to change. Developers rarely need them the way that they used to need them in the business space. Most large enterprise apps can now be entirely built in Java, Ruby, Python, Perl or PHP for the backend and JavaScript with a toolkit like jQuery or ExtJs for the front end. There is not a single need for Microsoft in that whole space.

    Microsoft needs to realize that developers have options now and their threats are empty. Most developers would laugh at their attempts to control things now and simply say "have fun with that" as they switch to some pure open source approach or one built around a hybrid of open and closed source from various projects and vendors.

    1. Re:Microsoft needs to get a grip by shutdown+-p+now · · Score: 2, Interesting

      Developers rarely need them the way that they used to need them in the business space. Most large enterprise apps can now be entirely built in Java, Ruby, Python, Perl or PHP for the backend and JavaScript with a toolkit like jQuery or ExtJs for the front end. There is not a single need for Microsoft in that whole space.

      There were always alternatives to MS developer tools, going back over a decade. On DOS, Turbo Pascal was awesome. On early Windows versions, Delphi ate everyone's launch (VB was originally released by and large in response to Delphi). On the web, PHP and Java have been around before ASP, much less ASP.NET, got there.

      That never stopped Microsoft from making a profit on selling developer tools, and from people buying them. There are various reasons for that, but one of them is that what we offer today is a single bundle that does it all well, and is easy to use. You obtain a Visual Studio DVD (or download the Express version), install from it, and you get a complete set of tools covering every aspect of development (including testing web server and database), all integrated together out of the box in a single IDE, and with a single cross-referenced documentation library.

      Well, that, and then there are features that competitors just don't have, at least in some areas. For example, last I checked, Java had neither first-class functions (lambdas) nor anything analogous to LINQ (sequence comprehensions). WPF/XAML beats Swing on both power and ease of making good layouts any day. And so on. Though I'll grant you that it goes both ways, and Visual Studio editor is no match for e.g. Eclipse when it comes to the sheer number of refactoring operations available; or that there's no MS ORM offering that is as full-featured as Hibernate.

      By the way, it's interesting that you've mentioned jQuery. Do you know that Microsoft is one of the biggest jQuery sponsors today, and that the framework will ship in Visual Studio 2010 (already shipped in betas), with full transparent integration out of the box - e.g. JS code completion & debugging? In fact, if you create a new ASP.NET project from default template in VS2010, it'll have jQuery in it by default.

  19. Re:Pwahahahaha by Robert+Zenz · · Score: 4, Insightful

    I have to disagree. Mono has grown out of it's cheap-copy-of-.NET state. It tries to keep compatibility with .NET, but it has become a great framework itself.

  20. sudo apt-get remove --crap-out mono-common by viraltus · · Score: 2, Funny

    ^_^'

    --
    Dear /. CENSORS that set people's Karma to Neutral when you disagree with them: FUCK YOU!!
  21. The harm is done by Windwraith · · Score: 5, Insightful

    He already pushed Mono into a lot of parts of Gnome...harm is already done De Icaza, you had to realize before pushing it into one of the most widely used Linux desktop enviroments.

    1. Re:The harm is done by Issarlk · · Score: 3, Funny

      So that mean Gnome will disapear? I fail to see the problem here.

  22. Re:Pwahahahaha by TheRaven64 · · Score: 2, Informative

    Not quite. Cross platform to MS means Windows and Wince. The point of .NET was never to hide the OS, it was to allow you to write Windows applications that were architecture-neutral, so you can run them on a desktop x86 CPU or a mobile ARM/MIPS/PowerPC CPU. All of these architectures were supported by Microsoft when .NET was introduced, but Wince had the big problem that it didn't run desktop Windows apps, which eliminated a big chunk of the reason for running a version of Windows at all.

    Wince 7 now only allows you to run .NET apps, which means that Wince 7 can run the same apps on any architecture, and means that if you write a .NET app that runs on Wince 7 it will also run on desktop Windows. Conversely, if you write your desktop Windows app using .NET then you can easily port it to mobile Windows machines just by tweaking the UI a bit to work on smaller screens.

    --
    I am TheRaven on Soylent News
  23. so what, Miguel? by Trailer+Trash · · Score: 4, Insightful

    Snakes bite, buddy, that's why we don't play with them.

    I don't know why you keep thinking that Microsoft wants some sort of "ecosystem". They want control, but they're always willing to use a useful idiot.

  24. Mono is not an integral part of GNOME by viraltus · · Score: 2, Informative

    You can easily remove mono with 'sudo apt-get remove --purge mono-common'

    --
    Dear /. CENSORS that set people's Karma to Neutral when you disagree with them: FUCK YOU!!
  25. Re:Pwahahahaha by characterZer0 · · Score: 4, Insightful

    Sun shot Java in the foot a few times.

    Microsoft abused its monopoly position to shoot Java at short range.

    .Net shoots the developers and end users.

    --
    Go green: turn off your refrigerator.
  26. Re:OSP? by TheRaven64 · · Score: 2, Informative

    Promissory estoppel does apply for things covered by the OSP, but the OSP doesn't cover nearly as much as you seem to think it does. The grandparent's analogy would be more accurate if the host said 'Oh, I promise not to decapitate any of my guests with that sword.'

    --
    I am TheRaven on Soylent News
  27. Re:Pwahahahaha by gyrogeerloose · · Score: 2, Interesting

    Silverlight which is also supported by Microsoft on Apple's Mac OS X

    And which caused my browser to crash regularly whenever it was invoked. YMMV but for me, it was almost as bad as Adobe's Mac implementation of Flash.

    --
    This ain't rocket surgery.
  28. Re:What were you expecting Miguel? by Enderandrew · · Score: 2, Insightful

    Novell paid for patent protection, so Novell shipping Mono is fairly safe. The problem is Ubuntu shipping Mono without patent protection, or Red Hat for that matter.

    As for Microsoft playing nice, I doubt that is their motivation, but the EU is basically demanding that Microsoft work on interopability.

    The Microsoft/Novell deal really does make sense for both parties. Novell doesn't have to worry about patent lawsuits. They get to go to existing Microsoft shops and tell them that Novell is the best Linux flavor to integrate into existing Microsoft environments.

    Microsoft gets to hold FUD over Red Hat's head saying "if you run Red Hat, you may get sued!" For customers who might consider a Linux migration, Microsoft doesn't lose them as customers. For one, they're less likely to move over 100% to a full Red Hat/Linux environment when Microsoft can tell them to shift only a few systems to Linux with Novell/SLES and interoperate with existing Microsoft products. Even better, they buy the Linux licenses through Microsoft and maintain the client/vendor relationship.

    So long as it appeases the EU, and it remains mutually beneficial to both sides, Microsoft will play nice with Novell.

    --
    http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
  29. Re:Pwahahahaha by Nadaka · · Score: 3, Insightful

    How is java's cross platform ability a myth? How many java programs that you know of are not cross platform when written correctly? With the not very notable exception of a few non-standard libraries, the occasional difference in performance and developers that hard-code file paths, java works very well on multiple platforms.

  30. Re:Pwahahahaha by FatherOfONe · · Score: 4, Informative

    The myth about simple cross-platform development in Java is just that, a myth. Anybody with cross-platform Java experience will attest to this. Java, as a language, has grown stagnant, while C# has continued to evolve.

    I and our team of 100+ Java developers will disagree with your statement of Java and cross-platform development. We find it excellent. Is it perfect? Nope, but in my opinion it would be a 9 out of 10 with the next closest competitor being.... Well there isn't really any close competitor but I guess we could give the C language a 2 out of 10. Perhaps Ruby is good but I haven't looked at it. Granted I am talking more about the JVM that Java itself. However, Java like other languages has evolved quite a bit in the last few years.

    Does Java have the radical changes that say languages like SCALA have? Nope, but then again it shouldn't have that. Is it stagnant? Not at all.

    The core difference you see between any of the Microsoft languages and the JVM languages is that the JVM languages somewhat try to work within the community. They also want to maintain binary (class) backward compatibility. Microsoft is an absolute dictator with their language and even to a large part their tools. This does have it's advantages, in that stuff comes out quicker, but then again, if you are a business and built you lifeblood one VB6 to have it brushed aside by Microsoft, you might be a little angry about that ruthless dictator approach. If you are some contractor type of person who wants constant change in the core framework to make your life easier (at the cost of compatibility), then you would probably like this approach.

    So in short things like closures will be in Java 7 (not a small task), and Java the language is not at all stagnant. Cross platform development, testing and support is excellent with Java. We use OSX, Ubuntu, Microsoft Windows XP and 7, and RedHat with no problems.

    --
    The more I learn about science, the more my faith in God increases.
  31. Why "pragmatism" and "ignoring reality" don't mix by Chris+Burke · · Score: 4, Insightful

    Miguel was enamored with a lot of the technology behind ".NET", and thought he could outsmart Microsoft, in a sense. He thought he would be pragmatic and non-religious about the technology and adopt it.

    I've been saying it for years -- real pragmatism must always include consideration of the practical realities surrounding a tool or technology. Like, who is providing it, what are the terms under which they provide it, could those terms change and how would that affect your use of the tool? Or as you point out, how does the technology you like (C#) fit into the larger strategy being pushed (.NET)?

    Many engineers tend to want to ignore those aspects and focus solely on the qualities of the tool itself. They say they just want something that "does the job", and thus fail to consider how those factors affect the tool's ability to do the job. Because, being technically-minded people, they want the technical factors to be the only ones that matter. They call this "pragmatism" and being "non-religious".

    Which just goes to show how even people who value pragmatism and rationality more than anyone can still be completely irrational. Ignoring the important external factors because you really wish they weren't important is not rational!

    Rationality is simply a useful trick that our mammalian brains have picked up. But at the end of the day we are still emotional animals, and even when expending great effort to force ourselves to think rationally we can't eliminate the effect of our emotions. Much of the time "rationality" is simply a way to justify what we've already decided based on emotion.

    Ergo the worst thing a person who values rationality can do is tell themselves that they are completely rational and uninfluenced by emotion. I think there's an important lesson to be learned here, even for those of us who saw this situation coming from a mile away.

    --

    The enemies of Democracy are
  32. Re:Paint.NET by MisterZimbu · · Score: 4, Insightful

    Paint.NET is far too usable to be compared to Gimp.

  33. Mono etc by 16K+Ram+Pack · · Score: 2, Insightful

    The idea that MS has shot .net in the foot because of people who use Mono is just hyperbole. I'd guess that 99.999% of people using .net do so on Windows.

    Despite being a .net developer, I'd choose Python or Java if I had to do a project on Linux.

  34. .NET too tied to OS by mugnyte · · Score: 3, Insightful

    Some of the strongest minds in computer science have built out .NET, and continue to do so. There are some practicality gaps, but today the majority of the corporate world is powered by .NET devs, for better or worse.

      However, this many years into the platform, it's starting to show it's age. From .NET 1.0 applications, laden with crude pinvokes to Win32 API's, GDI+ silliness, messy ADO.NET integration, through 2.0, 3.5, 4.0, the "Enterprise" helper classes, the "Foundation Extensions", the integration of pseudo-SQL declarative syntax with LINQ, Entity Relation classes, Unity, security, contracts, plus all of the layers of ASP.NET tools .... don't VS's forget code analysis, test suites, code coverage, profiling, generated documentation... there are many more but you get the point... ...all this is shaping up to be a very MS-centric view of the .NET universe. Which is a mistake, De Icaza seems to imply. I wholeheartedly agree. While the computing world abandons PCs for most tasks (gaming, editing information aside) and info consumption is done via smaller devices, on a variety of hardware & OS's, MS has bound .NET to their OS deployments - and there will be many other OS's talking in that space.

        This is Microsoft's biggest gamble with .NET: That as the OS lives or dies, so does this platform. Really, it could be bigger than Windows. If MS shipping a full (even licensed) 4.0+ framework for use on Linux & Apple, it would inject a massive growth spurt in both those platforms but a huge and lasting foothold on the MS-based app development.

  35. Re:Pwahahahaha by SQLGuru · · Score: 5, Funny

    It is cross platform (not necessarily cross OS). I've written code in C# that can run on my Windows Mobile phone or on my Windows laptop or as a Web Service or in my SQL Server database or in Silverlight or as a Web App or even on an XBox. That portability works well (as long as the libraries are supported -- see Compact Framework for example). It may not work as well on the Mac or Linux (but Mono does work), but porting code between the platforms I mentioned isn't that difficult (mostly just changing your target in Visual Studio; assuming library support existing on the targetted platform).

  36. Re:Pwahahahaha by BitZtream · · Score: 2, Interesting

    Uhm ... no. .NET is supposed to make it easier for idiots to write code by abstracting a lot of the hard parts from them. Sadly, like every other time someone has tried this it turns out that its actually more difficult to do anything beyond extremely simplistic because learning how to deal with GC issues is actually far more complex than just fucking freeing memory on your own.

    The hardware independance is a side effect of compiling to an intermediate language. VB has essentially had this 'feature' its entire product life, and its always been thought of as a downside, not an advantage. The only people who think of the .NET IL system as an advantage are basically VB programmers who don't really understand what the framework and runtime are doing.

    If you'd like to discuss why .NET is still limited to Windows its a far far simplier reason than anything you've posted.

    The reason is simply: Mono fucking sucks. I tried porting a ASP.NET app to Mono ... oh .. the GC is a pile of crap and results in ever growing memory usage since it doesn't relocate in long running apps ... i.e. you gotta restart often otherwise it'll fragment its memory into oblivion unless I ... worry about memory management (might as well go back to using C). But ... I can publish to IIS via front page extensions in MonoDevelop ... cause thats fucking useful to anyone other than some idiot learning how to use MonoDevelop and publishing to a local test server. Just recently I was starting a new desktop app for a personal project, so Lets try Mono so I can be lazy and turn out this app quickly ... Look ... serial ports support is broken on OSX ... they've had a patch that fixes the problem for over 3 years now ... no one has bothered to commit it ... it changes like 5 lines to use mono_poll instead of trying to call poll directly to deal with OS abstraction for poll ... Once again, I just reboot into Windows and work on it there. I presume serial ports work on Linux but thats pointless to me since I actually want to run my app a machine I might come across at someones house. My friends don't use Linux so ...

    The MS implementation isn't bad. Mono is an asstastic pile of shit that is more concerned with filling in buzzword checkboxes than actually doing something useful.

    Mono's idea of feature complete framework support is that they added stubs that throw NotImplemented exceptions. Mono needs to be managed by developers who care about making it work right, not developers and managers who are more concerned with filling in buzzwords so they can attract the crowd of 'developers' that follow buzzwords.

    Mono isn't popular because its leadership and current output suck ass, thats all.

    --
    Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  37. Re:Pwahahahaha by Locutus · · Score: 3, Insightful

    >> It was introduced to abstract the OS so that if Microsoft were to also release
    >> Windows for PowerPC's or whatever architecture, .NET apps would still run,

    no way dude. MS .NET was created to take developers away from Java and back onto Windows. Read up on some of the court documents to see what really was the deal. MS .NET came about well after the PowerPC systems(CHRP and PREP ) gone. It was all about stopping a cross platform product from becoming popular and therefore making Windows just another OS and therefore a threat to their #1 profit generator.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
  38. Hey Miguel by ThatsNotPudding · · Score: 2, Interesting

    If you really are finally on the road to Damascus, be sure to snap some pics.

  39. Re:Pwahahahaha by s73v3r · · Score: 4, Insightful

    Cross platform typically means running on platforms from more than one vendor. You basically said, "I can run my C# code on all these Microsoft platforms."

  40. Java's radical change by Rob+Y. · · Score: 5, Insightful

    Java embodys one radical change, and it's not a feature of the language (which was pretty radical itself at the start). No, the radical feature is that it's GPL'd. This change came a little late in the game, but look what it's produced already.

    Take Android. You might say 'just another smartphone platform', but think about how it came about. Google didn't develop it. A startup did. And how was it possible for a startup to build an entire internet-capable touchscreen platform? GPL. Because they had a free OS they could use any way they wanted, and a free virtual machine they could use any way they wanted, they were able to get creative and package it all together as an innovative new platform. Google bought it, added polish and apps, and suddenly it's an iPhone and Android world with Microsoft playing catch up.

    Microsoft can't do this. They are committed to their proprietary OS, so they are unable to harness any major creative leaps that come from outside the company. Outsiders can't play with the OS to tweak it to their needs, so they have no way to use Windows as a platform for creativity that doesn't fit into the channels that Microsoft provides them. Plus, they know that any really good ideas they develop on the Microsoft platform will likely be copied by Microsoft and never realize their potential (for them, at least).

    But the Android folks could start with minimal overhead and produce something great under the radar.

    That's the beauty of the GPL and the Linux (and now Java) models based on it. DVR's, netbooks, cheap wireless routers, smartphones, Kindle and 100 tablets to come. The Microsoft ecosystem is not capable of producing these things. So the next time you rag on Java or OpenGL, X-Windows or even OpenOffice - and rhapsodize about C#, .NET, MSOffice, etc., realize that you're missing the point. These tools may not individually be the absolute best in class, but they are all much more than good enough. And they enable the most creative and dynamic ecosystems in IT today. If you care about that, C# vs Java is a no-brainer. You're gonna want Java.

    Miguel seems to be just now grasping this. He had hoped that a free version of .NET would be as good as Java. He liked the technology better (not sure how much better), and thought making it free would bring it to the creative class that's really innovating these days. But Microsoft won't let him. Never meant to, never will. Sorry Miguel - I feel your pain.

    --
    Posted from my Android phone. Oh, I can change this? There, that's better...
    1. Re:Java's radical change by bonefry · · Score: 2, Informative

      Android isn't using JVM, it's using Dalvik which is a VM written from scratch that's entirely different from the JVM (it doesn't even use the same bytecode).
      The link between Java, the JVM and Dalvik is a bytecode converter, capable of converting already compiled Jars to Dalvik.

      And not to burst your bubble further, but Android isn't even using an X Server, the gui manager / toolkit being also written from scratch ... so you can't really rant about how they've used a "free OS" ... it was only the Linux kernel ;)

      On the whole, Android isn't even licensed under the GPL, but APL.

      So the next time you rag about the virtues of GPL stuff you get for free, take a deep breath and get your facts straight because you're just waisting bandwidth otherwise.

      Also, what Miguel does is Miguel's business. He saw some value and wanted that on top of Linux. Maybe he was wrong, but before you criticizes him you first have earn that right ... you see, I don't really think you or any of the freetards in this thread have any meaningful contribution to open-source software.

  41. I provided some context by miguel · · Score: 5, Informative

    I provided some context to the SD times article on my blog today:

    http://tirania.org/blog/archive/2010/Mar-25.html

    Miguel.

  42. Re:Pwahahahaha by SupaSaru · · Score: 2, Insightful

    .... then you agree that ext3 is an imitation of FAT32? - That is clearly not the case. Mono is a framework that implements the functionality of the CLR much in the same way that systems may implement LDAP. They are not "knocking off" Active Directory by implementing functionality of LDAP, they are building systems to be compatible with protocols, standards, formats and guidelines. Give credit where credit is due - even if you don't agree with the motivation.

  43. Re:Pwahahahaha by jedidiah · · Score: 2, Insightful

    Except C++ requires a re-compile for so
    much as moving from the intel to sparc version of the same OS. Massive difference.

    I can dabble with java desktop apps now. Where are the C based or win-based cross arch equivalents?

    --
    A Pirate and a Puritan look the same on a balance sheet.
  44. No Santa Claus by roman_mir · · Score: 2, Insightful

    I feel kind of bad for Miguel, he sounds like a kid, who just realized that there is no Santa Claus. It's sad.

  45. Yes, but... by Balinares · · Score: 4, Insightful

    Unfortunately, even the most studious lack of infringement won't prevent you from getting abusively sued into bankruptcy. It's all about the implied threat, Miguel.

    --

    -- B.
    This sig does in fact not have the property it claims not to have.
  46. Re:Pwahahahaha by ShadowRangerRIT · · Score: 2, Interesting

    Java apps usually use some OS specific stuff as well. Virtually every mainstream Java program uses an OS specific installer for instance. And if you're distributing a different installer for every platform, you may as well compile it for every platform.

    As for C based desktop apps with cross-platform capabilities, might I point you in the direction of a little thing called Firefox? Yeah, it needs certain libraries coded differently for different platforms, but as noted, so does Java.

    --
    $_ = "wftedskaebjgdpjgidbsmnjgcdwatb"; tr/a-z/oh, turtleneck Phrase Jar!/; print
  47. Re:Pwahahahaha by prockcore · · Score: 2, Funny

    I've always said that 6502 Assembly is the most crossplatform language ever.. there is an NES emulator available for far more platforms than the JVM.

  48. Re:Pwahahahaha by Gr8Apes · · Score: 2, Interesting

    I know I know don't feed the trolls, especially the slow ones....

    You're not making any sense. This is nonsensical. Assign a string to a List? Huh?

    Yes, it's quite possible, through reflection. What's worse though in C# is that the incorrect object can then be passed all over the place as the "type" that it's not until you try to use it. How did you sum this up? Oh yeah: "Huh?".

    Delegates? Please, just fancy syntactic sugar for the adapter pattern.

    Right, the same way a "Class" is just fancy syntactic sugar for a pointer to a structure amirite? Shit, C does everything we need then, I guess. Ridiculous.

    delegate->adapter/proxy method is like waffle -> sugar cone.
    Class-> pointer is like House -> stick.

    But I'm sure those are just minor differences to a stellar intellect as yourself.

    I'm getting the sneaking suspicion that you don't know what you're talking about, and that in addition you're defining anything not in Java as not being useful or good, which is a bit circular.

    Well at least you have a suspicion of something.Too bad its misplaced.

      Just because something might look good at first glance as making all those "hard things" go away by just using some pseudo code is really just a short cut that experience has shown will bite you in the ass later sooner or later.

    I'm also solidly against hibernate, spring, and several other frameworks that purport to do similar things - removing all those "hard things' so I won't have to worry about them. They all suck royally, as you'll find out in phase 2 or 3 of the evolution of your product when gee, it just doesn't do this one little thing... and then it doesn't do that one little thing, rapidly snowballing into a bigger effort than the original work would have been.

    Yep. Since Java's getting them, closures are OK, huh? Sweet logic.

    I'm undecided actually, and don't know that depending on which of the three flavors they choose that it's going to make all that much difference other than stating "Java has closures" much in the same way many feel about generics. (And yes, generics suck too in some cases. Mostly they're helpful. And after my run ins with C#'s lack of runtime type checking, I'm willing to bet the same deficiencies with generics exist for them too)

    Their collection classes are fine. Oh, and they have generic runtime collections. Does Java? Oh, it doesn't? As for the string index, that's truly idiotic. Going from index 1 to index two is (2-1), if you call subtracting two numbers in your head a computation I think you make have larger issues.

    C# collection classes blow. I have to check before adding (and remove if found) or getting a value or it throws an exception? You're kidding, right?

    As per the earlier statement - there are no runtime checks in C#. So it doesn't really matter whether they are runtime or not. And yes, if you want, you can create runtime generics or any code at runtime if you'd like, or even alter existing classes. (Not generally recommended, but it can be done)

    So, care to show any other areas you're a little thin on? I can't wait to see a scintillating "Duh" or the like.

    --
    The cesspool just got a check and balance.